Контрольные вопросы
Каковы этапы подготовки к выполнению программы на языке С++?
Как войти в ИСРП?
Каковы основные пункты меню и их назначение?
Какова структура программы на языке С++?
Для чего необходима директива препроцессору #include?
Какая функция используется для вывода информации на экран?
Какая функция используется для ввода данных с клавиатуры?
Что собой представляют спецификаторы преобразований?
Что называют идентификатором?
Как записывается оператор присваивания?
Требования к отчету
Отчет должен содержать:
конспект теоретической части;
лабораторное задание;
результаты выполнения программ.
Лабораторное задание
Составить программу с использованием разбиения на отдельные файлы в соответствии со своим вариантом (табл. 1).
Разбиться на бригады по 3 человека.
Выполнить задание внутри бригады и собрать проект в единое целое (табл. 2). Основной модуль должен содержать интерфейс пользователя и использовать все функции.
Таблица 1.
Номер варианта |
Задание |
1,13 |
Составить программу, описывающую домашнюю библиотеку из N книг (задаётся с клавиатуры) вида: автор, название, год издания, и выводящую на экран все книги нужного автора в библиографическом порядке(по году издания). |
2,14 |
Составить программу, описывающую пасажирский самолёт из N мест (задаётся с клавиатуры) вида: имя пасажира, год рождения, пункт назначения, номер места, и выводящую на экран всех пасажиров в порядке следования номеров мест. |
3,15 |
Составить программу, описывающую группу из N студентов (задаётся с клавиатуры) вида: имя студента, номер студенческого билета, средняя оценка, и выводящую на экран всех студентов в порядке успеваемости. |
4,16 |
Составить программу, описывающую список покупок из N мест (задаётся с клавиатуры) вида: наименование, вес, цена, и выводящую на экран размер сумки и сумму, необходимую для похода в магазин. |
5,17 |
Составить программу, описывающую набор комплектующих компьютера из N устройств (задаётся с клавиатуры) вида: наименование, уровень шума (дБ), тепловыделение, и выводящую на экран все устройства в порядке уровня щума, общий уровень шума и общее тепловыделение. |
6,18 |
Составить программу, описывающую покупки в кредит из N мест (задаётся с клавиатуры) вида: наименование, первоначальный взнос, срок, ежемесячный взнос (в %), и выводящую на экран все покупки в порядке истекания срока, а так же общую сумму первоначального взноса и ежемесячного за К-ый месяц. |
7,19 |
Составить программу, описывающую список преподователей из N человек (задаётся с клавиатуры) вида: имя преподователя, предмет, разряд, и выводящую на экран всех преподователей по нужному предмету в порядке следования разрядов. |
8,20 |
Составить программу, описывающую домашнюю фильмотеку из N фильмов (задаётся с клавиатуры) вида: наименование, режисёр, год выпуска, длительность, и выводящую на экран список всех фильмов заданного режисёра в порядке выпуска на экран и их общую длительность. |
9,21 |
Составить программу, описывающую мониторы из N штук (задаётся с клавиатуры) вида: производитель, модель, диагональ, излучение, и выводящую на экран все мониторы с заданной диоганалью в порядке уменьшения излучения. |
10,22 |
Составить программу, описывающую зоопарк из N видов животных (задаётся с клавиатуры) вида: наименование вида, количество голов, кол-во еду на одного зверя в день, и выводящую на экран всех животных в порядке увеличения поголовья, а так же общиее кол-во еды, потребляемое зоопарком в день. |
11,23 |
Составить программу, описывающую факультет из N групп (задаётся с клавиатуры) вида: номер группы, курс, текущая успеваемость в группе, и выводящую на экран все группы в порядке увеличения успеваемости, разбитые на курсы. |
12,24 |
Составить программу, описывающую программное обеспечение компьютера из N программ (задаётся с клавиатуры) вида: наименование программы, стоимость, стоимость ежемесячной аренды, и выводящую на экран все программы в алфавитном порядке, а так же общую стоимость и общую арендную плату. |
Таблица 2.
Номер варианта |
Задание |
1 |
Написать программу сортировки и поиска книги в магазине по автору или по названию. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct book { char header[50];//название книги char author[50];//автор книги }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortABibl(book* B, int N);//сортировка по автору void SortHBibl(book* B, int N);//сортировка по названию //search.h-------------------------------------------- #include “const.h” void SearchABibl(book* B, int N, char* A);//поиск по автору void SearchHBibl(book* B, int N, char* H); //поиск по названию void SearchAHBibl(book* B, int N, char* A, char* H); //поиск по автору и по названию.
|
2 |
Составить программу, описывающую домашнюю фильмотеку. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct film { char director[50];//режисёр фильма char title[50];//название фильма int year;//год выпуска фильма int lenght;//длительность фильма }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortDFilm(film* B, int N);//сортировка по режисеру void SortTFilm(film* B, int N);//сортировка по названию //search.h-------------------------------------------- #include “const.h” void SearchDFilm(film* B, int N, char* A);//поиск по режисёру void SearchTFilm(film* B, int N, char* H);//поиск по названию void SearchDTFilm(film* B, int N, char* A, char* H);//поиск определённого фильма
|
3 |
Составить программу, описывающую список преподователей. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct teacher { char name[50];//имя преподователя char subject[50];//название дисциплины int class;//квалификация (разряд) }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortNTeacher(teacher* B, int N);//сортировка по режисеру void SortSTeacher(teacher* B, int N);//сортировка по названию //search.h-------------------------------------------- #include “const.h” void SearchNTeacher(teacher* B, int N, char* A);//поиск по режисёру void SearchSTeacher(teacher* B, int N, char* H);//поиск по названию void SearchNSTeacher(teacher* B, int N, char* A, char* H);//поиск определённого фильма
|
4 |
Составить программу, описывающую зоопарк. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct monster { char name[50];//наименование вида char num;//количество голов double eat;//потребление еды одним животным }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortNZoo(monster* B, int N);//сортировка по наименованию void SortNum Zoo(monster* B, int N);//сортировка по поголовью //search.h-------------------------------------------- #include “const.h” void SearchNZoo(monster * B, int N, char* Name); double ComputeEatZoo(monster* B, int N);//подсчёт кол-ва еды, потребляемой зоопарков за день.
|
5 |
Составить программу, описывающую факультет. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct group { char kaf[50];//название кафедры char num;//номер группы char students;//кол-во студентов char ratio;//успеваемость группы }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortKFac(group* B, int N);//сортировка по кафедре void SortRFac(group* B, int N);//сортировка по рейтингу //search.h-------------------------------------------- #include “const.h” void SearchKGroup(group* B, int N, char* K);//вывести все группы кафедры void SearchBestGroup(group* B, int N);//вывести лучшую на факультете группу. void SearchBest(group* B, int N);//вывести лучшую на каждой кафедре группу.
|
6 |
Составить программу, описывающую покупки в кредит из N мест (задаётся с клавиатуры) вида: наименование, первоначальный взнос, срок, ежемесячный взнос (в %), и выводящую на экран все покупки в порядке истекания срока, а так же общую сумму первоначального взноса и ежемесячного за К-ый месяц.. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct item { char name[50];//название покупки double fprice;//первоночальный взнос double mprice;//ежемесячный взнос char months;//осталось месяцев }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortNShop(item* B, int N);//сортировка по наименованию void SortPShop(item* B, int N);//сортировка по полной стоимости //search.h-------------------------------------------- #include “const.h” double ComputeFPrice(item* B, int N, char* N);//подсчёт полной стоимости покупки по её наименованию double ComputeMPrice(item* B, int N, char M);//подсчёт затрат на все покупки в месяце M.
|
7 |
Составить программу, описывающую группу студентов. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct stud { char name[50];//имя студента double studnum;//номер студбилета double averageratio;//средняя оценка }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortNGroup(stud* B, int N);//сортировка по имени void SortARGroup(stud* B, int N);//сортировка по среднему балу //search.h-------------------------------------------- #include “const.h” double ComputeGroup(stud* B, int N);//вычисление среднего по группе void SearchNGroup(stud* B, int N, char* N);//поиск по имени void SearchBest(stud* B, int N);//поиск лучшего студента
|
8 |
Составить программу, описывающую мониторы. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct monitor { char model[50];//модель char maker[50];//производитель char diagonal;//размер диагонали double ray;//излучение }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortMMMon(monitor* B, int N);//сортировка по производителю и по модели void SortRMon(monitor* B, int N);//сортировка по излучению //search.h-------------------------------------------- #include “const.h” void SearchMMon(monitor* B, int N, char* A);//поиск по модели void SearchRDMon(monitor* B, int N, char D);//поиск минимального излучения среди моделей с диагональю D.
|
9 |
Составить программу, описывающую набор комплектующих компьютера. //const.h-------------------------------------------- #ifndef __CONST_H__ #define __CONST_H__ struct dev { char name[50];//наименование double noise;//шум double heater;//выделяемое тепло }; #endif Заголовочные файлы для модулей: //sort.h-------------------------------------------- #include “const.h” void SortNComp(dev* B, int N);//сортировка по названию void SortNoComp(dev* B, int N);//сортировка по шуму //search.h-------------------------------------------- #include “const.h” void SearchNComp(dev* B, int N, char* N);//поиск по наименованию void SearchBestH(dev* B, int H);//поиск лучшего по тепловыделению void SearchBestN(dev* B, int N);//поиск лучшего по нагреву
|