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

[C++] Stwierdzanie czy w danym ciągu występują trzy takie same elementy.

Ostatnio zmodyfikowano 2013-11-16 02:32
Autor Wiadomość
Weronika135
Temat założony przez niniejszego użytkownika
[C++] Stwierdzanie czy w danym ciągu występują trzy takie same elementy.
» 2013-11-15 21:21:55
Mam za zadanie wypisać wyrazy ciągu i sprawić, aby program wyświetlał mi napis "TAK" gdy są trzy takie same elementy oraz "NIE" gdy nie ma.
Mój program przy wypisaniu liczb np, 1, 2, 5634, 4324,1,432,1,543,1,2,5,7 zamiast jeden raz wyświetlić 'tak' ,pokazuje 'tak , tak i 10 razy nie'

C/C++
#include <iostream>

using namespace std;

int main()
{
    double tab[ 12 ];
    int n = 12;
    for( int m = 0; m < n; m++ )
         cin >> tab[ m ];
   
    for( int k = n - 1; k > 0; k-- ) {
        for( int i = 0; i < n; i++ )
        if( tab[ i ] > tab[ i + 1 ] ) {
            double temp = tab[ i ];
            tab[ i ] = tab[ i + 1 ];
            tab[ i + 1 ] = temp;
        }
    }
   
   
    for( int i = 0; i < n; i++ )
    if( tab[ i ] == tab[ i + 1 ] && tab[ i ] == tab[ i + 2 ] )
         cout << "tak" << endl;
    else
         cout << "nie" << endl;
   
   
   
    return 0;
}

Mógłby ktoś mi wytłumaczyć jak zredukować ten błąd?
Z góry dziękuję.
P-96314
pekfos
» 2013-11-15 21:36:41
Nie wyświetlaj wyników na bieżąco.
P-96315
Weronika135
Temat założony przez niniejszego użytkownika
» 2013-11-15 22:15:50
Jak mam to zrobić ? Jakieś dodatkowe klamry {}?
P-96316
aso
» 2013-11-16 02:32:04
Przed pętlą która wypisuje, dodaj zmienną bool powtorzenie = false;
W pętli usuń warunek else, a zamiast cout << "TAK", daj powtorzenie = true;
Po pętli sprawdź czy powtorzenie == true.
P-96319
« 1 »
  Strona 1 z 1