How to resolve the algorithm Stem-and-leaf plot step by step in the Seed7 programming language
How to resolve the algorithm Stem-and-leaf plot step by step in the Seed7 programming language
Table of Contents
Problem Statement
Create a well-formatted stem-and-leaf plot from the following data set, where the leaves are the last digits: The primary intent of this task is the presentation of information. It is acceptable to hardcode the data set or characteristics of it (such as what the stems are) in the example, insofar as it is impractical to make the example generic to any data set. For example, in a computation-less language like HTML the data set may be entirely prearranged within the example; the interesting characteristics are how the proper visual formatting is arranged. If possible, the output should not be a bitmap image. Monospaced plain text is acceptable, but do better if you can. It may be a window, i.e. not a file.
Note: If you wish to try multiple data sets, you might try this generator.
Let's start with the solution:
Step by Step solution about How to resolve the algorithm Stem-and-leaf plot step by step in the Seed7 programming language
Source code in the seed7 programming language
$ include "seed7_05.s7i";
const proc: leafPlot (in var array integer: x) is func
local
var integer: i is 0;
var integer: j is 0;
var integer: d is 0;
begin
x := sort(x);
i := x[1] div 10 - 1;
for key j range x do
d := x[j] div 10;
while d > i do
if j <> 1 then
writeln;
end if;
incr(i);
write(i lpad 3 <& " |");
end while;
write(" " <& x[j] rem 10);
end for;
writeln;
end func;
const proc: main is func
local
const array integer: data is [] (
12, 127, 28, 42, 39, 113, 42, 18, 44, 118, 44, 37, 113, 124, 37, 48, 127, 36,
29, 31, 125, 139, 131, 115, 105, 132, 104, 123, 35, 113, 122, 42, 117, 119, 58, 109,
23, 105, 63, 27, 44, 105, 99, 41, 128, 121, 116, 125, 32, 61, 37, 127, 29, 113,
121, 58, 114, 126, 53, 114, 96, 25, 109, 7, 31, 141, 46, 13, 27, 43, 117, 116,
27, 7, 68, 40, 31, 115, 124, 42, 128, 52, 71, 118, 117, 38, 27, 106, 33, 117,
116, 111, 40, 119, 47, 105, 57, 122, 109, 124, 115, 43, 120, 43, 27, 27, 18, 28,
48, 125, 107, 114, 34, 133, 45, 120, 30, 127, 31, 116, 146);
begin
leafPlot(data);
end func;
You may also check:How to resolve the algorithm Parsing/Shunting-yard algorithm step by step in the PicoLisp programming language
You may also check:How to resolve the algorithm Averages/Arithmetic mean step by step in the TypeScript programming language
You may also check:How to resolve the algorithm Sierpinski triangle step by step in the CLU programming language
You may also check:How to resolve the algorithm XML/Output step by step in the Mathematica/Wolfram Language programming language
You may also check:How to resolve the algorithm Loops/Nested step by step in the 360 Assembly programming language