.
2 4 6 8 10
100.
102 104 106 108 110
, , . ByTwos, GetPrevious (), .
// ISeries // ByTwos GetPrevious().
class ByTwos: ISeries {
Int start;
Int val;
Int prev;
public ByTwos() {
start = 0; val = 0; prev = -2;
}
public int GetNextO { prev = val; val += 2; return val;
}
public void Reset() {
val = start; prev = start - 2;
}
public void SetStart(int x) { start = x; val = start; prev = val - 2;
}
// , ISeries.
public int GetPrevious() {
Return prev;
}
}
, GetPrevious (), , ISeries. , . .
, . Primes, . , ISeries , ByTwos.
// ISeries // , class Primes: ISeries { int start; int val;
public Primes() {
start = 2; val = 2;
}
public int GetNextO { int i, j; bool isprime;
val++;
for(i = val; i < 1000000; i++) {
isprime = true; for(j = 2; j <= i/j; j++) {
if ((i%j) ==0) { isprime = false; break;
}
}
if (isprime) { val = i; break;
}
}
Return val;
}
public void Reset() {
val = start;
}
public void SetStart(int x) { start = x; val = start;
}
}
, , ByTwos Primes, , , . , - , , .
, C# , .. . , . , . , 11.
|
|
. ByTwos Primes. , .
// , using System;
// , public interface ISeries {
int GetNext(); // void Reset(); //
void SetStart(int ); //
}
// ISeries // , // , class ByTwos: ISeries { int start; int val;
val = start;
}
public void SetStart(int x) { start = x; val = start;
}
}
// ISeries // .
class Primes: ISeries { int start; int val;
public Primes() {
start = 2; val = 2;
}
public int GetNextO { int i, j; bool isprime;
val++;
for(i = val; i < 1000000; i++) {
isprime = true; for (j = 2; j <= i/j; j++) {
if ((i % j)==0) { isprime = false; break;
}
}
if (isprime) { val = i; break;
}
}
Return val;
}
public void Reset() {
val = start;
}
public void SetStart(int x) { start = x; val = start;
}
}
class SeriesDemo2 { static void Main() {
ByTwos twoOb = new ByTwos();
Primes primeOb = new Primes();
ISeries ob;
for(int i=0; i < 5; i++) {
ob = twoOb;
Console.WriteLine(" " + ob.GetNext()); ob = primeOb;
Console.WriteLine(" " + " " + ob.GetNext());
:
2 - 3 4 - 5 6 7 8 11 10 13
Main () ob ISeries. , , ISeries. twoOb primeOb ByTwos Primes , ISeries.
: , . , , .