Какое число будет выведено в результате работы следующей программы? var k, s: integer; bedin k:=1; s:=0; repeat s:=s+k; k:=k+2; until k меньше 8 writeln (s) ; end.
Program MaxD; // Вводятся площади квадратов, окончание ввода по значению 0 // Найти диагональ максимального размера. // Поскольку диагональ равна квадратному корню из удвоенной площади, // надо найти максимальную площадь, а затем вычислить диагональ. var S,SMax:real; begin SMax:=0; writeln('Вводите площади квадратов, 0 - конец ввода'); repeat readln(S); if s>sMax then sMax:=s until s=0; writeln('Максимальная длина диагонали равна ',sqrt(2*sMax)) end.
Тестовое решение:
Вводите площади квадратов, 0 - конец ввода 5 10 12 13.6 11 18 0 Максимальная длина диагонали равна 6
Код программы:
var a:array[1..27] of integer;
b, i, c, ind:integer;
begin
a[1]:= 72;
a[2]:= 76;
a[3]:= 92;
a[4]:= 45;
a[5]:= 55;
a[6]:= 82;
a[7]:= 46;
a[8]:= 39;
a[9]:= 78;
a[10]:=50;
a[11]:=34;
a[12]:=71;
a[13]:=44;
a[14]:= 92;
a[15]:= 38;
a[16]:= 51;
a[17]:= 6;
a[18]:= 45;
a[19]:= 66;
a[20]:= 78;
a[21]:= 19;
a[22]:= 17;
a[23]:= 42;
a[24]:= 36;
a[25]:= 34;
a[26]:= 91;
a[27]:= 61;
writeln('Введите число');
readln(b);
if ((b >= 0) and (b <= 100)) then begin
c:=abs(b - a[1]);
for i:=2 to 27 do begin
if(abs(b - a[i]) <=c) then begin
c:=abs(b - a[i]);
ind:=i;
end;
end;
writeln('Результат: ', a[ind]);
end
else
writeln('Ошибка, число должно быть больше 0 и меньше 100');
end.
// Вводятся площади квадратов, окончание ввода по значению 0
// Найти диагональ максимального размера.
// Поскольку диагональ равна квадратному корню из удвоенной площади,
// надо найти максимальную площадь, а затем вычислить диагональ.
var
S,SMax:real;
begin
SMax:=0;
writeln('Вводите площади квадратов, 0 - конец ввода');
repeat
readln(S);
if s>sMax then sMax:=s
until s=0;
writeln('Максимальная длина диагонали равна ',sqrt(2*sMax))
end.
Тестовое решение:
Вводите площади квадратов, 0 - конец ввода
5
10
12
13.6
11
18
0
Максимальная длина диагонали равна 6