0 / 0 / 0
Регистрация: 13.11.2012
Сообщений: 20
|
|
1 | |
Четность/нечетность14.02.2013, 22:52. Показов 16040. Ответов 16
Метки нет (Все метки)
Как определить четность/нечетность числа (использовать остаток от деления нацело (%) и другие бинарные функции нельзя)?
0
|
14.02.2013, 22:52 | |
Ответы с готовыми решениями:
16
Четность-нечетность вещественных чисел на C/C++ Четность, нечетность наборов чисел Четность/нечетность строк в двумерном массиве Проверить число на нечетность |
0 / 0 / 0
Регистрация: 13.11.2012
Сообщений: 20
|
||||||
14.02.2013, 23:15 [ТС] | 3 | |||||
не работает с double (functions.cpp:23:14: error: invalid operands of types 'double' and 'int' to binary 'operator&')
действительно извращенный)) нужен более компактный и универсальный; а то прописывать if на положительность/отрицательность и два таких цикла... программа долго работать же будет, особенно с большими числами... Добавлено через 3 минуты
0
|
74 / 37 / 3
Регистрация: 23.09.2012
Сообщений: 408
|
||||||
15.02.2013, 01:31 | 5 | |||||
0
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
||||||
15.02.2013, 01:59 | 7 | |||||
Эм, и как же тогда это сделать? +,-,*,/ все это бинарные операторы, включая битовые операторы, кроме дополнения. Да то же сравнение ( == ) это бинарный оператор. Что то в этом задании не то.
Добавлено через 2 минуты А так, если и битовые нельзя:
0
|
0 / 0 / 0
Регистрация: 13.11.2012
Сообщений: 20
|
|
15.02.2013, 07:37 [ТС] | 8 |
значит я неправильно выразился, мне нужно узнать четность/нечетность double переменной; есть ограничения по использованию операторов с переменными double и в этом-то и проблема...
так не выйдет, ведь a по условию не integer, а double. мне нужно работать с double!!! если для double такого способа нет, так и скажите Добавлено через 7 минут в этом и проблема! после использования sqrt, который необходимо использовать, остается double-значение и мне необходимо узнать его четность/нечетность. дробные числа по-определению нечетные все я передаю в функцию массив и проверяю на четность/нечетность квадратный корень каждого из элементов. то есть корень из 16 будет 4, 4 - четное, значит счетчик считает; корень из 9 будет 3 - нечетное, значит счетчик не реагирует
0
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|
15.02.2013, 07:38 | 9 |
vorant, эм, Вы в курсе, что вещественные числа не имеют свойства "четное/нечетное" ни в C++ ни в математике? Это не имеет никакого смысла.
0
|
0 / 0 / 0
Регистрация: 13.11.2012
Сообщений: 20
|
|
15.02.2013, 07:42 [ТС] | 10 |
любое натуральное число - вещественное!!! если в ряде вещественных чисел есть натуральные (но с типом данных double) можно ли определить четность/нечетность этих нескольких чисел. если нам дан массив из чисел 1/2, 3/10, 5, 8, 54/63 и все это double, можно ли определить четность 8 и нечетность 5?
0
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|
15.02.2013, 07:48 | 11 |
Нет. Так как тип double хранит приближенное значение. https://www.cyberforum.ru/blogs/18334/blog88.html
1
|
32 / 32 / 17
Регистрация: 10.10.2012
Сообщений: 88
|
||||||
15.02.2013, 07:50 | 12 | |||||
Способ откровенно извращенский, но все же рабочий, в виде функции:
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,519
|
||||||
15.02.2013, 09:21 | 13 | |||||
так бы сразу и сказал
тебе нужно узнать четные корни или нет , но до этого нужно узнать натуральный ли корень ибо число 4.48 четное или нет дублю приведи к инт
например корень из 16 может выглядеть так 3.999999999999999999999
1
|
~ Эврика! ~
1256 / 1005 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
|
|
15.02.2013, 09:41 | 14 |
Ну, эта...
1. Проверяем равенство числа нулю. Если ноль, то чётное. 2. Проверяем, представимо ли число с помощью какого-нибудь инта. Если оно слишком большое, то технически его можно считать чётным, но вообще сказать наверняка нельзя, потому что младшие разряды потеряны из-за ограниченности дабла. 3. Если представимо, то приводим к инту, потом обратно в дабл и вычитаем из дабла. Если разность не равна нулю, то исходное число не целое и, соответственно, ни чётное, ни нечётное. 4. Иначе проверяем на чётность тот инт. 5. Что делать с нанами и бесконечностями, думайте сами.
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,519
|
|||||||||||
15.02.2013, 09:54 | 15 | ||||||||||
пардон наврал несколько
вот так правильней
чтобы исключить приближенные числа можно сделать так
0
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
||||||
15.02.2013, 10:50 | 16 | |||||
А если так
Не по теме: не увидел, что написано уже
0
|
74 / 37 / 3
Регистрация: 23.09.2012
Сообщений: 408
|
|
15.02.2013, 13:16 | 17 |
vorant, Чётность в теории чисел — характеристика целого числа, определяющая его способность делиться нацело на два.
0
|
15.02.2013, 13:16 | |
15.02.2013, 13:16 | |
Помогаю со студенческими работами здесь
17
Проверить нечетность числа (Турбо Си) Проверка элемента одномерного массива на нечетность, вычисление числа нечетных элементов Четность чисел проверка на четность и массивы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |