Witam.
Mamy taki bardzo prosty program
program bla;
var
i:real;
begin
for i:=0 to 1000 do
writeln (i);
end.
Program nie dziala, chyba, ze zamienie real na integer. Jak zrobic petle od -x do y dla bardzo duzych wartosci, np. typ zmiennej Comp. Czyli od -9.2E18 do 9.2E18, i tak dlugo petla by sie miala wykonac, a druga sprawa musi ominac zero. Cos w stylu* if i=o then i:=i+1* nie chce zadzialac w petli. Chcialem to zrobic za pomoca repeat until, ale nie za bardzo wiem jak je zapetlic.
Musze znaleŹĆ wszystkie liczby spelniajace rownanie ln(x)=k*i, liczba ktora spelnia to rownanie: x=1, k=0. Chcial bym sprawdzic wszystie mozliwosci dla x i k w zakresie comp, pomijajac x=0 poniewaz ln(0) da na blad. Dla integer wygladalo by to tak
program k2;
var
i,k :integer;
begin
for i:= 1 to 1000 do
for k:= 1 to 1000 do
begin
//writeln (ln(i),' = ',k*i);
if ln(i) = k*i then writeln ('i=',i,' k=',k);
end;
writeln('koniec');
readln;
end.