Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Zdravím
potřeboval bych se zřejmě zbavit eof a nahradit ho něčím ale nevím čím
jinak je to první algoritmus, který mě napadl, možná, že jsou jinší lepší.
Tento program ma urcit pocet ruznych cisel, pri cemy cisla jsou od sebe oddelena mezerami a radkem
zdrojak: program r;
var p:array [-MAXINT..MAXINT] of boolean; c, i, z:integer; t:text;
begin
for i:=1 to 10000 do
p[i]:=false;
assign(t,'v.txt');
reset(t);
z:=0;
while not eof do
begin
readln(t,c);
if p[c] = false then
begin
p[c]:=true;
inc(z);
end;
end;
writeln(z);
end.
děkuji za pomoc, rady, ochotu, čas,...
Offline
muj vylepseny zdrojak
problem je v tom ze se po nactenych cisledch ze souboru nacte i 0 ktera tam neni ale jsou tam prazdne radky
dekuji za pomoc
Offline
Předpokládám, že za posledním číslem je ještě nějaký znak.
var
i, c: integer;
f: textfile;
a: array[-MAXINT-1..MAXINT] of boolean;
begin
assign(f, 'v.txt');
reset(f);
c:=0;
for i:=-MAXINT-1 to MAXINT do
a[i]:=FALSE;
read(f, i);
while not eof(f) do
begin
if not a[i] then
begin
inc(c);
a[i]:=TRUE
end;
read(f, i)
end;
write(c);
close(f)
end.Offline