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

Pętla for - brak zapętlenia

Ostatnio zmodyfikowano 2012-06-25 17:58
Autor Wiadomość
jarekbutek
Temat założony przez niniejszego użytkownika
Pętla for - brak zapętlenia
» 2012-06-25 17:34:45
Pętla for nie powtarza instrukcji. Czemu?
#include <iostream>
using namespace std;
int main()
{
int t;
char pesel[11];
cin >> t;
for(int x=0; x<t; x++)
{
cout << x << endl;

cin >> pesel;
int suma = (((int)pesel[0]-48) + 3*((int)pesel[1]-48) + 7*((int)pesel[2]-48) + 9*((int)pesel[3]-48) + ((int)pesel[4]-48) + 3*((int)pesel[5]-48) + 7*((int)pesel[6]-48) + 9*((int)pesel[7]-48) + ((int)pesel[8]-48) + 3*((int)pesel[9]-48) + ((int)pesel[10]-48));
if(suma > 0)
{
if((suma % 10)==0)
cout<< "D" << endl;
else
cout << "N" << endl;
}
else cout << "N" << endl;
}
}
Dla wejścia
2
44051401458
12345678901
Mam wyjście:
0
D
P-59089
xevuel
» 2012-06-25 17:58:33
Prawdopodobnie to dlatego, że tablica znaków
char pesel[ 11 ];
 jest za mała. Do c-stringów dodawany jest na końcu znak \0, i brak możliwości umieszczenia tego znaku w tablicy spowodował, że prawdopodobnie wypadło na zmienną t, i wyzerowało ją. Dodam jeszcze, że mi np. działa bez problemu.
P-59090
« 1 »
  Strona 1 z 1