[C++] Stwierdzanie czy w danym ciągu występują trzy takie same elementy.
Ostatnio zmodyfikowano 2013-11-16 02:32
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' #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ę. |
|
pekfos |
» 2013-11-15 21:36:41 Nie wyświetlaj wyników na bieżąco. |
|
Weronika135 Temat założony przez niniejszego użytkownika |
» 2013-11-15 22:15:50 Jak mam to zrobić ? Jakieś dodatkowe klamry {}? |
|
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. |
|
« 1 » |