Написать программу Pascal, которая определяет, сколько человек из N кандидатов (количество кандидатов пользователь задаёт в начале программы) подходит для занятий в секцию баскотбола по его росту (если рост выше 180см, то подходит). Для решения использовать цикл с заданным числом повторение
program aaa;
const n=50;
var w, c, x, d10, d4, d1: integer;
begin
writeln ('введите вес бандероли');
readln (w);
if w < = n
then c: =10
else
if w mod n = 0
then c: =10+((w div n)-1)*5
else c: =10+5+((w div n)-1)*5;
d10: = c div 10;
d4: = (c-10*d10) div 4;
d1: = (c-d10*10-d4*4);
writeln ('стоимость бандероли: ',c,' драхм');
writeln;
writeln ('для оплаты нужно не менее');
writeln (d10: 10,' монет по 10 драхм');
writeln (d4: 10,' монет по 4 драхмы');
writeln (d1: 10,' монет по 1 драхме');
end.
результат работы программы:
введите вес бандероли 100
стоимость бандероли: 15 драхм
для оплаты нужно не менее
1 монет по 10 драхм
1 монет по 4 драхмы
1 монет по 1 драхме
В pascal операции mod и div к вещественным типам недоступны, поэтому округляем их через Round. Можно поменять на Trunc - он возвратит только целую часть.
Однако правильнее будет делать через case:var a, b: real; s: string; begin readln(a); readln(b); readln(s); case s of char.ToString('+'): write(a + b); char.ToString('-'): write(a - b); char.ToString('/'): if b <> 0 then write(a / b) else write('Деление на 0!'); char.ToString('*'): write(a * b); 'mod': if b <> 0 then write(Round(a) mod Round(b)) else write('Деление на 0!'); 'pow': write(power(a, b)); 'div': if b <> 0 then write(Round(a) div Round(b)) else write('Деление на 0!'); end; end.Пояснение:В case '+', '-', '/', '*' воспринимаются как char, поэтому переводим их в string через стандартный метод класса char: char.ToString( )
Примеры работ: