паскаль оператор розгалудження. Один диск стоит 10 грн. а блок за 10 дисков 90 грн.Как оптимально сделать покупку на суму С>100 грн. Введите С, выведите калличество блоков и отдельных дисков.
Answers & Comments
DagotPavel
Program znanija; const PRICE_ONE_DISK = 10; PRICE_TEN_DISK = 90; EMPTY = 0; INPUT_MONEY = 'Введите количество денег: '; OUTPUT_PRICE = 'Купленно: '; OUTPUT_ONE_DISK = ' - по одному диску'; OUTPUT_TEN_DISK = ' - по десять дисков'; OUTPUT_MANEY = 'Осталось денег: '; CHAR_TABS = Chr(9); var sumMoney : integer; countOneDisk : integer := 0; countTenDisk : integer := 0; begin write(INPUT_MONEY); read(sumMoney);
while((sumMoney - PRICE_TEN_DISK) >= EMPTY) do begin inc(countTenDisk); sumMoney := sumMoney - PRICE_TEN_DISK; end;
while((sumMoney - PRICE_ONE_DISK) >= EMPTY) do begin inc(countOneDisk); sumMoney := sumMoney - PRICE_ONE_DISK; end;
Answers & Comments
const
PRICE_ONE_DISK = 10;
PRICE_TEN_DISK = 90;
EMPTY = 0;
INPUT_MONEY = 'Введите количество денег: ';
OUTPUT_PRICE = 'Купленно: ';
OUTPUT_ONE_DISK = ' - по одному диску';
OUTPUT_TEN_DISK = ' - по десять дисков';
OUTPUT_MANEY = 'Осталось денег: ';
CHAR_TABS = Chr(9);
var
sumMoney : integer;
countOneDisk : integer := 0;
countTenDisk : integer := 0;
begin
write(INPUT_MONEY);
read(sumMoney);
while((sumMoney - PRICE_TEN_DISK) >= EMPTY) do
begin
inc(countTenDisk);
sumMoney := sumMoney - PRICE_TEN_DISK;
end;
while((sumMoney - PRICE_ONE_DISK) >= EMPTY) do
begin
inc(countOneDisk);
sumMoney := sumMoney - PRICE_ONE_DISK;
end;
writeln(OUTPUT_PRICE);
writeln(CHAR_TABS, countTenDisk, OUTPUT_TEN_DISK);
writeln(CHAR_TABS, countOneDisk, OUTPUT_ONE_DISK);
writeln(OUTPUT_MANEY, sumMoney);
end.