Паскаль,задачки
Задача 1.
Максимальные непрерывные работы за компьютером детей ориентировочно такие: 6-8 лет - 15 минут, 9-11 лет - 30 минут, 12-15 лет - 45 минут, 16-17 лет - 60 минут. С клавиатуры вводится возраст и время, уже проведенное за компьютером, и выводится сообщение о том, сколько минут осталось до окончания сеанса работы.
Задача 2.
На станции есть бензин нескольких марок с разной ценой. Клиент выбирает марку бензина и количество литров, которые хочет приобрести. Выведите информацию о сумме к оплате.
Задача 3.
Дозировку лекарства для детей (количество таблеток денно) зависит от возраста (с пятилетней градацией). Компьютер спрашивает возраст ребенка и после введения ответы сообщает допустимую дозу лекарств.
Задача 4.
Задайте расстояния до городов A, B, C, D. Пусть на 100 км требуется 9 литров бензина. Компьютер спрашивает о пункте назначения (надо будет ввести одну букву) и сообщает о необходимом количестве бензина.
Answers & Comments
Ответ:
//Задача #1
begin
var a,b,c: integer;
write('Введите ваш возраст: '); readln(a);
write('Введите время, проведенное за компьютером (в минутах): '); readln(b);
if b<0 then else
case a of
6..8: c:=15;
9..11: c:=30;
12..15: c:=45;
16..17: c:=60;
else write('Вам ',(a<6)? 'меньше 6':'больше 17-ти',' лет'); exit;
end;
write((c-b>0)? 'Вам осталось находиться за компьютером '+(c-b).ToString+' минут':'Ваш сеанс закончился '+abs(c-b)+' минут назад');
end.
//Задача 2
var
a:integer;
b:real;
begin
var N: array [1..4] of (string,real);
N[1]:=('АИ-92',42.30);
N[2]:=('АИ-95',45.30);
N[3]:=('АИ-98',53.71);
writeln('В наличии имеется: ');
for var L:=1 to 3 do
println(L+') ',N[L].Item1,' ',N[L].Item2,' руб/л');
write('Введите номер марки бензина (1-3): ');readln(a);
if (a>=1) and (a<=3) then begin
writeln('Вы выбрали бензин ',N[a].Item1);
write('Введите количество литров: ');readln(b);
write((B<0)? 'Указано отрицательное количество литров':('Сумма вашей покупки: '+N[a].Item2*b+' рублей'))
end;
end.
//Задача 4
begin
var K:char;
var N: array ['A'..'D'] of real;
for var L:='A' to 'D' do
begin
write('Введите расстояние до города ',L,' (км): ');readln(N[L]);
end;
write('В какой из городов вы направляетесь? ');readln(K);
K:=K.ToUpper;
write('Вам понадобится ',(N[K]/100)*9,' литров бензина');
end.
Примечание:
У задачи №3 слишком мало вводных параметров