Cálculo de número perfeito único
Publicado por Sérgio Abrantes Junior (última atualização em 21/05/2020)
[ Hits: 25.590 ]
Homepage: https://br.linkedin.com/in/sergioabrantes
numeroPerfeitoUnico
Shell script que testa se o número informado é perfeito.
Otimizações de código:
Analisa até o divisor ser no máximo sua metade:
Ex.: Número informado = 10
Ele checará até o 5 no máximo.
#!/usr/bin/env bash # shellcheck disable=SC2162 # Prove: NumeroPerfeitoUnico # Descricao Curta: Verifica se número informado é perfeito # Descrição Longa: Verifica se número informado é perfeito # Frequencia: Sob demanda # Autor: Sérgio Abrantes # Contato: sergioabrantes@gmail.com # Site: https://github.com/sergioabrantesjunior/numeroPrimoUnico # # # Histórico: # # v1.0.0 2020-01-17, Sérgio Abrantes: # - Versão inicial do script : ' Em Matemática, um número perfeito é um número inteiro para o qual a soma de todos os seus divisores positivos próprios (excluindo ele mesmo) é igual ao próprio número. Por exemplo, o número 6 é um número perfeito, pois: 6 = 1 + 2 + 3 O próximo número perfeito é o 28, pois: 28 = 1+ 2+ 4+ 7+ 14 Os quatro primeiros números perfeitos (6, 28, 496 e 8.128) eram os únicos conhecidos pelos gregos antigos desde pelo menos Euclides. No século XV acrescentou-se 33.550.336 à lista. O conjunto dos números perfeitos é: {6, 28, 496, 8128, 33550336, 8589869056, …} ' clear read -p "Digite um número: " numero contadorLoop=1 somaDivisoresInteiros=0 while [[ "$contadorLoop" -le "$((numero / 2))" ]];do if [ "$(( numero % contadorLoop ))" = 0 ];then somaDivisoresInteiros=$((somaDivisoresInteiros + contadorLoop)) fi contadorLoop=$((contadorLoop + 1)) done if [ "$somaDivisoresInteiros" -eq "$numero" ];then echo "O Número $numero é perfeito" else echo "O Número $numero não é perfeito" fi
Renomeando múltiplos arquivos com espaços
Calculadora com 4 operações e cálculo de porcentagem
Gerador de senhas personalizadas
Configurar a rede no Debian, Kurumim e Ubuntu
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
estou na 22.1 e não é atualizado pra 22.4 via "sudo full-upgrade&... (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (2)
converter algoritmo C++ em C? (0)