Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problema al leer el último carácter de la cinta magnética #1

Open
Madauy opened this issue May 18, 2023 · 4 comments
Open

Problema al leer el último carácter de la cinta magnética #1

Madauy opened this issue May 18, 2023 · 4 comments
Assignees

Comments

@Madauy
Copy link

Madauy commented May 18, 2023

Al intentar leer la última posición de la cinta magnética no retorna nada, funciona bien si intento obtener el último o penúltimo caracter.

Funciona ✅

pmio.OUT(5, -3)
pmio.OUT(4, 1) 
char = pmio.IN(2)
print(f"Char: {char}") 

Funciona ✅

pmio.OUT(5, -2)
pmio.OUT(4, 1) 
char = pmio.IN(2)
print(f"Char: {char}") 

No Funciona ❌

pmio.OUT(5, -1)
pmio.OUT(4, 1) 
char = pmio.IN(2)
print(f"Char: {char}") 
@Madauy
Copy link
Author

Madauy commented May 22, 2023

Hola @tocococa, en el anuncio en canvas leí que habían solucionado el problema, sin embargo luego de hacer pull al repo sigue sin funcionar.

@tocococa
Copy link
Contributor

Hola @Madauy, perdón, no estaba prestando atención a este foro y el bug al que me refería es otro.

Esto no es un bug, ya que la cinta no espera valores negativos, ahora se levanta un mensaje si ocurre. Además e agregó un método que retorna el largo de la cinta por si lo necesitas.

@Madauy
Copy link
Author

Madauy commented May 26, 2023

Hola! probé nuevamente el código utilizando el nuevo método que retorna el largo de la cinta, sin embargo luego de usar ese método la opción de leer queda congelada, es decir In(2) luego de leer el largo de la cinta.

@tocococa
Copy link
Contributor

Hola @Madauy, acabo de probar la secuencia

pmio.OUT(5, 6)
    pmio.OUT(4, 1)
    char = pmio.IN(2)
    print(f"Char: {char}")
    length = pmio.IN(10)
    print(f"Length: {length}")
    pmio.OUT(5, 0)
    pmio.OUT(4, 1)
    char = pmio.IN(2)
    print(f"Char: {char}")
    pmio.OUT(5, 2)
    pmio.OUT(4, 3)
    char = pmio.IN(2)
    print(f"Char: {char}") 

y el output es

Char: n
Length: 1767
Char: W
Char: 're

como se espera.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants