[Reto Batch] Números II (Puntoinfinito)

Iniciado por Eleкtro, 5 Mayo 2012, 08:18 AM

0 Miembros y 1 Visitante están viendo este tema.

Eleкtro

Aquí pueden comentar todo lo que quieran, sus dudas, avances o soluciones acerca del siguiente reto:

Reto iniciado por Puntoinfinito

Reto Nº 2:

Nombre:         Números II (Puntoinfinito)
Dificultad:       4/10
Objetivo:        Consiste en hacer un batch que al poner un numero neutral luego te diga los siguientes datos:
   

  • El numero que has puesto
  • Como seria invertido
  • El numero mayor
  • El menor numero
  • Y finalmente que te diga todos los números pares de la serie

Pistas:            Con la foto creo que os basta.
Ejemplo:
                     








Runex

#1
Se puede hacer en python? xD

Código (python) [Seleccionar]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
numero = raw_input("Introduce un numero>")
lista = []
total = "0"
x = 0
for digito in numero:
lista.append(digito)
if int(digito) % 2 == 0:
total += digito
lista.sort()
invertido = 0
numero2 = int(numero)
while numero2>0:
   invertido = invertido * 10 + numero2 % 10
   numero2 /= 10
print "El invertido es: " + str(invertido)
print "El menor es: " + lista[0]
print "El mayor es: " + lista[len(lista)-1]
print "Los digitos pares son: " + total



Solución sucia xD. Sé que solo se puede en batch, pero no he visto la solución y me apetecía hacer retos de estos :)

Un saludo
"No renunciaría al bambú.
Nunca renuciaría a ti.
No te compares con otros" "El me dijo:
El bambú tenía un propósito diferente al del
helecho, sin embargo eran necesarios y
hacían del bosque un lugar hermoso".

Puntoinfinito

Eis, yo tengo la respuesta en Batch.
¿Le paso a alguien, o no hace falta?

Salu2
AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.

$Edu$

Para que pasarles la solucion? xD la idea es que piensen o pregunten aca y vos los orientas si ves q estan muyyy perdidos

Puntoinfinito

No lo digo para pasarle a elektro... xd

Venga va ánimos chicos!
Por cierto, la serie que escribir a de ser infinita :D (para hacerlo más difícil)
AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.

Snows

Yo tengo una duda, y es que ya se como hacerlo, es decir tengo la idea, pero no se como juzgar cuantos numeros hay, para despues leerlos al reves.

Saludos!

79137913

HOLA!!!

Código (dos) [Seleccionar]
@ECHO OFF
SETlocal enabledelayedexpansion
SET /P N=INTRODUCE EL NUMERO:
SET /A MIN=9
SET /A MAX=0
SET NUM=0
:LOOP
call set CHAR=%%N:~%NUM%,1%%%
set /a NUM+=1
IF "%CHAR%" EQU "" (GOTO TERMINAR)
IF 1%CHAR% LSS 1%MIN% (SET /A MIN = %CHAR%)
IF 1%CHAR% GTR 1%MAX% (SET /A MAX = %CHAR%)
SET RN=%CHAR%%RN%
SET /A ISP= %CHAR% %% 2
IF %ISP% == 0 (CALL SET PARES=%PARES%%CHAR%)
GOTO LOOP
:TERMINAR
ECHO REVSTR:%RN% MIN:%MIN% MAX:%MAX% PARES:%PARES%
pause


GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

Snows


Eleкtro









BatchianoISpyxolo

Funcionamiento:




::Batchiano :)
@echo off
setlocal enabledelayedexpansion
set /a i=0
set "pares="
set "invertido="
echo. -Analizar Numero-
set /p numero=Numero:
set /a MAYOR=!numero:~0,1!
set /a MENOR=!numero:~0,1!
:proceso
if "!numero:~%i%,1!" NEQ "" (
set /a value=!numero:~%i%,1!
set invertido=!value!!invertido!
set /a mod=!value! %% 2
if !mod! == 0 (
set pares=!pares!!value!
)
if !value! GTR !MAYOR! (
set /a MAYOR=!value!
) else (
if !value! LSS !MENOR! (
set /a MENOR=!value!
)
)
set /a i+=1
goto proceso
)

echo ^>^> Numero:!numero! ^| Invertido:!invertido! ^| Mayor:!MAYOR! ^| Menor:!MENOR! ^| Pares:!pares!
pause&exit/b
Puede que desees aprender a programar desde 0: www.espascal.es