描述
當lcl做物理實驗的時候,她往往要按照實驗書上一些跟天書似的公式來對大量資料做很多冗雜的處理,這讓她很頭疼。
這一次lcl再次拿到(or 編造?)了大量的資料,以及一張公式表和需要使用公式的對應編號,時間已經很緊了,lcl需要在十二點之前完成這份實驗報告,但她現在困得無法繼續了,你能幫她完成這些資料處理嗎?
公式表如下:
1。e^x //即e的x次方
2。log(x) //以e為底求x的對數
3。sqrt(x) //x的開平方
4。|x| //x的絕對值
5。MAX(x,y) //求x與y中的最大值
6。AVERAGE(x,y,z) //求x,y,z的算術平均數
注意:
公式1~4 需使用標準數學庫函數實現;
公式5、6需自己按要求編寫相應函數實現,按要求返回相應值。
-
輸入
-
輸入包括T組資料;
第一行:包括一個正整數T(0<T<=200),表示接下來要讀入T組資料。
第2~2*T+1行:
對於每組資料,第一行包括一個整數n,表示這組資料所需要使用的公式編號;第二行包括該公式所需要的未知數,未知數均為實數,兩兩之間以空格隔開。保證資料合法。
-
輸出
-
對於每組資料輸出一行:格式為“所調用公式 = 所得答案”,詳見範例輸出。所得答案保留兩位小數。所調用公式嚴格按照公式表輸出。
-
範例輸入
3
1
6.23300
2
3.46700
3
1.21600
範例輸出
e^x = 509.28
log(x) = 1.24
sqrt(x) = 1.10
簡單的計算而已
#include <stdio.h>#include <math.h>int main(){int number,t;double answer;double x,y,z;double e=2.718281828;int op;scanf("%d",&number);for(t=1;t<=number;t++){scanf("%d",&op);if(op==1){scanf("%lf",&x);answer=pow(e,x);printf("e^x = %.2lf\n",answer);}else if(op==2){scanf("%lf",&x);answer=log(x);printf("log(x) = %.2lf\n",answer);}else if(op==3){scanf("%lf",&x);answer=sqrt(x);printf("sqrt(x) = %.2lf\n",answer);}else if(op==4){scanf("%lf",&x);answer=fabs(x);printf("|x| = %.2lf\n",answer);}else if(op==5){scanf("%lf %lf",&x,&y);if(x>y){answer=x;printf("MAX(x,y) = %.2lf\n",answer);}else{answer=y;printf("MAX(x,y) = %.2lf\n",answer);}}else{scanf("%lf %lf %lf",&x,&y,&z);answer=(x+y+z)/3;printf("AVERAGE(x,y,z) = %.2lf\n",answer);}}return 0;}