社区讨论

蒟蒻的80求助,最后一个点wa

P1888三角函数参与者 2已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@lo7yvnt3
此快照首次捕获于
2023/10/27 10:01
2 年前
此快照最后确认于
2023/10/27 10:01
2 年前
查看原帖
C
#include<stdio.h>
#include<math.h>
int gcd(int m,int n) //gcd函数
{    
    int t,r;    
    if (m<n)
    {        
        t=m;        
        m=n;       
        n=t;    
    }    
 
    while((m%n)!=0)
    {        
        r=m%n;        
        m=n;        
        n=r;    
    }   
 
    return n;
}
int main()
{
	long int a,b,c,d,e,f;
	long int cos,sin,all;
	scanf("%ld %ld %ld",&a,&b,&c);
	if(a<b&&a<c){
	d=a;
	e=b;
	f=c;}
	else if(b<a&&b<c){
	d=b;
	e=a;
	f=c;}
	else if(c<a&&c<b){
	d=c;
	e=a;
	f=b;}    //找出最小边,赋值为d,其余两边随便赋给e和f。
	cos=e*e+f*f-d*d; //计算未约分的cos值分子
	all=2*e*f;     //计算未约分的cos值分母 
	sin=sqrt(1*4*e*e*f*f-cos*cos);  //用sin^2+cos^2=1求分母与cos值相同的sin值的分子。 
	printf("%ld/%ld",sin/gcd(sin,all),all/gcd(sin,all));      //求得sin的分子与分母后约分。
	return 0;
}

回复

3 条回复,欢迎继续交流。

正在加载回复...