Условие
пусть даны 2 массива М1 и М2. М1 - инвентарный массив(сколько изделий, каких видов хранятся на складе). Вид продукции задаётся её порядковым номером. М2 - вспомогательный массив(на сколько уменьшилось или увеличилось количество изделий по некоторым видам продукции). Вспомогательный массив может содержать несколько сведений по продукции одного вида или не содержать такого сообщения. Обновить инвентарный массив на основе вспомогательного.
1. не пойму как это должно выглядеть
type vid=record
izdelie1:integer;
izdelie2:integer;
izdelie3:integer;
end;
var produkcia:array[1..10] of vid;
Было бы неплохо увидеть оригинальный текст задания, но я понял его так:
Первый массив хранит сколько товаров какого вида хранится на складе. Второй массив хранит сколько товара какого вида прибыло (убыло) на склад. Пояснительный код:
typeНужно основываясь на информации второго массива обновить первый.
TItem = record
Article: Integer; { Тип изделия }
Count: Integer; { Колличество или изменение колличества }
end;
var
Depository: array[1..n] of TItem; { Склад }
Update: array[1..m] of TItem; { Изменения на складе }
текст задания оригиналный - преподаватель дала списать из учебника.
за разъяснения спасибо.
косолапо получилось
const
n=2;
m=3;
type
Item = record
tip:integer;
kolvo:integer;
end;
var
i,j:integer;
sklad:array[1..n] of item;
upd:array[1..m] of Item;
begin
writeln('sklad',' ',n,' tip - kolvo');
for i:=1 to n do readln(sklad[i].tip,sklad[i].kolvo);
for i:=1 to n do writeln('ITEM',sklad[i].tip,' - ',sklad[i].kolvo);
writeln('update',' ',m,' tip - kolvo');
for i:=1 to m do readln(upd[i].tip,upd[i].kolvo);
for i:=1 to m do writeln('ITEM',upd[i].tip,' - ',upd[i].kolvo);
for i:=1 to n do
for j:=1 to m do if upd[j].tip=sklad[i].tip then sklad[i].kolvo:=sklad[i].kolvo+upd[j].kolvo;
writeln('updated sklad');
for i:=1 to n do writeln('ITEM',sklad[i].tip,' - ',sklad[i].kolvo);
readln;
end.
айа скажите чонить а то я спать не лягу
1. Расставить отступы. Программа сразу станет проще для восприятия.
2. Сделать диалог с пользователем чуть более осмысленным. Первая строчка, которую выводит программа это "sklad 2 tip - kolvo". Довольно сложно понять, что имеется ввиду.
3. "writeln('sklad',' ',n,' tip - kolvo');" - зачем пробел в отдельный параметр отделять?
PS Упрощать особо нечего
ееее
мои благодарности
пойду спать
for i:=1 to n do with Sklad[i] do
for j:=1 to m do if upd[j].tip=tip then kolvo:=kolvo+upd[j].kolvo;