Cómo diseñar un pseudocódigo para un programa que le permite a un usuario ingresar 10 números y luego los muestra en el orden inverso a su entrada

Cuando dice orden inverso, ¿quiere decir orden inverso de entrada u ordenado en orden descendente? Yo (asumiré el orden de entrada inversa.

comience a pensar en el problema y divídalo en sub problemas.

El primero es obviamente, hay que leer 10 números. Dado que los números deben imprimirse en orden inverso (y supongo que se desea una solución simple y directa) usted necesita:

1) almacenamiento para su entrada.

2) Un bucle que iterará 10 veces, cada vez

2a) pidiendo un número,

2b) leer entrada y

2c) Guárdelo en una posición determinada en su almacenamiento.

Tanto el bucle como el almacenamiento deberán realizar un seguimiento de la iteración del bucle en el que se encuentra actualmente. El bucle para poder terminar después de 10 iteraciones, el almacenamiento para saber qué posición en su almacenamiento utilizar.

3) imprimir los datos en orden inverso. Por supuesto, lo más fácil es simplemente hacer un bucle “hacia atrás” (9 -> 0 en 0 en base a almacenamiento) e imprimir cada posición. Pero también puede hacer un bucle normalmente y calcular pos (9 – iteración #). U otras variantes Pero vamos con el # 1

Ahora tiene la tarea dividida en algunos pasos fáciles (más fáciles). Para el pseudo código, bueno, no hay un estándar distinto, así que tendrás que vivir con esta variante

Crea el objeto theNumbers capaz de contener 10 números.
crear objeto currentIteration capaz de mantener un número

bucle de currentIteration = 0, a currentIteration = 9:
salida “Por favor ingrese el número”, currentIteration, “:”
leer entrada.
almacenar entrada en theNumbers @ currentIteration

bucle de currentIteration = 9, a currentIteration = 0:
la salida “Number”, currentIteration, “is”, se lee de theNumbers @ currentIteration

También puede resolverlo de forma recursiva, o con una pila o … de muchas maneras sofisticadas, pero … más fácil es probablemente lo mejor.

Si considera este problema como una pregunta de la estructura de datos, la estructura de datos que debe usar es una pila, la última en salir primero, o LIFO.

Sin embargo, desde el punto de vista operativo, se puede implementar de varias maneras.

Aquí está limpio y simple con la lista dinámica:

Inicia una lista vacía
Loop 10 veces:
Pida una entrada numérica desde un teclado
Péguelo a la lista

Entonces, si su usuario ingresa 1, la lista tendrá [1]

La próxima vez que ingrese 5, la lista tendrá [5,1], porque está precedida.

Cuando imprime la lista, puede imprimir desde el principio hasta el final, desde el índice 0 hasta el 9.

En lugar de “prefijar”, si elige “anexar”, cuando imprima la lista, imprimirá con índices invertidos de 9 a 0.

Si elige la pila en idiomas que admitan el tipo de pila, será “push in” y “pop out”.

Hace mucho tiempo, me entrevisté con una compañía de Fortune 500, me hicieron esta pregunta, esperaban que yo explicara sobre la pila, la lista, la cola, etc.

Para burlarse del entrevistador, les di una línea de código Ruby:

[1,2,3,4,5] .verso

A quién diablos le importa la pila o la cola :)))

S = pila vacía
repita 10 veces:
push (S, readinput ())
repita 10 veces:
eco pop (S)

¿Es eso lo suficientemente pseudo para ti? Debo haber mezclado como cinco sintaxis diferentes allí.