Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.60
viper[ua]
1 / 1 / 0
Регистрация: 15.12.2010
Сообщений: 48
#1

Возвращение типа bool - C++

23.11.2012, 21:15. Просмотров 1456. Ответов 21
Метки нет (Все метки)

Написать встроенную функцию, которая возвращает значение типа bool в зависимости от истинности утверждения. Функция должна иметь столько параметров, сколько необходимо для вычисления заданного логического выражения.

Вот задача:
Число c является средним арифметическим чисел а и b.

Я пока плохо понимаю в CI ++, вот написал фрагментик:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "stdafx.h"
#include <iostream>
#include <math.h>
using namespace std;
 
bool (a, b, c, d);
int _tmain(int argc, _TCHAR* argv[])
{
    double a,c,b,d;
 
    cout << "Task 3 " << endl;
    return 0;
 
}
 
bool dx()
{
    bool result = true;
cout << "Vveditb A, B i C" << endl;
    cin >> a >> b >> c;
    d=(a+b)/2;
    return result;
}
Помогите исправить
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2012, 21:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Возвращение типа bool (C++):

Сформировать массив типа bool из массива типа char - C++
Доброго времени суток! После ввода элементов массива вылазит ошибка &quot;Необработанное исключение: System.NullReferenceException ... &quot;...

Возвращение результата функции bool и использование его в функции main() - C++
У меня есть функция bool, которая имеет вид: bool Pisos(int row, int place) { if (...) return true; else return false;...

функция типа bool - C++
Привет! Подскажите пожалуйста как написать функцию типа bool. Есть вектор целых чисел, в котором надо найти заданное число. Если оно есть...

Функция типа bool - C++
Сумма первой и последней цифры в введенном четырехзначном числе является нечетным значением. Если это так, то функция должна возвращать...

Переменные типа bool - C++
Сколько переменных типа bool здесь определено: bool &amp;l1, &amp;p2, **t3, b4, *n5, w6;

размер типа bool - C++
сколько занимает в памяти bool?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,846
23.11.2012, 21:19 #2
Цитата Сообщение от viper[ua
;3744655]bool dx()
{
bool result = true;
cout << "Vveditb A, B i C" << endl;
cin >> a >> b >> c;
d=(a+b)/2;
return result;
}
можно так
C++
1
2
3
4
5
6
7
8
9
10
bool dx()
{
cout << "Vveditb A, B i C" << endl;
 cin >> a >> b >> c;
 d=(a+b)/2;
if(d==c) 
   return true;
   else
  return false;
}
но лучше так
C++
1
2
3
4
5
6
7
8
bool dx()
{
cout << "Vveditb A, B i C" << endl;
 cin >> a >> b >> c;
 d=(a+b)/2;
return (d==c); 
  
}
1
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
23.11.2012, 21:29 #3
Цитата Сообщение от viper[ua
;3744655]#include "stdafx.h" #include <iostream> #include <math.h> using namespace std; bool (a, b, c, d); int _tmain(int argc, _TCHAR* argv[]) { double a,c,b,d; cout << "Task 3 " << endl; return 0; } bool dx() { bool result = true; cout << "Vveditb A, B i C" << endl; cin >> a >> b >> c; d=(a+b)/2; return result; }
a-a-a
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "stdafx.h"
#include <iostream>
#include <math.h>
using namespace std;
 
bool is_average(int ,int , int );
int _tmain(int argc, _TCHAR* argv[])
{
cout << "Vveditb A, B i C" << endl;
    cin >> a >> b >> c;
if (is_average(a,b, c))
    cout<<"its average";
else
   cout<<"its not average";
return 0;
}
 
bool is_average(int a, int b, int c){
return (a+b)==(c<<1);
}
1
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,654
Записей в блоге: 17
23.11.2012, 21:31 #4
Обычно лучше разделять ввод, вывод и обработку данных...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
bool dx(  double a, double b, double c) // обработка
{
  return  c ==((a+b)/2);
}
//--------------------------------------------------------
int main()
{
double a,c,b;
 
std::cout << "Vveditb A, B i C" << std::endl;
std::cin>>a>>b>>c;   // ввод
 
std::cout <<"result= "<< dx(a,b,c)<< std::endl;  // вывод
 
return 0;
}
1
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,846
23.11.2012, 21:42 #5
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
(a+b)==(c<<1);
теперь неплохо бы объяснить начинающему, что сдвиг влево на 1 позицию равен умножению на 2
0
viper[ua]
1 / 1 / 0
Регистрация: 15.12.2010
Сообщений: 48
23.11.2012, 21:43  [ТС] #6
Мне нужно возвращать значение в том случае, когда c будет равно результату функции
0
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,846
23.11.2012, 21:44 #7
Цитата Сообщение от Avazart Посмотреть сообщение
bool dx( *double a, double b, double c) // обработка
{
* return *c ==((a+b)/2);
}
ошибок округления не боишься?
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,654
Записей в блоге: 17
23.11.2012, 21:46 #8
Цитата Сообщение от ValeryS Посмотреть сообщение
ошибок округления не боишься?
Ну так не суть... откуда мне знать что там подразумевается ?
По сути там
C++
1
return fabs(c -(a+b)/2.)<= e;
0
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,846
23.11.2012, 21:47 #9
Цитата Сообщение от viper[ua
;3744803]Мне нужно возвращать значение в том случае, когда c будет равно результату функции
результат возвращается в любом случае
и задачку то ты внимательно прочитал?
Цитата Сообщение от viper[ua
;3744655]которая возвращает значение типа bool в зависимости от истинности утверждения.
Цитата Сообщение от viper[ua
;3744655]Число c является средним арифметическим чисел а и b.
т.е вернуть истина если является и ложь если не является
0
viper[ua]
1 / 1 / 0
Регистрация: 15.12.2010
Сообщений: 48
23.11.2012, 21:47  [ТС] #10
Объясните эту ошибку: "ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup"

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "stdafx.h"
#include <iostream>
#include <math.h>
using namespace std;
 
bool dx(  double a, double b, double c)
 
{
    cout << "Task 3 " << endl;
    return 0;
}
 
bool dx()
{
    double a,c,b,d;
cout << "Vveditb A, B i C" << endl;
 cin >> a >> b >> c;
 d=(a+b)/2;
if(d==c) 
   return true;
   else
  return false;
}
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,654
Записей в блоге: 17
23.11.2012, 21:48 #11
По сути там
C++
1
return fabs(c -(a+b)/2.)<= e;
где е это погрешность...
1
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,846
23.11.2012, 21:50 #12
Цитата Сообщение от viper[ua
;3744832]Объясните эту ошибку: "ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup"
а теперь покажи мне в своей программе главную функцию main
1
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
23.11.2012, 21:56 #13
Цитата Сообщение от ValeryS Посмотреть сообщение
(a+b)==(c<<1);
теперь неплохо бы объяснить начинающему, что сдвиг влево на 1 позицию равен умножению на 2
Да, слегка отдаёт намеренным запутыванием. Однако об операции сдвига начинающим тоже полезно иногда напомнить. А то некоторые начинающие изучать С++ считают, что << это лишь оператор ввода/вывода.
0
viper[ua]
1 / 1 / 0
Регистрация: 15.12.2010
Сообщений: 48
23.11.2012, 22:05  [ТС] #14
Цитата Сообщение от ValeryS Посмотреть сообщение
а теперь покажи мне в своей программе главную функцию main
Дописал, но программа останавливается на первой части не доходя до основных расчетов.
0
Avazart
Эксперт С++
7187 / 5361 / 280
Регистрация: 10.12.2010
Сообщений: 23,654
Записей в блоге: 17
23.11.2012, 22:11 #15
Ну так код напиши и ошибку выложи )
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2012, 22:11
Привет! Вот еще темы с ответами:

Переменная типа bool - C++
Что значит данная строчка? for (int i = 0; i &lt; n - 1 &amp;&amp; uvelichenie; i++) #include &lt;iostream.h&gt; #include &lt;windows.h&gt; int...

Цикл и переменная типа bool - C++
У меня есть переменная типа bool, которая при bool == true выводит звездочку, а при bool == false записывает пробел на место звездочки. Как...

Работа с глобальной переменной типа bool - C++
ок, я создала глобальную переменную типа bool (да, лучше этого избегать и все такое, но сейчас так надо) пусть будет bool abc; в main...

Почему переменная типа bool весит 1 байт? - C++
Всем доброго времени суток! Не подскажете, почему булеан весит 1 байт если он имеет всего два значения 0 и 1, следовательно он должен...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.11.2012, 22:11
Ответ Создать тему
Опции темы

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