举个例子,洛谷1888题。
题目如下
输入一组勾股数a,b,c(a≠b≠c),用分数格式输出其较小锐角的正弦值。(要求约分。)
一行,包含三个数,即勾股数a,b,c(无大小顺序)。
一行,包含一个数,即较小锐角的正弦值
3 5 4
3/5
解题思路:因为要求为正弦值,所以只要得到勾股数里最小和最大的值在相除约分即可。
代码如下
#include <iostream>
#include <algorithm> //头文件不用说。
using namespace std;
int gcd(int a,int b)
{
return !b?a:gcd(b,a%b);//本题最为核心的地方,暴力约分
}
int main()
{
int a[3],i;
cin>>a[0]>>a[1]>>a[2];
sort(a,a+3);//sort排序(从小到达)注意sort只能排数组。
cout<<a[0]/gcd(a[0],a[2])<<‘/‘<<a[2]/gcd(a[0],a[2]);//约分格式并输出。
return 0;
}
蒟蒻的第一次博客,还请大佬请教。
原文:https://www.cnblogs.com/2050792294-qq/p/9260822.html