program Main;
{Prints the number of primes between two user-entered positive integers.}
var
start, stop, test, x, NumPrime, Count1, Count2: integer;
begin
repeat
repeat
write('Enter starting number: ');
readln(start);
if not (start > 0) then
begin
writeln;
writeln('You must enter a positive integer.');
writeln;
end;
until start > 0;
repeat
write('Enter ending number: ');
readln(stop);
if not (stop > 0) then
begin
writeln;
writeln('You must enter a positive integer.');
writeln;
end;
until stop > 0;
if start > stop then
begin
writeln;
writeln('Ending number must be less than or equal to starting number.');
writeln;
end;
until start <= stop;
NumPrime := 0;
for Count1 := start to stop do
begin
test := -1;
for Count2 := 2 to (Count1 - 1) do
begin
x := Count1 mod Count2;
if x = 0 then
test := 1;
end;
if test = -1 then
NumPrime := NumPrime + 1;
end;
writeln;
writeln('Number of primes in range: ', NumPrime : 1);
end.
{Nastassja Riemermann, 03-22b}
***
Ah, computer programming... Gotta love it!
{Prints the number of primes between two user-entered positive integers.}
var
start, stop, test, x, NumPrime, Count1, Count2: integer;
begin
repeat
repeat
write('Enter starting number: ');
readln(start);
if not (start > 0) then
begin
writeln;
writeln('You must enter a positive integer.');
writeln;
end;
until start > 0;
repeat
write('Enter ending number: ');
readln(stop);
if not (stop > 0) then
begin
writeln;
writeln('You must enter a positive integer.');
writeln;
end;
until stop > 0;
if start > stop then
begin
writeln;
writeln('Ending number must be less than or equal to starting number.');
writeln;
end;
until start <= stop;
NumPrime := 0;
for Count1 := start to stop do
begin
test := -1;
for Count2 := 2 to (Count1 - 1) do
begin
x := Count1 mod Count2;
if x = 0 then
test := 1;
end;
if test = -1 then
NumPrime := NumPrime + 1;
end;
writeln;
writeln('Number of primes in range: ', NumPrime : 1);
end.
{Nastassja Riemermann, 03-22b}
Ah, computer programming... Gotta love it!