Prime Number Checker i Excel VBA - Enkle Excel -makroer

Innholdsfortegnelse

Nedenfor ser vi på et program i Excel VBA at sjekker om et tall er a primtall eller ikke.

Før du begynner: i matematikk er et primtall et tall som har nøyaktig to distinkte talldelere: 1 og seg selv. De minste tjuefem primtallene er: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73 , 79, 83, 89 og 97. For eksempel har 8 1, 2, 4 og 8 som divisorer og er ikke et primtall.

Situasjon:

1. For det første erklærer vi tre variabler. En heltallsvariabel kaller vi divisorer, en lang variabel kaller vi nummer og en lang variabel kaller vi i. Vi bruker lange variabler her fordi lange variabler har større kapasitet enn heltallsvariabler.

Dim divisors As Integer, number As Long, i As Long

2. Vi initialiserer to variabler. Vi initialiserer de variable divisorene med verdi 0. Vi bruker InputBox -funksjonen for å få et tall fra brukeren.

delere = 0
number = InputBox ("Skriv inn et tall")

Etter at brukeren har lagt inn et tall, vil vi kontrollere om dette tallet er et primtall eller ikke. Husk at et primtall har nøyaktig to distinkte talldelere: 1 og seg selv.

3. Vi starter en For Next loop.

For i = 1 Til nummer

4. Nå kommer den viktigste delen av programmet. For å beregne antall delere av et tall, bruker vi Mod -operatøren. Mod -operatøren gir resten av en divisjon. For eksempel, 7 mod 2 = 1 fordi 7 dividert med 2 er lik 3 med resten av 1. Bare hvis 'nummer mod i' = 0, er i en divisor av tall. I dette tilfellet vil vi øke de variable divisorene med 1. Makroen nedenfor gjør susen.

Hvis tallet Mod i = 0 Da
delere = delere + 1
Slutt om

Excel VBA sjekker dette for i = 1, i = 2, i = 3, i = 4 til i = tall. Vær oppmerksom på at i = 1 og i = tall alltid er divisorer av tall. Bare hvis disse tallene er de eneste divisorene av tall, er tallet et primtall.

5. Ikke glem å lukke sløyfen.

Neste jeg

6. Hvis divisorer er lik 2, viser vi en melding som sier at det angitte tallet er et primtall. Hvis antallet divisorer er høyere enn 2, viser vi en melding som sier at det angitte tallet ikke er et primtall.

Hvis delere = 2 Da
MsgBox -nummer og "er et primtall"
Ellers
MsgBox -nummer og "er ikke et primtall"
Slutt om

7. Test programmet.

Resultat for 104729:

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave