PDA

Просмотр полной версии : Си!!! Помогите студенту!!!



Dunkler
10.04.2008, 23:22
Есть такая задача нат которой я парюсь уже больше месяца а то и двух:
Подсчитать количество n-значних натуральних чисел, в которых сумма цифр непарна, а младшая цифра – парна.
Есть такой код:
#include <stdio.h>;
#include <math.h>;
int main (void) {
int n,i,c=0,r=0,k,r1,r2;
while (n>0) {
{
scanf ("%d",&n);
if (n<0) puts ("Wrong input, reenter n");
}
for (i=pow(10,n-1);i<pow(10,n);i++) {
for (k=pow(10,n-1); k>=10; k/=10)
r+=(i/k);
r1= (r%2==0) ?1:0;
r2= (i%10%2==0) ?1:0;
if (r1==r2==1) c++;
}
printf("%d \n",c);
return 0;
}
Говорят вроди правильно!!! Эсли нет, поправте пожалуйста!
Помогите составить математическую модель, тоесть написать алгоритм по которому она работает!!! Буду очень благодарен!!!!!!!! Заранее спасибо!

Хыиуду
11.04.2008, 11:25
Напомните, что значит "число непарно", "число парно"

Albor
16.04.2008, 18:56
Переменная n не инициализирована, следовательно - цикл while может и не запуститься. Ну, и конечно, нужно посчитать фигурные скобки, в представленном листинге непонятно, где заканчивается тело данного цикла. В конце строк, содержащих директивы препроцессора точка с запятой не нужна. Нужно подучить синтаксис языка.