Отсортировать записи по цене товара и вывести список товаров указанной фирмы-производителя - Turbo Pascal
Формулировка задачи:
Программа создает массив записей с данными о продукции на складе фирмы код товара, название товара, фирма-производитель , дата изготовления, количество товара, цена за единицу товара. Отсортировать записи по цене товара и вывести список товаров указанной фирмы-производителя .
Решение задачи: «Отсортировать записи по цене товара и вывести список товаров указанной фирмы-производителя»
textual
Листинг программы
program pr; type dat = record cod: integer; title: string[50]; firm: string[50]; data: string[50]; cout: integer; price: integer; end; arr = array [1..100] of dat; procedure sort_n(var m: arr; n: integer); // процедура сортировки названия var i, j: integer; buf: dat; begin for i := 1 to n - 1 do for j := i + 1 to n do if m[i].title > m[j].title then begin buf := m[i]; m[i] := m[j]; m[j] := buf; end; end; procedure sort_s(var m: arr; n: integer); // процедура сортировки цены var i, j: integer; buf: dat; begin for i := 1 to n - 1 do for j := i + 1 to n do if m[i].price > m[j].price then begin buf := m[i]; m[i] := m[j]; m[j] := buf; end; end; var a: arr; i, n, temp, j: integer; s: string; begin writeln('Введите количество записей'); readln(n); for i := 1 to n do begin writeln('Введите код '); readln(a[i].cod); writeln('Введите название '); readln(a[i].title); writeln('Введите фирму-производителя'); readln(a[i].firm); writeln('Введите дату изготовления'); readln(a[i].data); writeln('Введите количество '); readln(a[i].cout); writeln('Введите цену '); readln(a[i].price); writeln; end; sort_n(a, n); sort_s(a, n); writeln('Отсортированный список товаров'); for j := 1 to n do begin writeln(a[j].title); writeln(a[j].price); writeln; end; writeln; writeln('Введите фирму-производителя'); readln(s); writeln('Список товаров фирмы ', s); for i := 1 to n do if a[i].firm = s then begin writeln(a[i].title); writeln(a[i].cod); writeln(a[i].price); writeln(a[i].cout); writeln(a[i].data); writeln; end; end.
Объяснение кода листинга программы
- Создается тип данных
dat
, который представляет собой запись с полямиcod
,title
,firm
,data
,cout
иprice
. - Создается переменная
arr
типаarr
, которая представляет собой массив записей типаdat
. - Заполняется массив
arr
с помощью ввода данных от пользователя. - Вызываются процедуры
sort_n
иsort_s
для сортировки массиваarr
по полямtitle
иprice
соответственно. - Выводится отсортированный список товаров с помощью цикла
for
. - Запрашивается фирма-производитель и выводится список товаров этой фирмы с помощью еще одного цикла
for
. - Код программы завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д