Jump to content

Floyd's triangle: Difference between revisions

→‎{{header|Ada}}: Added Ada version
(→‎{{header|Pascal}}: Marked incorrect due to spacing of output.)
(→‎{{header|Ada}}: Added Ada version)
Line 14:
# Write a program to generate and display here the first n lines of a Floyd triangle.<br>(Use n=5 and n=14 rows).
# Ensure that when displayed in a monospace font, the numbers line up in vertical columns as shown and that only one space separates numbers of the last row.
 
=={{header|Ada}}==
 
<lang Ada>with Ada.Text_IO, Ada.Integer_Text_IO, Ada.Command_Line;
 
procedure Floyd_Triangle is
 
Rows: constant Positive := Integer'Value(Ada.Command_Line.Argument(1));
Last_Number:constant Positive := (Rows * (Rows+1)) / 2;
Width: constant Positive := Integer'Image(Last_Number)'Length;
Current: Positive := 1;
 
begin
for Line in 1 .. Rows loop
for Column in 1 .. Line loop
Ada.Integer_Text_IO.Put(Current, Width => Num_Of_Digits);
Current := Current + 1;
end loop;
Ada.Text_IO.New_Line;
end loop;
end Floyd_Triangle;</lang>
 
{{out}}
 
<pre>> ./floyd_triangle 5
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
 
 
> ./floyd_triangle 14
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 32 33 34 35 36
37 38 39 40 41 42 43 44 45
46 47 48 49 50 51 52 53 54 55
56 57 58 59 60 61 62 63 64 65 66
67 68 69 70 71 72 73 74 75 76 77 78
79 80 81 82 83 84 85 86 87 88 89 90 91
92 93 94 95 96 97 98 99 100 101 102 103 104 105</pre>
 
 
=={{header|D}}==
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.