←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Inny
SPOJ dane na input

Locked

Dwdov's Photo Dwdov 11.08.2011

Ok mam jedno głupie pytanie. Chcę się trochę pobawić w robienie zadań na SPOJu, ale mam jedną wątpliwość. Mianowicie chodzi o dane na input, one normalnie są czytane z console inputa (cin) czy jak? Tylko tyle, więcej pomocy mi nie potrzeba :P
Quote

Zkont?!'s Photo Zkont?! 11.08.2011

Poczytaj regulamin na spoju, a potem zadawaj pytania... Są to zwykłe numerki wpisywanie przez automat do Twojego programu. Wszystko działa na zasadzie wewnętrznej, nie ma mowy o plikach zewnętrznych typu 'input.txt'. Czyli używaj cin'a, bądź scanf'a ;] Pamiętaj jeszcze, że scanf nie uwzględnia EOF'a, a CIN ma to wgrane automatycznie.

PS. Jak chcesz, to mogę Ci dać kody do paru zadanek, tak na dobry początek ;D
Edited by Zkont?!, 11.08.2011 19:47.
Quote

  • +
  • -
R3X's Photo R3X 11.08.2011

eh ten SPOJ, na PG oddawało się na tym laborki i projekt, jak zielono to punkty, jak pomarańczowo to 0 :)

program dostaje dane na standardowe wejście, jeśli ilość danych jest znana to nie ma problemu, ale jak jest na przetworzyć wszystko co wpadnie na wejście to używało się while(scanf(...)), pod Windowsem to nie działa, ale SPOJ kompiluje program pod linuxem i tam jest ok
Quote

Zkont?!'s Photo Zkont?! 11.08.2011

Rex, równie dobrze może być taki oto zapis przy nieznanej liczbie testów:
while(cin>>zmienna)


PS. Od kiedy scanf'y nie działają pod windowsem? :>

EDITED:

Przypomniało mi się jeszcze jedno :) Kolejną wersją wczytywania x liczb może być to:

while(true)
{
cin>>zmienna;
if(cin.peek()==EOF) break;
}

Edited by Zkont?!, 11.08.2011 22:24.
Quote

  • +
  • -
R3X's Photo R3X 11.08.2011

działają, ale z tego co pamiętam nie chciały mi zwrócić zera, chociaż mogę się mylić
Quote

Zkont?!'s Photo Zkont?! 12.08.2011

W jaki sposób nie chciały zwrócić zera? Swoją drogą przy takiego typu sprawach powinieneś otrzymać jakiś komunikat, np. SIGXFSZ lub SIGSEGV ;]
Edited by Zkont?!, 12.08.2011 09:35.
Quote
Locked