Иллюстрированный самоучитель по Turbo Pascal для начинающих

Решения (задачи 105-130)

Задача 128

{ Проверка умения складывать и вычитать числа. } uses
Crt;
var
numb1,numb2:integer; { числа }
op:integer; { Действие над числами 0 – сложение, 1 – вычитание }
sop: char; { знак операции – "плюс" или "минус" }
res:integer; { Результат } otv:integer; { Ответ испытуемого }
kol:integer; { Количество правильных ответов }
buf:integer; { буфер для обмена numbl и numb2, в случае, если numbl<numb2 }
i: integer; { счетчик циклов }
begin
ClrScr;
writeln('Проверка умения складывать и вычитать числа.');
writeln('После примера введите ответ и нажмите Enter.');
106
l: = 0;
Randomize;
for i: = l to 10 do
begin
{ сгенерируем пример }
numb1: = Random(9)+1; { первое число }
numb2: = Random(9)+1; { второе число }
op: = Random(2); (действие над числами }
if op=0 then
begin { сложение} res: = numbl+numb2; sop: = '+'; end else
begin { Вычитание }
if numbl < numb2 then
begin { обменяем numbl и numb2} buf: = numb2; numb2: = numbl; numbl: = buf; end;
res: =numbl-numb2; end;
write(' ',numbl,sop,numb2,'='); { вывести пример }
readln(otv); { получить ответ испытуемого } if otv = res then
kol: = kol+l else
begin
writeln(' Вы ошиблись! ',numbl,sop,numb2,'=',res);
end; end;
writeln(' Правильных ответов:',kol); write(' Ваша оценка:'); case kol of
10: writeln(?5');
9.8: writeln(l4l);
7.6: writelrK'31); 0..5:writeln('2'); end;
writeln ('Для завершения работы с программой нажмите Enter');
readln; end.

Задача 129

{ Простые электронные часы }
uses Crt; { используем процедуры и функции библиотеки Crt }
var
min,sec: integer; { минуты, секунды } begin
ClrScr; { очистить экран } for min: = l to 3 do begin
for sec: = l to 60 do begin
Delay(lOOO); { задержка 1000 ms }
GotoXY(l,l); { установить курсор в 1-ю колонку
1-й строки) write(min,':',sec,' ');
if KeyPressed (если нажата клавиша } then HALT; { завершить программу } end;
end; end.

Задача 130

{ Вычисление среднего арифметического
последовательности положительных чисел } var
а: integer; { число, введенное с клавиатуры } n: integer; { количество чисел }
s: integer; { сумма чисел } m: real; { среднее а=0;
writeln('Вычисление среднего арифметического последовательности положительных чисел.');
writeln('Вводите после стрелки числа. ',
'Для завершения ввода введите ноль.');
repeat
write C> ');
readln(a);
s: = s+a;
n: = n+l; until a <= 0; n: = n-l;
writeln('Введено чисел:',n); writeln('Сумма чисел: ',s);
m: = s/n; writeln('Среднее арифметическое: ',m:6:2);
writeln('Для завершения работы программы нажмите Enter');
readln;
end.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.