|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.04.2010, 20:13 | #1 |
Форумчанин
Регистрация: 24.09.2009
Сообщений: 104
|
МассивТТТ
Здравствуйте всем
помогите разобраться. Нужно в массиве подсчиать количество нечетных чисел, массив выводит количество непонятно что считает for (i=0; i<10; ++i) if (i%2==1) s=s+i; printf(" %d",+s); что не так с кодом? |
06.04.2010, 20:18 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
а где массив?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
06.04.2010, 20:28 | #3 |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
Вместо
Код:
Код:
Последний раз редактировалось profi; 06.04.2010 в 20:52. |
06.04.2010, 20:29 | #4 |
Форумчанин
Регистрация: 24.09.2009
Сообщений: 104
|
Массив такой
46 30 32 40 6 17 45 15 48 26 после подчета выходит 20 |
06.04.2010, 20:34 | #5 |
Форумчанин
Регистрация: 24.09.2009
Сообщений: 104
|
Теперь после такого кода
if (i%2!=0)s++; printf(" %d",s); получается 5 |
06.04.2010, 20:42 | #6 |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
А переменную s инициализировал 0 перед циклом?
|
06.04.2010, 20:48 | #7 |
Форумчанин
Регистрация: 24.09.2009
Сообщений: 104
|
Да. Вот весь код программы
#include<stdlib.h> #include<iostream.h> #include<stdio.h> #include<conio.h> void main() { int s,i,c,nwhite,nother; printf(" MASSIV"); printf("\n"); printf("\n"); textcolor(13); s=0; for(i=0; i<10; ++i) printf(" %d", rand()%50); printf("\n"); printf("\n"); s=0; for(i=0; i<10; ++i) if (i%2!=1)s++; printf(" %d",s); getchar(); clrscr(); } после запуска получается MASSIV 46 30 32 40 6 17 45 15 48 26 5 |
06.04.2010, 20:53 | #8 |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
Код:
|
06.04.2010, 21:02 | #9 |
Форумчанин
Регистрация: 24.09.2009
Сообщений: 104
|
#include<stdlib.h>
#include<iostream.h> #include<stdio.h> #include<conio.h> void main() { int s,i,c,nwhite,nother; int a[10]; printf(" MASSIV"); printf("\n"); printf("\n"); textcolor(13); s=0; for(i=0; i<10; ++i) printf(" %d", a[i]); printf("\n"); printf("\n"); s=0; for(i=0; i<10; ++i) if (a[i]%2!=1)s++; printf(" %d",s); getchar(); clrscr(); } получается 12290 4608 3360 64 12291 3360 64 3092 -29236 12803 8 опять не то |
06.04.2010, 21:03 | #10 |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
Капец полный. И как ты массив заполняешь? Ты в курсе, что ты его вообще не заполняешь?
Код:
Последний раз редактировалось profi; 06.04.2010 в 21:14. |