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

Obliczanie tylko 5 pierwszych liczb ciagu.

Ostatnio zmodyfikowano 2014-12-17 23:10
Autor Wiadomość
2630944
Temat założony przez niniejszego użytkownika
Obliczanie tylko 5 pierwszych liczb ciagu.
» 2014-12-17 13:51:15
Czemu jeśli daję
C/C++
#include<iostream>
int main()
{
   
    using namespace std;
    int a, suma, c;
   
    cout << "\n\n Program ktory oblicza i wyswietla sume 5 pierwszych liczb dowolnego ciagu zakonczonego 0\n\n";
   
    cout << " Wprowadz dowolny ciag liczb zakonczony 0 : "; cin >> a;
   
   
    suma = 0;
   
    for( c = 0; c < 5; c++ ) {
        while( a != 0 )
        {
            suma += a;
            cin >> a;
        } }
   
   
    cout << "\n\n\n Suma 5 pierwszych wyrazow ciagu wynosi " << suma;
   
   
   
   
   
    cout << "\n\n\n\n";
   
   
   
   
   
   
   
    system( "Pause" );
   
}

Nie oblicza mi tylko 5 liczb, ale liczy az do 0 ? Przecież jest funkcja for, ale tak jakby nie działała, ponieważ instrukcja w klamrze powinna być wykonana tylko 5 razy ?
P-122998
2630944
Temat założony przez niniejszego użytkownika
F5
» 2014-12-17 15:18:52
Odswiezam
P-123008
Rashmistrz
» 2014-12-17 18:34:42
Przecież jest funkcja for
"for" jest pętlą... :/


Przecież jest funkcja for, ale tak jakby nie działa,
ponieważ instrukcja w klamrze powinna być wykonana tylko 5 razy ?
Nie oblicza mi tylko 5 liczb, ale liczy az do 0 ?
Zagnieździłeś pętle, a zadziała to tak jak zaprogramowałeś.
Ta wewnętrzna pętla będzie działać
aż nie podasz zera tak jak jest w warunku:
C/C++
while( a != 0 )
{
    suma += a;
    cin >> a;
}

a później for wykonuje 4 kolejne "jałowe" pętle,
bo nie następuje wejście w pętlę while, bo nigdzie
później nie zmieniasz wartości "a" na inną niż zero...


P-123016
2630944
Temat założony przez niniejszego użytkownika
POPRAWA
» 2014-12-17 19:46:40
Czyli w jaki sposób zrobić, aby dodało tylko 5 pierwszych liczb ?
P-123025
Rashmistrz
» 2014-12-17 20:39:20
Emmmmm? Usunąć stamtąd pętlę "while" bez usuwania jej zawartości!?
P-123029
2630944
Temat założony przez niniejszego użytkownika
Ale jak wprowadzę 1 2 3 0 5
» 2014-12-17 20:49:29
Ale jak wprowadzę 1 2 3 0 5 to będzie liczyć 1+2+3+0+5 a powinno się na 1+2+3 skończyć bo ciąg ma być zakończony 0.
P-123030
Rashmistrz
» 2014-12-17 21:51:56
Pomyśl trochę...

Najpierw zrozum to co nie wypaliło
w pierwszym pomyśle i to popraw...
P-123038
2630944
Temat założony przez niniejszego użytkownika
OK
» 2014-12-17 22:45:55
No bez tego działa, ale jeśli wprowadzę ciąg 1 0 4 5 5 3 3 2 2 ... to już nie bardzo bo powinna suma wyjsc 1 a wyjdzie 15, bo ciag nie zatrzyma się na 0.
P-123045
« 1 » 2
  Strona 1 z 2 Następna strona