-1

私はプログラミングが初めてで、CS50をやっています。三角形の問題 (週 2 - 配列 - 関数) に対する積極的な取り組みに行き詰まりました。

ここに私のコードがあります:

#include <cs50.h>
#include <stdio.h>
#include <stdbool.h>

bool valid_triangle(float x, float y, float z);

int main(void)
{
    float x = get_float("Side 1: ");
    float y = get_float("Side 2: ");
    float z = get_float("Side 3: ");

    if (x <= 0 || y <=0 || z <=0)
    {
        return false;
    }

    if (valid_triangle == true)
    {
        printf("This is a valid triangle");
    }
    else
    {
        printf("This is not a valid triangle");
    }
}


bool valid_triangle(float x, float y, float z)
{
    if ((x + y <= z) || (x + z <= y) || (y + z <= x))
    {
        return false;
    }
    else
    {
        return true;
    }
}

エラーが発生します:

comparison between pointer and integer ('bool (*)(float, float, float)' and 'int') [-Werror,-Wpointer-integer-compare]
    if (valid_triangle == true)
        ~~~~~~~~~~~~~~ ^  ~~~~

私が間違っていることについて誰か助けてもらえますか?

4

1 に答える 1