quarta-feira, 29 de setembro de 2021

Premiers et Multiples

 Les expressions ci-dessous contiennent tous les nombres multiples qui existent dans z=30w- 1 avec les éléments restants de z=30w- 1 étant des nombres premiers se terminant par 9

z=30*(30xy-  y+  x+ 0)- 1   

z=30*(30xy- 7y-17x+ 4)- 1

z=30*(30xy-11y-19x+ 7)- 1

z=30*(30xy-13y-23x+10)- 1

 Les expressions ci-dessous contiennent tous les nombres multiples qui existent dans z=30w-11 avec les éléments restants de z=30w-11 étant des nombres premiers se terminant par 9

 z=30*(30xy-11y+  x+ 0)-11

z=30*(30xy-  y-19x+ 1)-11

z=30*(30xy- 7y- 7x+ 2)-11

z=30*(30xy-13y-13x+ 6)-11

z=30*(30xy-17y-17x+10)-11

z=30*(30xy-23y-23x+18)-11

 

Les expressions ci-dessous contiennent tous les nombres multiples qui existent dans z=30w-13 avec les éléments restants de z=30w-13 étant des nombres premiers se terminant par 7

 z=30*(30xy-13y+  x+ 0)-13 

z=30*(30xy-  y-17x+ 1)-13

z=30*(30xy- 7y-11x+ 3)-13

z=30*(30xy-19y-23x+15)-13

 

Les expressions ci-dessous contiennent tous les nombres multiples qui existent dans z=30w-23 avec les éléments restants de z=30w-23 étant des nombres premiers se terminant par 7

 z=30*(30xy-23y+  x+ 0)-23 

z=30*(30xy-  y- 7x+ 1)-23 

z=30*(30xy-11y-17x+ 7)-23

z=30*(30xy-13y-19x+ 9)-23

 

Les expressions ci-dessous contiennent tous les nombres multiples qui existent dans z=30w- 7 avec les éléments restants de z=30w- 7 étant des nombres premiers se terminant par 3

z=30*(30xy- 7y+  x+ 0)- 7 

z=30*(30xy-  y-23x+ 1)- 7

z=30*(30xy-11y-13x+ 5)- 7

z=30*(30xy-17y-19x+11)- 7

 

Les expressions ci-dessous contiennent tous les nombres multiples qui existent dans z=30w-17 avec les éléments restants de z=30w-17 étant des nombres premiers se terminant par 3

z=30*(30xy-17y+  x+ 0)-17 

z=30*(30xy-  y-13x+ 1)-17

z=30*(30xy- 7y-19x+ 5)-17 

z=30*(30xy-11y-23x+ 9)-17

 

Les expressions ci-dessous contiennent tous les nombres multiples qui existent dans z=30w-19 avec les éléments restants de z=30w-19 étant des nombres premiers se terminant par 1

z=30*(30xy-19y+  x+ 0)-19 

z=30*(30xy-  y-11x+ 1)-19

z=30*(30xy- 7y-23x+ 6)-19

z=30*(30xy-13y-17x+ 8)-19

 

Les expressions ci-dessous contiennent tous les nombres multiples qui existent dans z=30w-29 avec les éléments restants de z=30w-29 et w>1 étant des nombres premiers se terminant par 1

z=30*(30xy+  y+  x+ 1)-29  

z=30*(30xy-  y-  x+ 1)-29

z=30*(30xy- 7y-13x+ 4)-29

z=30*(30xy-11y-11x+ 5)-29

z=30*(30xy-19y-19x+13)-29

z=30*(30xy-17y-23x+14)-29


Prime and Multiple

The expressions below contain all the multiple numbers that exist in z=30w- 1 with the remaining elements of z=30w- 1 being prime numbers ending in 9 

z=30*(30xy-  y+  x+ 0)- 1   

z=30*(30xy- 7y-17x+ 4)- 1

z=30*(30xy-11y-19x+ 7)- 1

z=30*(30xy-13y-23x+10)- 1

 

The expressions below contain all the multiple numbers that exist in z=30w-11 with the remaining elements of z=30w-11 being prime numbers ending in 9 

z=30*(30xy-11y+  x+ 0)-11

z=30*(30xy-  y-19x+ 1)-11

z=30*(30xy- 7y- 7x+ 2)-11

z=30*(30xy-13y-13x+ 6)-11

z=30*(30xy-17y-17x+10)-11

z=30*(30xy-23y-23x+18)-11

 

The expressions below contain all the multiple numbers that exist in z=30w-13 with the remaining elements of z=30w-13 being prime numbers ending in 7 

z=30*(30xy-13y+  x+ 0)-13 

z=30*(30xy-  y-17x+ 1)-13

z=30*(30xy- 7y-11x+ 3)-13

z=30*(30xy-19y-23x+15)-13

 

The expressions below contain all the multiple numbers that exist in z=30w-23 with the remaining elements of z=30w-23 being prime numbers ending in 7 

z=30*(30xy-23y+  x+ 0)-23 

z=30*(30xy-  y- 7x+ 1)-23 

z=30*(30xy-11y-17x+ 7)-23

z=30*(30xy-13y-19x+ 9)-23

 

The expressions below contain all the multiple numbers that exist in z=30w- 7 with the remaining elements of z=30w- 7 being prime numbers ending in 3 

z=30*(30xy- 7y+  x+ 0)- 7 

z=30*(30xy-  y-23x+ 1)- 7

z=30*(30xy-11y-13x+ 5)- 7

z=30*(30xy-17y-19x+11)- 7

 

The expressions below contain all the multiple numbers that exist in z=30w-17 with the remaining elements of z=30w-17 being prime numbers ending in 3 

z=30*(30xy-17y+  x+ 0)-17 

z=30*(30xy-  y-13x+ 1)-17

z=30*(30xy- 7y-19x+ 5)-17 

z=30*(30xy-11y-23x+ 9)-17

 

The expressions below contain all the multiple numbers that exist in z=30w-19 with the remaining elements of z=30w-19 being prime numbers ending in 1 

z=30*(30xy-19y+  x+ 0)-19 

z=30*(30xy-  y-11x+ 1)-19

z=30*(30xy- 7y-23x+ 6)-19

z=30*(30xy-13y-17x+ 8)-19

 

The expressions below contain all the multiple numbers that exist in z=30w-29 with the remaining elements of z=30w-29 and w>1 being prime numbers ending in 1 

z=30*(30xy+  y+  x+ 1)-29  

z=30*(30xy-  y-  x+ 1)-29

z=30*(30xy- 7y-13x+ 4)-29

z=30*(30xy-11y-11x+ 5)-29

z=30*(30xy-19y-19x+13)-29

z=30*(30xy-17y-23x+14)-29

Primos e múltiplos

 As expressões abaixo contém todos os números múltiplos que existem em z=30w- 1 sendo os restantes elementos de z=30w- 1 números primos terminados em 9 

z=30*(30xy-  y+  x+ 0)- 1   

z=30*(30xy- 7y-17x+ 4)- 1

z=30*(30xy-11y-19x+ 7)- 1

z=30*(30xy-13y-23x+10)- 1

 

As expressões abaixo contém todos os números múltiplos que existem em z=30w-11 sendo os restantes elementos de z=30w-11 números primos terminados em 9 

z=30*(30xy-11y+  x+ 0)-11

z=30*(30xy-  y-19x+ 1)-11

z=30*(30xy- 7y- 7x+ 2)-11

z=30*(30xy-13y-13x+ 6)-11

z=30*(30xy-17y-17x+10)-11

z=30*(30xy-23y-23x+18)-11

 

As expressões abaixo contém todos os números múltiplos que existem em z=30w-13 sendo os restantes elementos de z=30w-13 números primos terminados em 7

z=30*(30xy-13y+  x+ 0)-13 

z=30*(30xy-  y-17x+ 1)-13

z=30*(30xy- 7y-11x+ 3)-13

z=30*(30xy-19y-23x+15)-13

 

As expressões abaixo contém todos os números múltiplos que existem em z=30w-23 sendo os restantes elementos de z=30w-23 números primos terminados em 7

z=30*(30xy-23y+  x+ 0)-23 

z=30*(30xy-  y- 7x+ 1)-23 

z=30*(30xy-11y-17x+ 7)-23

z=30*(30xy-13y-19x+ 9)-23

 

As expressões abaixo contém todos os números múltiplos que existem em z=30w- 7 sendo os restantes elementos de z=30w- 7 números primos terminados em 3

z=30*(30xy- 7y+  x+ 0)- 7 

z=30*(30xy-  y-23x+ 1)- 7

z=30*(30xy-11y-13x+ 5)- 7

z=30*(30xy-17y-19x+11)- 7

 

As expressões abaixo contém todos os números múltiplos que existem em z=30w-17 sendo os restantes elementos de z=30w-17 números primos terminados em 3

z=30*(30xy-17y+  x+ 0)-17 

z=30*(30xy-  y-13x+ 1)-17

z=30*(30xy- 7y-19x+ 5)-17 

z=30*(30xy-11y-23x+ 9)-17

 

As expressões abaixo contém todos os números múltiplos que existem em z=30w-19 sendo os restantes elementos de z=30w-19 números primos terminados em 1

z=30*(30xy-19y+  x+ 0)-19 

z=30*(30xy-  y-11x+ 1)-19

z=30*(30xy- 7y-23x+ 6)-19

z=30*(30xy-13y-17x+ 8)-19

 

As expressões abaixo contém todos os números múltiplos que existem em z=30w-29 sendo os restantes elementos de z=30w-29 com w>1 números primos terminados em 1

z=30*(30xy+  y+  x+ 1)-29  

z=30*(30xy-  y-  x+ 1)-29

z=30*(30xy- 7y-13x+ 4)-29

z=30*(30xy-11y-11x+ 5)-29

z=30*(30xy-19y-19x+13)-29

z=30*(30xy-17y-23x+14)-29


terça-feira, 28 de setembro de 2021

Múltiplos

 30x- 1 e 30x-11 contém todos os números primos terminados em 9 e números que são múltiplos

 os múltiplos existentes em 30x- 1 podem ser decompostos pelas expressões seguintes:

(30y- 1)(30z+ 1) 

(30y- 7)(30z-17)

(30y-11)(30z-19)

(30y-13)(30z-23)

 os múltiplos existentes em 30x-11 podem ser decompostos pelas expressões seguintes:

(30y-11)(30z+ 1)

(30y- 1)(30z-19)

(30y- 7)(30z- 7)

(30y-13)(30z-13)

(30y-17)(30z-17)

(30y-23)(30z-23)

 Assim sendo todos os elementos existentes em 30x- 1 e 30x-11 que não existam nas expressões dos produtos são primos


 30x-13 e 30x-23 contém todos os números primos terminados em 7 e números que são múltiplos

os múltiplos existentes em 30x-13 podem ser decompostos pelas expressões seguintes:

(30y-13)(30z+ 1) 

(30y- 1)(30z-17)

(30y- 7)(30z-11)

(30y-19)(30z-23)

 os múltiplos existentes em 30x-23 podem ser decompostos pelas expressões seguintes:

(30y-23)(30z+ 1) 

(30y- 1)(30z- 7)

(30y-11)(30z-17)

(30y-13)(30z-19)

Assim sendo todos os elementos existentes em 30x-13 e 30x-23 que não existam nas expressões dos produtos são primos

 

30x- 7 e 30x-17 contém todos os números primos terminados em 3 e números que são múltiplos

 os múltiplos existentes em 30x- 7 podem ser decompostos pelas expressões seguintes:

(30y- 7)(30z+ 1) 

(30y- 1)(30z-23)

(30y-11)(30z-13)

(30y-17)(30z-19)

os múltiplos existentes em 30x-17 podem ser decompostos pelas expressões seguintes:

(30y-17)(30z+ 1) 

(30y- 1)(30z-13)

(30y- 7)(30z-19)

(30y-11)(30z-23)

 Assim sendo todos os elementos existentes em 30x- 7 e 30x-17 que não existam nas expressões dos produtos são primos


30x-19 e 30x+ 1 contém todos os números primos terminados em 1 e números que são múltiplos

 os múltiplos existentes em 30x-19 podem ser decompostos pelas expressões seguintes:

(30y-19)(30z+ 1) 

 (30y- 1)(30z-11)

(30y- 7)(30z-23) 

(30y-13)(30z-17)

 os múltiplos existentes em 30x+ 1 podem ser decompostos pelas expressões seguintes:

(30y+ 1)(30z+ 1) 

(30y- 1)(30z- 1)

(30y- 7)(30z-13)

(30y-11)(30z-11)

(30y-19)(30z-19)

(30y-17)(30z-23)

Assim sendo todos os elementos existentes em 30x-19 e 30x+ 1 que não existam nas expressões dos produtos são primos


podemos então escrever

As expressões abaixo contém todos os números múltiplos que existem em z=30w- 1 sendo os restantes elementos de z=30w- 1 números primos terminados em 9

z=30*(30xy-  y+  x+ 0)- 1   

z=30*(30xy- 7y-17x+ 4)- 1

z=30*(30xy-11y-19x+ 7)- 1

z=30*(30xy-13y-23x+10)- 1


As expressões abaixo contém todos os números múltiplos que existem em z=30w-11 sendo os restantes elementos de z=30w-11 números primos terminados em 9

z=30*(30xy-11y+  x+ 0)-11

z=30*(30xy-  y-19x+ 1)-11

z=30*(30xy- 7y- 7x+ 2)-11

z=30*(30xy-13y-13x+ 6)-11

z=30*(30xy-17y-17x+10)-11

z=30*(30xy-23y-23x+18)-11


As expressões abaixo contém todos os números múltiplos que existem em z=30w-13 sendo os restantes elementos de z=30w-13 números primos terminados em 7

z=30*(30xy-13y+  x+ 0)-13 

z=30*(30xy-  y-17x+ 1)-13

z=30*(30xy- 7y-11x+ 3)-13

z=30*(30xy-19y-23x+15)-13


As expressões abaixo contém todos os números múltiplos que existem em z=30w-23 sendo os restantes elementos de z=30w-23 números primos terminados em 7

z=30*(30xy-23y+  x+ 0)-23 

z=30*(30xy-  y- 7x+ 1)-23 

z=30*(30xy-11y-17x+ 7)-23

z=30*(30xy-13y-19x+ 9)-23


As expressões abaixo contém todos os números múltiplos que existem em z=30w- 7 sendo os restantes elementos de z=30w- 7 números primos terminados em 3

z=30*(30xy- 7y+  x+ 0)- 7 

z=30*(30xy-  y-23x+ 1)- 7

z=30*(30xy-11y-13x+ 5)- 7

z=30*(30xy-17y-19x+11)- 7


As expressões abaixo contém todos os números múltiplos que existem em z=30w-17 sendo os restantes elementos de z=30w-17 números primos terminados em 3

z=30*(30xy-17y+  x+ 0)-17 

z=30*(30xy-  y-13x+ 1)-17

z=30*(30xy- 7y-19x+ 5)-17 

z=30*(30xy-11y-23x+ 9)-17


As expressões abaixo contém todos os números múltiplos que existem em z=30w-19 sendo os restantes elementos de z=30w-19 números primos terminados em 1

z=30*(30xy-19y+  x+ 0)-19 

z=30*(30xy-  y-11x+ 1)-19

z=30*(30xy- 7y-23x+ 6)-19

z=30*(30xy-13y-17x+ 8)-19


As expressões abaixo contém todos os números múltiplos que existem em z=30w-29 sendo os restantes elementos de z=30w-29 com w>1 números primos terminados em 1

z=30*(30xy+  y+  x+ 1)-29  

z=30*(30xy-  y-  x+ 1)-29

z=30*(30xy- 7y-13x+ 4)-29

z=30*(30xy-11y-11x+ 5)-29

z=30*(30xy-19y-19x+13)-29

z=30*(30xy-17y-23x+14)-29


Para os múltiplos de z=30w- 1 temos então

para w=30xy-  y+  x+ 0 vém x=(w- 0+  y)/(30y+ 1)

para w=30xy- 7y-17x+ 4 vém x=(w- 4+ 7y)/(30y-17)

para w=30xy-11y-19x+ 7 vém x=(w- 7+11y)/(30y-19) 

para w=30xy-13y-23x+10 vém x=(w-10+13y)/(30y-23)


Para os múltiplos de z=30w-11 temos então

para w=30xy-11y+  x+ 0 vém x=(w- 0+11y)/(30y+ 1)

para w=30xy-  y-19x+ 1 vém x=(w- 1+  y)/(30y-19)

para w=30xy- 7y- 7x+ 2 vém x=(w- 2+ 7y)/(30y- 7)

para w=30xy-13y-13x+ 6 vém x=(w- 6+13y)/(30y-13)

para w=30xy-17y-17x+10 vém x=(w-10+17y)/(30y-17)

para w=30xy-23y-23x+18 vém x=(w-18+23y)/(30y-23)


Para os múltiplos de z=30w-13 temos então

para w=30xy-13y+  x+ 0 vém x=(w- 0+13y)/(30y+ 1)

para w=30xy-  y-17x+ 1 vém x=(w- 1+  y)/(30y-17)

para w=30xy- 7y-11x+ 3 vém x=(w- 3+ 7y)/(30y-11)

para w=30xy-19y-23x+15 vém x=(w-15+19y)/(30y-23)


Para os múltiplos de z=30w-23 temos então

para w=30xy-23y+  x+ 0 vém x=(w- 0+23y)/(30y+ 1)

para w=30xy-  y- 7x+ 1 vém x=(w- 1+  y)/(30y- 7)

para w=30xy-11y-17x+ 7 vém x=(w- 7+11y)/(30y-17)

para w=30xy-13y-19x+ 9 vem x=(w- 9+13y)/(30y-19)


Para os múltiplos de z=30w- 7 temos então

para w=30xy- 7y+  x+ 0 vém x=(w- 0+ 7y)/(30y+ 1)

para w=30xy-  y-23x+ 1 vém x=(w- 1+  y)/(30y-23)

para w=30xy-11y-13x+ 5 vém x=(w- 5+11y)/(30y-13)

para w=30xy-17y-19x+11 vém x=(w-11+17y)/(30y-19)


Para os múltiplos de z=30w-17 temos então

para w=30xy-17y+  x+ 0 vém x=(w- 0+17y)/(30y+ 1)

para w=30xy-  y-13x+ 1 vém x=(w- 1+  y)/(30y-13)

para w=30xy- 7y-19x+ 5 vém x=(w- 5+ 7y)/(30y-19)

para w=30xy-11y-23x+ 9 vém x=(w- 9+11y)/(30y-23)


Para os múltiplos de z=30w-19 temos então

para w=30xy-19y+  x+ 0 vém x=(w- 0+19y)/(30y+ 1)

para w=30xy-  y-11x+ 1 vém x=(w- 1+  y)/(30y-11)

para w=30xy- 7y-23x+ 6 vém x=(w- 6+ 7y)/(30y-23)

para w=30xy-13y-17x+ 8 vém x=(w- 8+13y)/(30y-17)


Para os múltiplos de z=30w-29 temos então

para w=30xy+  y+  x+ 1 vém x=(w- 1-  y)/(30y+ 1)

para w=30xy-  y-  x+ 1 vém x=(w- 1+  y)/(30y- 1)

para w=30xy- 7y-13x+ 4 vém x=(w- 4+ 7y)/(30y-13)

para w=30xy-11y-11x+ 5 vém x=(w- 5+11y)/(30y-11)

para w=30xy-19y-19x+13 vém x=(w-13+19y)/(30y-19)

para w=30xy-17y-23x+14 vém x=(w-14+17y)/(30y-23)


Vamos agora verificar quantas operações temos de fazer para verificar que um número é primo

 Escolhemos então o número 104287

 

Um número primo terminado em 7 tem de existir ou em  z=30w-13 ou em z=30w-23

 De z=30w-13  vém w=(104287+13)/30 =3476,(6) não serve

Então de z=30w-23 vém w=(104287+23)/30=3477

 

Então as expressões abaixo contém todos os números múltiplos que existem em z=30w-23 sendo os restantes elementos de z=30w-23 números primos terminados em 7

 z=30*(30xy-23y+  x+ 0)-23 

z=30*(30xy-  y- 7x+ 1)-23 

z=30*(30xy-11y-17x+ 7)-23

z=30*(30xy-13y-19x+ 9)-23

ou seja Para os múltiplos de z=30w-23 temos então

para  w=30xy-23y+  x+ 0 vém x=(w- 0+23y)/(30y+ 1)

para w=30xy-  y- 7x+ 1 vém x=(w- 1+  y)/(30y- 7)

para w=30xy-11y-17x+ 7 vém x=(w- 7+11y)/(30y-17)

para w=30xy-13y-19x+ 9 vem x=(w- 9+13y)/(30y-19)

Como w=3477 começamos com y=1 e avançamos o valor de y até todos os resultados de x serem menores que 1

w=3477 y=     1            z=30w-23
       x=     112,9032                           
       x=     151,1739                           
       x=     267,7692                           
       x=     316,4545
w=3477 y=     2            z=30w-23
       x=     57,7541                      
       x=     65,62264                           
       x=     81,2093                      
       x=     85,21951
w=3477 y=     3            z=30w-23
       x=     38,96703                           
       x=     41,91566                           
       x=     47,9863                      
       x=     49,39437
w=3477 y=     4            z=30w-23
       x=     29,49587                           
       x=     30,79646                           
       x=     34,1165                      
       x=     34,85149
w=3477 y=     5            z=30w-23
       x=     23,78808                           
       x=     24,34266                           
       x=     26,50376                           
       x=     26,96947
w=3477 y=     6            z=30w-23
       x=     19,97238                           
       x=     20,12717                           
       x=     21,69325                           
       x=     22,02484
w=3477 y=     7            z=30w-23
       x=     17,24171                           
       x=    17,15764                           
       x=    18,37824                           
       x=    18,63351
w=3477 y=    8            z=30w-23
       x=    15,19087                           
       x=    14,95279                           
       x=    15,95516                           
       x=    16,1629
w=3477 y=    9            z=30w-23
       x=    13,5941                      
       x=    13,25095                           
       x=    14,10672                           
       x=    14,28287
w=3477 y=    10           z=30w-23
       x=    12,31561                           
       x=    11,89761                           
       x=    12,65018                           
       x=    12,80427
...
w=3477 y=    496          z=30w-23
       x=    1,000269                           
       x=    0,267061                           
       x=    0,600552                           
       x=    0,66725
w=3477 y=    497          z=30w-23
       x=    0,999799                           
       x=    0,266591                           
       x=    0,600081                           
       x=    0,666779

Então precisamos de 497*4+2=1990 operações para confirmarmos que o número 104287 é primo contra as 323 necessárias pelo método de divisão tradicional, fantástico!

O importante é que temos um novo método!

Se escolhermos o número 104647 que não é primo obtemos

Um número primo terminado em 7 tem de existir ou em  z=30w-13 ou em z=30w-23

De z=30w-13  vém w=(104647+13)/30 =3488,(6) não serve

Então de z=30w-23 vém w=(104647+23)/30=3489

Então as expressões abaixo contém todos os números múltiplos que existem em z=30w-23 sendo os restantes elementos de z=30w-23 números primos terminados em 7

z=30*(30xy-23y+  x+ 0)-23 

z=30*(30xy-  y- 7x+ 1)-23 

z=30*(30xy-11y-17x+ 7)-23

z=30*(30xy-13y-19x+ 9)-23 

ou seja Para os múltiplos de z=30w-23 temos então

para  w=30xy-23y+  x+ 0 vém x=(w- 0+23y)/(30y+ 1)

para w=30xy-  y- 7x+ 1 vém x=(w- 1+  y)/(30y- 7)

para w=30xy-11y-17x+ 7 vém x=(w- 7+11y)/(30y-17)

para w=30xy-13y-19x+ 9 vem x=(w- 9+13y)/(30y-19)

Como w=3489 começamos com y=1 e avançamos o valor de y até todos os resultados de x serem menores que y

w=3489                  y=        1                     z=30w-23
                        x=        113,2903                                             
                        x=        151,6957                                             
                        x=        268,6923                                             
                        x=        317,5455
w=3489                  y=        2                     z=30w-23
                        x=        57,95082                                             
                        x=        65,84906                                             
                        x=        81,48837                                             
                        x=        85,5122          
w=3489                  y=        3                     z=30w-23
                        x=        39,0989                                               
                        x=        42,06024                                             
                        x=        48,15068                                             
                        x=        49,56338
w=3489                  y=        4                     z=30w-23
                        x=        29,59504                                             
                        x=        30,90265                                             
                        x=        34,23301                                             
                        x=        34,9703
w=3489                  y=        5                     z=30w-23
                        x=        23,86755                                             
                        x=        24,42657                                             
                        x=        26,59398                                             
                        x=        27,06107
w=3489                  y=        6                     z=30w-23
                        x=        20,03867                                             
                        x=        20,19653                                             
                        x=        21,76687                                             
                        x=        22,09938
w=3489                  y=        7                     z=30w-23
                        x=        17,29858                                             
                        x=        17,21675                                             
                        x=        18,44041                                             
                        x=        18,69634
w=3489                  y=        8                     z=30w-23
                        x=        15,24066                                             
                        x=        15,00429                                             
                        x=        16,00897                                             
                        x=        16,21719
w=3489                  y=        9                     z=30w-23
                        x=        13,63838                                             
                        x=        13,29658                                             
                        x=        14,15415                                             
                        x=        14,33068
w=3489                  y=        10                   z=30w-23
                        x=        12,35548                                             
                        x=        11,93857                                             
                        x=        12,69258                                             
                        x=        12,84698
w=3489                  y=        11                   z=30w-23
                        x=        11,30514                                             
                        x=        10,83282                                             
                        x=        11,51118                                             
                        x=        11,64952
w=3489                  y=        12                   z=30w-23
                        x=        10,42936                                             
                        x=        9,915014                                             
                        x=        10,53644                                             
                        x=        10,66276  

Como os valores de x são todos menores que y

vamos resolver y em ordem a x e verificar

para  w=30xy-23y+  x+ 0 vém y=(w- 0-x)/(30x-23)

para w=30xy-  y- 7x+ 1 vém y=(w- 1+ 7x)/(30x- 1)

para w=30xy-11y-17x+ 7 vém y=(w- 7+17x)/(30x-11)

para w=30xy-13y-19x+ 9 vem y=(w- 9+19x)/(30y-13)

w=3489                x=           1                  z=30w-23
                      y=           498,2857                                                              
                      y=           120,5172                                                              
                      y=           184,1579                                                              
                      y=           205,8235
w=3489                x=           2                  z=30w-23
                      y=           94,24324                                                              
                      y=           59,35593                                                              
                      y=           71,7551                                                                
                      y=           74,85106
w=3489                x=           3                  z=30w-23
                      y=           52,02985                                                              
                      y=           39,42697                                                              
                      y=           44,72152                                                              
                      y=           45,93506
w=3489                x=           4                  z=30w-23
                      y=           35,92784                                                              
                      y=           29,54622                                                              
                      y=           32,56881                                                              
                      y=           33,23364
w=3489                x=           5                  z=30w-23
                      y=           27,43307                                                              
                      y=           23,6443                                                                
                      y=           25,66187                                                              
                      y=           26,09489
w=3489                x=           6                  z=30w-23
                      y=           22,18471                                                              
                      y=           19,72067                                                              
                      y=           21,2071                                                                
                      y=           21,52096
w=3489                x=           7                  z=30w-23
                      y=           18,62032                                                              
                      y=           16,92344                                                              
                      y=           18,09548                                                              
                      y=           18,3401
w=3489                x=           8                  z=30w-23
                      y=           16,04147                                                              
                      y=           14,82845                                                              
                      y=           15,79913                                                              
                      y=           16

O que me faz ter vontade de provar que quando todos os valores de x são menores que y basta procurar em y variando o x até no máximo todos os valores de y serem menores que x e assim teriamos no máximo 12*4+12*4+2=98 operações o que é bastante melhor que 323.

E sim 104647 é um número múltiplo!

Sub NumeroPrimo()

'

' NumeroPrimo Macro

'

 

'

    Dim z As Double

    z = Range("B1").Value

    If Int(z) <> z Then

       MsgBox "Valor introduzido : " & z & " não é um inteiro"

    Else

       If z = 0 Then

          MsgBox "Zero não pertence a N"

       Else

          If z = 1 Then

             MsgBox "1 não é um número Primo"

          Else

             If z = 2 Or z = 3 Or z = 5 Then

                MsgBox "O número : " & z & " é um número primo"

             Else

                Dim digito As Integer

                digito = 10 * (z / 10 - Int(z / 10))

                If digito = 0 Or digito = 2 Or digito = 4 Or digito = 6 Or digito = 8 Then

                   MsgBox "Numeros pares não são primos"

                Else

                   If digito = 5 Then

                      MsgBox "Multiplos de 5 não são números primos"

                   Else

                      If Int(z / 3) = z / 3 Then

                         MsgBox "Multiplos de 3 não são números primos"

                      Else

                         Dim w, x, y1, y2, y3, y4, y5, y6, y7, y8 As Double

                         x = 1

                         If digito = 9 Then

                            w = (z + 1) / 30

                            If w = Int(w) Then

                               GoSub P30W01

                               Exit Sub

                            Else

                               w = (z + 11) / 30

                               GoSub P30W11

                               Exit Sub

                            End If

                         Else

                            If digito = 7 Then

                               w = (z + 13) / 30

                               If w = Int(w) Then

                                  GoSub P30W13

                                  Exit Sub

                               Else

                                  w = (z + 23) / 30

                                  GoSub P30W23

                                  Exit Sub

                               End If

                            Else

                               If digito = 3 Then

                                  w = (z + 7) / 30

                                  If w = Int(w) Then

                                     GoSub P30W07

                                     Exit Sub

                                  Else

                                     w = (z + 17) / 30

                                     GoSub P30W17

                                     Exit Sub

                                  End If

                               Else

                                  If digito = 1 Then

                                     w = (z + 19) / 30

                                     If w = Int(w) Then

                                        GoSub P30W19

                                        Exit Sub

                                     Else

                                        w = (z + 29) / 30

                                        GoSub P30W29

                                        Exit Sub

                                     End If

                                  End If

                               End If

                            End If

                         End If

                      End If

                   End If

                End If

             End If

          End If

       End If

    End If

    Exit Sub

P30W01:

    y1 = 1 / 30 * ((30 * w - 1) / (30 * x + 1) + 1)

    If y1 = Int(y1) And y1 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y2 = 1 / 30 * ((30 * w - 1) / (30 * x - 17) + 7)

    If y2 = Int(y2) And y2 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y3 = 1 / 30 * ((30 * w - 1) / (30 * x - 19) + 11)

    If y3 = Int(y3) And y3 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y4 = 1 / 30 * ((30 * w - 1) / (30 * x - 23) + 13)

    If y4 = Int(y4) And y4 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y5 = 1 / 30 * ((30 * w - 1) / (30 * x - 1) - 1)

    If y5 = Int(y5) And y5 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y6 = 1 / 30 * ((30 * w - 1) / (30 * x - 7) + 17)

    If y6 = Int(y6) And y6 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y7 = 1 / 30 * ((30 * w - 1) / (30 * x - 11) + 19)

    If y7 = Int(y7) And y7 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y8 = 1 / 30 * ((30 * w - 1) / (30 * x - 13) + 23)

    If y8 = Int(y8) And y8 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    While y1 >= x Or y2 >= x Or y3 >= x Or y4 >= x Or y5 >= x Or y6 >= x Or y7 >= x Or y8 >= x

       x = x + 1

       y1 = 1 / 30 * ((30 * w - 1) / (30 * x + 1) + 1)

       If y1 = Int(y1) And y1 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y2 = 1 / 30 * ((30 * w - 1) / (30 * x - 17) + 7)

       If y2 = Int(y2) And y2 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y3 = 1 / 30 * ((30 * w - 1) / (30 * x - 19) + 11)

       If y3 = Int(y3) And y3 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y4 = 1 / 30 * ((30 * w - 1) / (30 * x - 23) + 13)

       If y4 = Int(y4) And y4 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y5 = 1 / 30 * ((30 * w - 1) / (30 * x - 1) - 1)

       If y5 = Int(y5) And y5 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y6 = 1 / 30 * ((30 * w - 1) / (30 * x - 7) + 17)

       If y6 = Int(y6) And y6 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y7 = 1 / 30 * ((30 * w - 1) / (30 * x - 11) + 19)

       If y7 = Int(y7) And y7 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y8 = 1 / 30 * ((30 * w - 1) / (30 * x - 13) + 23)

       If y8 = Int(y8) And y8 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

    Wend

    MsgBox "O número : " & z & " é um número primo"

    Return

P30W11:

    y1 = 1 / 30 * ((30 * w - 11) / (30 * x + 1) + 11)

    If y1 = Int(y1) And y1 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y2 = 1 / 30 * ((30 * w - 11) / (30 * x - 19) + 1)

    If y2 = Int(y2) And y2 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y3 = 1 / 30 * ((30 * w - 11) / (30 * x - 7) + 7)

    If y3 = Int(y3) And y3 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y4 = 1 / 30 * ((30 * w - 11) / (30 * x - 13) + 13)

    If y4 = Int(y4) And y4 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y5 = 1 / 30 * ((30 * w - 11) / (30 * x - 17) + 17)

    If y5 = Int(y5) And y5 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y6 = 1 / 30 * ((30 * w - 11) / (30 * x - 23) + 23)

    If y6 = Int(y6) And y6 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y7 = 1 / 30 * ((30 * w - 11) / (30 * x - 11) - 1)

    If y7 = Int(y7) And y7 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y8 = 1 / 30 * ((30 * w - 11) / (30 * x - 11) + 19)

    If y8 = Int(y8) And y8 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    While y1 >= x Or y2 >= x Or y3 >= x Or y4 >= x Or y5 >= x Or y6 >= x Or y7 >= x Or y8 >= x

       x = x + 1

       y1 = 1 / 30 * ((30 * w - 11) / (30 * x + 1) + 11)

       If y1 = Int(y1) And y1 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y2 = 1 / 30 * ((30 * w - 11) / (30 * x - 19) + 1)

       If y2 = Int(y2) And y2 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y3 = 1 / 30 * ((30 * w - 11) / (30 * x - 7) + 7)

       If y3 = Int(y3) And y3 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y4 = 1 / 30 * ((30 * w - 11) / (30 * x - 13) + 13)

       If y4 = Int(y4) And y4 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y5 = 1 / 30 * ((30 * w - 11) / (30 * x - 17) + 17)

       If y5 = Int(y5) And y5 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y6 = 1 / 30 * ((30 * w - 11) / (30 * x - 23) + 23)

       If y6 = Int(y6) And y6 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y7 = 1 / 30 * ((30 * w - 11) / (30 * x - 11) - 1)

       If y7 = Int(y7) And y7 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y8 = 1 / 30 * ((30 * w - 11) / (30 * x - 11) + 19)

       If y8 = Int(y8) And y8 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

    Wend

    MsgBox "O número : " & z & " é um número primo"

    Return

P30W13:

    y1 = 1 / 30 * ((30 * w - 13) / (30 * x + 1) + 13)

    If y1 = Int(y1) And y1 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y2 = 1 / 30 * ((30 * w - 13) / (30 * x - 17) + 1)

    If y2 = Int(y2) And y2 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y3 = 1 / 30 * ((30 * w - 13) / (30 * x - 11) + 7)

    If y3 = Int(y3) And y3 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y4 = 1 / 30 * ((30 * w - 13) / (30 * x - 23) + 19)

    If y4 = Int(y4) And y4 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y5 = 1 / 30 * ((30 * w - 13) / (30 * x - 13) - 1)

    If y5 = Int(y5) And y5 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y6 = 1 / 30 * ((30 * w - 13) / (30 * x - 1) + 17)

    If y6 = Int(y6) And y6 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y7 = 1 / 30 * ((30 * w - 13) / (30 * x - 7) + 11)

    If y7 = Int(y7) And y7 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y8 = 1 / 30 * ((30 * w - 13) / (30 * x - 19) + 23)

    If y8 = Int(y8) And y8 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    While y1 >= x Or y2 >= x Or y3 >= x Or y4 >= x Or y5 >= x Or y6 >= x Or y7 >= x Or y8 >= x

       x = x + 1

       y1 = 1 / 30 * ((30 * w - 13) / (30 * x + 1) + 13)

       If y1 = Int(y1) And y1 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y2 = 1 / 30 * ((30 * w - 13) / (30 * x - 17) + 1)

       If y2 = Int(y2) And y2 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y3 = 1 / 30 * ((30 * w - 13) / (30 * x - 11) + 7)

       If y3 = Int(y3) And y3 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y4 = 1 / 30 * ((30 * w - 13) / (30 * x - 23) + 19)

       If y4 = Int(y4) And y4 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y5 = 1 / 30 * ((30 * w - 13) / (30 * x - 13) - 1)

       If y5 = Int(y5) And y5 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y6 = 1 / 30 * ((30 * w - 13) / (30 * x - 1) + 17)

       If y6 = Int(y6) And y6 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y7 = 1 / 30 * ((30 * w - 13) / (30 * x - 7) + 11)

       If y7 = Int(y7) And y7 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y8 = 1 / 30 * ((30 * w - 13) / (30 * x - 19) + 23)

       If y8 = Int(y8) And y8 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

    Wend

    MsgBox "O número : " & z & " é um número primo"

    Return

P30W23:

    y1 = 1 / 30 * ((30 * w - 23) / (30 * x + 1) + 23)

    If y1 = Int(y1) And y1 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y2 = 1 / 30 * ((30 * w - 23) / (30 * x - 7) + 1)

    If y2 = Int(y2) And y2 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y3 = 1 / 30 * ((30 * w - 23) / (30 * x - 17) + 11)

    If y3 = Int(y3) And y3 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y4 = 1 / 30 * ((30 * w - 23) / (30 * x - 19) + 13)

    If y4 = Int(y4) And y4 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y5 = 1 / 30 * ((30 * w - 23) / (30 * x - 23) - 1)

    If y5 = Int(y5) And y5 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y6 = 1 / 30 * ((30 * w - 23) / (30 * x - 1) + 7)

    If y6 = Int(y6) And y6 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y7 = 1 / 30 * ((30 * w - 23) / (30 * x - 11) + 17)

    If y7 = Int(y7) And y7 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y8 = 1 / 30 * ((30 * w - 23) / (30 * x - 13) + 19)

    If y8 = Int(y8) And y8 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    While y1 >= x Or y2 >= x Or y3 >= x Or y4 >= x Or y5 >= x Or y6 >= x Or y7 >= x Or y8 >= x

       x = x + 1

       y1 = 1 / 30 * ((30 * w - 23) / (30 * x + 1) + 23)

       If y1 = Int(y1) And y1 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y2 = 1 / 30 * ((30 * w - 23) / (30 * x - 7) + 1)

       If y2 = Int(y2) And y2 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y3 = 1 / 30 * ((30 * w - 23) / (30 * x - 17) + 11)

       If y3 = Int(y3) And y3 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y4 = 1 / 30 * ((30 * w - 23) / (30 * x - 19) + 13)

       If y4 = Int(y4) And y4 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y5 = 1 / 30 * ((30 * w - 23) / (30 * x - 23) - 1)

       If y5 = Int(y5) And y5 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y6 = 1 / 30 * ((30 * w - 23) / (30 * x - 1) + 7)

       If y6 = Int(y6) And y6 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y7 = 1 / 30 * ((30 * w - 23) / (30 * x - 11) + 17)

       If y7 = Int(y7) And y7 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y8 = 1 / 30 * ((30 * w - 23) / (30 * x - 13) + 19)

       If y8 = Int(y8) And y8 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

    Wend

    MsgBox "O número : " & z & " é um número primo"

    Return

P30W07:

    y1 = 1 / 30 * ((30 * w - 7) / (30 * x + 1) + 7)

    If y1 = Int(y1) And y1 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y2 = 1 / 30 * ((30 * w - 7) / (30 * x - 23) + 1)

    If y2 = Int(y2) And y2 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y3 = 1 / 30 * ((30 * w - 7) / (30 * x - 13) + 11)

    If y3 = Int(y3) And y3 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y4 = 1 / 30 * ((30 * w - 7) / (30 * x - 19) + 17)

    If y4 = Int(y4) And y4 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y5 = 1 / 30 * ((30 * w - 7) / (30 * x - 7) - 1)

    If y5 = Int(y5) And y5 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y6 = 1 / 30 * ((30 * w - 7) / (30 * x - 1) + 23)

    If y6 = Int(y6) And y6 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y7 = 1 / 30 * ((30 * w - 7) / (30 * x - 11) + 13)

    If y7 = Int(y7) And y7 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y8 = 1 / 30 * ((30 * w - 7) / (30 * x - 17) + 19)

    If y8 = Int(y8) And y8 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    While y1 >= x Or y2 >= x Or y3 >= x Or y4 >= x Or y5 >= x Or y6 >= x Or y7 >= x Or y8 >= x

       x = x + 1

       y1 = 1 / 30 * ((30 * w - 7) / (30 * x + 1) + 7)

       If y1 = Int(y1) And y1 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y2 = 1 / 30 * ((30 * w - 7) / (30 * x - 23) + 1)

       If y2 = Int(y2) And y2 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y3 = 1 / 30 * ((30 * w - 7) / (30 * x - 13) + 11)

       If y3 = Int(y3) And y3 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y4 = 1 / 30 * ((30 * w - 7) / (30 * x - 19) + 17)

       If y4 = Int(y4) And y4 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y5 = 1 / 30 * ((30 * w - 7) / (30 * x - 7) - 1)

       If y5 = Int(y5) And y5 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y6 = 1 / 30 * ((30 * w - 7) / (30 * x - 1) + 23)

       If y6 = Int(y6) And y6 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y7 = 1 / 30 * ((30 * w - 7) / (30 * x - 11) + 13)

       If y7 = Int(y7) And y7 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y8 = 1 / 30 * ((30 * w - 7) / (30 * x - 17) + 19)

       If y8 = Int(y8) And y8 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

    Wend

    MsgBox "O número : " & z & " é um número primo"

    Return

P30W17:

    y1 = 1 / 30 * ((30 * w - 17) / (30 * x + 1) + 23)

    If y1 = Int(y1) And y1 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y2 = 1 / 30 * ((30 * w - 17) / (30 * x - 7) + 1)

    If y2 = Int(y2) And y2 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y3 = 1 / 30 * ((30 * w - 17) / (30 * x - 17) + 11)

    If y3 = Int(y3) And y3 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y4 = 1 / 30 * ((30 * w - 17) / (30 * x - 19) + 13)

    If y4 = Int(y4) And y4 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y5 = 1 / 30 * ((30 * w - 17) / (30 * x - 23) - 1)

    If y5 = Int(y5) And y5 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y6 = 1 / 30 * ((30 * w - 17) / (30 * x - 1) + 7)

    If y6 = Int(y6) And y6 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y7 = 1 / 30 * ((30 * w - 17) / (30 * x - 11) + 17)

    If y7 = Int(y7) And y7 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y8 = 1 / 30 * ((30 * w - 17) / (30 * x - 13) + 19)

    If y8 = Int(y8) And y8 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    While y1 >= x Or y2 >= x Or y3 >= x Or y4 >= x Or y5 >= x Or y6 >= x Or y7 >= x Or y8 >= x

       x = x + 1

       y1 = 1 / 30 * ((30 * w - 17) / (30 * x + 1) + 23)

       If y1 = Int(y1) And y1 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y2 = 1 / 30 * ((30 * w - 17) / (30 * x - 7) + 1)

       If y2 = Int(y2) And y2 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y3 = 1 / 30 * ((30 * w - 17) / (30 * x - 17) + 11)

       If y3 = Int(y3) And y3 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y4 = 1 / 30 * ((30 * w - 17) / (30 * x - 19) + 13)

       If y4 = Int(y4) And y4 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y5 = 1 / 30 * ((30 * w - 17) / (30 * x - 23) - 1)

       If y5 = Int(y5) And y5 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y6 = 1 / 30 * ((30 * w - 17) / (30 * x - 1) + 7)

       If y6 = Int(y6) And y6 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y7 = 1 / 30 * ((30 * w - 17) / (30 * x - 11) + 17)

       If y7 = Int(y7) And y7 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y8 = 1 / 30 * ((30 * w - 17) / (30 * x - 13) + 19)

       If y8 = Int(y8) And y8 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

    Wend

    MsgBox "O número : " & z & " é um número primo"

    Return

P30W19:

    y1 = 1 / 30 * ((30 * w - 19) / (30 * x + 1) + 19)

    If y1 = Int(y1) And y1 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y2 = 1 / 30 * ((30 * w - 19) / (30 * x - 11) + 1)

    If y2 = Int(y2) And y2 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y3 = 1 / 30 * ((30 * w - 19) / (30 * x - 23) + 7)

    If y3 = Int(y3) And y3 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y4 = 1 / 30 * ((30 * w - 19) / (30 * x - 17) + 13)

    If y4 = Int(y4) And y4 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y5 = 1 / 30 * ((30 * w - 19) / (30 * x - 19) - 1)

    If y5 = Int(y5) And y5 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y6 = 1 / 30 * ((30 * w - 19) / (30 * x - 1) + 11)

    If y6 = Int(y6) And y6 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y7 = 1 / 30 * ((30 * w - 19) / (30 * x - 7) + 23)

    If y7 = Int(y7) And y7 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y8 = 1 / 30 * ((30 * w - 19) / (30 * x - 13) + 17)

    If y8 = Int(y8) And y8 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    While y1 >= x Or y2 >= x Or y3 >= x Or y4 >= x Or y5 >= x Or y6 >= x Or y7 >= x Or y8 >= x

       x = x + 1

       y1 = 1 / 30 * ((30 * w - 19) / (30 * x + 1) + 19)

       If y1 = Int(y1) And y1 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y2 = 1 / 30 * ((30 * w - 19) / (30 * x - 11) + 1)

       If y2 = Int(y2) And y2 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y3 = 1 / 30 * ((30 * w - 19) / (30 * x - 23) + 7)

       If y3 = Int(y3) And y3 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y4 = 1 / 30 * ((30 * w - 19) / (30 * x - 17) + 13)

       If y4 = Int(y4) And y4 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y5 = 1 / 30 * ((30 * w - 19) / (30 * x - 19) - 1)

       If y5 = Int(y5) And y5 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y6 = 1 / 30 * ((30 * w - 19) / (30 * x - 1) + 11)

       If y6 = Int(y6) And y6 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y7 = 1 / 30 * ((30 * w - 19) / (30 * x - 7) + 23)

       If y7 = Int(y7) And y7 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y8 = 1 / 30 * ((30 * w - 19) / (30 * x - 13) + 17)

       If y8 = Int(y8) And y8 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

    Wend

    MsgBox "O número : " & z & " é um número primo"

    Return

P30W29:

    y1 = 1 / 30 * ((30 * w - 29) / (30 * x + 1) - 1)

    If y1 = Int(y1) And y1 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y2 = 1 / 30 * ((30 * w - 29) / (30 * x - 1) + 1)

    If y2 = Int(y2) And y2 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y3 = 1 / 30 * ((30 * w - 29) / (30 * x - 13) + 7)

    If y3 = Int(y3) And y3 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y4 = 1 / 30 * ((30 * w - 29) / (30 * x - 11) + 11)

    If y4 = Int(y4) And y4 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y5 = 1 / 30 * ((30 * w - 29) / (30 * x - 19) + 19)

    If y5 = Int(y5) And y5 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y6 = 1 / 30 * ((30 * w - 29) / (30 * x - 23) + 17)

    If y6 = Int(y6) And y6 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y7 = 1 / 30 * ((30 * w - 29) / (30 * x - 7) + 13)

    If y7 = Int(y7) And y7 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    y8 = 1 / 30 * ((30 * w - 29) / (30 * x - 17) + 23)

    If y8 = Int(y8) And y8 >= x Then

       MsgBox "O número : " & z & " não é um número primo"

       Return

    End If

    While y1 >= x Or y2 >= x Or y3 >= x Or y4 >= x Or y5 >= x Or y6 >= x Or y7 >= x Or y8 >= x

       x = x + 1

       y1 = 1 / 30 * ((30 * w - 29) / (30 * x + 1) - 1)

       If y1 = Int(y1) And y1 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y2 = 1 / 30 * ((30 * w - 29) / (30 * x - 1) + 1)

       If y2 = Int(y2) And y2 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y3 = 1 / 30 * ((30 * w - 29) / (30 * x - 13) + 7)

       If y3 = Int(y3) And y3 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y4 = 1 / 30 * ((30 * w - 29) / (30 * x - 11) + 11)

       If y4 = Int(y4) And y4 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y5 = 1 / 30 * ((30 * w - 29) / (30 * x - 19) + 19)

       If y5 = Int(y5) And y5 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y6 = 1 / 30 * ((30 * w - 29) / (30 * x - 23) + 17)

       If y6 = Int(y6) And y6 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y7 = 1 / 30 * ((30 * w - 29) / (30 * x - 7) + 13)

       If y7 = Int(y7) And y7 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

       y8 = 1 / 30 * ((30 * w - 29) / (30 * x - 17) + 23)

       If y8 = Int(y8) And y8 >= x Then

          MsgBox "O número : " & z & " não é um número primo"

          Return

       End If

    Wend

    MsgBox "O número : " & z & " é um número primo"

    Return

End Sub