Jump to content
  • 0
gbilibio

Algoritmo para informar se número é composto ou primo, caso composto, realizar a decomposição em números primos

Question

Bom dia, preciso realizar uma atividade em portugol, aonde é feito a leitura de um número, identificando se o mesmo é primo, caso não seja primo, deve ser feita a decomposição em fatores primos, o algoritmo para de rodar quando for informado um número negativo. porém como posso realizar um laço ou condicional para fazer a fatoração ? Ainda não encontrei a forma adequada, se puderem ajudar por favor

 

Segue o meu código:

 

programa
{
    
    funcao inicio()
    {

        inteiro n = 0, cont = 0
        inteiro d = 1
        inteiro fat
        inteiro div = 0
        inteiro comp = 0
        
        escreva("Informando se o número é composto ou primo e sua decomposição \n")


        enquanto(n >= 0){

        escreva("Informe um número natural: ")
        leia(n)

        se(n == 1){
            escreva("O número não é primo nem composto! \n")
        }

        se(n % d == 0){
        
            d = 2                
        }
        
        se(n == 0){
            escreva("O número não é primo nem composto! \n")
        }
        senao
            se(n % d == 0 e n % n == 0 e n != 2){

                escreva("O número " ,n, " é composto! ")
            
                comp = n                            
                                                                            
        }senao
            se(n % n == 0 e n > 0 e n != 0 e n != 1){
                
            escreva("O número " ,n, " é primo! \n")
            
            }
        
            
            
        }                    
                            
    }    
}


 

 

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By vfraanco
      Desenvolva um algoritmo em pseudocodigo que permita ler as notas que N alunos obtiveram numa disciplina e mostre a
      percentagem de notas positivas e a média das notas negativas. O número de alunos (N) deve ser
      introduzido pelo utilizador e validado.
    • By Lauts
      programa
      {
          inclua biblioteca Matematica
          
          funcao inicio()
          {
              inteiro hom=0, mul=0, rsim=0, rnao=0, rhsim=0, rmsim=0, n, t=4
              real psim, pnao
              caracter sexo, resp
              (n == t)
          {
              leia ("Informe o Sexo: ", sexo)
              leia ("Gostou do produto (S/N): ", resp)
              se (sexo =='1')
              {
                  hom = hom + 1
                  se (resp == '1')
              {
                  rmnao = rmnao + 1
              }
              }
              senao
              {
                  se (sexo == '2')
              {
                  mul = mul + 1
                  se (resp == '2')
              {
                  rhsim = rhsim + 1    
              }    
              }
              }
                  se (resp == '1')
              {
                  rsim = rsim +1            
              }
                  senao
              {
                  se (resp == '2')
              {
                  rnao = rnao +1
              }
              }
          n = n  + 1
          }
              psim = 100 * (rmsim / t)
              pnao = 100 * (rhnao / t)
          }
              escreva ("Quantidade de pessoas que responderam sim: ", rsim)
              escreva ("Quantidade de pessoas que responderam não: ", rnao)
              escreva ("Porcentagem de mulheres que responderam sim: ", psim)
              escreva ("Porcentagem de homens que responderam não: ", pnao)
      }
    • By 4ly
      O exercício propunha fazer duas funções uma para multiplicação e outra para criar uma fatorial, porém devem ser feitas usando apenas operações de soma e subtração
      bom fiz uma função para multiplicar e esta funcionando porém estou tentando utiliza-la para fazer a fatorial e o resultado sempre da zero ;-; podem me ajudar 
       
       
      algoritmo "semnome" var a,b:inteiro funcao multi(a:inteiro;b:inteiro):real var aux:real inicio se a=0 entao retorne 0 senao aux <- 0 enquanto b>0 faca aux <- aux+a b <- b-1 fimenquanto retorne aux fimse fimfuncao funcao fatorial(a:inteiro):real var fat,res:real inicio enquanto fat > 0 faca fat<-a fat <- fat - 1 res <- multi(fat,a) fimenquanto retorne res fimfuncao inicio leia(a) escreval(fatorial(a)) fimalgoritmo  
    • By Felipe_2k19
      Olá galera tudo beleza?
       Eu estou tentando resolver um problema no visualg, usando Portugol porém eu não sei aplicar algumas coisas que são pedidas no mesmo.
      Problema: Dado um número, informar se é par ou ímpar. Se for par somar 5 no número informado e se for  ímpar multiplicar por 3 o número informado.
      Eu fiz a parte em que ele fala se o número e par ou ímpar, mas não sei fazer a parte da soma e a multiplicação alguém pode me ajudar?
      ALGORITMO:
      Var n:inteiro inicio escreval("Insira um número inteiro") leia (n) se (n mod2=0) entao escreval ("O número é par") senao escreval("O número é impar") fimse Fimalgoritmo  
    • By Felipe_2k19
      Fala galera tudo beleza?
      Então meu professor passou um "problema" e falou para criar um programa no Visualg usando Portugol, só que eu estou com alguns problemas principalmente na fórmula, alguém pode me ajudar?
      Pergunta: Dado o preço do ingresso e a idade o programa devera informar o preço do ingresso com os seguintes descontos de acordo com a idade:
      IDADE
      0-5-15%
      6-20-5%
      21-40- 2%
      acima de 40 - 30%
       
      Se puderem me ajudar agradeço.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.