Jump to content
Fórum Script Brasil
  • 0

Se Puderem Ajudar Fico Grato.


Pedrinhooo
 Share

Question

Olá, sou iniciante em programação no momento estou apenas começando um curso técnico e to com dificuldade em 2 problemas se puderem me ajudar fico grato.

1º- A intenção é que o usuário digite um número e o programa (no caso como estou começando ainda uso Visualg) diz se ele é primo ou não, fiz alguma coisa que por sinal não deu certo. Não so muito bom com algoritmo com repita então uma negação mas não vi outro jeito, se puderem apontar o erro e me ajudar ficaria mtoo feliz >]

var

y, x, cont : inteiro

inicio

escreva ("Digite um número para saber se ele é primo ou não: ")

leia (x)

cont <- 2

repita

Se x mod cont = 0 então

y <- 1

interrompa

Senao

y <- 2

fimse

cont <- cont + 1

fimrepita

Se y = 1 então

escreva ("Não é um número primo")

Senao

escreva ("É um número primo")

fimse

fimalgoritmo

2º- Nesse a ideia é gerar numeros perfeitos. não faço ideia de como começar se puderem me ajudar pelo menos com uma luz posso tentar fazer e postar porque realmente não sei por onde começa esse :/

Obrigado desde já

Pedrinhooo ;D

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0
1º- A intenção é que o usuário digite um número e o programa (no caso como estou começando ainda uso Visualg) diz se ele é primo ou não, fiz alguma coisa que por sinal não deu certo. Não so muito bom com algoritmo com repita então uma negação mas não vi outro jeito, se puderem apontar o erro e me ajudar ficaria mtoo feliz >]

numero primo só é disivel por 1 e por ele mesmo, certo?? então veja o seu while. você vai dividindo por todos numeros a partir de 2, certo?? se por acaso ele encontra um outro numero que a divisao da exata, ele sai do while e seta a variavel pra avisar que o numero não é primo certo??

mas veja que quando ele chegar nele mesmo, a divisao VAI dar EXATA, e você vai setar que o numero não é primo, mas ele é sim. por isso antes de fazer o mod, você tem que testar se a variavel cont é igual a x e, se for, você tem que sair do while.

2º- Nesse a ideia é gerar numeros perfeitos. não faço ideia de como começar se puderem me ajudar pelo menos com uma luz posso tentar fazer e postar porque realmente não sei por onde começa esse :/

o que é um numero perfeito??

Link to comment
Share on other sites

  • 0

Kuroi muito obrigado pelo primeiro exercicio ^^

só para se alguém quiser saber ficou assim corrigido

var

y, x, cont : inteiro

inicio

escreva ("Digite um número para saber se ele é primo ou não: ")

leia (x)

cont <- 2

repita

Se cont = x então

interrompa

Senao

Se x mod cont = 0 então

y <- 1

interrompa

Senao

y <- 2

fimse

fimse

cont <- cont + 1

fimrepita

Se y = 1 então

escreva ("Não é um número primo")

Senao

escreva ("É um número primo")

fimse

fimalgoritmo

agora com relaçao ao segundo, numero perfeito é um numero que se somados os seus divisores (que resultam em mod 0 ou resto 0) , sem contar ele mesmo, resulta nele. EX:

6, pois seus divisores são 1 - 2 - 3 e 1 + 2 + 3 = 6.

Link to comment
Share on other sites

  • 0

a cara, num é dificil não. tipo faca um while mais ou menos como esse do primeiro exercicio, que va tirando o mod de todos os numeros ate chegar no digitado. quando o mod for igual a 0, some esse numero numa segunda variavel.

quando o while acabar, veja se o resultado da soma é igual ao numero digitado. se for, o numero é perfeito.

Link to comment
Share on other sites

  • 0

Kuroi exato!

voce xegou na raiz do meu problema. isso que voce falou no começo me pareceu um tanto obvio, porem quando meu professor completou o exercicio que me confundiu a cabeça. O usuario não vai digitar um numero, o programa vai Gerar numeros primos entende, não é uma verificacao como no primeiro e SIM uma "criacao" de numeros primos, ai que eu me perdi cara :/

só editando acho que o que você quis me dizer foi algo como isso

//x é o valor digitado pelo usuario e y minha variavel para descobrir se é primo e cont o contador

enquanto cont < x faca

Se x mod cont = 0 então

y <- y + cont

fimse

cont <- cont +1

fimenquanto

acho que foi algo como isso não é? :/

meu problema ta mesmo em gerar axei muito complicado

Edited by Pedrinhooo
Link to comment
Share on other sites

  • 0

numeros primos ou perfeitos??

cara mais isso tem um limite não?? tipo achar todos os numeros perfeitos ate 100 ou ate 1000, certo?? ou tipo existe um limite de numeros perfeitos e você tem que achar todos??

bom, seja como for, isso não dificulta mta coisa não. é so você por esse while que você já tem dentro de um outro while que comece em 1 e va testando todos os numeros.

Link to comment
Share on other sites

  • 0
Guest Visitante

Será que você podia colocar o algoritmo do segundo exercícios pra mim ver como é que fica!!!

cara tenho um exercícios pra fazer que tenho que pegar os números perfeitos até 5000 e depois somas com uns valores de tabela do exercício mais não consego fazer a primeira parte e gerar os valores perfeitos...

será que você podia me ajudar????

Link to comment
Share on other sites

  • 0

Eu vi esta idéia em java e passei pra português estruturado pra ficar melhor pra vc:

algoritmo "semnome"
// Função :
// Autor :
// Data : 5/7/2015
// Seção de Declarações
var
cont,i,num:inteiro
inicio
// Seção de Comandos
cont<-0
leia(num)
para i de 1 ate num faca
se num%i=0 então
cont<-cont+1
fimse
fimpara
se cont>2 então
escreval(num," não é primo.")
senao
escreval(num," é primo.")
fimse
fimalgoritmo

Ele conta quantas vezes um numero é dividido (cont). todo numero é divisivel por 1 e por ele mesmo, ou seja, ao final do loop 'para' cont vai estar com, no mínimo, o valor 2. Se o numero ao longo do loop for dividido mais de duas vezes, então ele não é primo, uma vez que os números primos só são divisiveis por 1 e por ele mesmo (2 vezes). :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.2k
    • Total Posts
      647.5k
×
×
  • Create New...