Olimpiada C++ a Przygotowania

2013-02-07 20:30
0

Witam. Uczę się w 3 klasie technikum. Programować uczę się sam w domu. Ogólnie sobie radze w pisaniu programów. Ba, nawet dobrze się przy tym bawię. Jednak powoli przychodzi czas na olimpiadę C++ i tu mam do Was pytanie. Jakie artykuły czytać, aby rozwinąć "umiejętność myślenia". Chodzi mi o jakieś ciekawostki programistyczne, niecodzienne rozwiązania. Jeżeli macie jakieś ciekawe zadania z programowania bardzo proszę o wysłanie ich w załączniku. Każda pomoc jest cenna bo nie wiem jak się do tej olimpiady przygotować ;P

Co masz na myśli z "Olimpiadą C++"? Olimpiada Informatyczna? - hfaua 2013-02-08 12:05

Pozostało 580 znaków

2013-02-07 20:41

niecodzienne rozwiązania

Poprzeglądaj parę razy dziennie dział Newbie, a masz to gwarantowane ;)

Jeżeli macie jakieś ciekawe zadania z programowania (...) nie wiem jak się do tej olimpiady przygotować

SPOJ oraz pochodne.


W tym dziale Newbie często siedzę, ale tu albo są całkowite podstawy albo coś, czego na olimpiadzie nie ma. Co do SPOJA to jest kurdeee właśnie to czego szukam :DDDD Dziękuję :) - gswidwa 2013-02-07 20:49

Pozostało 580 znaków

2013-02-07 20:50
5

Tak jak wyżej - SPOJ, dodatkowo polecam jeszcze http://projecteuler.net/

Pozostało 580 znaków

2013-02-08 11:35
0

Ja jeszcze to musiałem przerobić.


Kiedyś miałem sen... że wszyscy ludzie zaczną używać tagów <code> i czytać błędy kompilatora...

Pozostało 580 znaków

2013-02-08 18:00
0

Własnie wróciłem z olimpiady (ok. 15 miejsce 2/6 zadań). mam do Was pytanie. Dlaczego "#include conio.h" jest niedozwolone na olimpiadach? przecież to jest standardowa biblioteka wejścia / wyjścia w C++. A gościu który pilnował Nas na sali mi odpowiedział, że to kolejne borlandowskie gówno -.- gdyby nie to zrobiłbym 4/6.

I jeszcze jedno. Jak załatwić problem, jeżeli pisze, że dane wejściowe kończy nowy wiersz? "cin >>" nie załatwi problemy, bo muszą być wprowadzone jakieś dane. I na tym też poległem (wiem, wstyd).

edytowany 1x, ostatnio: gswidwa, 2013-02-08 18:01
czy ja dobrze widzę, że przypomniałeś sobie o olimpiadzie na dzień przed? - Sopelek 2013-02-08 19:07

Pozostało 580 znaków

2013-02-08 18:02
1

przecież to jest standardowa biblioteka wejścia / wyjścia w C++

Jest zupełnie na odwrót!
conio.h to jedynie borlandowski dodatek, nie wchodzi w skład języka C++, tak więc kompilator nawet nie ma obowiązku jej obsługiwać.
... poza tym jest Windows-only.

Btw, niby czego z tej biblioteki chciałeś użyć na olimpiadzie? :|


edytowany 1x, ostatnio: Patryk27, 2013-02-08 18:06
założę się że getch() przed return 0; - _13th_Dragon 2013-02-08 18:09

Pozostało 580 znaków

2013-02-08 18:59
0

Chciałem zrobić coś na zasadzie:


while(getch() != '\n')
{
}

Ale teraz widzę błąd mego myślenia. A czego w takim razie użyć do rozpoznania "pustej linii" ? Bo takie coś nie przejdzie
cin >> zmienna (Jak klikam enter na pusto po prostu przechodzi kursorem niżej)

edytowany 1x, ostatnio: gswidwa, 2013-02-08 19:01
cin.eof(), ewentualnie cin.good() - Sopelek 2013-02-08 19:05

Pozostało 580 znaków

2013-02-08 19:04
0

A czego w takim razie użyć do rozpoznania "pustej linii" ?

Mógłbyś pokazać przykładową treść takiego zadania, w którym jest to wymagane?
Nie widzę sensu ręcznego rozpoznawania w programie pustych linii.

#Edit - zawsze możesz też użyć getline (http://ideone.com/jeOXPk)


edytowany 3x, ostatnio: Patryk27, 2013-02-08 19:08

Pozostało 580 znaków

2013-02-08 19:12
0

Są podawane jakieś dane na wejście i podawanie wejścia kończy pusta linia (kompletnie nie wiem o co w tym chodzi). Opadły mi ręce, a resztę programu wiedziałem jak zrobić :(

Treść zadania pomijam - jest nieistotna.

Wejście:
W każdej linii znajduje się liczba kilometrów do przejechania oraz liczba litrów paliwa jaka znajduje się w baku (liczby naturalne mniejsze od 2^16 rozdzielone spacją). Dane kończą się pusta linią.

Wyjście:
Dla każdej linii wejściowej należy w linii wyjściowej podać najkrótszy czas (w minutach), po jakim podróżujący dotrze do celu.

Przykładowe dane:
Wejście:
900 80
900 81
1200 180
2100 261
1200 200

Wyjscie:
0
600
600
1200
600

Pozostało 580 znaków

2013-02-08 19:15
0

while(cin>>km>>litry) // i nic więcej cie nie powinno interesować.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

2013-02-08 19:23
0

Problem w tym, że nie wiem ile tych danych mam i program w nieskończoność ma się pytać o te litry i kilometry? Rozumiem, że podawanie wejścia kończy liczba -1 lub coś w tym stylu. Ale "pusta linia"?

Sprawdziłem to while(cin >> x >> y), lecz po kliknięciu entera, czyli przejścia do nowej linii nie wpisując danych, kursor przemieszcza się w dół a program się nie kończy. W załączniku rezultat.

EDIT:

Tak w ogóle, to powiedzcie mi wpierw czy ja dobrze rozumiem pojęcie nowa linia.
1 [SPACJA] 12 [ENTER] // dane są wpisane
12 [SPACJA] 123 [ENTER] // dane są wpisane
321 [SPACJA] 56 [ENTER] //dane są wpisane
4 [SPACJA] 94 [ENTER] // dane są wpisane
[ENTER] //teraz nic nie wpisaliśmy a kliknęliśmy ENTER , program ma się zamknąć.

edytowany 2x, ostatnio: gswidwa, 2013-02-08 19:28
I sorry że zawracam Wam głowę takimi bzdetami, ale to zepsuło moją całą pracę na olimpiadzie :( - gswidwa 2013-02-08 19:24

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0