1 条题解
-
0
C :
#include<stdio.h> int suShu(int x){ int i; if(x>1){ int c=0; for(i=2;i<=x/2;i++){ if(x%i==0){ c++; break; } } if(c==0){ return 1; }else{ return 0; } }else{ return 0; } } int main() { int a,b; for(a=2;a<=100;a++){ for(b=a+1;b<=100;b++){ if(suShu(a)&&suShu(b)&&suShu((a+b)/2)&&(a+b)%2==0){ printf("%d %d %d\n",a,(a+b)/2,b); } } } return 0; }C++ :
#include <bits/stdc++.h> using namespace std; bool a(int n){ int i,s=0,j; bool f=true; for(j=2;j<=sqrt(n);j++){ if(n%j==0){ f=false; } } if(n==1){ f=false; } return f; } int main(){ int i,j; for(i=2;i<=100;i++){ for(j=i+2;j<=100;j++){ if(a(i)==true&&a(j)==true&&a((i+j)/2)==true&&(i+j)%2==0){ cout<<i<<" "<<(i+j)/2<<" "<<j<<endl; } } } }Pascal :
var a:array[1..100] of integer; i,j,t,b,c:integer; function pd(x:integer):boolean; var i:integer; begin pd:=true; for i:=2 to trunc(sqrt(x)) do if x mod i=0 then begin pd:=false;break; end; end; begin t:=0; for i:=2 to 100 do if pd(i) then begin inc(t); a[t]:=i; end; for i:=1 to t-1 do for j:=i+1 to t do begin b:=(a[i]+a[j]) div 2 ; c:= (a[i]+a[j]) mod 2 ; if (c=0) and pd(b) then writeln(a[i],' ',b,' ',a[j]) end; end.Java :
import java.util.Scanner; public class Main { public static int sushu(int n){ if(n>1){ int s=0; for(int i=2;i<=Math.sqrt(n);i++){ if(n%i==0){ s++; break; } } if(s==0){ return 1; } else{ return 0; } } else{ return 0; } } public static void main(String[] args) { for(int i=2;i<=100;i++){ for(int j=i+1;j<=100;j++){ if(sushu(i)==1&&sushu(j)==1&&sushu(2*j-i)==1&&(2*j-i)<=100){ System.out.println(i+" "+j+" "+(2*j-i)); } } } } }Python :
import math def suShu(n): f = True for i in range (2 , int(math.sqrt(n))+1): if n % i == 0: f = False break; return f and n != 1 for i in range (1, 100): for e in range (i + 1, 100): if suShu(i) and suShu(e) and suShu((i+e)//2) and (i + e) % 2 == 0: print(i, (i+e)//2, e)
- 1
信息
- ID
- 139
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 10
- 标签
- 递交数
- 7
- 已通过
- 0
- 上传者