Создать массив записей о косметике - Turbo Pascal

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

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

Помогите кто может...я понимаю как ввести часть там где Косметика(духи\шампунь), а вот как ввести все остальное... Создать массив записей, структура которого:

Решение задачи: «Создать массив записей о косметике»

textual
Листинг программы
  1. type
  2.     kosmetika=record
  3.                     dyxu,shampyn:string[50];
  4.                     end;
  5.     tovar=record
  6.                 data:string[20];
  7.                 firma:string[50];
  8.                 cena:integer;
  9.                 Kol:integer;
  10.                 Kosm:kosmetika;
  11.                 end;
  12.     mas=array  [1..20] of tovar;
  13. var
  14.     a:mas ;
  15.     I,N,w:integer;
  16. procedure vvod(var a:mas; var N:Integer);
  17. begin
  18. Writeln('Kol vvodimix firm = ');
  19. Readln(n);
  20. for i:=1 to n do
  21.     begin
  22.     write('data -> ');readln(a[i].data);
  23.     write('Firma -> '); readln(a[i].Firma);
  24.     Write('Cena -> ');readln(a[i].cena);
  25.     write('Kol -> ');readln(a[i].kol);
  26.     write('Dyxu -> ');readln(a[i].Kosm.Dyxu);
  27.     write('Shampyn -> ');readln(a[i].Kosm.Shampyn);
  28.     writeln;
  29.     end;
  30. Writeln('Vvod dannix zaverchen! To Enter ...');
  31. readln;
  32. end;
  33.  
  34. procedure pros(a:mas; n:integer);
  35. begin
  36. for I:=1 to n do
  37.     begin
  38.     writeln('Data -> ',a[i].data);
  39.     writeln('Firma -> ',a[i].firma);
  40.     writeln('Cena ->',a[i].cena);
  41.     writeln('Kol -> ',a[i].kol);
  42.     writeln('Dyxu -> ',a[i].Kosm.Dyxu);
  43.     writeln('Shampyn ->',a[i].Kosm.Shampyn);
  44.     writeln;
  45.     writeln('To Ente ...');
  46.     readln;
  47.     end;
  48.  
  49. end;
  50.  
  51. procedure StoimTovar(a:mas; n:integer);
  52. var sto:integer;
  53.     s:string[50];
  54. Begin
  55. Write('Vvedite nazvanie firma -> '); readln(s);
  56. for i:=1 to n do
  57.     if a[i].firma=s then sto:=a[i].cena*a[i].kol;
  58. writeln('Symmarnai stoimost tovarov -> ',sto);
  59. writeln('To Enter ...');
  60. readln;
  61. end;
  62.  
  63. procedure PostKosmet(a:mas; n:integer);
  64. var dy,sham:string[50];
  65. begin
  66. write('Vvedite nazvanie dyxov -> ');readln(dy);
  67. write('Vvedite nazv shampyn -> ');readln(sham);
  68. writeln('Spisok magazinov:');
  69. for i:=1 to n do
  70.     if (dy=a[i].kosm.dyxu) or (sham=a[i].kosm.Shampyn) then writeln(a[i].firma);
  71.  
  72. writeln('To Enter ...');
  73. readln;
  74. end;
  75.  
  76. begin
  77. w:=10;
  78. while w<>0 do
  79.       begin
  80.       writeln('1 Vvod');
  81.       writeln('2 prosmotr');
  82.       writeln('3 Stoimost tovara v veden firma');
  83.       writeln('4 Vivod firm gde est iskom kosmetika');
  84.       writeln('0 vixod');
  85.       readln(w);
  86.       case w of
  87.            1:vvod(a,n);
  88.            2:pros(a,n);
  89.            3:StoimTovar(a,n);
  90.            4:PostKosmet(a,n)
  91.            end;
  92.       end;
  93.  
  94. end.

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

  1. В процедуре vvod происходит чтение данных из файла и заполнение массива mas записями о косметике. Каждая запись содержит информацию о фирме, данных, цене, количестве и соответствующих полях записи о косметике.
  2. В процедуре pros происходит вывод данных из массива mas. Для каждой записи выводятся поля данных, фирмы, цены, количества и соответствующие поля записи о косметике.
  3. В процедуре StoimTovar происходит поиск в массиве mas записи, у которой название фирмы совпадает со введенным пользователем. Затем вычисляется стоимость этого товара и выводится на экран.
  4. В процедуре PostKosmet происходит вывод списка магазинов, которые продают определенную косметику. Для каждого магазина выводится его название, если он продает указанную косметику.
  5. В основной части программы происходит цикл, в котором пользователю предлагается выбрать действие (ввод, просмотр, стоимость товара, вывод списка магазинов) и вводится номер действия. В зависимости от номера действия выполняется соответствующая процедура.

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


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

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

15   голосов , оценка 4 из 5

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

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

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