P1888题解
P1888 三角函数
题目描述
输入一组勾股数
输入格式
一行,包含三个正整数,即勾股数
输出格式
一行,包含一个分数,即较小锐角的正弦值
输入输出样例 #1
输入 #1
3 5 4
输出 #1
3/5
说明/提示
数据保证:
题目传送门
要求
-
求正弦值即sin函数(邻边:斜边) -
需要化简分式并且按格式输出a/b 做法 -
先排序把最小、最小的边求出来 int a,b,c; cin>>a>>b>>c; int A,B,C; A=max(a,max(b,c)); C=min(a,min(b,c)); B=a+b+c-A-C; a=A,b=B,c=C; -
再求出最大公因数,除去后按格式输出 long long gcd(long long a,long long b){ if(b==0) return a; return gcd(b,a%b); }//最大公因数代码 #include <iostream> using namespace std; long long gcd(long long a,long long b){ if(b==0) return a; return gcd(b,a%b); }//最大公因数 int main(){ int a,b,c,cnt; cin>>a>>b>>c; int A,B,C; A=max(a,max(b,c)); C=min(a,min(b,c)); B=a+b+c-A-C; a=A,b=B,c=C; cout <<a<<' '<<b<<' '<<c<<endl; int x,y,z; x=a,y=c; z=gcd(x,y); x/=z,y/=z; cout <<y<<'/'<<x; return 0; }