Предмет: Информатика,
автор: kusia1
Дано 100 вещественных чисел. Найти разность между максимальным и минимальным. На Паскале.БЕЗ ИСПОЛЬЗОВАНИЯ МАССИВОВ.
Ответы
Автор ответа:
0
Program spusku;
uses crt;
type
spusok=^elem;
elem=record
data:integer;
next:spusok;
end;
var i:spusok;
procedure add(var current:spusok; elem:integer);
var x:spisok;
begin
new(x);
x^.data:=elem;
x^.next:=nil;
current^.next:=x;
current:=x;
end;
procedure stvor(var i:spusok);
var p:spisok; n:integer;
begin
i:=nil;
writeln('Vvedite spusok celux 4usel. 0-konec');
readln(n);
add(i,n);
readln(n);
while n<>0 do
begin
p:=i;
while p^.next<>nil do
p:=p^.next;
add(p,n);
readln(n);
end;
end;
procedure minmax(var i:spusok);
var p:spusok; kmin, kmax:integer;
begin
kmin:=1000000;
kmax:=0;
while i<>nil do
begin
p:=i;
if p^.data>kmax then kmax:=p^.data;
if p^.data<kmin then kmin:=p^.data;
i:=i^.next;
end;
writeln('raznost =', kmax-kmin)
end;
BEGIN
clrscr;
stvor(i);
minmax(i);
readkey;
end.
uses crt;
type
spusok=^elem;
elem=record
data:integer;
next:spusok;
end;
var i:spusok;
procedure add(var current:spusok; elem:integer);
var x:spisok;
begin
new(x);
x^.data:=elem;
x^.next:=nil;
current^.next:=x;
current:=x;
end;
procedure stvor(var i:spusok);
var p:spisok; n:integer;
begin
i:=nil;
writeln('Vvedite spusok celux 4usel. 0-konec');
readln(n);
add(i,n);
readln(n);
while n<>0 do
begin
p:=i;
while p^.next<>nil do
p:=p^.next;
add(p,n);
readln(n);
end;
end;
procedure minmax(var i:spusok);
var p:spusok; kmin, kmax:integer;
begin
kmin:=1000000;
kmax:=0;
while i<>nil do
begin
p:=i;
if p^.data>kmax then kmax:=p^.data;
if p^.data<kmin then kmin:=p^.data;
i:=i^.next;
end;
writeln('raznost =', kmax-kmin)
end;
BEGIN
clrscr;
stvor(i);
minmax(i);
readkey;
end.
Похожие вопросы
Предмет: Другие предметы,
автор: alievahava946
Предмет: Українська мова,
автор: ChristaLis
Предмет: Биология,
автор: sypermaster0
Предмет: Литература,
автор: toropnina
Предмет: Литература,
автор: 19Максим97