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

Ciąg, powtarzanie się liczb wywołuję koniec programu.

Ostatnio zmodyfikowano 2018-01-29 22:16
Autor Wiadomość
oczko110
Temat założony przez niniejszego użytkownika
Ciąg, powtarzanie się liczb wywołuję koniec programu.
» 2018-01-29 19:12:01
Witam, mam problem z takim zadaniem
// Wczytuj kolejne liczby calkowite az do pierwszego powtorzenia elementu.
//  (np. "1 2 3 3")
// Ostatni (powtorzony) element konczy ciag, ale do niego nie nalezy.
// Podaj liczbe elementow ciagu i sume
O ile podanie liczby elementow nie sprawia mi problemu, nie mogę dojść to tego jak porównać dwie poprzednie cyfry.
chciałem zapamiętać jedną jako "int poprzednia" i potem porównywać z następna, niestety nie umiem.
Z góry dziękuję za pomoc.

C/C++
#include <iostream>
using namespace std;
int main()
{
    int a;
    int licznik = - 1;
    int suma = 0;
    int poprzednia;
   
    do {
        cout << "Podaj liczbe, nie moze byc taka sama jak poprzednia: ";
        if()
        cin >> a;
       
        if( licznik >= 0 && a != 0 )
        {
            poprzednia = a;
            cout << "poprzednia: " << poprzednia << endl;
        }
       
       
        licznik++;
        suma += a;
       
        cout << "licznik " << licznik << endl;
    }
    while( a = poprzednia );
   
    cout << "taka sama !!" << endl;
    cout << "suma: " << suma << endl;
    return 0;
   
}[ cpp ]
P-169121
pekfos
» 2018-01-29 19:16:18
C/C++
poprzednia = a;
cin >> a;
P-169122
mateczek
» 2018-01-29 22:16:53
pomijając że kolejność błędna to
while( a = poprzednia );
porównanie to "==" a nie "="

C/C++
cin >> a //pierwsze wczytanie przed pętlą
do {
    poprzednia = a; // tak jak zasugerował pekfos zmień kolejność
    cin >> a;
   
} while( a == poprzednia ) //== nie =

C/C++
cin >> poprzednia //pierwsze wczytanie przed pętlą
while( 1 ) {
    cin >> a;
    if( poprzednia != a ) break; //porównanie
   
    poprzednia = a; //zamiana aktualną na poprzednią
}
P-169125
« 1 »
  Strona 1 z 1