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

Problem z inkrementacją w iloczynie liczb z danego przedziału.

Ostatnio zmodyfikowano 2015-11-03 23:25
Autor Wiadomość
melko27
Temat założony przez niniejszego użytkownika
Problem z inkrementacją w iloczynie liczb z danego przedziału.
» 2015-11-03 19:14:30
Jako zadanie domowe z informatyki dostałem do zrobienia program zliczający iloczyn liczb całkowitych z przedziału od <1,n>. Po wpisaniu w wszystkich instrukcji program zlicza tylko dwie pierwsze i ostatnią liczbę z przedziału:

C/C++
#include <iostream>
using namespace std;


int main()
{ int n, s, i;
    cout << "n = ";
    cin >> n;
    s = 1;
    i = n;
    while( s > n );
   
    {
        s++;
        i *= s;
        cout << i << endl;
       
    }
    cout << endl;
   
   
    return 0;
}
P-139572
carlosmay
» 2015-11-03 20:16:22
while( s > n );
 
 zamykasz pętlę zaraz po warunku?
Znak porównania też jest nie taki.
P-139589
melko27
Temat założony przez niniejszego użytkownika
» 2015-11-03 20:22:19
Sorry :) wcześniej próbowałem to wykombinować za pomocą do...while i zapomniałem o średniku. Co nie zmienia faktu, że nadal nie działa.
P-139590
carlosmay
» 2015-11-03 20:27:41
Co nie zmienia faktu, że nadal nie działa.
 Była konkretna i kompletna odpowiedź. Czytamy całość;)
P-139591
melko27
Temat założony przez niniejszego użytkownika
» 2015-11-03 20:57:39
Nawet po zmianie znaku na przeciwny i usunięciu średnika gdzieś jest błąd, gdyż w przedziale <1,n>, gdzie n=5 program jako iloczyn podaje 600 zamiast 120 czyli dwa razy mnoży ostatnią liczbę w tym przedziale.
P-139595
carlosmay
» 2015-11-03 23:03:43
Rozpisz kod pętli na kartce i przeanalizuj każdy krok.
P-139613
melko27
Temat założony przez niniejszego użytkownika
» 2015-11-03 23:25:54
OK! Problem solved w pętli "do" wystarczyło zamienić miejscami działanie z inkrementacją. Dzięki za pomoc :)
P-139616
« 1 »
  Strona 1 z 1