Data update
This commit is contained in:
parent
5150844a7d
commit
4bb20c9b71
7735 changed files with 38060 additions and 199180 deletions
|
|
@ -1,33 +0,0 @@
|
|||
with Ada.Text_IO;
|
||||
|
||||
procedure Pythagorean_Triples is
|
||||
|
||||
type Large_Natural is range 0 .. 2**63-1;
|
||||
-- this is the maximum for gnat
|
||||
|
||||
procedure New_Triangle(A, B, C: Large_Natural;
|
||||
Max_Perimeter: Large_Natural;
|
||||
Total_Cnt, Primitive_Cnt: in out Large_Natural) is
|
||||
Perimeter: constant Large_Natural := A + B + C;
|
||||
begin
|
||||
if Perimeter <= Max_Perimeter then
|
||||
Primitive_Cnt := Primitive_Cnt + 1;
|
||||
Total_Cnt := Total_Cnt + Max_Perimeter / Perimeter;
|
||||
New_Triangle(A-2*B+2*C, 2*A-B+2*C, 2*A-2*B+3*C, Max_Perimeter, Total_Cnt, Primitive_Cnt);
|
||||
New_Triangle(A+2*B+2*C, 2*A+B+2*C, 2*A+2*B+3*C, Max_Perimeter, Total_Cnt, Primitive_Cnt);
|
||||
New_Triangle(2*B+2*C-A, B+2*C-2*A, 2*B+3*C-2*A, Max_Perimeter, Total_Cnt, Primitive_Cnt);
|
||||
end if;
|
||||
end New_Triangle;
|
||||
|
||||
T_Cnt, P_Cnt: Large_Natural;
|
||||
|
||||
begin
|
||||
for I in 1 .. 9 loop
|
||||
T_Cnt := 0;
|
||||
P_Cnt := 0;
|
||||
New_Triangle(3,4,5, 10**I, Total_Cnt => T_Cnt, Primitive_Cnt => P_Cnt);
|
||||
Ada.Text_IO.Put_Line("Up to 10 **" & Integer'Image(I) & " :" &
|
||||
Large_Natural'Image(T_Cnt) & " Triples," &
|
||||
Large_Natural'Image(P_Cnt) & " Primitives");
|
||||
end loop;
|
||||
end Pythagorean_Triples;
|
||||
Loading…
Add table
Add a link
Reference in a new issue