![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 18.08.2011
Сообщений: 6
|
![]()
В качестве практики решил написать программу,определяющую четность или нечетность числа.однозначные числа определяются без проблем.
Однозначные числа: Код:
Многозначные числа: Код:
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 08.01.2011
Сообщений: 226
|
![]() Код:
![]() математика.... если делится на 2 - четное. если младший бит ==1 - не четное. все то же самое, как и для однозначных |
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 18.08.2011
Сообщений: 6
|
![]()
Спасибо за совет,однако этот способ срабатывает только для однозначных,у меня так.
Последний раз редактировалось Assemblerman; 18.08.2011 в 19:01. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 10.12.2007
Сообщений: 124
|
![]()
я в си не силен.
Консольное приложение? getchar - возвращает число??? или все же код символа? while(n=getchar() != end) c=c+n; это точно не будет работать верно. допустим вы вводите "111" что вы получите в переменой с ? ))
Русский язык не мой конёк
![]() Последний раз редактировалось Stilet; 19.08.2011 в 21:03. |
![]() |
![]() |
![]() |
#5 | |
Новичок
Джуниор
Регистрация: 18.08.2011
Сообщений: 6
|
![]() Цитата:
![]() |
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 10.12.2007
Сообщений: 124
|
![]()
нет. вы сделали не правильный вывод..
while(n=getchar() != end) c=c+n; на входе 123 1. С=0 n=1 результат с=1 2. С=1 n=2 результат с=3 3. С=3 n=3 результат с=6 6 <> 123 добавлено а вот как раз проверка if(c&0x01) верна. (если я правильно понял, вы смотрите установлен ли в переменой с младший бит)
Русский язык не мой конёк
![]() Последний раз редактировалось Neobrat; 18.08.2011 в 19:23. |
![]() |
![]() |
![]() |
#7 | |
Новичок
Джуниор
Регистрация: 18.08.2011
Сообщений: 6
|
![]() Цитата:
![]() |
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 10.12.2007
Сообщений: 124
|
![]()
и это разве правильный результат?
когда 111 стало считаться четным? )) и еще подумайте, так уж вам необходимо получить в переменой такой же число что и ввели, для проверки четности!? ))
Русский язык не мой конёк
![]() |
![]() |
![]() |
![]() |
#9 | |
Новичок
Джуниор
Регистрация: 18.08.2011
Сообщений: 6
|
![]() Цитата:
![]() Написал наконец код.Оказывается надо было обрабатывать массив,а потом только переводить его в число функцией atoi() Код:
Последний раз редактировалось Stilet; 19.08.2011 в 21:05. |
|
![]() |
![]() |
![]() |
#10 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
![]() Код:
Последний раз редактировалось netrino; 19.08.2011 в 17:18. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проверка четности (используя Т триггер) | snevar | Помощь студентам | 2 | 10.11.2010 14:24 |
Проверка четности, логические элементы | snevar | Помощь студентам | 7 | 28.10.2010 21:14 |
Pascal. Сортировка по четности индексов массива. | quba123 | Помощь студентам | 1 | 18.12.2009 00:05 |
Определение IP | IvanLex | HTML и CSS | 6 | 28.03.2008 07:46 |
Определение IP | IvanLex | Общие вопросы по Java, Java SE, Kotlin | 1 | 19.02.2008 09:12 |