1. 程式人生 > 其它 >2159 尤拉公式

2159 尤拉公式

技術標籤:c語言初學者c語言

題目描述
多面體尤拉定理是指對於簡單多面體,其各維物件數總滿足一定的數學關係,在三維空間中多面體尤拉定理可表示為:
“頂點數-稜長數+表面數=2”。
正多面體,是指多面體的各個面都是全等的正多邊形,並且各個多面角都是全等的多面角。

輸入
一個正整數n表示有幾組資料接下來n行輸入正整數a;
輸出
如果存在正a面體輸出組成該正a面體的面是幾邊形
如果不存在輸出“NO”
每個輸出佔一行

樣例輸入
3
4
5
6
樣例輸出
3
NO
4

提示
可以通過尤拉公式加角度大小推理

資料大小沒有說哦

當用三角形時,3個面圍成一個頂多
設面為a
a+3/3a=a3/2+2
解的a=4

當用三角形時,4個面圍成一個頂多
設面為a
a+3/4a=a3/2+2
解的a=8

當用四邊形時…
當用五邊形時…
當用六邊形時,兩個構不成點,三個又變成了面,

來源
19計科馬中會

僅有五種正多面體,正4,6,8,12,20面體
正4面體是由4個全等的等邊3角形組成的;
正6面體是由6個全等的正方形組成的;
正8面體是由8個全等的等邊3角形組成的;
正12面體是由12個全等的正5邊形組成的;
正20面體是由20個全等的等邊3角形組成的。(來源於網路)

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int
n,a,i; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a); switch(a)//輸出正多面體各個面的邊數 { case 4: printf("3\n"); break; case 6: printf("4\n"); break; case
8: printf("3\n"); break; case 12: printf("5\n"); break; case 20: printf("3\n"); break; default: printf("NO\n"); break; } } return 0; }