The procedure that does not work is refered to as Sort.
program BubbleSort;
uses SysUtils;
function ReadDouble(prompt: string):Double;
var
line: string;
begin
Write(prompt);
ReadLn(line);
while not TryStrToFloat(line, result) do
begin
WriteLn('Please enter a number.');
Write(prompt);
ReadLn(line);
end;
end;
procedure FillData(var data: array of double);
var
i : integer;
begin
for i :=low(data) to high(data) do
begin
data[i] := ReadDouble('Please enter number ' + IntToStr(i+1) + ': ');
end;
end;
procedure Sort(var data: array of double);
var
i , j : integer;
temp : double;
begin
for i:= high(data) to low(data) do
begin
for j := low(data) to i-1 do
begin
if data[j] > data[j+1] then
begin
temp := data[J+1];
data[J+1] := data[j];
data[j] := temp;
end;
end;
end;
end;
procedure PrintData(var data: array of double);
var
i : integer;
begin
for i := low(data) to high(data) do
begin
Writeln(data[i]:4:2);
end;
end;
procedure main();
var
data: array [0..9] of double;
begin
FillData(data);
Sort(data);
PrintData(data);
end;
begin
Main();
end.
Compiler:

Websites used:
http://pascal-progra...les/sorting.php
http://www.algolist....cal/Bubble_sort
Thanks in advance for any help.
This post has been edited by insertgenericusername: 30 May 2012 - 03:11 PM

New Topic/Question
Reply



MultiQuote




|