Expérience 3-8 Sortie de l'aire et de la circonférence d'un triangle (15 points)

Cette question nécessite d'écrire un programme pour a、b、ccalculer et sortir l'aire et le périmètre en fonction des trois côtés du triangle d'entrée . Remarque: dans un triangle, la somme de deux côtés est supérieure au troisième côté. La formule pour calculer l' aire d'un triangle:
area = s (s - a) (s - b) (s - c) area = \ sqrt {s} \ sqrt {(s − a)} \ sqrt { (s − b)} \ sqrt {(s − c)}a r e a=s ( s - a ) ( s - b ) ( s - c )
s=(a+b+c)/2.

Format d'entrée:

L'entrée est 3 entiers positifs, représentant les 3 côtés du triangle a、b、c.

Format de sortie:

Si le côté d'entrée peut former un triangle, dans une rangée, selon

area = 面积; perimeter = 周长

Le format de sortie consiste à conserver deux décimales. Sinon, sortie

These sides do not correspond to a valid triangle

Exemple d'entrée 1:

5 5 3

Exemple de sortie 1:

area = 7.15; perimeter = 13.00

Exemple d'entrée 2:

1 4 1

Exemple de sortie 2:

These sides do not correspond to a valid triangle

Code:

# include <stdio.h>
# include <stdlib.h>
# include <math.h>

int main() {
    
    
    int a,b,c;
    scanf("%d %d %d",&a,&b,&c);
    double area,perimeter,s;
    // 能构成三角形的条件
    if (a + b > c && a + c > b && b + c > a) {
    
    
        s = (a + b + c) / 2.0;
        area = sqrt(s * (s - a) * (s - b) * (s - c));
        perimeter = 2 * s;
        printf("area = %.2lf; perimeter = %.2lf",area,perimeter);
    }else {
    
    
        printf("These sides do not correspond to a valid triangle");
    }
    return 0;
}

Soumettre une capture d'écran:

Insérez la description de l'image ici

Idées de résolution de problèmes:

La difficulté de cette question réside dans le jugement de la condition du triangle:

  • La somme de deux côtés est supérieure au troisième côté

Je suppose que tu aimes

Origine blog.csdn.net/weixin_43862765/article/details/114454636
conseillé
Classement