Лабораторная работа № 15. Классы 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Лабораторная работа № 15. Классы



Цель работы:

овладеть практическими навыками проектирования классов и программ использующие эти классы.

Изучить:

- организацию данных типа класс;

- приемы реализации задач с использованием классов;

 

Контрольные вопросы

1. Что такое абстрагирование и как оно используется в моделировании?

2. Что такое класс в объектно-ориентированном программировании?

3. Как записываются поля и методы класса?

4. Надо ли указывать поля класса в аргументах методов этого же класса?

5. Что такое инкапсуляция? Для чего она применяется?

6. Как реализуется инкапсуляция при записи класса?

7. Может ли к закрытым полям и методам класса обратиться другой объект того же класса?

 

Задания для самостоятельной работы

Задание 1

1.Описать класс с именем STUDENT, содержащий следующие поля:

· фамилия и инициалы;

· номер группы;

· успеваемость (массив из пяти элементов).

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT; записи должны быть упорядочены по возрастанию номера группы;

· вывод на дисплей фамилий и номеров групп для всех студентов, включенных в массив, если средний балл студента больше 4,0;

· если таких студентов нет, вывести соответствующее сообщение.

Задание 2

1.Описать класс с именем STUDENT, содержащий следующие поля:

· фамилия и инициалы;

· номер группы;

· успеваемость (массив из пяти элементов).

2.Написать программу, выполняющую следующие действия.

· ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT; записи должны быть упорядочены но возрастанию среднего балла;

· вывод па дисплей фамилий и номеров групп для всех студентов, имеющих оценки 4 и 5;

· если таких студентов нет, вывести соответствующее сообщение.

Задание 3

1.Описать класс с именем STUDENT, содержащий следующие поля:

· фамилия и инициалы;

· номер группы;

· успеваемость (массив из пяти элементов).

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT; записи должны быть упорядочены по алфавиту;

· вывод на дисплей фамилий и номеров групп для всех студентов, имеющих хотя бы одну оценку 2;

· если таких студентов нет, вывести соответствующее сообщение.

Задание 4

1.Описать класс с именем AEROFLOT, содержащий следующие поля:

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

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

· тип самолета.

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT; записи должны быть упорядочены по возрастанию номера рейса;

· вывод на экран номеров рейсов и типов самолетов, вылетающих в пункт назначения, название которого совпало с названием, введенным с клавиатуры;

· если таких рейсов нет, выдать на дисплей соответствующее сообщение.

Задание 5

1.Описать класс с именем AEROFLOT, содержащий следующие поля:

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

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

· тип самолета.

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT; записи должны быть размещены в алфавитном порядке но названиям пунктов назначения;

· вывод на экран пунктов назначения и номеров рейсов, обслуживаемых самолетом, тип которого введен с клавиатуры;

· если таких рейсов нет, выдать на дисплей соответствующее сообщение.

Задание 6

1.Описать класс с именем WORKER, содержащий следующие поля:

a. фамилия и инициалы работника;

b. название занимаемой должности;

c. год поступления на работу.

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из десяти структур типа WORKER; записи должны быть размещены по алфавиту.

· вывод на дисплей фамилий работников, чей стаж работы в организации превышает значение, введенное с клавиатуры;

· если таких работников нет, вывести на дисплей соответствующее сообщение.

Задание 7

1.Описать класс с именем TRAIN, содержащий следующие поля:

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

· номер поезда;

· время отправления.

2.Написать программу, выполняющую следующие действия:

d. ввод с клавиатуры данных в массив, состоящий из восьми элементов типа TRAIN; записи должны быть размещены в алфавитном порядке по названиям пунктов назначения;

e. вывод на экран информации о поездах, отправляющихся после введенного с клавиатуры времени;

f. если таких поездов нет, выдать на дисплей соответствующее сообщение.

Задание 8

1.Описать класс с именем TRAIN, содержащий следующие поля:

g. название пункта назначения;

h. номер поезда;

i. время отправления.

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из шести элементов типа TRAIN; записи должны быть упорядочены по времени отправления поезда;

· вывод на экран информации о поездах, направляющихся в пункт, название которого введено с клавиатуры;

· если таких поездов нет, выдать на дисплей соответствующее сообщение.

Задание 9

1.Описать класс с именем TRAIN, содержащий следующие поля:

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

· номер поезда;

· время отправления.

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов типа TRAIN; записи должны быть упорядочены по номерам поездов;

· вывод на экран информации о поезде, номер которого введен с клавиатуры;

· если таких поездов нет, выдать на дисплей соответствующее сообщение.

Задание 10

1.Описать класс с именем MARSH, содержащий следующие поля:

· название начального пункта маршрута;

· название конечного пункта маршрута;

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

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов типа MARSH; записи должны быть упорядочены по номерам маршрутов;

· вывод на экран информации о маршруте, номер которого введен с клавиатуры;

· если таких маршрутов нет, выдать на дисплей соответствующее сообщение

 

Задание 11

1.Описать класс с именем MARSH, содержащий следующие поля:

· название начального пункта маршрута;

· название конечного пункта маршрута;

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

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов типа MARSH; записи должны быть упорядочены по номерам маршрутов;

· вывод на экран информации о маршрутах, которые начинаются или кончаются в пункте, название которого введено с клавиатуры;

· если таких маршрутов нет, выдать на дисплей соответствующее сообщение.

Задание 12

1.Описать класс с именем NOTE, содержащий следующие поля:

· фамилия, имя;

· номер телефона;

· день рождения (массив из трех чисел).

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по датам дней рождения;

· вывод на экран информации о человеке, номер телефона которого введен с клавиатуры;

· если такого нет, выдать на дисплей соответствующее сообщение.

Задание 13

1.Описать класс с именем NOTE, содержащий следующие поля:

j. фамилия, имя;

k. номер телефона;

l. день рождения (массив из трех чисел).

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть размещены но алфавиту;

· вывод на экран информации о людях, чьи дни рождения приходятся на месяц, значение которого введено с клавиатуры;

· если таких нет, выдать на дисплей соответствующее сообщение.

Задание 14

1.Описать класс с именем NOTE, содержащий следующие поля:

· фамилия, имя; номер телефона;

· день рождения (массив из трех чисел).

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по трем первым цифрам номера телефона;

· вывод на экран информации о человеке, чья фамилия введена с клавиатуры;

· если такого нет, выдать на дисплей соответствующее сообщение.

Задание 15

1.Описать класс с именем ZNAK, содержащий следующие поля:

· фамилия, имя;

· знак Зодиака;

· день рождения (массив из трех чисел).

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK; записи должны быть упорядочены по датам дней рождения;

· вывод на экран информации о человеке, чья фамилия введена с клавиатуры;

· если такого нет, выдать па дисплей соответствующее сообщение.

Задание 16

1.Описать класс с именем ZNAK, содержащий следующие поля:

· фамилия, имя;

· знак Зодиака;

· день рождения (массив из трех чисел).

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK; записи должны быть упорядочены по датам дней рождения;

· вывод на экран информации о людях, родившихся под знаком, наименование которого введено с клавиатуры;

· если таких нет, выдать на дисплей соответствующее сообщение.

Задание 17

1.Описать класс с именем ZNAK, содержащий следующие поля:

· фамилия, имя;

· знак Зодиака;

· день рождения (массив из трех чисел).

2.Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов ZNAK; записи должны быть упорядочены по знакам Зодиака;

· вывод иа экран информации о людях, родившихся в месян, значение которого введено с клавиатуры;

· если таких нет, выдать на дисплей соответствующее сообщение.

Задание 18

1. Описать класс с именем PRICE, содержащий следующие поля:

· название товара;

· название магазина, в котором продается товар;

· стоимость товара в руб.

2. Написать программу, выполняющую следующие действия:

· ввод с клавиатуры данных в массив, состоящий из восьми элементов PRICE; записи должны быть размещены в алфавитном порядке по названиям товаров;

· вывод на экран информации о товаре, название которого введено с клавиатуры;

· если таких товаров нет, выдать на дисплей соответствующее сообщение



Поделиться:


Последнее изменение этой страницы: 2016-12-11; просмотров: 530; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.223.210.58 (0.029 с.)