Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метода по практическим.doc
Скачиваний:
2
Добавлен:
25.11.2019
Размер:
259.07 Кб
Скачать
  1. Контрольні запитання:

4.1 Що розуміється під масивом?

4.2 Як позначаються в програмі елементи масиву?

4.3 Як описуються масиви в розділі змінних?

4.4 Як організовується в програмі введення елементів масиву?

4.5 Як організовується в програмі виведення масиву?

4.6 Поясніть суть алгоритму сортування елементів масиву методом «бульбашки».

Практична робота 3

Тема. Програмування типу даних структура

Мета: закріпити основні відомості, вивчені на лекції – тип даних структура, визначення, призначення та оголошення структур, правила роботи зі структурами.

Виконання

  1. Короткі теоретичні відомості

Структура – це тип даних, що визначається користувачем. Структура може містити дані різних типів. Дані структури називають полями. Доступ до полів структури відбувається двома способами – за допомогою операції вибору „точка” або за допомогою операції „стрілочка”.

Структура має бути перед використанням оголошена. Якщо структура має ім’я, то в програмі можна створювати об’єкти структури. При використанні безіменної структури вона має бути ініціалізована відразу ж після оголошення.

При роботі зі структурами можна використовувати всі базові структурні елементи програмування.

  1. Розглянемо програму для роботи з типом даних структура

Опишемо структуру з іменем PRICE, що має наступні поля:

  • назву магазину;

  • назву товару, який продається в магазині;

  • вартість товару в гривнях.

Напишемо програму, яка використовує створену структуру та виконує наступні дії:

  • введення з клавіатури даних в масив, що складається з 8 записів;

  • вивід на екран інформацію про товари, що продаються в магазині, назва якого введена з клавіатури;

  • якщо такого магазину немає, видати відповідне повідомлення.

Текст програми:

# include <iostream.h>

#include <conio.h>

struct Price {

char nazv[25];

char name[30];

float cena;

};

int main () { clrscr () ; // функція для очистки екрану

Price MasP[8]; // оголошення масиву з 8 структур

// введення структур в циклі

cout<<”Введіть масив структур\n”;

for (int i=0; i<8;i++){

cout<< “Введіть назву магазину :”;

cin>>MasP[i].nazv;

cout<< “Введіть назву товару:”;

cin>>MasP[i].name;

cout<< “Введіть ціну товару :”;

cin>>MasP[i].cena;

}

// вводимо назву магазину для перевірки

char str[25];

cout<<”Введіть назву магазину для пошуку:”;

cin>>str;

int k=0; // лічильник для запам’ятовування кількості збігів

for (i=0;i<8;i++){ // проходимо по всьому масиву структур

if (MasP[i].nazv==str) { // порівнюємо введене значення з полем структури

// виводимо інформацію про товар

cout<<”Nazvanie tovara ” <<MasP[i].name<<”Cena:”<<MasP[i].cena;

k++; // збільшуємо лічильник на 1 при кожному виводі

}

}

// якщо збігів немає – виводимо повідомлення

if (k==0) cout <<”Такого магазину в списку немає!”<<endl;

return 0;

}

3 Завдання: виконати маніпуляції зі структурами за варіантом.

Варіант 1

1. Описати структуру з ім'ям STUDENT, що містить наступні поля:

- прізвище й ініціали;

- номер групи;

- успішність (масив з п'яти елементів).

2. Написати програму, що виконує наступні дії

- введення з клавіатури даних у масив, що складається з десяти структур типу

STUDENT;

- вивід на екран прізвищ і номерів груп для всіх студентів, що мають

оцінки тільки 4 і 5; якщо таких студентів немає, вивести відповідне повідомлення.

Варіант 2

1. Описати структуру з ім'ям STUDENT, що містить наступні поля:

- прізвище й ініціали;

- номер групи;

- успішність (масив з п'яти елементів).

2. Написати програму, що виконує наступні дії:

- введення з клавіатури даних у масив, що складається з десяти структур типу STUDENT;

- вивід на екран прізвищ і номерів груп для всіх студентів, що мають хоча б одну оцінку 2;

якщо таких студентів немає, вивести відповідне повідомлення.

Варіант 3

1. Описати структуру з ім'ям AEROFLOT, що містить наступні поля:

- назва пункту призначення рейса;

- номер рейса;

- тип літака.

2. Написати програму, що виконує наступні дії:

- введення з клавіатури даних у масив, що складається із семи елементів типу AEROFLOT;

- вивід на екран номерів рейсів і типів літаків, що вилітають у пункт призначення, назва якого збіглася з назвою, введеною з клавіатури; якщо таких рейсів немає, видати на екран відповідне повідомлення.

Варіант 4

1. Описати структуру з ім'ям AEROFLOT, що містить наступні поля:

- назва пункту призначення рейса;

- номер рейса;

- тип літака.

2. Написати програму, що виконує наступні дії:

- введення із клавіатури даних у масив, що складається із семи елементів типу AEROFLOT;

- вивід на екран пунктів призначення й номерів рейсів, що обслуговуються літаком, тип якого уведений із клавіатури; якщо таких рейсів немає, видати на дисплей відповідне повідомлення.

Варіант 5

1. Описати структуру з ім'ям WORKER, що містить наступні поля:

- прізвище й ініціали працівника;

- назва займаної посади;

- рік надходження на роботу.

2. Написати програму, що виконує наступні дії:

- введення із клавіатури даних у масив, що складається з десяти структур типу WORKER;

- вивід на екран прізвищ працівників, чий стаж роботи в організації перевищує значення, введене з клавіатури; якщо таких працівників немає, вивести відповідне повідомлення.

Варіант 6

1. Описати структуру з ім'ям TRAIN, що містить наступні поля:

- назва пункту призначення;

- номер поїзда;

- час відправлення.

2. Написати програму, що виконує наступні дії:

- введення із клавіатури даних у масив, що складається з восьми елементів типу TRAIN;

- вивід на екран інформації про поїзди, що відправляються після введеного із клавіатури часу; якщо таких поїздів немає, видати па дисплей відповідне повідомлення.

Варіант 7

1. Описати структуру з ім'ям TRAIN, що містить наступні поля:

- назва пункту призначення;

- номер поїзда;

- час відправлення.

2. Написати програму, що виконує наступні дії:

- введення із клавіатури даних у масив, що складається із шести елементів типу TRAIN;

- вивід на екран інформації про поїзди, що направляються в пункт, назву якого введено з клавіатури; якщо таких поїздів немає, видати на дисплей відповідне повідомлення.

Варіант 8

1. Описати структуру з ім'ям TRAIN, що містить наступні поля:

- назва пункту призначення;

- номер поїзда;

- час відправлення.

2. Написати програму, що виконує наступні дії:

- введення із клавіатури даних у масив, що складається з восьми елементів типу TRAIN;

- вивід на екран інформації про поїзд, номер якого уведений із клавіатури; якщо таких поїздів немає, видати на дисплей відповідне повідомлення.

Варіант 9

1. Описати структуру з ім'ям MARSH, що містить наступні поля:

- назва початкового пункту маршруту;

- назва кінцевого пункту маршруту;

- номер маршруту.

2. Написати програму, що виконує наступні дії:

- введення із клавіатури даних у масив, що складається з восьми елементів типу MARSH;

- вивід на екран інформації про маршрут, номер якого введений із клавіатури; якщо таких маршрутів немає, видати на дисплей відповідне повідомлення.

Варіант 10

1. Описати структуру з ім'ям MARSH, що містить наступні поля:

- назва початкового пункту маршруту;

- назва кінцевого пункту маршруту;

- номер маршруту.

2. Написати програму, що виконує наступні дії:

- введення з клавіатури даних у масив, що складається з восьми елементів типу MARSH;

- вивід на екран інформації про маршрути, які починаються або кінчаються в пункті, назву якого введено із клавіатури; якщо таких маршрутів немає, видати на дисплей відповідне повідомлення.