Procedure maxminsum(a,b,c:real);
var
sum,max,min:real;
begin
if (a>b) and (a>c) then max:=a;
if (b>a) and (b>c) then max:=b;
if (c>b) and (c>a) then max:=c;
if (a<b) and (a<c) then min:=a;
if (b<a) and (b<c) then min:=b;
if (c<b) and (c<a) then min:=c;
sum:=a+b+c;
writeln('max = ',max);
writeln('min = ',min);
writeln('sum = ',sum);
end;
var a,b,c:real;
begin
readln(a,b,c);
maxminsum(a,b,c);
<span>end.</span>
Решаем выражение, полученное значение переводим из десятичной системы в троичную и считаем количество "2"
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
--- gfortran 6.3 ---
program prog1
integer N, k, i, j
real a(10,10)
read *, N
print *, 'Матрица:'
do i = 1,N
do j = 1,N
a(i,j) = sin(1.0*i+1.0*j/2)
end do
end do
do i = 1, N
print *, (a(i,j), j=1,N)
end do
k = 0
do i = 1, N
do j = 1, N
if(a(i, j) > 0) k = k+1
end do
end do
print *, k
end
Результат:
4
<span> Матрица:
0.997494996 0.909297407 0.598472118 0.141120002
0.598472118 0.141120002 -0.350783229 -0.756802499
-0.350783229 -0.756802499 -0.977530122 -0.958924294
-0.977530122 -0.958924294 -0.705540299 -0.279415488
6 </span>