\ Stem-and-leaf plot code Rem=2, CrLf=9, Text=12; code real RlOut=48, Float=49, Format=52; define DataSize = 121; integer Data; procedure ShellSortInt(A, N); integer A, N; integer I, J, Incr, Tmp; begin Incr:= N / 2; while Incr > 0 do begin for I:= Incr, N - 1 do begin J:= I - Incr; while J >= 0 do begin if A(J) > A(J + Incr) then begin Tmp:= A(J); A(J):= A(J + Incr); A(J + Incr):= Tmp; J:= J - Incr end else J:= -1 end; end; Incr:= Incr / 2 end; end; procedure LeafPlot (X, N); integer X, N; integer D, I, J; begin ShellSortInt(X, N); I:= X(0) / 10 - 1; Format(2,0); for J:= 0, N - 1 do begin D:= X(J) / 10; while D > I do begin I:= I + 1; if J then CrLf(0); RlOut(0, Float(I)); Text(0, " |"); end; RlOut(0, Float(Rem(X(J) / 10))); end; CrLf(0); end; begin Data:= [ 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]; LeafPlot(Data, DataSize) end;