Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

YumalaySc

Algoritimo para mostrar quais numeros são primos..

Recommended Posts

Exercício semelhante ao postados pelo caaaike, porem pede para que mostre os números primos. Tentei fazer porem não consegui.

Faça um programa que receba N números inteiros e mostre quais são números primos dentre os números que foram digitados.

De preferência deve-se usar "enquanto...faz."

 

Porem não sei se esta 100% certo, pois não sei como testar todos os números primos

algoritmo "semnome"
// Função :  Verificar em exibir quais numeros digitados são primos.
// Autor : Eduardo Cipriani
// Data : 30/04/2015
// Seção de Declarações 
var
   n,numero , k : inteiro
inicio
      leia(n)
      para k de 1 ate n faca
           numero <- numero +1 // Para fazer a contagem automatica, irei mudar depois para o usuario passar o numero que quer ver se é primo
           se(numero = 2) entao  // Se o numero dois for informado ja o mostra
              escreval("O numero",numero," é primo")
           fimse
           se(numero mod 2 = 1) entao // este é meu problema, aqui verifico apenas se é impar, e não se é primo.
              se(numero = 1) entao   // se numero for 1 (que não é primo) passe-o para 2 que é primo  (isto apenas para contagem automatica)
                        numero <- + 1
              senao
                   escreval("O numero",numero," é primo")
              fimse
           fimse
      fimpara
fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, os números primos são os números que são divididos por 1 e por ele mesmo, somente. Além disso, todos os números pares são divisíveis por 2, portanto, 2 é o único número primo par.

 

Sabendo disto, o número deve ser maior que 1, se o número for maior que 2 e divisível por 2, não é primo. Na minha opinião, se encontrar os números NÃO PRIMOS, todas as exceções são primos.

 

Espero ter ajudado. :upset:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fazendo isto apresentara todos os números não-pares como numeros primos, sendo que nem todo numero impar é primo. pelo que entendi kk. mas vlw a tentativa mesmo assim. :yes:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um erro que vi, e que você não está digitando nehum numero para verificar se é primo.

O numero que você informa é o contador do "para" e você está verificando se é primo a variavel acumuladora.

 

A logica para verificar se é primo:

leia(n)
contador <- 2;
y <- 0;
repita
  se contador = n faca
    interrompa;
  senao
     se (n mod contador) = 0 faca
       y <- 1;
       interrompa;
     senao
       y <- 2;
     fimse
  fimse
contador <- contador + 1;
fimrepita

se y = 1 faca
    escreva("não é primo")
senao
    escreva("é primo")
fimse

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.