Sujet 1038 : [Introduction à la programmation] Exercice de définition de macro : Aire de triangle

Aire du triangle = SQRT(S*(Sa)*(Sb)*(Sc)) où S=(a+b+c)/2, a, b, c sont les trois côtés du triangle. Définissez deux macros avec des paramètres, l'une est utilisée pour trouver la zone et l'autre macro est utilisée pour trouver S. Écrivez un programme et utilisez le nom de la macro avec les paramètres réels pour trouver la zone.

Format d'entrée

Les trois côtés du triangle ABC peuvent être des décimales.

Format de sortie

Aire d'un triangle à 3 décimales

Exemple de saisie

copie

3 4 5

Exemple de sortie

copie

6.000

#include<iostream>
#include<iomanip>
#include<cmath>
using namespace std;
#define GetS(a,b,c) ((a+b+c)/2.0)
#define GetArea(a,b,c){\
      float S=GetS(a,b,c);\
      float area=sqrt(S*(S-a)*(S-b)*(S-c));\
      cout << fixed << setprecision(3) << area;\
}

/*这个"\"放在宏定义函数句子的末尾,表示本句结束,以及其他*/
int main() {
    float a, b, c;
    cin >> a >> b >> c;
    GetArea(a,b,c);
   


    return 0;
}

Je suppose que tu aimes

Origine blog.csdn.net/qq_63999224/article/details/132359800
conseillé
Classement