| Você está aqui: VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição | 
| Como calcular e exibir os 50 primeiros números primos em VisuAlg - Exercícios Resolvidos de VisuAlgQuantidade de visualizações: 608 vezes | 
| Pergunta/Tarefa: Um inteiro é um número primo se ele for divisível somente por 1 e por ele mesmo. Assim, 2, 3, 5 e 7 são primos, enquanto 4, 6, 8 e 9 não são. Note que o número 1 não é primo. Escreva um programa (algoritmo) VisuAlg que usa um laço PARA, ENQUANTO ou REPITA...ATE para calcular e exibir os 50 primeiros números primos. Sua saída deverá ser parecida com: 
50 primeiros números primos:
     2     3     5     7    11    13    17    19    23    29
    31    37    41    43    47    53    59    61    67    71
    73    79    83    89    97   101   103   107   109   113
   127   131   137   139   149   151   157   163   167   173
   179   181   191   193   197   199   211   223   227   229
Veja a resolução comentada deste exercício usando VisuAlg: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
algoritmo "Como exibir os N primeiros números primos em VisuAlg"
var
  // variáveis usadas na resolução do problema
  quantidade, contador, numero, j: inteiro
  primo: logico
inicio
  quantidade <- 50 // quantidade de números primos
  contador <- 0 // quantidade de números primos encontrados
  numero <- 0 // inteiro inicial
  // Lembre-se! O número 1 não é primo
  escreval(quantidade, " primeiros numeros primos:")
  escreval()
  // laço while será executado até encontrar os 50 primeiros números primos
  enquanto contador < quantidade faca
    primo <- verdadeiro
    // se o valor de i for 7, a variável j do laço contará
    // de 2 até 7 / 2 (divisão inteira), ou seja, 3. Se o
    // módulo de 7 por qualquer um dos valores neste intervalo
    // for igual a 0, então o número não é primo
    para j de 2 ate Int(numero / 2) faca
      se numero mod j = 0 entao
        primo <- falso // não é primo
        interrompa
      fimse
    fimpara
    se ((primo = verdadeiro) e (numero > 1)) entao
      escreva(numero:6)
      contador <- contador + 1 // encontramos um número primo
      se contador mod 10 = 0 entao
        escreval()
      fimse
    fimse
    numero <- numero + 1
  fimenquanto
fimalgoritmo
 | 
|  Link para compartilhar na Internet ou com seus amigos: | 
| Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de VisuAlg | 
| Veja mais Dicas e truques de VisuAlg | 
| Dicas e truques de outras linguagens | 
| JavaScript - JavaScript para iniciantes - Como usar o método escape() para codificar uma frase em JavaScript | 
| E-Books em PDF | ||||
| 
 | ||||
| 
 | ||||
| Linguagens Mais Populares | ||||
| 
			   1º lugar: Java | 


 
 





