Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição

Como testar se dois números são números amigos em VisuAlg - Escreva um programa VisuAlg que - Exercícios Resolvidos de VisuAlg

Quantidade de visualizações: 384 vezes
Pergunta/Tarefa:

Dois números inteiros positivos A e B são considerados números amigos se a soma dos divisores próprios de A for igual a B e a soma dos divisores próprios de B for igual a A.

Divisores próprios de um número positivo N são todos os divisores inteiros positivos de N exceto o próprio N. Por exemplo, os divisores próprios de 6 são: 1, 2 e 3.

Como exemplo de números amigos podemos citar 220 e 284. Os divisores próprios de 220 são 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 e 110, resultando na soma 284. O número 284, por sua vez, possui os divisores próprios 1, 2, 4, 71 e 142, resultando na soma 220. Dessa forma, 220 e 284 são números amigos.

Escreva um programa VisuAlg que leia dois números inteiros positivos e informe se eles são números amigos ou não.

Sua saída deve ser parecida com:

Informe o primeiro número: 220
Informe o segundo número: 284
Os dois números são amigos

Informe o primeiro número: 158
Informe o segundo número: 932
Os números não são amigos.

Informe o primeiro número: 1210
Informe o segundo número: 1184
Os dois números são amigos
Resposta/Solução:

Veja a resolução comentada deste exercício usando VisuAlg:

algoritmo "Como testar se dois números são amigos em VisuAlg"

var
  // variáveis usadas na resolução do problema
  i, n1, n2, soma: inteiro

inicio
  // vamos ler os dois números
  escreva("Informe o primeiro número: ")
  leia(n1)
  escreva("Informe o segundo número: ")
  leia(n2)

  // vamos somar todos os divisores próprios do
  // primeiro número
  soma <- 0
  para i de 1 ate (n1 - 1) faca
    se n1 mod i = 0 entao
      soma <- soma + i
    fimse
  fimpara

  // se essa soma for igual ao valor de n2 nós já temos a
  // primeira condição
  se soma = n2 entao
    // zera a soma
    soma <- 0
    para i de 1 ate (n2 - 1) faca
      se n2 mod i = 0 entao
        soma <- soma + i
      fimse
    fimpara

    // esta soma é igual ao valor de n1?
    se soma = n1 entao
      escreva("Os dois números são amigos.")
    senao
      escreva("Os números não são amigos.")
    fimse
  senao
    escreva("Os números não são amigos.")
  fimse

fimalgoritmo

Os números amigos eram conhecidos pelos Pitagóricos, que acreditavam que eles possuíam propriedades místicas.

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

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 27 usuários muito felizes estudando em nosso site.