1 条题解

  • 0
    @ 2025-10-10 15:45:26

    C :

    #include <stdio.h>
    
    void main(){
    	int a,b,c,t;
    	double s;
    	scanf("%d%d%d",&a,&b,&c);
    	
    	if(a > b){
    		t=a;a=b;b=t;
    	}
    	
    	if(b > c){
    		t=b;b=c;c=t;
    	}
    	
    	if(a*a+b*b==c*c){
    		s = a * b / 2.0;
    		printf("%.1f",s); 
    	}else{
    		printf("No"); 
    	}
    }
    

    C++ :

    #include<iostream>
    #include <iomanip>
    using namespace std;
    int main(){
    	int a,b,c,t;
    	double s;//面积
    	cin>>a>>b>>c;
    	if(a>b){
    		t=a;
    		a=b;
    		b=t;
    		
    	}
    	if(b>c){
    		t=b;
    		b=c;
    		c=t;
    	}
    
    	
    	if(a*a+b*b==c*c){
    		s = a * b * 1.0 / 2;
    		cout<<fixed<<setprecision(1)<<s<<endl;
    		
    	}else{
    		cout<<"No"<<endl;
    	}
    }
    
    

    Pascal :

    var a:array[1..5] of longint;
        i,j,t:longint;
        s:real;
    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 t:=a[i];a[i]:=a[j];a[j]:=t; end;
      if a[1]*a[1]+a[2]*a[2]=a[3]*a[3] then
        begin s:=a[1]*a[2]/2; writeln(s:0:1); end
       else writeln('No');
    end.
    
    

    Java :

    import java.util.Scanner;
    
    public class Main {
    	public static void main(String[] args) {
    		Scanner scanner=new Scanner(System.in);
    		String str=scanner.nextLine();
    		String[] strarray=str.split(" ");
    		double a=Double.valueOf(strarray[0]);
    		double b=Double.valueOf(strarray[1]);
    		double c=Double.valueOf(strarray[2]);
    		Double s=0.0;
    		String result;
    		if((a+b>c)&&(b+c>a)&&(a+c>b)){
    			if(a*a==b*b+c*c){
    				s=(double)(b*c)/2;
    			}else if(b*b==a*a+c*c){
    				s=(double)(a*c)/2;
    			}else if(c*c==a*a+b*b){
    				s=(double)(a*b)/2;
    			}else{
    			}
    		}else{
    		}
    		if(s!=0.0){
    			 result = String.format("%.1f",s);
    		}else{
    			 result="No";
    		}
    		System.out.println(result);		
    	}
    }
    
    

    Python :

    a,b,c=map(int,input().split(" "))
    if a**2+b**2==c**2:
        s=0.5*a*b
        print("%.1f"%s)
    elif a**2+c**2==b**2:
        s=0.5*a*c
        print("%.1f"%s)
    elif b**2+c**2==a**2:
        s=0.5*b*c
        print("%.1f"%s)
    else:
        print("No")
    
    • 1

    信息

    ID
    46
    时间
    1000ms
    内存
    512MiB
    难度
    10
    标签
    递交数
    4
    已通过
    1
    上传者