Tutorial Python (in Work)
  • 1 - Objetivos del tutorial de Python
  • 2 - Instalación del lenguaje y pasos para crear nuestro primer programa
  • 3 - Codificación del diagrama de flujo en Python
  • 4 - Errores sintácticos y lógicos
  • 5 - Estructura de programación secuencial
  • 6 - Estructuras condicionales simples y compuestas
  • 7 - Estructuras condicionales anidadas
  • 8 - Condiciones compuestas con operadores lógicos
  • 9 - Estructura repetitiva while
  • 10 - Estructura repetitiva for
  • 11 - Definición de comentarios en el código fuente
  • 12 - Variables enteras, flotantes y cadenas de caracteres
  • 13 - Procesar cadenas de caracteres
  • 14 - Estructura de datos tipo lista
  • 15 - Listas: carga por teclado de sus elementos
  • 16 - Listas: mayor y menor elemento
  • 17 - Listas paralelas
  • 18 - Listas: ordenamiento de sus elementos
  • 19 - Listas: ordenamiento con listas paralelas
  • 20 - Listas: componentes de tipo lista
  • 21 - Listas: carga por teclado de componentes de tipo lista
  • 22 - Listas: eliminación de elementos
  • 23 - Concepto de funciones - Programación estructurada
  • 24 - Funciones: parámetros
Con tecnología de GitBook
En esta página
  • Estructura condicional simple
  • Ejemplos
  • Estructura condicional compuesta
  • Operadores
  • Problemas propuestos

¿Te fue útil?

6 - Estructuras condicionales simples y compuestas

Estructura condicional if y else.

Anterior5 - Estructura de programación secuencialSiguiente7 - Estructuras condicionales anidadas

Última actualización hace 4 años

¿Te fue útil?

No todos los problemas pueden resolverse empleando estructuras secuenciales . Cuando hay que tomar una decisión aparecen las estructuras condicionales:

  • ¿Elijo la carrera A o la carrera B ?

  • ¿Me pongo este pantalón ?

  • Para ir al trabajo, ¿Elijo el camino A o el camino B ?

Es común que en un problema se combinan estructuras secuenciales y condicionales.

Estructura condicional simple

Es cuando tenemos la opción de realizar una actividad o no realizar ninguna.

Podemos observar:

Ejemplos

Ejemplo 1

Ingresar el sueldo de una persona en dólares, si este supera los $ 3000 mostrar un mensaje en pantalla indicando que debe abonar (pagar) impuestos

salary = float (input ("Enter worker salary: $"))
if (salary>=3000) :
    print("you must pay taxes")
  • La palabra clave " if " indica que estamos en presencia de una estructura condicional; seguidamente disponemos la condición y finalizamos la línea con el caracter dos puntos (" : ").

Si volvemos a ejecutar e ingresamos un valor inferior a $ 3000 podemos observar que la instrucción que se encuentra por la rama del verdadero del if no se ejecuta:

Estructura condicional compuesta

En una estructura condicional compuesta hay actividades tanto por la rama del verdadero como por la rama del falso.

Ejemplo 2

Nunca se imprimen num1 y num2 simultáneamente. Estamos en presencia de una estructura condicional compuesta ya que tenemos actividades por la rama del verdadero y del falso.

number1=int (input("Enter number1:"))
number2= int (input("Enter number2:"))
if(number1>number2):
    print("The greater number is:",number1)
else(number1<number2):
    print("The greater number is:",number2)

Ejecutamos el programa, si hubo errores sintácticos corrijamos y carguemos dos valores, como por ejemplo:

En una condición deben disponerse en únicamente variables, valores constantes y operadores relacionales.

  • Igualdad: ==

  • Desigualdad: !=

  • Menor: <

  • Menor igual: <=

  • Mayor: >

  • Mayor igual: >=

  • Suma: +

  • Resta: -

  • Multiplicación: *

  • División flotantes: /

  • División enteros: //

  • Resto de una división: %

  • Exponenciación: **

Hay que tener en cuenta que al disponer una condición debemos seleccionar que operador relacional se adapta a la pregunta.

Ejemplos

  1. Ingresar un número y multiplicarlo por 5 si es distinto de cero. (!=)

  2. Se ingresan dos números, mostrar una advertencia si son iguales. (==)

Problema 1

Problema 2

Problema 3

number1=int (input("Enter number1:"))
number2= int (input("Enter number2:"))
if(number1>number2):
    suma= number1 + number2
    subtraction= number1 - number1
    print("Sum:",suma)
    print("Sub:", subtraction)
else(number1<number2):
    multiplication=number1*number2
    division = number1 / number2
    print("Mult:",multiplication)
    print("Div:", division)
#student's grade
note1= float(input("Enter the student's grade1:"))
note2= float(input("Enter the student's grade2:"))
note3= float(input("Enter the student's grade3:"))
#average grade
average=(note1+note2+note3)/3
#if the student is promoted
if(average>=2.96):
    print("The student's promoted ",average)
else :
    print("The student is not promoted",average)
number=int (input("Enter the number"))
# Negative number
if(number<0):
    number=-1*number;
#Digits
if(number>=0 and number<10):
    print("The number has one digit")
elif (number>=10 and number<100):
    print("The number has two digit")
else:
    print("The number has three or more digits")

El rombo representa la condición

Hay dos opciones que se pueden tomar . Si la condición da verdadera se sigue el camino del verdadero , o sea el de la derecha, si la condición da falsa se sigue el camino de la izquierda donde no hay ninguna actividad.

Se trata de una estructura condional simple porque por el camino del verdadero hay actividades y por el camino del falso no hay actividades.

Por el camino del verdadero pueden existir varias operaciones, entradas y salidas, inclusive ya veremos que puede haber otras estructuras condicionales.

Podemos observar lo siguiente: Siempre se hace la carga del sueldo, pero si el sueldo que ingresamos supera 3000 dolares se mostrará por pantalla el mensaje "Esta persona debe abonar impuestos", en caso que la persona cobre 3000 o menos no aparece nada por pantalla.

La actividad dentro del if se indenta generalmente a 4 espacios hacia la derecha .

La indentación es una característica obligatoria del lenguaje Python para codificación de las estructuras condicionales, de esta forma el intérprete de Python puede identificar donde finalizan las instrucciones contenidas en la rama verdadera del if.

Ejecutando el programa, si ingresamos un sueldo mayor o igual a $ 3000. Podemos observar como aparece en pantalla el mensaje "Esta persona debe abonar impuestos", ya que la condición del if es verdadera:

Cuando se presenta una elección donde tenemos la opción de realizar una actividad u otra . Es decir tenemos actividades por el verdadero y por el falso de la condición.

Lo más importante que hay que tener en cuenta que se realizan las actividades de la rama del verdadero o las del falso, nunca se realizan las actividades de las dos ramas

Realizar un programa que solicite ingresar dos números distintos y muestre por pantalla el mayor de ellos.

Se hace la entrada de num1 y num2 por teclado . Para saber cual variable tiene un valor mayor preguntamos si el contenido de num1 es mayor (>) que el contenido de num2, si la respuesta es verdadera vamos por la rama de la derecha e imprimimos num1, en caso que la condición sea falsa vamos por la rama de la izquierda (Falsa) e imprimimos num2.

Cotejemos el diagrama de flujo y la codificación y observemos que el primer bloque después del if representa la rama del verdadero y el segundo bloque después de la palabra clave else representa la rama del falso.

Cuando a un programa le corregimos todos los errores sintácticos y lógicos ha terminado nuestra tarea y podemos entregar el mismo al usuario que nos lo solicitó.

Operadores

Operadores relacionales

Operadores mátematicos

Los problemas que se pueden presentar son infinitos y la correcta elección del operador solo se alcanza con la práctica intensiva en la resolución de problemas

Problemas propuestos

Ha llegado una parte fundamental , que es el momento donde uno desarrolla individualmente un algoritmo para la resolución de problemas. El tiempo a dedicar a esta sección ejercicios propuestos debe ser mucho mayor que el empleado a la sección de ejercicios resueltos. La experiencia dice que debemos dedicar el 80% del tiempo a la resolución individual de problemas y el otro 20% al análisis y codificación de problemas ya resueltos por otras personas.

Realizar un programa que solicite la carga por teclado de dos números, si el primero es mayor al segundo informar su suma y diferencia, en caso contrario informar el producto y la división del primero respecto al segundo.

Se ingresan tres notas de un alumno, si el promedio es mayor o igual a siete mostrar un mensaje "Promocionado"

Se ingresa por teclado un número positivo de uno o dos dígitos (1..99) mostrar un mensaje indicando si el número tiene uno o dos dígitos . (Tener en cuenta que condición debe cumplirse para tener dos dígitos un número entero)

Solución

Nota : Inténtalo tu mism@, esta es la mejor forma de aprender o si quieres ver otro algoritmo para solucionar el mismo problema.

🚦
⏯️
✅
❎
👾
⏳
👁️‍🗨️
🤑
➡️
👮🏾‍♂️
▶️
🤔
📋
🎋
🔢
🖥️
⌨️
✅
❌
🔎
📋
📩
🧔🏽
🛠️
👩‍🔬
👨‍🔬
💪🏾
📚
😀
✍🏾
👩🏾‍💻
🕖
🗃️
📇
🗒️
7️⃣
🔟
🆘
👩‍🏫
📈
👀
👨‍💻
🙅🏾‍♂️
🤔
📋
👖
🛣️
🛤️
Diagrama de flujo estructura condicional simple
Diagrama de flujo estructura ejemplo 1
Salida código ejemplo 1 (Jupyter)
Salida código ejemplo 1 (Jupyter)
Diagrama flujo estructura condicional compuesta
Diagrama de flujo ejemplo 2
Salida código ejemplo 2