Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdafx.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- int main(void)
- {
- while(1)
- {
- int L;
- int i;
- printf("請輸入想要計算的資料筆數:");
- scanf("%d", &L);
- int *a; // 邊常變數,以動態陣列表示
- int *b;
- int *c;
- L=L+1;
- for(i=1 ; i <= L-1 ; i++)
- {
- a=new int[L];
- b=new int[L];
- c=new int[L];
- printf("輸入第%d組資料(輸入格式:a,b,c):", i);
- scanf("%d %d %d", &a[i], &b[i], &c[i]);
- }
- for(i=1 ; i <= L-1 ; i++)
- {
- int x, y;
- x = abs(a[i]-b[i]);
- y = abs(a[i]+b[i]);
- if(x >= c[i] || c[i] >= y)
- printf("此三邊長不構成三角形(Invalid)\n");
- else if ( a[i]==b[i] && b[i]==c[i] )
- printf("此三邊長構成正三角形(Equilateral)\n");
- else if ( a[i] != b[i] && b[i] != c[i] && c[i] != a[i])
- printf("此三邊長構成三邊均不等長的三角形(Scalene)\n");
- else if ( a[i]==b[i] || b[i]==c[i] || a[i]==c[i] )
- printf("此三邊長構成等腰三角形(Isosceles)\n");
- }
- //出現問題:第一組輸入1 1 1,第二組輸入5 5 5的話,第一個將無法構成三角形,第二個構成正三角形
- delete a, b, c;
- int D;
- printf("是否要繼續?(輸入1=是或0=否):");
- scanf("%d", &D);
- while( D > 1 )
- {
- printf("輸入無效數字,請重新輸入一次\n");
- printf("是否要繼續?(輸入1=是或0=否):");
- scanf("%d", &D);
- }
- if( D==0 )
- break;
- }
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement