[Python] - 0 y 1 enrtre otras cosas.

Iniciado por Meta, 30 Octubre 2010, 14:09 PM

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

Meta

Buenas:

Ver ejercicio 179)

Lo he hecho así y no se si es correcto o he entendido bien lo qu em e ha dicho.
Código (python) [Seleccionar]
cadena = raw_input('Introduce una cadena de números binarios: ')

while cadena != '':
    for i in cadena:
        if ord(i) >= 48 and ord(i) <= 49:
            print 'Binario.'
        else:
            print 'Se ha detectado número no binario.'
 
    cadena = raw_input('Introduce una cadena de números binarios:')


;)
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

criskapunk

Buenas Meta,

Segun el enunciado, el programa debe pedir una cadena mientras la misma no sea una cadena binaria. En tu codigo, pedis la cadena mientras sea diferente de " ".

Y el mensaje de salida deberia avisar si toda la cadena es un numero binario. En tu caso, mostras el mensaje por cada digito :)

Un saludo ;)

xassiz~

Código (python) [Seleccionar]
#!/usr/bin/env python

numeros = raw_input('Introduce numeros binarios: ')

binario = 0    #Damos por hecho que es binario

for digito in numeros:
if digito!='1' and digito!='0':
binario = 1

if binario==0:
print 'Es binario'
else:
print 'No es binario'

Saludos ^^

Meta

Algo no cuadra.
Si no es binario debe pedirte que introduzca los datos, si ya es binario el programa se acaba. Parece que pide eso. sólo te falta eso.
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

xassiz~

Metelo en un while, y si es binario haz break

Meta

Lo hice así:
Cuando es binario se detiene.
Cuando no es binario, no se detiene a preguntar de nuevo.

Código (python) [Seleccionar]
numeros = raw_input('Introduce numeros binarios: ')

while  True == True:
    binario = 0    #Damos por hecho que es binario

    for digito in numeros:
            if digito!='1' and digito!='0':
                    binario = 1

    if binario==0:
            print 'Es binario'
            break
    else:
            print 'No es binario'
    numeros = raw_input('Introduce numeros binarios: ')
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/

Novlucker

Yo lo hubiese hecho así :P

Código (python) [Seleccionar]
n = ''
while n=='':
    n = raw_input('Ingresa un numero binario: ')
    for i in n:
        if i!='1' and i!='0':
            n=''
            break

print'%s es binario' % n


Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Meta

Lohas hecho con menos código. Tomo nota amigo. Muchas gracias a todo el grupo.
Tutoriales Electrónica y PIC: http://electronica-pic.blogspot.com/