Работа с массивом из записей

      Комментарии к записи Работа с массивом из записей отключены

Лабораторная работа №7

Цель работы:

1. Научиться описывать записи с заданной структурой

2. Освоить приемы ввода данных по полям записи

Типовой пример

Дан список, содержащий N записей (N?100) следующей структуры:

№ рейса Пункт отправления Пункт назначения День недели Время отправленияЧас Мин Цена билета
5 символов 15 символов 15 симв. 1..7 0..23 0..59 Real

1) Ввести заданый список с экрана в массив записей Spis.

2) Ввести искомый номер рейса — Isk_nom.

3) Найти в списке рейс с заданным номером.

4) Вывести информацию о найденном рейсе на экран.

Текст программы

Uses crt;

Type

T_Time=record

Hour:0..23;

Min:0..59;

end;

tzap=record {Описание типа для одной записи списка}

nom:string[5];

p1,p2:string[15];

day:1..7;

time:T_Time;

price:real;

end;

Var Spis:array[1..100]of tzap; {Описание списка}

N,i:byte;

Isk_nom:string[5];

Begin

Write(‘ Введите число записей в списке N = ‘);

Readln(N);

Writeln(‘Введите список по полям — каждое поле с новой строки’);

For i:=1 to N do

With Spis[i] do

begin

Write(‘ Номер очередного рейса — 5 символов ‘);

Readln(nom);

Write(‘ Пункт отправления — 15 символов ‘);

Readln(p1);

Write(‘ Пункт назначения — 15 символов ‘);

Readln(p2);

Write(‘ День недели — от 1 до 7 ‘);

Readln(day);

Write(‘ Время отправления — часы (от 0 до 23) и

минуты (от 0 до 59), через пробел ‘);

Readln(time.hour,time.min);

Write(‘ Цена билета = ‘);

Readln(price);

end;

writeln(‘ введите искомый номер рейса — 5 символов ‘);

Readln(Isk_nom);

{Oрганизация поиска заданного рейса в массиве записей Spis}

for i:=1 to N do

with Spis[i] do

if nom = Isk_nom then

begin

writeln(‘ Рейс найден’);

writeln(nom,’ ‘,p1,’ ‘,p2,’ ‘,day,’ ‘,time.hour,’:’,time.min,’ ‘,price);

readkey;

ha

end;

writeln(‘ Рейс не найден’);

readkey;

End.

Примечание: При вводе символьной информации необходимо учитывать, что пробел также является символом.

Варианты заданий

Вариант 1

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет структуру:

Шифр книги Ф.И.О. авторов Название Год

тип строка тип строка тип строка издания

5 символов 20 символов 15 символов целое

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск книг, изданных в 1960 году и шифром, начинающимся с буквы А с выводом найденных записей на экран.

Вариант 2

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Шифр товара Наименование Цена (в руб.) Количество

тип строка тип строка вещественное экземпляров

5 символов 20 символов число целое число

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск товаров, имеющих цену меньше 20000 руб. и количеством

экземпляров больше 100 с выводом найденных записей на экран.

Вариант 3

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Номер рейса Пункт отправления Пункт назначения Дни

тип строка тип строка тип строка полетов

5 символов 10 символов 10 символов от 1 до 7

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск рейсов, вылетающих из городаВолгоград в среду(3день)

с выводом найденных записей на экран.

Вариант 4

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. Домашний адрес Номер участка Год

тип строка тип строка тип рождения

15 символов 20 символов integer 1900..2000

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех граждан из списка, родившихся до 1950 года и номером

участка = 55 с выводом найденных записей на экран.

В А Р И А Н Т 5

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Шифр товара Наименование товара Цена(руб.) Признак

тип строка тип строка число типа наличия или

5 символов 20 символов real отсутствия

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех товаров, имеющихся в наличии и цена которых не

превышает 15000 руб., с выводом найденных записей на экран.

В А Р И А Н Т 6

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. Факультет Группа Год рождения

20 символов 5 символов 6 символов целое число

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех студентов, группы97ВС1, родившихся в 1979

году с выводом найденных записей на экран.

В А Р И А Н Т 7

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. авторов Название Год Шифр

тип строка тип строка издания строка

20 символов 20 символов целое 8 символов

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск книг, названия которых начинаются с буквыП и

изданных до 1990 года с выводом найденных записей на экран.

В А Р И А Н Т 8

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. авторов Название Год Шифр

тип строка тип строка издания строка

20 символов 20 символов целое 8 символов

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск книг, поле шифр которых начинаются с буквыТ и

изданных после 1990 года с выводом найденных записей на экран.

В А Р И А Н Т 9

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Номерр рейса Пункт отправления Пункт назначения Дни

тип тип строка тип строка полетов

integer 20 символов 10 символов от 1 до 7

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех рейсов с номерами большими, чем 50, и вылетающими в

Краснодар, с выводом найденных записей на экран.

В А Р И А Н Т 10

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. Домашний адрес Номер участка Год

тип строка тип строка тип рождения

15 символов 30 символов integer 1900..2000

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех граждан, родившихся до 1970 года и фамилия которых

начинается с буквыП с выводом найденных записей на экран.

В А Р И А Н Т 11

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Шифр книги Ф.И.О. авторов Название Год

тип строка тип строка тип строка издания

5 символов 20 символов 15 символов целое

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск книг, изданных до 1950 году и шифромСС11 с выводом

найденных записей на экран.

В А Р И А Н Т 12

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Шифр товара Наименование Цена(в руб.) Количество

тип строка тип строка вещественное экземпляров

5 символов 20 символов число целое число

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск товаров, имеющих цену не меньше 20000 руб. и количеством

экземпляров больше 180 с выводом найденных записей на экран.

В А Р И А Н Т 13

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Номер рейса Пункт отправления Пункт назначения Дни

тип строка тип строка тип строка полетов

5 символов 12 символов 10 символов от 1 до 7

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск рейсов, вылетающих из городаВладивосток в 1 или 3

день недели с выводом найденных записей на экран.

В А Р И А Н Т 14

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. Домашний адрес Номер участка Год

тип строка тип строка тип рождения

15 символов 20 символов integer 1900..2000

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех граждан из списка, родившихся до 1980 года и номером

участка не более 100 с выводом найденных записей на экран.

В А Р И А Н Т 15

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Шифр товара Наименование товара Цена(руб.) Признак

тип строка тип строка число типа наличия или

5 символов 20 символов real отсутствия

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех товаров, которых нет в наличии и имеющих цену, не

меньше 25000 руб. с выводом найденных записей на экран.

В А Р И А Н Т 16

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. Факультет Группа Год рождения

20 символов 5 символов 6 символов целое число

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех студентов, группы97ВС2, родившихся до 1980

году с выводом найденных записей на экран.

В А Р И А Н Т 17

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. авторов Название Год Шифр

тип строка тип строка издания строка

20 символов 20 символов целое 8 символов

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск книг, фамилии авторов которых начинаются с буквыВ, и

изданных после 1990 года с выводом найденных записей на экран.

В А Р И А Н Т 18

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. авторов Название Год Шифр

тип строка тип строка издания строка

20 символов 20 символов целое 8 символов

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск книг, поле шифр которых начинаются с буквыТ и

изданных в 1990 году с выводом найденных записей на экран.

В А Р И А Н Т 19

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Номер рейса Пункт отправления Пункт назначения Дни

тип тип строка тип строка полетов

integer 20 символов 10 символов от 1 до 7

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех рейсов с номерами меньшими, чем 100 и вылетающими в

из пунктаКраснодар с выводом найденных записей на экран.

В А Р И А Н Т 20

1. Дан список, содержащий не менее 10 записей, каждая из которых имеет

структуру:

Ф.И.О. Домашний адрес Номер участка Год

тип строка тип строка тип рождения

15 символов 30 символов integer 1900..2000

2. Разработать программу, выполняющую следующие функции:

— ввод данного списка в массив записей;

— вывод массива записей на экран;

— поиск всех граждан, родившихся после 1970 года и фамилия которых

начинается с буквыА с выводом найденных записей на экран.

Подпрограммы

При разработке сложных программ используют так называемый структурный подход к программированию и нисходящее проектирование программ, когда сложная программ разбивается на более (или менее) функционально-законченные части, каждая из которых проще исходной программы. Такие программы легче отлаживать и использовать. Отдельные части программы называют подпрограммами. Использование подпрограмм наиболее эффективно в тех случаях, когда одна и та же подпрограмма может использоваться в программе не один раз, возможно с различными параметрами. Это позволяет экономить память компьютера.

Подпрограммы, в свою очередь, могут разбиваться на более мелкие части, реализуемые также в виде подпрограмм более низкого уровня.

В языке Турбо Паскаль используют подпрограммы двух типов: процедуры (Procedure) и функции (Function). Подпрограммы по структуре сходны с программой, но они обязательно имеют оригинальное имя, которое указывается в заголовке. Подпрограммы описываются в разделе описаний, использующих (вызывающих) их программ (или подпрограмм).

16. 1 Процедуры. Описание процедур. Область действия имён

Статьи к прочтению:

Уроки по С++. Урок 12.1. Работа с массивами.


Похожие статьи:

  • Работа с двухмерными массивами (матрицами)

    Двумерные массивы называют матрицами. У них первый индекс означает номер строки, второй – номер столбца. Пример 1. Описания типов двумерных массивов:…

  • Работа с одномерными массивами

    Цель работы: 1. Построение схем алгоритмов с использованием массивов; 2. Разработка программ с использованием одномерных массивов Типовой пример…