Си!!! Помогите студенту!!!

Ответить
Dunkler
Сообщения: 1
Зарегистрирован: 10 апр 2008, 23:16

10 апр 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;
}
Говорят вроди правильно!!! Эсли нет, поправте пожалуйста!
Помогите составить математическую модель, тоесть написать алгоритм по которому она работает!!! Буду очень благодарен!!!!!!!! Заранее спасибо!
Хыиуду
Сообщения: 2388
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

11 апр 2008, 11:25

Напомните, что значит "число непарно", "число парно"
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Albor
Сообщения: 482
Зарегистрирован: 06 сен 2004, 13:34
Откуда: Днепропетровск

16 апр 2008, 18:56

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