主题:[讨论]pascal问题一则
			 access
				 [专家分:0]  发布于 2006-09-29 20:48:00
 access
				 [专家分:0]  发布于 2006-09-29 20:48:00							
			[color=FF0000]求出200以内的勾股数:如32+42=52 怎么做哦~在线等结果[/color]
[fly]拜托各位大哥大姐了~[em4][em4][em4][em4][/fly]
						
					 
		
			
回复列表 (共10个回复)
		
								
				沙发
				
					 access [专家分:0]  发布于 2006-09-29 20:51:00
access [专家分:0]  发布于 2006-09-29 20:51:00				
				怎么就没有人帮忙呢? 心都冷了……
顺便再提出一个问题
歌德巴赫猜想:一个充分大的偶数,可以分成两个素数的和。(变成实现 pascal)
							 
						
				板凳
				
					 xabcxyz [专家分:940]  发布于 2006-10-01 07:29:00
xabcxyz [专家分:940]  发布于 2006-10-01 07:29:00				
				先声明语法可能不太对,不看语法参考记不住,你自己改语法
var
  integer i, j, k;
begin
  for i:=1 to 200 do begin
    for j:=1 to 200 do begin
      k := sqrt(i*i+j*j);
      if k*k = i*i + j*j then printf(.........);
    end;
  end;
end;
							 
						
						
				4 楼
				
					 dorremon1992 [专家分:870]  发布于 2006-10-02 19:35:00
dorremon1992 [专家分:870]  发布于 2006-10-02 19:35:00				
				1.
Var i,j,k:integer;
Begin
  for i:=1 to 60 do 
    for j:=1 to 60 do 
      for k:=1 to 60 do 
        if (i*i+j*j=k*k)or(i*i+k*k=j*j)or(j*j+k*k=i*i)then 
          writeln(i:4,j:4,k:4);
End.
							 
						
				5 楼
				
					 dorremon1992 [专家分:870]  发布于 2006-10-02 19:41:00
dorremon1992 [专家分:870]  发布于 2006-10-02 19:41:00				
				2.注:是大于6的偶数
Function Judge(n:integer):boolean;
Var i:integer;
Begin
  Judge:=true;
  for i:=2 to Trunc(Sqrt(n))do 
    if n mod i=0 then begin
      Judge:=false;
      exit;
    end;
End;
Var n,i,j:integer;
Begin
  readln(n);
  for i:=1 to n-1 do
    for j:=1 to n-i do
      if (Judge(i))and(Judge(j))then begin
        writeln(i,' ',j);
        halt;
      end;
End.
							 
						
				6 楼
				
					 wangshl888 [专家分:0]  发布于 2006-10-04 15:04:00
wangshl888 [专家分:0]  发布于 2006-10-04 15:04:00				
				初学pascal  加群28276316
							 
						
				7 楼
				
					 waglongjuanfeng [专家分:90]  发布于 2006-10-05 01:03:00
waglongjuanfeng [专家分:90]  发布于 2006-10-05 01:03:00				
				
利用基本勾股数组  m^2+n^2,m^2-n^2,2mn   {m,n互素}
function husu(a,b:integer):boolean;     {判断m,n是否互素}
  while a<>b do if a>b then a:=a-b
                        else b:=b-a;
  if a=1 then husu:=true
         else husu:=false;
   end;
var m,n,t1,t2,c:integer;
begin
  for m:=1 to 14 do       {trunc[sqrt(200)]}
    for n:=1 to trunc(sqrt(200-sqr(m))) do 
       begin if husu(m,n) then
               writeln(sqr(m)-sqr(n),2*m*n,sqr(m)+sqr(n))
               t1:=2;    
                  while sqr(t1*m)+sqr(t1*n)<=200 do
                   begin
                   writeln(sqr(t1*m)-sqr(t1*n),2t1*t1*m*n,sqr(t1*m,t1*n);
                   inc(t1);
                  end;
      end;
     end;
     end.     
							 
						
				8 楼
				
					 zjsyzhong [专家分:520]  发布于 2006-11-30 12:44:00
zjsyzhong [专家分:520]  发布于 2006-11-30 12:44:00				
				循环+判断喽! 套嵌一个
							 
						
				9 楼
				
					 zhangyuan [专家分:630]  发布于 2006-12-06 16:35:00
zhangyuan [专家分:630]  发布于 2006-12-06 16:35:00				
				3  4  5
							 
						
				10 楼
				
					 zhangyuan [专家分:630]  发布于 2006-12-06 16:59:00
zhangyuan [专家分:630]  发布于 2006-12-06 16:59:00				
				[quote]循环+判断喽! 
[/quote]
[fly]套嵌一个[/fly]
[flash]http://cctv[/flash]
							 
									
			
我来回复