Programmirovanie_zadachinik
.pdf16Описать структуру с именем ZNAK, содержащую следующие поля:
фамилия, имя;
знак Зодиака;
дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK (записи должны быть упорядочены по дате рождения);
вывод на экран информации о людях, родившихся под знаком, название которого введено с клавиатуры (если таких нет, вывести соответствующее сообщение).
17Описать структуру с именем ZNAK, содержащую следующие поля:
фамилия, имя;
знак Зодиака;
дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK (записи должны быть упорядочены по знакам Зодиака);
вывод на экран информации о людях, родившихся в месяц, значение которого введено с клавиатуры (если таких нет, вывести соответствующее сообщение).
18Описать структуру с именем PRICE, содержащую следующие поля:
название товара;
название магазина, в котором продается товар;
стоимость товара в рублях.
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа
PRICE (записи должны быть упорядочены в алфавитном порядке по названиям товаров);
вывод на экран информации о товаре, название которого введено с клавиатуры (если такого товара нет, вывести соответствующее сообщение).
19Описать структуру с именем PRICE, содержащую следующие поля:
название товара;
название магазина, в котором продается товар;
стоимость товара в рублях.
Написать программу, выполняющую следующие действия:
91
ввод с клавиатуры данных в массив, состоящий из восьми элемент PRICE (записи должны быть упорядочены в алфавитном порядке по названиям магазинов);
вывод на экран информации о товарах, продающихся в магазине, название которого введено с клавиатуры (если такого магазина нет, вывести соответствующее сообщение).
20Описать структуру с именем ORDER, содержащую следующие поля:
расчетный счет плательщика;
расчетный счет получателя;
перечисляемая сумма в рублях.
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элемент ORDER (записи должны быть размещены в алфавитном порядке по расчетным счетам плательщиков);
вывод на экран информации о сумме, снятой с расчетного счета плательщика введенного с клавиатуры (если такого расчетного счета нет, вывести соответствующее сообщение).
21Описать структуру с именем ZNAK, содержащую следующие поля:
фамилия, имя;
знак Зодиака;
дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK (записи должны быть упорядочены по дате рождения);
вывод на экран информации о людях, родившихся под знаком, название которого введено с клавиатуры (если таких нет, вывести соответствующее сообщение).
22Описать структуру с именем NOTE, содержащую следующие поля:
фамилия, имя;
номер телефона;
дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE (записи должны быть размещены по алфавиту);
вывод на экран информации о людях, чьи дни рождения приходятся на месяц, значение которого введено с клавиатуры (если таких нет, вывести соответствующее сообщение).
92
23Описать структуру с именем MARSH, содержащую следующие поля:
название начального пункта маршрута;
название конечного пункта маршрута;
номер маршрута.
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа MARSH (записи должны быть упорядочены по номерам маршрутов);
вывод на экран информации о маршрутах, которые начинаются или оканчиваются в пункте, название которого введено с клавиатуры (если таких маршрутов нет, вывести соответствующее сообщение).
24Описать структуру с именем ZNAK, содержащую следующие поля:
фамилия, имя;
знак Зодиака;
дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK (записи должны быть упорядочены по знакам Зодиака);
вывод на экран информации о людях, родившихся в месяц, значение которого введено с клавиатуры (если таких нет, вывести соответствующее сообщение).
25Описать структуру с именем STUDENT, содержащую следующие поля:
фамилия и инициалы;
номер группы;
успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT (записи должны быть упорядочены по алфавиту);
вывод на экран фамилий и номеров групп для всех студентов, имеющих хотя бы одну оценку 2 (если таких студентов нет, вывести соответствующее сообщение).
93
26Описать структуру с именем STUDENT, содержащую следующие поля:
фамилия и инициалы;
номер группы;
успеваемость (массив из пяти элементов).
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDEND (записи должны быть упорядочены по возрастанию номера группы);
вывод на экран фамилий и номеров групп для всех студентов, включенных в массив, если средний балл студента больше 4,0 (если таких студентов нет вывести соответствующее сообщение).
27Описать структуру с именем AEROFLOT, содержащую следующие поля:
название пункта назначения рейса;
номер рейса;
тип самолета.
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT (записи должны быть упорядочены по возрастанию номера рейса);
вывод на экран номеров рейсов и типов самолетов, вылетающих в пункт назначения, название которого совпало с названием, введенным с клавиатуры (если таких рейсов нет, вывести соответствующее сообщение).
28Описать структуру с именем PRICE, содержащую следующие поля:
название товара;
название магазина, в котором продается товар;
стоимость товара в рублях.
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа
PRICE (записи должны быть упорядочены в алфавитном порядке по названиям товаров);
вывод на экран информации о товаре, название которого введено с клавиатуры (если такого товара нет, вывести соответствующее сообщение).
94
29Описать структуру с именем ZNAK, содержащую следующие поля:
фамилия, имя;
знак Зодиака;
дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK (записи должны быть упорядочены по дате рождения);
вывод на экран информации о человеке, чья фамилия введена с клавиатуры (если такого нет, вывести соответствующее сообщение).
30Описать структуру с именем MARSH, содержащую следующие поля:
название начального пункта маршрута;
название конечного пункта маршрута;
номер маршрута.
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из восьми элементов типа MARSH (записи должны быть упорядочены по номерам маршрутов);
вывод на экран информации о маршрутах, которые начинаются или оканчиваются в пункте, название которого введено с клавиатуры (если таких маршрутов нет, вывести соответствующее сообщение).
95
Л а б о р а т о р н а я р а б о т а № 30 ДИНАМИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ. СТЕК
Цель работы: научиться описывать и применять на практике динамические структуры данных (стеки).
Для подготовки к работе изучить:
1.основные принципы функционирования стека;
2.основные процедуры и функции для работы с динамической структурой данных (создание, добавление, удаление, вывод на экран, очистка).
ЗАДАНИЕ:
Описать структуры данных, процедуры и функции, необходимые для работы с двумя стеками. Используя генератор случайных чисел, заполнить стек Stek1, затем выполнить задание.
№ |
Тип |
Задание |
|
|
|
|
|
1 |
char |
В стек Stek2 поместить все гласные буквы из Stek1 и |
|
найти их количество. |
|||
|
|
||
|
|
|
|
2 |
integer |
В стек Stek2 поместить все положительные элементы из |
|
Stek1 и найти их сумму. |
|||
|
|
||
|
|
|
|
3 |
real |
В стек Stek2 поместить все четные элементы из Stek1 и |
|
найти их сумму. |
|||
|
|
||
|
|
|
|
4 |
word |
В стек Stek2 поместить все отрицательные элементы и |
|
найти их произведение. |
|||
|
|
||
|
|
|
|
5 |
integer |
В стек Stek2 поместить все максимальные элементы из |
|
Stek1 и найти их количество. |
|||
|
|
||
|
|
|
|
6 |
char |
В стек Stek2 поместить все латинские буквы из Stek1 и |
|
найти их количество. |
|||
|
|
||
|
|
|
|
7 |
char |
В стек Stek2 поместить все знаки операций из Stek1 и |
|
найти их количество. |
|||
|
|
||
|
|
|
|
8 |
real |
В стек Stek2 поместить нечетные элементы из Stek1 и |
|
найти их сумму. |
|||
|
|
||
|
|
|
|
9 |
char |
В стек Stek2 поместить все цифры из Stek1 и найти их |
|
количество. |
|||
|
|
||
|
|
|
96
10 |
string |
В стек Stek2 поместить все строки из Stek1, |
|
начинающиеся на букву «z». |
|||
|
|
||
|
|
|
|
11 |
integer |
В стек Stek2 поместить нечетные положительные |
|
элементы из Stek1 и найти их сумму. |
|||
|
|
||
|
|
|
|
12 |
real |
В стек Stek2 поместить элементы из Stek1, кратные 3 и |
|
найти их сумму. |
|||
|
|
||
|
|
|
|
13 |
char |
В стек Stek2 поместить гласные русские буквы из Stek1 и |
|
найти их количество. |
|||
|
|
||
|
|
|
|
14 |
char |
В стек Stek2 поместить все знаки операций из Stek1 и |
|
найти их количество. |
|||
|
|
||
|
|
|
|
15 |
integer |
В стек Stek2 поместить все минимальные элементы из |
|
Stek1 и найти их сумму. |
|||
|
|
||
|
|
|
|
16 |
integer |
В стек Stek2 поместить все минимальные элементы из |
|
Stek1 и найти их сумму. |
|||
|
|
||
|
|
|
|
17 |
real |
В стек Stek2 поместить все неотрицательные элементы из |
|
Stek1 и найти их сумму. |
|||
|
|
||
|
|
|
|
18 |
integer |
В стек Stek2 поместить все нечетные элементы из Stek1 и |
|
найти их произведение. |
|||
|
|
||
|
|
|
|
19 |
integer |
В стек Stek2 поместить нечетные элементы кратные 5 из |
|
Stek1 и найти их сумму. |
|||
|
|
||
|
|
|
|
20 |
real |
В стек Stek2 поместить все отрицательные элементы из |
|
Stek1 и найти их произведение. |
|||
|
|
||
|
|
|
|
21 |
word |
В стек Stek2 поместить нечетные элементы из Stek1 и |
|
найти их сумму. |
|||
|
|
||
|
|
|
|
22 |
char |
В стек Stek2 поместить все латинские буквы из Stek1 и |
|
найти их количество. |
|||
|
|
||
|
|
|
|
23 |
word |
В стек Stek2 поместить простые числа из Stek1 и найти их |
|
сумму. |
|||
|
|
||
|
|
|
|
24 |
real |
В стек Stek2 поместить все максимальные элементы из |
|
Stek1 и найти их количество. |
|||
|
|
||
|
|
|
|
25 |
integer |
В стек Stek2 поместить элементы, кратные 5 из Stek1 и |
|
найти их сумму. |
|||
|
|
||
|
|
|
97
26 |
integer |
В стек Stek2 поместить элементы из Stek1, являющиеся |
|
полными квадратами и найти их количество. |
|||
|
|
||
|
|
|
|
27 |
integer |
В стек Stek2 поместить все четные положительные |
|
элементы из Stek1 и найти их сумму. |
|||
|
|
||
|
|
|
|
28 |
string |
В стек Stek2 поместить все слова из Stek1, начинающиеся |
|
на букву «s». |
|||
|
|
||
|
|
|
|
29 |
real |
В стек Stek2 поместить нечетные отрицательные |
|
элементы и найти их сумму. |
|||
|
|
||
|
|
|
|
30 |
word |
В стек Stek2 поместить нулевые элементы из Stek1 и |
|
найти их количество. |
|||
|
|
||
|
|
|
98
Л а б о р а т о р н а я р а б о т а № 31
ДИНАМИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ. ПРЕОБРАЗОВАНИЕ ВЫРАЖЕНИЙ
Цель работы: научиться описывать и применять на практике динамические структуры данных (стеки), научиться работать с префиксной и постфиксной формой записи выражений.
Для подготовки к работе изучить:
1.основные принципы функционирования стека;
2.основные процедуры и функции для работы с динамической структурой данных (создание, добавление, удаление, вывод на экран, очистка);
3.алгоритмы перевода выражения между различными формами записи;
4.алгоритмы вычисления значения выражения, записанного в разных формах записи.
№ |
Задание |
|
|
1 |
Разработать программу преобразования выражения из инфиксного в |
префиксное представление. |
|
|
|
2 |
Разработать программу преобразования выражения из инфиксного в |
постфиксное представление. |
|
|
|
3 |
Разработать программу преобразования выражения из постфиксного |
в инфиксное представление. |
|
|
|
4 |
Разработать программу преобразования выражения из постфиксного |
в префиксное представление. |
|
|
|
5 |
Разработать программу преобразования выражения из префиксного в |
постфиксное представление. |
|
|
|
6 |
Разработать программу преобразования выражения из префиксного в |
инфиксное представление. |
|
|
|
7 |
Разработайте программу вычисления выражения в префиксной |
форме. |
|
|
|
8 |
Разработайте программу вычисления выражения в постфиксной |
форме. |
|
|
|
99
9 |
Разработайте программу вычисления выражения в инфиксной |
форме. |
|
|
|
10 |
Проверить правильность расстановки скобок в выражении |
(предусмотреть использование 3-х типов скобок). |
|
|
|
11 |
Разработать программу преобразования выражения из инфиксного в |
префиксное представление. |
|
|
|
12 |
Разработать программу преобразования выражения из инфиксного в |
постфиксное представление. |
|
|
|
13 |
Разработать программу преобразования выражения из постфиксного |
в инфиксное представление. |
|
|
|
14 |
Разработать программу преобразования выражения из постфиксного |
в префиксное представление. |
|
|
|
15 |
Разработать программу преобразования выражения из префиксного в |
постфиксное представление. |
|
|
|
16 |
Разработать программу преобразования выражения из префиксного в |
инфиксное представление. |
|
|
|
17 |
Разработайте программу вычисления выражения в префиксной |
форме. |
|
|
|
18 |
Разработайте программу вычисления выражения в постфиксной |
форме. |
|
|
|
19 |
Разработайте программу вычисления выражения в инфиксной |
форме. |
|
|
|
20 |
Проверить правильность расстановки скобок в выражении |
(предусмотреть использование 3-х типов скобок). |
|
|
|
21 |
Разработать программу преобразования выражения из инфиксного в |
префиксное представление. |
|
|
|
22 |
Разработать программу преобразования выражения из инфиксного в |
постфиксное представление. |
|
|
|
23 |
Разработать программу преобразования выражения из постфиксного |
в инфиксное представление. |
|
|
|
24 |
Разработать программу преобразования выражения из постфиксного |
в префиксное представление. |
|
|
|
100