Member 12914219 Ответов: 1

Возвращаемый тип bool в userdefined функции ничего не возвращает?


моя программа не возвращает никакого значения...когда я пытаюсь решить эту проблему без использования пользовательской функции и использую printf() для вывода сообщения "этот треугольник действителен или нет", он работает

Что я уже пробовал:

#include<stdio.h>
#include <stdbool.h>
bool triangle( int a,int b,int c);
int main(void){
    printf("enter three side of triangel to check if triangle exist\n");
     
    
    int x=get_int();
    int y=get_int();
    int z=get_int();
    
    triangle(x,y,z);
}
bool triangle( int a,int b,int c)
{
    if((a>0&&b>0&&c>0)&&(a+b>c&&b+c>a&&a+c>a)){return true;}
        
    
    else{ return false;}}

[no name]

"моя программа не возвращает никакой ценности", О да, это так. Ты просто ничего с ним не делаешь.

Member 12914219

пожалуйста, уточните .. программа должна возвращать либо true, либо false?..спасибо за ВАШ интерес

[no name]

- Что именно? Вы игнорируете возвращаемое значение.

1 Ответов

Рейтинг:
2

Dave Kreskowiak

Функция действительно возвращает значение. Вы просто не захватываете его и ничего с ним не делаете.

Ваш призыв к triangle(x,y,z); не захватывает возвращаемое значение. Так и должно быть

bool c;
c = triangle(x,y,z);
...


Member 12914219

спасибо ...я получил его...должен ли я тогда напечатать его стоимость...?

Dave Kreskowiak

Откуда, черт возьми, мне знать?!?! Это ваше заявление. Я понятия не имею, что вы хотите/должны делать с этой ценностью!