La siguiente se llama conjetura de ULAM en honor del matematico S.Ulam
- Comience con cualquier entero positivo
- Si es par, dividalo entre 2; si es impar, multipliquelo por 3 y agreguele 1.
- Obtenga enteros sucesivamente repitiendo el proceso
Construya un diagrama de flujo y su codigo correspondiente que lea un numero entero positivo y obtenga e imprima la sucesion de ULAM (tambien conocido como Conjetura de Collatz)
Datos:
N, es una variable de tipo entero, que representa el número que ingresa.
Diagrama de Flujo
Codigo Fuente Visual Basic
Module problema_320 Sub Main() Console.Write("Ingrese número : ") Dim N = Val(Console.ReadLine) If N > 0 Then Console.WriteLine(N) While N <> 1 If (N Mod 2) = 0 Then N = N \ 2 Else N = N * 3 + 1 End If Console.WriteLine(N) End While Else Console.Write("N tiene que ser un entero positivo") End If Console.ReadLine() End Sub End Module
5 comentarios:
Después de hacer el diagrama de flujo de la serie de Ulam, se me pide ahora asignar un caracter para que se repita dependiendo del número que salga. Por ejemplo, si sale dos, se tiene que imprimir **, si el número es 10, **********...
Lo que no sé es cómo hacer esa asociación del número con el caracter para que, en lugar del número, imprima el caracter en pantalla.
es una iteración de n veces el carácter
sub imprimir(byval n as integer)
for i =0 to n
console.write("*")
next
console.writeLine("")
end sub
pero este paso como lo creo en Pseudocódigo en PseInt?
Como pondría ese código en Python 3?
Como seria con ciclo for en ligar de while
Publicar un comentario