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

Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? - C++

Восстановить пароль Регистрация
 
Shalygin
0 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 23
10.07.2015, 19:39     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #1
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
25
26
27
28
29
30
31
32
#include<iostream>
#include<math.h>
using namespace std;
 
template<typename T> T f1(T a, T b)
{
    if (a == 0){
        cout << "no decision\n";
        return 0;
    }
    return -b / a;
}
 
template<typename T> T f2(T a, T b, T c)
{
    bool x1, x2;
    const T D = b*b - 4 * a*c;
    if (D < 0)return;
    x1 = (-b - sqrtf(D)) / (2 * a);
    x2 = (-b + sqrtf(D)) / (2 * a);
    return x1, x2;
}
int main()
{
    int a, b, c;
    bool x;
    cout << "enter A, B, C\n";
    cin >> a >> b >> c;
    x = f1(a, b);
    cout << x<<"\n";
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.07.2015, 19:39     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение?
Посмотрите здесь:

как переделать функцию в классе, чтоб значение передавалось по ссылке C++
C++ Верно ли, что только одна из логических переменных a и b имеет значение true
По графику заданной функции и значению X , вычислить значение Y C++
По графически заданой функции и значению х, вычислить значение у C++
Что и почему дописать в int main() чтобы функция void вернула значение C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rius
 Аватар для Rius
1761 / 1146 / 274
Регистрация: 25.05.2015
Сообщений: 4,073
Записей в блоге: 4
Завершенные тесты: 4
10.07.2015, 19:41     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #2
bool x;
x = число;

почему должно получиться не булевое значение?
Shalygin
0 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 23
10.07.2015, 19:43  [ТС]     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #3
на выходе 1. true. может я что не так написал? просто новая тема, а я в её не въезжаю пока. спс
D_Gon
 Аватар для D_Gon
22 / 11 / 5
Регистрация: 09.07.2015
Сообщений: 47
10.07.2015, 19:43     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #4
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
25
26
27
28
29
30
#include<iostream>
 #include<math.h>
 using namespace std;
 
 template<typename T> T f1(T a, T b)
 {
 if (a == 0){
 cout << "no decision\n";
 return 0;
 }
 return -b / a;
 }
 
 template<typename T> T f2(T a, T b, T c)
 {
 bool x1, x2;
 const T D = b*b - 4 * a*c;
 if (D < 0)return;
 x1 = (-b - sqrtf(D)) / (2 * a);
 x2 = (-b + sqrtf(D)) / (2 * a);
 return x1, x2;
 }
 int main()
 {
 int a, b, c;
 cout << "enter A, B, C\n";
 cin >> a >> b >> c;
 cout << f1(a, b)<<"\n";
 return 0;
 }
Shalygin
0 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 23
10.07.2015, 19:46  [ТС]     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #5
я вторую функцию или шаблон... не смотрю. по аналогии разберусь. с первой что?
Rius
 Аватар для Rius
1761 / 1146 / 274
Регистрация: 25.05.2015
Сообщений: 4,073
Записей в блоге: 4
Завершенные тесты: 4
10.07.2015, 19:47     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #6
Ничего. Проблема не в функции, а в переменной, в которую результат помещается.
Shalygin
0 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 23
10.07.2015, 19:51  [ТС]     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #7
так а в чём там причина-то?
Rius
 Аватар для Rius
1761 / 1146 / 274
Регистрация: 25.05.2015
Сообщений: 4,073
Записей в блоге: 4
Завершенные тесты: 4
10.07.2015, 19:52     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #8
Помещаете результат в переменную, которая может принимать только значения true и false. И ещё возмущаетесь, почему там не единица.
Приведение типов причина.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2015, 19:58     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение?
Еще ссылки по теме:

Вычислить значение функции по заданному значению переменных: C++
Почему переменной присваивается произвольное значение("мусор")? C++

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

Или воспользуйтесь поиском по форуму:
Shalygin
0 / 0 / 0
Регистрация: 30.06.2015
Сообщений: 23
10.07.2015, 19:58  [ТС]     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение? #9
спасибо прямо и не ловко, на пустом месте проблему нарисовал.
Yandex
Объявления
10.07.2015, 19:58     Подскажите, почему значению функции присваивается true? Что сделать чтобы передавалось значение?
Ответ Создать тему
Опции темы

Текущее время: 09:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru