← Back to topics
Topic

Pascal, eof i eoln sa standardnog ulaza

n
nemanja90
Cesto nailazim na zadatke u kojima je potrebno ucitati nepoznat broj podataka sa standardnog ulaza pa me zanima da li neko zna kako.

Iz fajla je to lako ali mi nije jasno kako to da uradim sa standardnog ulaza.

Kad su podaci u jednom redu onda jos i moze ali eof nikako ne moze da radi sa standardnim ulazom.
s
sanja
Mozes da kazes neki konkretan zadatak gde ti treba eof?
g
gates
mislim da mozes koristiti i EOF za standardni ulaz ako šalješ na neki online tester
n
nemanja90
The problem is so easy, that the authors were lazy to write a statement for it!
Input
The input stream contains a set of integer numbers Ai (0 ≤ Ai ≤ 1018). The numbers are separated by any number of spaces and line breaks. A size of the input stream does not exceed 256 KB.
Output
For each number Ai from the last one till the first one you should output its square root. Each square root should be printed in a separate line with at least four digits after decimal point.
Sample
input output

1427 0

876652098643267843
5276538





2297.0716
936297014.1164
0.0000
37.7757
n
nemanja90
Jedan od prostijih samo kada bih mogao da ucitam.



Inace, Ivane, eof ne funkcionise kod standardnog ulaza jer ti uvek mozes da dodas neki podatak i stisnes enter a kod fajla nema menjanja podataka kad se program pokrene.
g
gates
da, ali kad šalješ na online judge oni sigurno ne dodaju podatke i stišću enter, evo ti kod za taj zadatak koji je acceptan:

var a:array[1..1000000] of double;
b:double;
i,j:integer;
begin
{$IFNDEF ONLINE_JUDGE}
assign(input,'input.txt');
reset(input);
assign(output,'output.txt');
reset(output);
{$ENDIF}

i:=0;
while not seekEof(input) do begin
inc(i);
read(b);
a[i]:=sqrt(b);
end;
for j:=i downto 1 do
writeln(a[j]:0:4);

{$IFNDEF ONLINE_JUDGE}
close(input);
close(output);
{$ENDIF}
end.
m
matteo123
pa ja bi stavio type na početku i učito neku nepoznanicu kao lalala=record i onda imaš while not eof do
begin
...
...
...
eoln
end;
nadam se da sam pomogao