Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
1

вожусь с типом bool. не выходит. всегда пишет false

17.02.2011, 21:51. Просмотров 783. Ответов 8
Метки нет (Все метки)

Даны два целых числа A и B. проверить истинность высказывания "ровно одно из чисел нечетное".
пишу прогу, всегда выдает false, какие бы числа я не вводил. помогите исправить ошибку, пожалуйста!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  #include <windows.h>
  #include <iostream>
  using namespace std;
 
int main ()
{ 
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  
  int A,B;
  bool dig;
  int C,D; 
  
  cout << "Введите два целых числа: " << endl;
  cin >> A >> B;
  
  D=A%2;
  C=B%2;
  dig=((D=0)&&(C!=0))||((D!=0)&&(C=0));
  cout << "ровно одно из чисел нечетное? " << boolalpha << dig << endl;
  
  system ("pause");
  return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2011, 21:51
Ответы с готовыми решениями:

Изменить значение bool a = true в bool a = false
// Логическое выражения - варианты #include &lt;iostream&gt; #include &lt;conio.h&gt;...

Функция с типом bool
Добрый день! Есть функция main в которой надо вызвать другую функцию ( bool...

Ошибка с типом данных bool
Помогите разобрать ошибку, суть следующая есть массив use, который помечает...

Шаблонная функция не соотносится с типом bool
предисловие - не даются мне никак шаблоны, хотя очень хочу разобраться... Вроде...

Если bool name=false, то !name это true?
Добрый день! Привожу код, взятый из книги. Непонятны следующие строки bool...

8
alex_x_x
бжни
2455 / 1661 / 134
Регистрация: 14.05.2009
Сообщений: 7,162
17.02.2011, 21:56 2
Цитата Сообщение от Boost Посмотреть сообщение
D==0
Цитата Сообщение от Boost Посмотреть сообщение
(C==0)
както так
1
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
17.02.2011, 21:59  [ТС] 3
ALEX, спасибо!!! мне почему-то кажется, что я пробовал такой вариант, видимо не совсем такой...
да вообще, чего только не перепробовал.. весь моск взорвал) спасибо))
0
ValeryS
Модератор
7372 / 5573 / 707
Регистрация: 14.02.2011
Сообщений: 18,938
17.02.2011, 22:04 4
смотри как интересно
false=0
true =1;
bool C,D;

D=A%2!=0;
C=B%2!=0;

четное число даст 0 -false
dig=С^D искличающее ИЛИ 0 если они равны 0(false) если неравны true(1)
С уважением Валерий
2
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
17.02.2011, 22:48  [ТС] 5
спасибо, Валерий, но я думаю мой преподаватель немножко не поверит в то, что у меня такие знания после двух лекций по Си но учту)) еще раз спасибо))
0
+c+
112 / 22 / 3
Регистрация: 20.11.2010
Сообщений: 1,294
17.02.2011, 23:01 6
мне бы ваши годы, я бы рассказал преподу
0
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
17.02.2011, 23:24  [ТС] 7
не поверите! сказал, что у меня слишком сложное решение и попросил сделать проще... написал, как предложил мне Валерий... щас отправлю, буду ждать ответа
1
Mr.X
Эксперт С++
3183 / 1710 / 435
Регистрация: 03.05.2010
Сообщений: 3,867
18.02.2011, 09:01 8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/////////////////////////////////////////////////////////////////////////////////////////
//Даны два целых числа A и B. проверить истинность высказывания "ровно одно из чисел нечетное".
/////////////////////////////////////////////////////////////////////////////////////////
#include <cstdlib>
#include <ctime>
#include <iostream>
/////////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));   
    srand(static_cast<unsigned>(time(0)));
    
    int  A(rand());
    int  B(rand());
      
    std::cout << "Из чисел "
              << A
              << " и "
              << B              
              << ((A + B) % 2 ? " одно" : " НЕ одно")
              << " число нечетное."
              << std::endl;   
}
0
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
18.02.2011, 09:35  [ТС] 9
спасибо всем за помощь, но я решил в итоге еще проще)))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  #include <windows.h>
  #include <iostream>
  using namespace std;
 
int main ()
{ 
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  
  int A,B;
  bool nechet;
  
  cout << "Введите два целых числа: " << endl;
  cin >> A >> B;
 
  nechet=(A+B)%2;
  cout << "Ровно одно из чисел A и B нечетное? " << boolalpha << nechet << endl;
  
  system ("pause");
  return 0;
}
0
18.02.2011, 09:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2011, 09:35

Условные выражения включающие вызов функции с типом bool
Есть такой код, который определяет является ли число простым: #include...

Обьясните что это значит bool f=false;
#include &lt;iostream&gt; using namespace std; struct Aeroflot { char...

Как создать гетер для члена класса с типом bool?
Всем привет!!! У меня есть класс и его экземпляр NameDialog dialogNameFile,...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru