Estructura de control en Python

Después de leer el articulo Estructuras de control, se mostrará ahora como hacer uso de ellas en un lenguaje de programación, el lenguaje elegido ha sido python. Sin mas preámbulos procederemos a los ejemplos.

Estructura de control si (condición) entonces.

para hacer uso de esta estructura se resolverá el siguiente ejercicio: Generar un script en pyhon que permita saber ¿cuál es el numero mayor de dos números solicitados al usuario?

AlgoritmoPseudocódigoDiagrama de flujoScript en python
Nombre: Mayor de dos números
int a,b.
Inicio
1. Solicitar al usuario dos números.
2. Esos dos números asignarlo a las variables a y b.
3. Si a es mayor que b entonces ir al paso cuatro.
4. Imprimir que a es el mayor.
Fin
Nombre: Mayor de dos números
int a, b.
Inicio
1. Introduce un valor para a y b.
2. si (a<b) entonces: ir al paso 3.
3. Imprimir a +" es mayor"
Fin
Diagrama de flujo mayor de dos númerosa = input("introduce un numero entero: ")
b=input("introduce un numero entero: ")
if (a>b):
print(str(a)+" Es mayor")
Tabla 1. Ejemplificando el uso de la estructura si (condición) entonces. Fuente: propia.

Como se puede observar en la tabla 1.1, la evolución o construcción del script python que permite solicitarle dos números al usuario y que éste pueda distinguir cual es el mayor de ambos. Ahora es momento de realizar una prueba de escritorio, para saber mas al respecto pulsa aqui.

variable avariable b(a>b)resultado
74verdadero7 es mayor
1719falso19 es mayor
00falsoson iguales
Tabla 1.2 Prueba de escritorio del ejercicio mayor de dos números. Fuente: propia

De acuerdo con la tabla 1.2, el script, algoritmo, seudocódigo y diagrama de flujo de la tabla 1.1, solo resuelve la primera variante, es decir, cuando el valor de a es mayor, pero cuando el valor de la variable a, es menor al de la variable b o son iguales, es script no sabe que hacer (bueno, no se le ha dado indicaciones de que debe de hacer).

Quizas sea momento de usar la segunda estructura de control descrita aquí.

Si (condición) entonces: instrucciones de lo contrario: instrucciones

AlgoritmoPseudocódigoDiagrama de flujoScript python
Nombre: Mayor de dos números
int a,b
Inicio
1. Solicitar dos números al usuario.
2. Los números solicitados en el paso 1. asignarlos a la variable a y b.
3. Si a es mayor que b entonces ir al paso 4, de lo contrario ir al paso 5.
4. Imprimir a+ "es el mayor"
5. Imprimir b+" es el mayor"
Fin
Nombre Mayor de dos números.
Int. a,b
Inicio
1. Introduce valor de a y b.
2. Si (a>b) entonces ir al paso 3 de lo contrario ir al paso 4.
3. Imprimir (a+" es el mayor")
4. Imprimir (b+" es el mayor")
Fin
Mayor de dos números estructura si entonces de lo contrarioa=input("Intruduce un valor entero: ")
b=input("Introduce un valor entero: ")
if(a>b):
print(str(a)+" es el mayor")
else:
print(str(b)+" es el mayor"
Tabla 1.3. Usando la estructura de control si entonces de lo contrario.

Cómo se puede observar en la tabla 1.3 con la estructura de control si condición entonces de lo contrario, se cumple la primera y segunda fila de la tabla 1.2 de la prueba de escritorio.

Instrucción según sea el caso o Switch case:

En python el uso de la sentencia “según sea el caso o Switch case” se considera un sintético de la estructura if, claro que el uso de la instrucción case permite que una evaluación sea mas rápido que el uso del if (clubdetecnologia, 2017). Sin embargo se hace uso de definiciones y diccionarios para simular el switch case. A continuación se mostrará un ejemplo del uso de esta estructura.

Diagrama de flujoScript en pythonPseudocódigoAlgoritmo
Switch casedef DiasLetras(numero):
switch={

1: 'Lunes';
2: 'Martes';
3: 'Miercoles';
4: 'Jueves';
5: 'Viernes'
}

print switch.get(numero,'Valor invalido')

i=input("Introduce un número: ")
DiasLetras(i)
Nombre: Dado un número mostrar el nombre del día
int d
1. Introduce un valor entero y asignarlo a la variable d.
2. según (d):
2.1 case (1):
Imprimir ‘Lunes’
2.2 case (2):
Imprimir ‘Martes’
terminar
2.3 case (3):
Imprimir ‘Miercoles’
terminar
2.4 case(4):
Imprimir ‘Jueves’
terminar
2.5 case (5):
Imprimir ‘Viernes’
terminar
Fin
Nombre: Dado un número mostrar el nombre del día.
int d
1. Introduce un valor entero.
2. Asignar el valor del paso 1 a la variable d.
3. según el valor de d, elija el caso:
3.1 caso 1:
imprimir ‘Lunes’
terminar
3.2 caso 2:
imprimir ‘Martes’
terminar
3.3 caso 3:
imprimir ‘Miercoles’
terminar
3.4 caso 4:
imprimir ‘Jueves’
terminar
3.5 caso 5:
imprimir ‘Viernes’
terminar
Fin
Tabla 1.3. Según sea el caso o el uso del switch

Como se puede observar en la tabla 1.3, se muestra la forma en que python se puede hacer uso de esta estructura. Lo que se hace es declarar una función (para el caso de la tabla la función se llama DiasLetras), dentro de ella se crea un diccionario o un arreglo asociativo, permitiendo evaluar el valor del parámetro o argumento. Observe que el indentado es muy importante (la sangría), todo lo que tenga sangria indicará que se debe de ejecutar cada vez que se mande a llamar a la función. El nombre del diccionario fue llamado switch.

Se debe de notar que se usa el signo igual (=) para darle los valores al diccionario y posteriormente las llaves van a indicar que es lo que contiene el diccionario, cada asociación debe de ir separado por un punto y coma. y sin ella hasta que se coloque el último valor a evaluar.

Posteriormente hay que solicitarle un valor al usuario, y después de obtener ese dato hay que pasar ese parámetro a la función que se creo, eso se hace escribiendo el nombre de la función y entre paréntesis el valor o la variable, el interprete busca la función y muestra el valor al que equivale el número que se le pidió al usuario.

En caso de que el valor no este dentro de la función se imprimirá el texto ‘El valor es incorrecto’, en la pantalla indicando al usuario que no se supo que hacer con tal dato.

Comparte esta entrada en tus redes sociales