Описать запись с именем PRICE - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста, тема "Записи", вот задание: Описать запись с именем PRICE, содержащую следующие поля: -название товара; -название магазина, в котором продается товар; -стоимость товара в руб. Написать программу, выполняющую следующие действия: -ввод с клавиатуры данных в массив, состоящий из восьми элементов типа PRICE; -вывод таблицы на экран; -записи разместить в алфавитном порядке по названиям магазинов; -вывод отсортированной таблицы на экран; -вывод на экран информации о товарах, продающихся в магазине, название которого введено с клавиатуры; -если такого магазина нет, выдать на дисплей соответствующее сообщение.

Решение задачи: «Описать запись с именем PRICE»

textual
Листинг программы
  1. uses crt;
  2. const n=8;
  3. type price=record
  4.            tov,mgz:string[20];
  5.            stm:word;
  6.            end;
  7. var z:array[1..n] of price;
  8.     x:price;
  9.     i,j,k:byte;
  10.     m:string[20];
  11. begin
  12. clrscr;
  13. writeln('Введите данные о ',n,' товарах:');
  14. for i:=1 to n do
  15. with z[i] do
  16.  begin
  17.   writeln('Товар ',i);
  18.   write(' Название товара: ');readln(tov);
  19.   write(' Название магазина: ');readln(mgz);
  20.   write(' Стоимость: ');readln(stm);
  21.  end;
  22. clrscr;
  23. writeln('Исходный список товаров');
  24. writeln('----------------------------------------------------------------');
  25. writeln('|   Название товара  |  Название магазина |  Стоимость товара  |');
  26. writeln('----------------------------------------------------------------');
  27. for i:=1 to n do
  28. writeln('|',z[i].tov:20,'|',z[i].mgz:20,'|',z[i].stm:20,'|');
  29. writeln('----------------------------------------------------------------');
  30. for i:=1 to n-1 do
  31. for j:=i+1 to n do
  32. if z[i].mgz>z[j].mgz then
  33.  begin
  34.   x:=z[i];
  35.   z[i]:=z[j];
  36.   z[j]:=x;
  37.  end;
  38. writeln('Список товаров по алфавиту названий магазинов');
  39. writeln('----------------------------------------------------------------');
  40. writeln('|   Название товара  |  Название магазина |  Стоимость товара  |');
  41. writeln('----------------------------------------------------------------');
  42. for i:=1 to n do
  43. writeln('|',z[i].tov:20,'|',z[i].mgz:20,'|',z[i].stm:20,'|');
  44. writeln('----------------------------------------------------------------');
  45. {если высота экрана 25 символов, нужно 3 следующих строки, если 40, не нужно}
  46. write('Нажмите любую клавишу для продолжения');
  47. readkey;
  48. clrscr;
  49. write('Введите название магазина для поиска:');
  50. readln(m);
  51. writeln('Список товаров продающихся в магазине ',m);
  52. writeln('----------------------------------------------------------------');
  53. writeln('|   Название товара  |  Название магазина |  Стоимость товара  |');
  54. writeln('----------------------------------------------------------------');
  55. k:=0;
  56. for i:=1 to n do
  57. if z[i].mgz=m then
  58.  begin
  59.   k:=1;
  60.   writeln('|',z[i].tov:20,'|',z[i].mgz:20,'|',z[i].stm:20,'|');
  61.  end;
  62. writeln('----------------------------------------------------------------');
  63. if k=0 then writeln('Такого магазина нет!');
  64. write('Нажмите любую клавишу для выхода');
  65. readkey
  66. end.

Объяснение кода листинга программы

  1. Объявлены переменные:
    • z: массив из n объектов типа price (предполагается, что n равно 8)
    • x: объект типа price
    • i, j, k: булевые переменные для управления циклом
    • m: строковая переменная размером 20 символов
  2. Запрошены данные о товарах. Для каждого товара запрашиваются название товара, название магазина и стоимость. Эти данные записываются в соответствующие поля объекта типа price.
  3. Выводится исходный список товаров в формате таблицы.
  4. Производится сортировка списка товаров по названию магазина в алфавитном порядке.
  5. Выводится отсортированный список товаров в формате таблицы.
  6. Запрашивается название магазина для поиска.
  7. Выводится список товаров, которые продаются в указанном магазине, в формате таблицы. Если такого магазина нет, выводится соответствующее сообщение.
  8. Запрашивается нажатие любой клавиши для выхода.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.625 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы