- •Факультет
- •1. Линейные алгоритмы
- •2. Логическое выражение
- •3. Условный оператор
- •4. Циклы
- •5. Последовательности чисел
- •Одномерные массивы
- •Процедуры и функции Задания
- •Матрицы
- •Структуры
- •Файлы Текстовые файлы
- •Типизированные и нетипизированные файлы
- •В задачах 1..15 использовать типизированный файл c информацией о студентах факультета Stud.Dat со структурой:
- •Рекурсия
- •Списки, стеки, очереди
- •Сортировки
- •Разбор выражений
- •Деревья
- •1. Линейные алгоритмы 3
Структуры
Дано
type
имя = (Аня, Валя, Женя, Петя,
Саша, Таня, Шура, Юра);
данные = struct {
пол : (муж, жен);
рост : 140..200
};
группа = array [имя] of данные;
Описать функцию СредРост(ГР), определяющую средний рост женщин из группы ГР.
Даны: структура, описывающая рациональное число
struct rac
{
int chisl;
unsigned int znam;
};
и массив из 20 таких структур. Описать логическую функцию Equal(a, b), сравнивающую два рациональных числа a и b.
Даны комплексное число z (пара вещественных чисел) и вещественное число > 0. Вычислить с точностью значение следующей комплексной функции:
3.1 sh z = z + z3 / 3! + z5 / 5! + … + z2n+1 / (2n + 1)! + …;
3.2 ch z = z + z2 / 2! + z4 / 4! + … + z2n / (2n)! + …;
3.3 sin z = z – z3 / 3! + z5 / 5! – …+ (–1)nz2n+1 / (2n + 1)! + …;
3.4 cos z = z – z2 / 2! + z4 / 4! – … + (–1)nz2n / (2n)! + …;
3.5 ln (1 + z) = z – z2 / 2 + z3 / 3 – … + (–1)n-1zn / n + … (| z | < 1);
3.6 arctg z = z – z3 /3 + z5 /5 –…+ (–1)nz2n+1 /(2n + 1) +… (| z | < 1).
Даны: структура, описывающая вещественное число
struct numb
{
bool sign;
float mant;
int order;
};
и массив из таких структур.
Описать:
4.1 функцию MaxNeg(C) для нахождения максимального отрицательного числа из списка чисел С;
4.2 функцию MaxDi(C) для нахождения максимального порядка числа из списка вещественных чисел С;
Даны: структуры
struct decart
{
float x, y;
};
и
struct polar
{
float r, fi;
};
( r 0, - < fi )
Описать процедуру ДП(d, p), преобразующую координаты точки на плоскости из декартовых d в полярные p, и ПД(p,d), выполняющую обратное преобразование.
Дана структура
struct Date
{ unsigned short day, month, year;}
и перечисление
enum DayOfWeek {mn, td, wd, thd, fd, std, sd};
Считая, что все даты даются по григорианскому календарю (по «новому стилю»), описать:
6.1 функцию ПослЧисло(d), вычисляющую количество дней в том месяце, которому принадлежит дата d;
6.2 логическую функцию ВернаяДата(d), проверяющую правильность даты d;
6.3 функцию ЧислоДней(d), подсчитывающую, сколько дней прошло от 1 января 1-го года нашей эры до даты d;
Даны комплексное число z (пара вещественных чисел) и вещественное число > 0. Вычислить с точностью значение следующей комплексной функции:
(| z | < 1).
Описать структуру с именем WORKER, содержащую следующие поля:
• фамилия и инициалы работника;
• название занимаемой должности;
• год поступления на работу.
Записать функции, выполняющие следующие действия:
• ввод с клавиатуры данных в массив, состоящий из десяти структур типа WORKER; записи должны быть размещены по алфавиту.
• вывод на дисплей фамилий работников, чей стаж работы в организации превышает значение, введенное с клавиатуры;
• если таких работников нет, вывести на дисплей соответствующее сообщение.
Описать структуру с именем TRAIN, содержащую следующие поля:
• название пункта назначения;
• номер поезда;
• время отправления.
Записать функции, выполняющие следующие действия:
• ввод с клавиатуры данных в массив, состоящий из десяти структур типа TRAIN; записи должны быть размещены в алфавитном порядке по названию пункта назначения;
• вывод на экран информации о поездах, отправляющихся после времени, введенного с клавиатуры;
• если таких поездов нет, вывести на дисплей соответствующее сообщение.
Описать структуру с именем NOTE, содержащую следующие поля:
• фамилия, имя;
• номер телефона;
• дата рождения.
Записать функции, выполняющие следующие действия:
• ввод с клавиатуры данных в массив, состоящий из десяти структур типа NOTE; записи должны быть упорядочены по датам рождения;
• вывод на экран информации о человеке, номер телефона которого, введен с клавиатуры;
• если такого нет, вывести на дисплей соответствующее сообщение.
Дана структура, описывающая рациональное число
struct rac
{
int chisl;
unsigned int znam;
};
Написать программу-калькулятор для работы с рациональными числами.