Update all new Tasks
This commit is contained in:
parent
00a190b0a6
commit
91df62d461
5697 changed files with 93386 additions and 804 deletions
|
|
@ -0,0 +1,64 @@
|
|||
$ include "seed7_05.s7i";
|
||||
|
||||
const func boolean: isPrime (in integer: number) is func
|
||||
result
|
||||
var boolean: result is FALSE;
|
||||
local
|
||||
var integer: count is 2;
|
||||
begin
|
||||
if number = 2 then
|
||||
result := TRUE;
|
||||
elsif number > 2 then
|
||||
while number rem count <> 0 and count * count <= number do
|
||||
incr(count);
|
||||
end while;
|
||||
result := number rem count <> 0;
|
||||
end if;
|
||||
end func;
|
||||
|
||||
var integer: currentPrime is 1;
|
||||
var integer: primeNum is 0;
|
||||
|
||||
const func integer: getPrime is func
|
||||
result
|
||||
var integer: prime is 0;
|
||||
begin
|
||||
repeat
|
||||
incr(currentPrime);
|
||||
until isPrime(currentPrime);
|
||||
prime := currentPrime;
|
||||
incr(primeNum);
|
||||
end func;
|
||||
|
||||
const proc: main is func
|
||||
local
|
||||
var integer: aPrime is 0;
|
||||
var integer: count is 0;
|
||||
begin
|
||||
write("First twenty primes:");
|
||||
while primeNum < 20 do
|
||||
write(" " <& getPrime);
|
||||
end while;
|
||||
writeln;
|
||||
repeat
|
||||
aPrime := getPrime;
|
||||
until aPrime >= 100;
|
||||
write("Primes between 100 and 150:");
|
||||
while aPrime <= 150 do
|
||||
write(" " <& aPrime);
|
||||
aPrime := getPrime;
|
||||
end while;
|
||||
writeln;
|
||||
repeat
|
||||
aPrime := getPrime;
|
||||
until aPrime >= 7700;
|
||||
while aPrime <= 8000 do
|
||||
incr(count);
|
||||
aPrime := getPrime;
|
||||
end while;
|
||||
writeln("Number of primes between 7,700 and 8,000: " <& count);
|
||||
repeat
|
||||
aPrime := getPrime;
|
||||
until primeNum = 10000;
|
||||
writeln("The 10,000th prime: " <& getPrime);
|
||||
end func;
|
||||
Loading…
Add table
Add a link
Reference in a new issue