Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Контрольная работа.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
656.9 Кб
Скачать
  1. Постановка задачи

Задан массив, содержащий информацию об аудиториях ВУЗа. Структура массива: номер аудитории, количество посадочных мест (максимальное количество посадочных мест – 210, минимальное - 15). Рассортировать список аудиторий по возрастанию количества посадочных мест.

  1. Пример выполнения программы

program Pr2;

{$APPTYPE CONSOLE}

uses

SysUtils;

const k1=15;k2=210;

type

TRec=record

audience:string[4];

amount:word;

end;

TMas=array[1..20] of TRec;

var

Mas:TMas;

elem:TRec;

n,i,j,k:integer;

function Rus(mes:string):string;

var h:byte;

begin

for h:=1 to length(mes) do

case mes[h] of

'А'..'п':mes[h]:=Chr(Ord(mes[h])-64);

'р'..'я':mes[h]:=Chr(Ord(mes[h])-16);

end;

rus:=mes;

end;

{ функция для проверки попадает ли значение в заданный интервал }

function p(q,q1,q2:byte):boolean;

begin

if (q<q1) or (q>q2) then

p:=false

else p:=true;

end;

{ процедура ввода }

procedure printel(var s:TRec);

var pr:boolean;

begin

write(rus('Номер аудитории ->')); readln(s.audience);

write(rus('Количество мест ->'));

repeat

readln(s.amount);

pr:=p(s.amount,k1,k2);

if not pr then

begin

writeln(rus('Повторите ввод количества мест'));

writeln(rus('Это число от 15 до 210'));

end;

until pr;

end;

{ процедура вывода }

procedure review(massif:Tmas);

begin

writeln(rus(' Список аудиторий'));

writeln(rus(' Аудитория Число мест'));

for i:=1 to n do

with massif[i] do

writeln(' ',audience,' ',amount);

end;

{процедура вывода меню }

Procedure manu;

Begin

writeln;

writeln(rus('1-Ввод'));

writeln(rus('2-Вывод'));

writeln(rus('3-Сортировка'));

writeln(rus('0-Выход'));

writeln;

end;

{ процедура сортировки }

Procedure Sort;

Begin

For i:=n downto 2 do

For j:=1 to i-1 do

if mas[j].amount>mas[j+1].amount then

begin

elem:=mas[j];

mas[j]:=mas[j+1];

mas[j+1]:=elem;

end;

review(mas);

end;

begin

repeat

manu;

Write (rus('Ваш выбор->'));Readln(k);

Case k of

1:begin

write(rus('Число аудиторий- '));

readln(n);

for i:=1 to n do

printel(mas[i]);

end;

2:review(mas);

3:sort;

end;

until k=0;

end.

Индивидуальные задания для выполнения контрольной работы

Задача 1 Работа с матрицами

  1. Матрица М содержит 7 строк, 9 столбцов. Расположить эле­менты в каждой строке в порядке возрастания.

  2. Матрица Р состоит из М строк, N столбцов. Поменять местами первую строку с последней, вторую с предпоследней, и т.д.

  3. Матрица содержит 7 строк, 4 столбца. Сгруппировать ну­левые элементы в конце матрицы (Можно использовать вспомогатель­ный массив).

  4. Матрица М состоит из 6 отрок, 8 столбцов. Выяснить, сколько элементов в каждой строке превышают среднее арифметическое значение, определенное для этой строки. Из найденных величин составить массив Р.

  5. Матрица М состоит на 9 отрок, 8 столбцов. Выяснить, явля­ется ли минимальный элемент 2-ой строки минимальным и в своем столице.

  6. Матрица М состоит из 4 строк, 6 столбцов. Сформировать матрицу М1, заменив четные столбцы исходной матрицы М нулевыми элементами.

  7. Матрица М состоит из 8 строк, 6 столбцов. Сформировать матрицу М1, в которой каждым 2 строкам исход­ной матрицы соответствует 1 строка двойной длины.

  8. Выяснить, имеется ли в матрице М элемент, являющийся максимальным в своем столбце и минимальным в своей строке. Если такой найдется, показать его координаты, если нет – выдать соответствующее сообщение.

  9. Матрица М состоит ив 11 отрок в 11 столбцов. Поменять местами элементы, расположенные симметрично относительно 6-го столбца..

  10. Матрица МТ состоит из 5 строк, 6 столбцов. Переставить отроки в порядке возрастания их максимальных элементов.

  11. Матрица М состоит из 5 строк, 7 столбцов. Расположить элементы в каждом столбце в порядке возрастания.

  12. Матрица М (6 строк, 7 столбцов) состоит из равного коли­чества положительных и отрицательных элементов. Сгруппировать положительные элементы в верхней половине матрицы.

  13. Матрица М состоит из 8 строк, 9 столбцов. Выяснить, есть ли среди ее элементов хотя бы два одинаковых. Напечатать "ДА" или "НЕТ" в зависимости от результатов анализа.

  14. Матрица М состоит из 5 строк, 7 столбцов. Выяснить, есть ли в числе ее элементов хотя бы два различных. Напечатать "ДА" или "НЕТ" в соответствии с результатом анализа. Сформировать массив М1 из элементов матрицы М. Повторяющиеся элементы записывать только один раз.

  15. Матрица М состоит из 7 строк, 7 столбцов. Поменять местами элементы столбца, содержащего большее число положительных элементов, и элементы главной диагонали.

  16. Матрица М состоит из 5 строк, 7 столбцов. Преобразовать строки матрицы по сле­дующему правилу: если число положительных элементов в строке боль­ше числа отрицательных - расположить элементы строки в обратном порядке. В противном случае отрицательные элементы заменить ну­лем.

  17. Матрица М состоит из 5 строк, 8 столбцов. Транспонировать ее.

  18. Матрица М состоит из 7 строк, 9 столбцов. Найти максималь­ный по абсолютной величине элемент и поменять его местами с первым эле­ментом.

  19. Матрица М состоит из 5 строк, 9 столбцов. Сформировать матрицу МТ1, первая строка которой равна последней строке исход­ной матрицы, вторая - предпоследней и т.д.

  20. Матрица М состоит из 7 отрок, 9 столбцов. Умножить элемен­ты всех столбцов, начиная со второго, на соответствующие элементы первого столбца.

  21. Матрица М состоит из 5 строк, 8 столбцов. Составить мас­сив М1 из положительных, М2 - из отрицательных элементов матрицы.

  22. Матрица М состоит из 5 строк, 5 столбцов. Преобразовать матрицу по правилу: вычеркнуть строки, имеющие четное число отличных от нуля элементов.

  23. Матрица М состоит из 5 строк, 8 столбцов. Преобразовать матрицу по правилу: вычеркнуть столбцы, имеющие четное число ненулевых элементов.

  24. Матрица М состоит из 7 строк, 7 столбцов. Преобразовать матрицу следующим образом: вычеркнуть строки и столбцы, на пересечении которых стоят элементы, кратные пяти.

  25. Матрица М состоит из 6 строк, 5 столбцов, определить координаты элементов, соседствующих с нулевыми.

  26. Матрица М состоит из 8 строк, 8 столбцов. Упорядочить элементы в каждой строке в порядке убывания их значений.

  27. Матрица К состоит из 5 строк, 7 столбцов. Поменять местами элементы строки с максимальной суммой элементов и элементы второго столбца.

  28. Матрица В состоит из 7 строк, 7 столбцов. Поменять местами элементы столбца, содержащего большее число положительных элементов, и элементы главной диагонали.

  29. Матрица В состоит из 5 строк, 7 столбцов. Упорядочить элементы столбцов в по­рядке убывания.

  30. Матрица М состоит из 5 строк, 7 столбцов. Строки матрицы расположить по убыванию суммы элементов строк.

Задача 2 Работа с массивами записей

  1. Задан массив Н сведений о заработной плате служащих, массив имеет следующую структуру: имя служащего, общее количество проработанных часов, зарплата, размер налога. Выдать ведомость выдачи зарплаты за вычетом налога, массив рассортировать по алфавиту.

  2. Задан массив С сведений о служащих некоторой фирмы. Массив имеет следующую структуру: имя служащего, номер служащего, дата рождения, дата найма. Определить список служащих, проработавших в фирме более пяти лет, рассортировать список по уменьшению даты рождения.

  3. Задан массив С (см. задачу 2). Определить, кто из служащих нанят на работу в текущем году, список таких служащих рассортировать по возрасту.

  4. Задан массив С, содержащий информацию о игроках футбольной команды. Структура массива: номер игрока, фамилия, имя, дата рождения, количество забитых мячей. Определить список десяти лучших игроков, рассортированный по дате рождения.

  5. Задан массив С (см. задачу 4). Определить список игроков, забивших менее 3 мячей, рассортированный по алфавиту.

  6. Массив К содержит информацию о спортсменах. Структура массива: фамилия, имя, спортклуб, год вступления. Выдать список спортсменов, состоящих в заданном спортивном клубе, рассортированный в порядке увеличения года вступления.

  7. Задан массив В сведений о проживающих в гостинице, массив имеет следующую структуру: фамилия, номер комнаты, цель приезда, возраст, номер в книге регистрации. Определить средний возраст лиц, приехавших в командировку, и получить описок, приехавших на отдых, рассортированный в поряд­ке возрастания номеров по книге регистрации.

  8. Задан массив С сведений о рабочих цеха со следующей струк­турой: фамилия, табельный номер, разряд, возраст. Определить средний возраст работающих в цехе и получить опи­сок рабочих, имеющих 4 разряд, рассортированный по воз­растанию табельных номеров.

  9. Задан массив, имеющий следующую структуру: день (число, месяц), температура воздуха. Определить минимальную, максимальную и среднюю температуру воздуха, дату максимальной температуры. Минимум и максимум темпе­ратуры найти методом сортировки массива по возрастанию.

  10. Задан массив К, представляющий результаты сдачи вступитель­ных экзаменов, со следующей структурой: шифр абитуриента, средний балл по аттестату, 1-я оценка, 2-я оценка, 3-я оценка, 4-я оценка. Рассортировать массив по убыванию общего балла.

  11. Массив Н представляет собой сведения о выпускниках университета и имеет структуру: шифр студента, средний балл учебных оценок, средний балл за общественную работу. Составить описок выпускников, рассортированный по убыванию общего балла.

  12. Массив К сведений об абитуриентах, сдавших вступительные экзамены, имеет структуру: шифр абитуриента, общий балл по экзаменам, признак наличия стажа работы. Составить список абитуриентов, имеющих стаж, в порядке убы­вания их балла.

  13. Массив М сведений о наличии учебников в библиотеке имеет следующую структуру: название книги, шифр книги, количество экземпля­ров, год издания. Определить процент книг с определенным годом издания и рас­сортировать список таких книг по возрастанию шифра.

  14. Результаты отборочных соревнований по одному из видов спорта занесены в массив Р, имеющий следующую структуру: шифр спортсмена, фамилия, балл за упражнение 1, балл за упражнение 2, балл за упражнение 3. Требуется распределить места между спортсменами и упорядочить их список в соответствии с этим распределением.

  15. К - массив данных о студентах, принявших участие в сорев­нованиях, имеет следующую структуру: шифр студента, фамилия, год поступления, специальность, порядковый номер, количество набранных очков. Рассортировать массив по годам поступления, выяснить, сколь­ко студентов определенной специальности участвовало в соревнова­ниях, и подсчитать сумму очков, набранных студентами этой специа­льности.

  16. Задан массив Н сведений о заработной плате служащих, массив имеет следующую структуру: фамилия и имя служащего, общее количество проработанных часов, зарплата, размер налога. Выдать ведомость выдачи зарплаты за вычетом налога, массив рассортировать по алфавиту.

  17. Задан массив С сведений о служащих некоторой фирмы. Массив имеет следующую структуру: имя служащего, шифр служащего, дата рождения, дата найма. Определить список служащих, проработавших в фирме более пяти лет, рассортировать список по уменьшению даты рождения.

  18. Задан массив С (см. задачу 17). Определить, кто из служащих нанят на работу в текущем году, список таких служащих рассортировать по возрасту.

  19. Задан массив С, содержащий информацию о игроках футбольной команды. Структура массива: номер игрока, фамилия, имя, дата рождения, количество забитых мячей. Определить список десяти лучших игроков, рассортированный по дате рождения.

  20. Задан массив С (см. задачу 19). Определить список игроков, забивших менее 3 мячей, рассортированный по алфавиту.

  21. Массив К содержит информацию о спортсменах. Структура массива: Фамилия, имя, спортклуб, год вступления. Выдать список спортсменов, состоящих в заданном спортивном клубе, рассортированный в порядке увеличения года вступления.

  22. Задан массив А сведений о сдаче экзаменов некоторой группой 25 человек, массив имеет следующую структуру: шифр студента, фамилия, имя, экзаменационная оценка. Определить средний балл группы по данному экзамену и выдать список студентов, получивших хорошие и отличные оценки, в по­рядке возрастания их шифров.

  23. Задан массив В сведений о проживающих в гостинице, массив имеет следующую структуру: номер комнаты, фамилия, цель приезда, возраст, номер в книге регистрации. Определить средний возраст лиц, приехавших в командировку, и получить описок, приехавших на отдых, рассортированный в поряд­ке возрастания номеров по книге регистрации.

  24. Задан массив С сведений о рабочих цеха со следующей струк­турой: табельный номер, фамилия, имя. разряд, возраст. Определить средний возраст работающих в цехе и получить опи­сок рабочих, имеющих 4 разряд, рассортированный по воз­растанию табельных номеров.

  25. Задан массив К, представляющий результаты сдачи вступитель­ных экзаменов, со следующей структурой: шифр абитуриента, средний балл по аттестату, 1-я оценка, 2-я оценка, 3-я оценка, 4-я оценка. Рассортировать массив по убыванию общего балла.

  26. Массив К сведений об абитуриентах, сдавших вступительные экзамены, имеет структуру: шифр абитуриента, общий балл по экзаменам, признак наличия стажа работы. Составить список абитуриентов, имеющих стаж, в порядке убы­вания их балла.

  27. Массив Р сведений о сдаче сессии учебной группой имеет следующую структуру: шифр студента, количество положи­тельных оценок, количество неудовлетворительных оценок, сумма баллов по всем экзаменам. Определить процент успеваемости в группе и упорядочить список группы в соответствии с результатами сессии.

  28. 3адан массив С - план поставок продукции, структура массива: шифр потребителя, шифр изделия, дата поставки, количество к поставке. Определить количество продукции, которое должно быть постав­лено в заданный день. Массив шифров такой продукции рассортиро­вать по возрастанию шифра потребителя.

  29. К - массив данных о студентах, принявших участие в сорев­нованиях, имеет следующую структуру: шифр студента: год поступления, специальность, порядковый номер, количество набранных очков. Рассортировать массив по годам поступления, выяснить, сколь­ко студентов определенной специальности участвовало в соревнова­ниях, и подсчитать сумму очков, набранных студентами этой специа­льности.

  30. Массив Т-план отгрузки продукции, имеет следующую струк­туру: шифр потребителя, шифр изделия, вид транспорта, количество, дата отгрузки. Определить сколько продукции будет перевезено железнодорож­ным транспортом за плановый период. Рассортировать список потре­бителей по возрастанию их шифров.

  31. Задан массив Н сведений о сдаче экзаменов студентами некоторой специальности университета. Массив имеет следующую структуру: шифр группы: год поступления, количество отличных оценок, количество хороших оценок, количество удовлетворительных оценок, количество неудовлетворительных оценок. Определить процент успеваемости по каждой группе, составить список групп, име­ющих 100-процентную успеваемость, рассортировав группы по годам поступления.