Описать функцию min(x) для определения минимального элемента вектора х, введя вспомогательную рекурсивную функцию min(k), находящую минимум среди последних элементов вектора х, начиная с k-го

code: #pascal
program tg;
Const n=40;
Type vector=array [1..n] of real;
var x:vector;
    i,k:integer;
 
function max:real;
var i:integer; m:real;
begin
m:=x[1];
for i:=2 to n do
if x[i]>m then m:=x[i];
max:=m;
end;
function min2(a,b:real):real;
begin
	min2:=b;
	if (a < b) then
	min2:=a;
end;
function min(k:integer):real;
var i:integer; m:real;
begin
	if (k=n) then
		min:=x[k]
	else
		min:=min2(x[k],min(k+1));
end;
 
begin
for i:=1 to n do begin
write('X[',i,']= '); readln(x[i]); end;
write('K= '); readln(k);
 
writeln('MAX= ',max:0:3);
writeln('MIN(k)= ',min(k):0:3);
readln; readln;
end.      
Поделиться:

Похожие статьи: