题目描述
输入一组勾股数a,b,c(a≠b≠c),用分数格式输出其较小锐角的正弦值。(要求约分。)
输入输出格式
输入格式:
一行,包含三个数,即勾股数a,b,c(无大小顺序)。
输出格式:
一行,包含一个数,即较小锐角的正弦值
输入输出样例
输入样例#1:
3 5 4
输出样例#1:
3/5
说明
数据区间1~10^9
本题的思路是用选排求出最长边和最短边,再用辗转相除法求出二者的最大公因数,用最大公因数分别除一下就能得出约分后的正弦值了
为了防止有人不知道三角函数,还是科普一下吧,正弦值(sin)就是最短边除最长边的值。
(本题属于养老向的)
var
a:array[0..3]of longint;
i,j,c,ans:longint;
function chu(x,y:longint):longint;//辗转相除法
begin
if y=0 then exit(x);
chu:=chu(y,x mod y);
end;
begin
for i:=1 to 3 do read(a[i]);
for i:=1 to 2 do//选排
for j:=i+1 to 3 do
if a[i]>a[j] then
begin
a[0]:=a[i];
a[i]:=a[j];
a[j]:=a[0];
end;
c:=chu(a[1],a[3]);
write(a[1] div c ,'/',a[3] div c);//求出约分后的正弦值
end.