实验四:三角形判断
? ? ? ?本次實驗問題稍多,出租車計價一題邏輯比較簡單,就是情況比較多,在多次嘗試后才讓程序成功運行。而三角形的判斷一題中主要出現(xiàn)了以下幾點錯誤 ?1.else 和 if 語句不搭配 ? 2.對三角形成立的條件理解不正確(是任意兩邊之和大于第三邊,而不是大于等于第三邊)。查閱了課本后進行了修改,卻發(fā)現(xiàn)依舊有一個錯誤,有一個括號變成了中文狀態(tài)下的形式,將其改正后,實現(xiàn)了最終的編程。通過此次實驗發(fā)現(xiàn),在設(shè)計開始前,一定要形成流程圖,它可以使設(shè)計有一定的邏輯性與嚴密性,使得思路明確。
以下是程序:
(1)出租車計價
#include<stdio.h>
int main(void)
{
double m,n,s;
int t;
printf("Enter m:");
scanf("%lf",&m);
printf("Enter t:");
scanf("%d",&t);
if(m<=3){
n=10;
}
(2)三角形判斷
#include<stdio.h>
#include<math.h>
int main(void)
{
double x1,x2,y1,y2,x3,y3,a,b,c,m,n,L,s;
printf("Enter x1,y1:");
scanf("%lf%lf",&x1,&y1);
printf("Enter x2,y2:");
scanf("%lf%lf",&x2,&y2);
printf("Enter x3,y3:");
scanf("%lf%lf",&x3,&y3);
if((x2-x1)*(y3-y2)-(x3-x2)*(y2-y1)==0)
printf("impossible\n");
else {
a=sqrt(pow(x2-x1,2)+pow(y2-y1,2));
b=sqrt(pow(x3-x1,2)+pow(y3-y1,2));
c=sqrt(pow(x3-x2,2)+pow(y3-y2,2));
m=a+b+c;
n=sqrt(s*(s-a)*(s-b)*(s-c));
L=a+b+c;
s=m/2;
printf("area\n");
printf("L=%.2f,s=%.2f",L,s);
}
return 0;
}
else
if(m>3 && m<=10){
n=10+2*(m-3);
}
else {
n=24+3*(m-10);
}
if(t%5==0){
s=n+2*t/5;
}
else{
s=n+(t-t%5)*2/5;
}
printf("s=%.lf\n",s);
return 0;
}
轉(zhuǎn)載于:https://www.cnblogs.com/cyj815/p/10684401.html
總結(jié)
- 上一篇: 多益战盟电脑版(多益战盟电脑版下载)
- 下一篇: LOJ.2865.[IOI2018]狼人