Kul med Arduino, inget annat behövs (2 / 3 steg)
Steg 2: primtal generator
Ett primtal är ett tal som endast kan delas av två tal, en och sig själv. "Två numren" i denna definition är viktigt, det eliminerar en. De första några primtal är 2, 3, 5, 7, 11 och 13. Större flera är desto mindre chans är det prime, men antalet primtal är oändligt.
Detta program kommer att generera en lista av primtal använda följetong monitor, kan du trycka på någon nyckel, följt av enter, för att pausa programmet i tre sekunder.
Kopiera denna kod till Arduino IDE, ladda upp den och börja på 9600 baud serial bildskärmen:
/*****************************************************************
* Filnamn: primes.ino
*
* Hitta primtal och produktionen dem genom den seriella monitorn.
* Tryck på valfri tangent och ange, om du vill pausa programmet i 3 sekunder.
*
*****************************************************************
/*********************************************************
* Funktionen setup(), körs vid start.
*********************************************************/
void setup()
{
Serial.BEGIN(9600); Starta den seriella monitorn.
}
/*********************************************************
* Funktionen loop(), körs kontinuerligt när installationen är klar.
*********************************************************/
void loop()
{
IF(Serial.available() > 0)
{
int x = Serial.read();
Delay(3000);
}
Serial.println("2");
för (länge jag = 3; jag < 2147483647; i += 2) / / kolla udda nummer upp till 2 ^ 31.
{
IF(Serial.available() > 0) / / finns det en knapptryckning?
{
int x = Serial.read(); Så Läs den,
Delay(3000); och vänta i tre sekunder.
}
långa flagga = 0;
int limit = sqrt(i);
för (lång j = 3; j < = gräns; j += 2) / / insida för uttalande.
{
om ((i % j) < 1) / / är jag delbart av j?
{
Flagga = 1; Om ja är då jag inte prime,
j = gräns; ange flaggan och tvinga exit
} / / av insidan för uttalande.
}
IF(Flag < 1) / / om flaggan är fortfarande noll i är prime.
{
Serial.println(i); Skriva ut resultatet.
om (i < 1000) delay(250); Gör bara början lättare att se.
}
}
}