Турбопаскаль. с процедуры и без массивов решить : найти сумму максимумов из 8 чисел (попарно). например, введено 1 2 3 4 5 6 7 8, результат 20 (max(1,2)=2, max(3,4)=4 и т.д.)
решения задачи много. Например, можно так: procedure max(x,y:integer; var z:integer); begin if x>y then z:=x else z:=y; end; var a,b,m,s,i:integer; begin s:=0; for i:=1 to 4 do begin write('a='); readln(a); write('b=');readln(b); max(a,b,m); s:=s+m; end; writeln('Smax=',s); end.
uses crt; var n,m,i,j,k:integer; a:array[1..1000] of integer; begin repeat writeln('Введите 2 натуральнвх числа n<m<1000:'); read(n,m); until (n>0)and(n<m)and(m<1000); writeln('Начальный ряд:'); k:=0; for i:=n to m do begin inc(k); a[k]:=i; write(a[i]:4); end; writeln; while k>=2 do begin i:=1; while i<=k do begin for j:=i to k-1 do a[j]:=a[j+1]; k:=k-1; i:=i+1; end; i:=2; while i<=k do begin f or j:=i to k-1 do a[j]:=a[j+1]; k:=k-1; i:=i+1; end; end; write(a[k]); end.
общие минусы соединены вместе и подключены к - источника питания, (Х) - это лампочка первый прямоугольник слева - это элемент ИЛИ второй прямоугольник слева - это элемент И При одновременном замыкании на минус двух или более разных входов лампочка загорится
procedure max(x,y:integer; var z:integer);
begin
if x>y then z:=x else z:=y;
end;
var a,b,m,s,i:integer;
begin
s:=0;
for i:=1 to 4 do begin
write('a='); readln(a);
write('b=');readln(b);
max(a,b,m);
s:=s+m;
end;
writeln('Smax=',s);
end.
Пример:
a=1
b=2
a=3
b=4
a=5
b=6
a=7
b=8
Smax=20