Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

zliczanie wystapien

Ostatnio zmodyfikowano 2009-06-09 20:18
Autor Wiadomość
nino
Temat założony przez niniejszego użytkownika
zliczanie wystapien
» 2009-06-09 11:49:53
Witam.

Zacząłem się trochę bawić ze spojem i często napotykam się z tym samym problemem więc go w końcu tutaj poruszę na pewnym przykładzie.

Zadanie, które robię:
https://pl.spoj.pl/problems/KC004/

Kod, który aktualnie mam:
C/C++
#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
    //ios_base::sync_with_stdio(0); 
   
    long long n, ile = 0, a;
    long long tab[ n ];
   
    //while(???)
    //{  
    cin >> a;
    cin >> n;
    for( long long i = 0; i < n; i++ )
    {
        cin >> tab[ i ];
    }
   
    ile = 0;
    for( long long i = 0; i < n; i++ )
    {
        if( tab[ i ] == a )
             ile++;
       
    }
    cout << ile << endl;
    //}
    getch();
    return 0;
}
I podstawowe pytanie. Jak zakończyć wczytywanie danych? Rozumiem, że poprzez while, ale co dokładniej tam napisać? :/[/i][/i]
P-7529
WunM
» 2009-06-09 14:06:31
Wczytujesz plik dotąd aż się skończy. Ot cała filozofia.
P-7531
steckel
» 2009-06-09 15:04:13
Dane nie są wczytywane z pliku tylko przez strumień (tak jakby się wpisywało z klawiatury).
P-7533
WunM
» 2009-06-09 15:45:43
Fakt... dawno nie rozwiązywałem tych zadań...

C/C++
while( xyz = /*nie wiem czy używasz cin (pewnie nie) ale po prostu odczytujesz dane */ )
{
    //tu wiadomo...
}
P-7534
WunM
» 2009-06-09 19:02:29
Dla uzyskania lepszego czasu można użyć funkcji scanf.
P-7538
nino
Temat założony przez niniejszego użytkownika
» 2009-06-09 19:57:12
I właśnie wcześniej miałem

while(cin>>a)

W każdym razie wyskakuje ciągle błąd SIGSEGV


Taki warunek zakończenia wystepuje w wielu zadaniach, dlatego musiałem ten temat poruszyć.
P-7539
nino
Temat założony przez niniejszego użytkownika
» 2009-06-10 00:38:24
Dzięki manfred. O to właśnie biegało. Teraz śmiga! :D
P-7543
manfred
» 2009-06-09 17:37:24
while( cin >> zmienna )
Wynikiem wyrażenia "cin >> zmienna" jest cin, które jest typu basic_istream<char, char_traits<char> >, który udostępnia przezabawny operator void*(), który może bez problemu służyć (po niejawnej konwersji do bool) jako warunek dla pętli.
P-18957
« 1 » 2
  Strona 1 z 2 Następna strona