var n,i,x,max:integer;
begin
Write('Podaj ilosc liczb, ktora chcesz wczytac: ');
Readln(n);
Randomize;
max:=0;
for i:=1 to n do begin
Writeln(' Wylosowana liczba nr: ',i,': ',Random(1000) );
if x>max then begin max:=x; end;
Random(x);
end;
writeln('Najwieksza wartosc wczytanej liczby to ',max);
Readln;
end.
Ten kod w ogóle nie ma sensu - może najpierw zastanów się co trzeba zrobić krok po kroku, a później zacznij pisać?
Nie rozumiem po co drugi raz losujesz - przecież następna wylosowana liczba najprawdopodobniej nie będzie równa tej pierwszej, więc max
będzie rózne od prawdziwych wyników; Poprawiłem Twój kod - działa jak należy:
var
n, i, x, Max: Integer;
begin
Write('Podaj ilosc liczb, ktora chcesz wczytac: ');
Readln(n);
Randomize;
Max := 0;
for I := 1 to n do
begin
x := Random(1000);
Writeln(' Wylosowana liczba nr: ', i, ': ', x);
if x > Max then
Max := x;
end;
Writeln('Najwieksza wartosc wczytanej liczby to ', Max);
Readln;
end.
Powinieneś był wylosowaną liczbę zapisywać do x
, wyświetlić ją, następnie sprawdzić czy jest większa od maksimum i jeśli tak - wpisać ją do zmiennej max
; No i ucz się formatowania kodu, bo wygląda tragicznie;