15 / 15 / 5
Регистрация: 10.01.2011
Сообщений: 275
1

Определить, четное число или нет

30.09.2011, 18:55. Показов 70606. Ответов 21
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер нужно написать прорамму для определения четных и не четных чисел.
Я так понимаю что четное при деление должно быть кратно 2 , но как написать такой цикл ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.09.2011, 18:55
Ответы с готовыми решениями:

Как можно узнать четное число или нет
К примеру мне надо узнать, четное число или нет, а потом уже в зависимости от этого, что-то делать...

Посчитать количество единиц и определить четное или нет!
Задание! вести 14 цифр из 0 и 1, далее этого разделить, получается 2 строки по 7 символов, и...

Определить, четное число или нечетное
1. Нужно написать прогу, которая считывает целое число, определяет и печатает , чётное оно или...

Определить целое число или нет
Необходимо определить, является ли число целым или нет. В цикле значение переменной изменяется с...

21
Higher
1953 / 1219 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
30.09.2011, 18:56 2
Цитата Сообщение от bearwoolfs Посмотреть сообщение
такой цикл
Какой еще цикл?
C++
1
a % 2 == 0 ? четное : нечетное;
1
385 / 229 / 12
Регистрация: 06.07.2011
Сообщений: 512
30.09.2011, 18:57 3
C
1
2
if (n&1) cout<<"нечетное";
else cout<<"четное";
1
1080 / 1007 / 106
Регистрация: 28.02.2010
Сообщений: 2,889
30.09.2011, 18:58 4
Цитата Сообщение от bearwoolfs Посмотреть сообщение
как написать такой цикл ?
Какой цикл?

Так чем плох?:
C
1
if (c&1) puts("нечетное"); else puts("четное");
Добавлено через 29 секунд
...
1
Эксперт С++
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
30.09.2011, 19:01 5
Решение с циклом:
C++
1
2
3
4
5
6
7
8
9
bool even;
do
{
   even = (number & 1) ? false : true;
} while(false);
if(even)
   std::cout << "even" << std::endl;
else
   std::cout << "odd" << std::endl;
1
15 / 15 / 5
Регистрация: 10.01.2011
Сообщений: 275
30.09.2011, 19:21  [ТС] 6
Paporotnik,

1 if (n&1) cout<<"нечетное"; // КАК Это (n&1) правильно читаеться?
2 else cout<<"четное";
0
Эксперт С++
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
30.09.2011, 19:27 7
bearwoolfs, оператор & - это побитовое "И". У нечетных чисел младший бит - всегда единица. Поэтому условие (n & 1) будет истиной тогда и только тогда, когда n - нечетное число
2
Заблокирован
30.09.2011, 19:44 8
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
 
#define MAX_NUM   100
 
int main(){
    int x[MAX_NUM], i;
 
    srand(time(NULL));
    for (i = 0; i < MAX_NUM; ++i)
        x[i] = rand() % 10 + 1;
 
    for (i = 0; i < MAX_NUM; ++i)
        if( ~( ~((x[i] & 1) - 1)) + 1 )
            printf("%d нечетное\n", x[i]);
        else
            printf("%d четное\n", x[i]);
    return 0;
}
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
30.09.2011, 19:59 9
Цитата Сообщение от alkagolik Посмотреть сообщение
C
1
if( ~( ~((x[i] & 1) - 1)) + 1 )
Это что еще за цирк?
0
Евгений М.
30.09.2011, 20:34
  #10

Не по теме:

Щас опять будет извращение hello world-а.

0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.09.2011, 20:58 11
Цитата Сообщение от Евгений М. Посмотреть сообщение

Не по теме:

Щас опять будет извращение hello world-а.

Да, тогда так можно:

if ((a >> 1) << 1 == a) // если верно, то четное
Даже полезно чуточку над этим подумать, не более
1
Заблокирован
30.09.2011, 23:25 12
Цитата Сообщение от fasked Посмотреть сообщение
Это что еще за цирк?
это прямой в дополнительный и обратно в прямой
0
fasked
30.09.2011, 23:36
  #13

Не по теме:

Цитата Сообщение от alkagolik Посмотреть сообщение
это прямой в дополнительный и обратно в прямой
Голосую за добавление тегов "сарказм" и "ирония".

0
0 / 0 / 0
Регистрация: 23.10.2012
Сообщений: 2
01.11.2012, 16:15 14
If a mod 2=0 then Writeln ('четное')
else Writeln ('нечетное);
END.
0
Эксперт С++
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
01.11.2012, 16:20 15
Few, круто, конечно. А причем здесь C++?
0
Заблокирован
01.11.2012, 16:39 16
fasked, 30.09.2011, 21:36
0
6280 / 3565 / 898
Регистрация: 28.10.2010
Сообщений: 5,926
01.11.2012, 16:42 17
Few, если Вы хотели похвастаться знанием паскаля, то разочарую Вас, у него есть функция odd
0
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
01.11.2012, 16:48 18
вот так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include "iostream"
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
 
    int a;
 
    cout << "Введите число: ";
    cin >> a;
 
    if (a/2*2==a)
        cout << "Четное";
    else
        cout << "Нечетное";
 
    system("pause");
    return 0;
}
0
18 / 18 / 13
Регистрация: 19.11.2014
Сообщений: 156
15.01.2015, 23:29 19
Цитата Сообщение от v.a.l.i.d Посмотреть сообщение
C++
1
2
3
4
if (a/2*2==a)
cout << "Четное";
else
cout << "Нечетное";
чего Вы хотели этим добиться?

если ввести а=13, то
13/2*2=13
если - а=6, то
6/2*2=6

во всех случаях первое условие будет истиной.
смысл делать такую проверку?
0
223 / 213 / 80
Регистрация: 26.04.2013
Сообщений: 972
16.01.2015, 15:05 20
Цитата Сообщение от posol_7 Посмотреть сообщение
если ввести а=13, то
13/2*2=13
если - а=6, то
6/2*2=6
так у тебя 13/2 = 6 (целочисленное деление). потом 6 * 2 = 12 => 13 != 12 , т.е. число не четное
0
16.01.2015, 15:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.01.2015, 15:05
Помогаю со студенческими работами здесь

Определить зеркально число или нет
1-Ввести 4-х значное число допустим 1991 определить зеркально или нет ( 1+9=10,9+1=10 в суме должно...

Определить, простое число или нет
Программа должна говорить простое число или нет. Подскажите в чем ошибка кто знает. #include...

Как определить целое число или нет
Можно как то определить какое число записано в переменной? скажем есть переменная double X; ...

Разбить число на множители и определить простые они или нет
Нужна помощь народ! Надо написать код чтобы работал по такому принципу: разбить число на множители...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru