Торговый склад производит уценку хранящейся продукции. Если продукция хранится на складе дольше n месяцев, то она уценивается
124
134
Ответы на вопрос:
uses crt;
const nmax=50;
type sclad=record
naz:string[20];
kol:word;
cn1,cn2:word;
src:byte;
st1,st2:longint;
end;
var t:array[1..nmax] of sclad;
k,i,n,m:byte;
mxsr,mnsr:byte;
mxc1,mnc1,mxc2,mnc2:word;
begin
clrscr;
{ввод данных}
repeat
write('Количество товаров до ',nmax,' k=');
readln(k);
until k in [1..nmax];
writeln('Введите данные о товарах:');
for i:=1 to k do
begin
writeln('Товар ',i);
with t[i] do
begin
write(' Наименование: ');readln(naz);
write(' Количество: ');readln(kol);
repeat
write(' Цена до уценки от 100 до 1000: ');
readln(cn1);
until(cn1>99)and(cn1<1001);
repeat
write(' Срок хранения на складе от 1 до 36: ');
readln(src);
until src in [1..36];
st1:=kol*cn1;{стоимость до уценки}
end;
end;
clrscr;
{уценка, поиск макс и мин срока и цены до уценки}
repeat
writeln('Введите 2 критерия уценки, количество месяцев от 1 до 24 m<n');
readln(m,n);
until(m>0)and(n>m)and(m<25);
mxsr:=t[1].src;
mnsr:=t[1].src;
mxc1:=t[1].cn1;
mnc1:=t[1].cn1;
for i:=1 to k do
begin
if (t[i].src>=m)and(t[i].src<=n)then t[i].cn2:=round(t[i].cn1/1.5)
else if t[i].src>n then t[i].cn2:=round(t[i].cn1/2)
else t[i].cn2:=t[i].cn1;
if t[i].src>mxsr then mxsr:=t[i].src;
if t[i].src<mnsr then mnsr:=t[i].src;
if t[i].cn1>mxc1 then mxc1:=t[i].cn1;
if t[i].cn1<mnc1 then mnc1:=t[i].cn1;
t[i].st2:=t[i].kol*t[i].cn2;{новая стоимость}
end;
writeln('Ведомость товаров на cкладе:':40);
writeln('---------------------------------------------------------------');
writeln('| | | Цена | Стоимость |');
writeln('| Наименование | Срок |---------------------------------------|');
writeln('| | |до уценки| после |до уценки| после |');
writeln('---------------------------------------------------------------');
mxc2:=t[1].cn2;
mnc2:=t[1].cn2;
for i:=1 to k do
begin
with t[i] do
begin
gotoXY(1,whereY);write('| ',naz);
gotoXY(16,whereY);write('|',src:4);
gotoXY(23,whereY);write('|',cn1:9);
gotoXY(33,whereY);write('|',cn2:9);
gotoXY(43,whereY);write('|',st1:9);
gotoXY(53,whereY);write('|',st2:9);
gotoXY(63,whereY);writeln('|');
end;
{макс и мин цена после уценки}
if t[i].cn2>mxc2 then mxc2:=t[i].cn2;
if t[i].cn2<mnc2 then mnc2:=t[i].cn2;
end;
writeln('---------------------------------------------------------------');
write('Press Enter...');
readln;
writeln('Максимальный срок хранения =',mxsr);
writeln('Минимальный срок хранения =',mnsr);
writeln('Максимальная цена до уценки =',mxc1);
writeln('Минимальная цена до уценки =',mnc1);
writeln('Максимальная цена после уценки=',mxc2);
writeln('Минимальная цена после уценки =',mnc2);
readln
end.
const nmax=50;
type sclad=record
naz:string[20];
kol:word;
cn1,cn2:word;
src:byte;
st1,st2:longint;
end;
var t:array[1..nmax] of sclad;
k,i,n,m:byte;
mxsr,mnsr:byte;
mxc1,mnc1,mxc2,mnc2:word;
begin
clrscr;
{ввод данных}
repeat
write('Количество товаров до ',nmax,' k=');
readln(k);
until k in [1..nmax];
writeln('Введите данные о товарах:');
for i:=1 to k do
begin
writeln('Товар ',i);
with t[i] do
begin
write(' Наименование: ');readln(naz);
write(' Количество: ');readln(kol);
repeat
write(' Цена до уценки от 100 до 1000: ');
readln(cn1);
until(cn1>99)and(cn1<1001);
repeat
write(' Срок хранения на складе от 1 до 36: ');
readln(src);
until src in [1..36];
st1:=kol*cn1;{стоимость до уценки}
end;
end;
clrscr;
{уценка, поиск макс и мин срока и цены до уценки}
repeat
writeln('Введите 2 критерия уценки, количество месяцев от 1 до 24 m<n');
readln(m,n);
until(m>0)and(n>m)and(m<25);
mxsr:=t[1].src;
mnsr:=t[1].src;
mxc1:=t[1].cn1;
mnc1:=t[1].cn1;
for i:=1 to k do
begin
if (t[i].src>=m)and(t[i].src<=n)then t[i].cn2:=round(t[i].cn1/1.5)
else if t[i].src>n then t[i].cn2:=round(t[i].cn1/2)
else t[i].cn2:=t[i].cn1;
if t[i].src>mxsr then mxsr:=t[i].src;
if t[i].src<mnsr then mnsr:=t[i].src;
if t[i].cn1>mxc1 then mxc1:=t[i].cn1;
if t[i].cn1<mnc1 then mnc1:=t[i].cn1;
t[i].st2:=t[i].kol*t[i].cn2;{новая стоимость}
end;
writeln('Ведомость товаров на cкладе:':40);
writeln('---------------------------------------------------------------');
writeln('| | | Цена | Стоимость |');
writeln('| Наименование | Срок |---------------------------------------|');
writeln('| | |до уценки| после |до уценки| после |');
writeln('---------------------------------------------------------------');
mxc2:=t[1].cn2;
mnc2:=t[1].cn2;
for i:=1 to k do
begin
with t[i] do
begin
gotoXY(1,whereY);write('| ',naz);
gotoXY(16,whereY);write('|',src:4);
gotoXY(23,whereY);write('|',cn1:9);
gotoXY(33,whereY);write('|',cn2:9);
gotoXY(43,whereY);write('|',st1:9);
gotoXY(53,whereY);write('|',st2:9);
gotoXY(63,whereY);writeln('|');
end;
{макс и мин цена после уценки}
if t[i].cn2>mxc2 then mxc2:=t[i].cn2;
if t[i].cn2<mnc2 then mnc2:=t[i].cn2;
end;
writeln('---------------------------------------------------------------');
write('Press Enter...');
readln;
writeln('Максимальный срок хранения =',mxsr);
writeln('Минимальный срок хранения =',mnsr);
writeln('Максимальная цена до уценки =',mxc1);
writeln('Минимальная цена до уценки =',mnc1);
writeln('Максимальная цена после уценки=',mxc2);
writeln('Минимальная цена после уценки =',mnc2);
readln
end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Другие предметы
-
HrenSGori28.03.2022 20:38
-
Anchoys77709.12.2021 07:33
-
360Polina36001.07.2022 16:38
-
DillonVIP09.03.2020 21:45
-
lour109.10.2022 01:49
-
ПЁЁСИКК06.06.2020 14:18
-
21101983119.06.2021 05:18
-
mariyburova200117.05.2021 19:31
-
Dacha07K15.02.2020 13:33
-
Имра1111122.02.2021 23:51
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.