elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Algoritmo "Numeros perfectos" [Batch]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Algoritmo "Numeros perfectos" [Batch]  (Leído 10,011 veces)
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Algoritmo "Numeros perfectos" [Batch]
« en: 13 Abril 2009, 09:09 am »


De Wikipedia, la enciclopedia libre
Un número perfecto es un número natural que es igual a la suma de sus divisores propios positivos, sin incluirse él mismo. Dicho de otra forma, un número perfecto es aquel que es amigo de sí mismo.

Así, 6 es un número perfecto, porque sus divisores propios son 1, 2 y 3; y 6 = 1 + 2 + 3. Los siguientes números perfectos son 28, 496 y 8128.


Código
  1. @echo off
  2. :: Numeros perfectos, Leo Gutierrez R.
  3. :code
  4. set /p "numero=Numero : "
  5. if not defined numero (goto:code)
  6. set /a "i=1"
  7. set /a "suma=0"
  8. set /a "operacion=0"
  9. :bucle
  10. if %i% equ %numero% (goto:end)
  11. set /a "operacion=%numero% %% %i%"
  12. if %operacion% equ 0 (set /a "suma+=%i%")
  13. set /a "i+=1"
  14. goto:bucle
  15. :end
  16. if %suma% equ %numero% (
  17. echo El numero es perfecto.
  18. ) else (
  19. echo El numero no es perfecto.
  20. )
  21. goto:eof
Salida:

Código:
C:\>code
Numero : 4
El numero no es perfecto.

C:\>code
Numero : 6
El numero es perfecto.

C:\>code
Numero : 20
El numero no es perfecto.

C:\>code
Numero : 28
El numero es perfecto.

C:\>code
Numero : 2000
El numero no es perfecto.

C:\>code
Numero : 496
El numero es perfecto.

C:\>496
"496" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.

C:\>


« Última modificación: 20 Junio 2009, 18:57 pm por Leo Gutierrez. » En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
SmartGenius

Desconectado Desconectado

Mensajes: 181


:P


Ver Perfil WWW
Re: Algoritmo "Numeros perfectos"
« Respuesta #1 en: 13 Abril 2009, 20:49 pm »

jeje...me hiciste caso y sacaste el algoritmo de los numeros perfectos  ;D ;D

Esta bien men, un saludo :D


En línea


leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Algoritmo "Numeros perfectos"
« Respuesta #2 en: 13 Abril 2009, 20:58 pm »

Si, gracias por la idea, SMART.
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Algoritmo "Numeros perfectos" [Batch]
« Respuesta #3 en: 20 Junio 2009, 21:11 pm »

El mismo algoritmo un poco más optimizado:
Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. :code
  4. set /p "numero=Numero : "
  5. if not defined numero (goto:code)
  6. for /l %%_ in (1,1,%numero%) do (
  7. set /a "operacion=%numero%%%%%_"
  8. if !operacion! equ 0 (set /a "suma+=%%_")
  9. )
  10. set /a "suma-=numero"
  11. if %suma% equ %numero% (
  12. echo.%numero%, Numero perfecto.
  13. ) else (
  14. echo.%numero%, Numero no perfecto.
  15. )
  16. pause>nul
  17. exit /b 0
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Programa en C que imprime los primeros m números perfectos
Programación C/C++
ERIK546 3 21,954 Último mensaje 29 Junio 2012, 21:36 pm
por ERIK546
Números perfectos (lenguaje C) « 1 2 3 »
Programación C/C++
NOB2014 22 11,751 Último mensaje 30 Septiembre 2014, 04:34 am
por rir3760
[C++] [?] Numeros perfectos
Programación C/C++
-JohnWalls 2 2,855 Último mensaje 7 Diciembre 2014, 20:33 pm
por -JohnWalls
Programa Numeros Perfectos C++
Programación C/C++
HIDE_95 2 3,625 Último mensaje 4 Agosto 2015, 21:34 pm
por HIDE_95
Publicada la píldora formativa Thoth 40 "¿Es vulnerable el algoritmo RSA?"
Noticias
wolfbcn 0 1,463 Último mensaje 28 Noviembre 2016, 02:20 am
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines