Basic programming course: Lesson #4 Control structures. Part 1. Conditionals.

in #devwithseven2 months ago (edited)

Copia de EARN.png

Las estructuras de control de flujo resultan un conocimiento indispensable para hacer que nuestros sistemas sean inteligentes y dinámicos, es como la antesala a la inteligencia artificial y es un universo fascinante al que nos enfrentamos en este nuevo desafío semanal.


Aprovecho para invitarles a participar a @oneldoors @yolvijrm @dexsyluz Basic programming course: Lesson #4 Control structures. Part 1. Conditionals.


- Describe tu comprensión de las estructuras condicionales y menciona 2 situaciones de la vida cotidiana en las que podrías aplicar este concepto.

Las estructuras condicionales son básicamente los evaluadores o restricciones para que los procesos se ejecuten y generen una salida o respuesta de acuerdo a lo programado. Todos los sistemas poseen estructuras condicionales que permiten la interacción con el usuario final y hacen que el programa guie las respuestas de acuerdo a las condiciones establecidas.


Un ejemplo simple de estructuras condicionales pueden ser que el sistema a partir de la edad y sexo de un individuo, se le pueda determinar si ya está en el tiempo para jubilarse. (Yo me quiero jubilar de todo pero aún no puedo jeje)

Les muestro como podría ser el código:


Algoritmo jubilaciones_graceleon
    Definir  edad como entero;
    Definir sexo como caracter;
    
        Imprimir "Ingrese su Edad";
    Leer edad;
    Imprimir "Sexo: escriba **F** (si es Mujer), **M** (si es Hombre): ";
    Leer sexo;
         Si ((sexo='F') Y (edad>=60)) Entonces
    Imprimir  " **** Ya es tiempo de  Jubilarse**** "
    Sino
     Si ((sexo='M') Y (edad>=65)) Entonces
    Imprimir "****Ya es tiempo de Jubilarse****"
     Sino
    Imprimir (' Aun no puede Jubilarse**** ')
    FinSi
        FinSi
                
FinAlgoritmo

Y la prueba es eficiente; estableciendo que una mujer se puede jubilar con al menos 60 años y un hombre con al menos 65 años. De lo contrario debe seguir trabajando. Les muestro una corrida con mis datos:

image.png


Otro ejemplo práctico podría ser la elección vocacional para un adolescente que debe escoger que tipo de carrera profesional debería estudiar dependiendo de su vocación y gustos:

El código podría ser así, considerando una pregunta clave que determinará el rumbo de la carrera que podrán elegir según los gustos y preferencias


Algoritmo prueba_vocacional_graceleon
    Definir  opcion como caracter;
    Definir nombre como caracter;
    
Imprimir "Ingrese su Nombre";
    Leer nombre;
    

    Imprimir "¿te gustan las matemáticas, la biología, la física, la química y la tecnología?";
    Imprimir "Si crees que te gustan alguna de las opciones entonces responde **s** de lo contrario responde **n**";
    Leer opcion;
    Si ((opcion="s"))  Entonces
    Imprimir  nombre " **** Debes estudiar una carrera orientada a las ciencias**** ";
    Sino
         Si ((opcion='n')) Entonces
            Imprimir nombre "****Debes estudiar una carrera de humanidades****";
             FinSi
         FinSi
         
FinAlgoritmo

Una ejecución en caso de que la respuesta sea s

image.png

en caso de que sea n

image.png


La clave en este punto es aprender a determinar cuales son las preguntas claves que el programa le hará al usuario para que a partir de allí el sistema pueda deliberar entre las condicionales.


- Crea un programa que le diga al usuario "Bienvenido a la sala ¿Qué quieres hacer?", si el usuario escribe 1 entonces muestra un mensaje que dice "has encendido la luz", si el usuario escribe 2 entonces muestra un mensaje que dice "has salido de la sala". Utiliza condicionales.

Lo primero que haremos será definir las variables. En este caso defino a opcion como un entero; para que el usuario pueda determinar si desea marcar 1 o 2 u otro número que no está en el menú de opciones.


Si (opcion ==1) Entonces
Mostrará en pantalla un mensaje: "has encendido la luz"

Sino Si (opcion==2) Entonces
Mostrará en pantalla un mensaje: "has salido de la sala";

pero si el usuario no marca ni 1 ni 2, entonces la opción marcada será la incorrecta.

SiNo
Imprimir "Opción incorrecta Solo puedes escoger entre la opción 1 y 2"

cada proceso que se abre es un ciclo que debe cerrarse; es por eso que debemos estar atentos a cerrar cada si con un finSi

Muestro el código a continuación y la corrida con cada posible resultado.



Algoritmo Room_graceleon
    // 1- definiendo en caracter 1 o 2 como entero
    Definir  opcion Como Entero;
    // titulo "Bienvenido a la habitación: ¿Qué deseas hacer?";
    Imprimir "Bienvenido a la habitación: ¿Qué deseas hacer?";
    Imprimir "Introduzca la opción 1 si desea encender la luz  o   Introduzca opción 2 si desea salir de la sala:";
    Leer opcion;
    // estructura condicional
    Si (opcion ==1) Entonces 
        // Si marca 1 entonces saldrá un mensaje de que ha encendido la luz
    Imprimir  "has encendido la luz";
        // si marca 2 saldrá el mensaje de que ha salido de la sala
    Sino Si (opcion==2) Entonces
        Imprimir  "has salido de la sala";
    SiNo
    Imprimir "**Opción incorrecta** Solo puedes escoger entre la opcion 1 y 2"
    FinSi
FinSi

FinAlgoritmo

Prueba 1:

image.png

Prueba 2:

image.png

Prueba 3:

image.png



- Crear un programa que pida al usuario 4 calificaciones diferentes, calcule el promedio y si es mayor a 70 muestre un mensaje diciendo que la sección pasó, si no, muestre un mensaje diciendo que la sección puede mejorar.

Procedemos a definir las variables; como es un cálculo matemático entonces definimos todas las variables como real. Definimos las preguntas al usuario de forma amigable y le informamos que el rango de cada calificación debe ser entre 0 y 100.

El sistema pregunta cada nota y lee el dato; luego procede a sumar las notas y dividirlas entre 4 para calcular el promedio.
Finalmente el sistema procede a usar las estructuras condicionales, en donde decide imprimir un mensaje a partir del valor obtenido en el promedio.


Si (promedio >= 70) Entonces
Imprimir "Su promedio es: " promedio
Imprimir "¡FELICIDADES! LA SECCION HA SIDO APROBADA";
SiNo Si (promedio <= 70 y promedio >=50) Entonces
Imprimir "Su promedio es: " promedio
Imprimir "LA SECCION PUEDE MEJORAR"
SiNo Si (promedio <= 49 y promedio >=0) Entonces
Imprimir "Su promedio es: " promedio
Imprimir "SECCION REPROBADA"
FinSi
FinSi
FinSi

Nótese que preguntamos 3 veces, las posibles opciones; si el promedio es mayor o igual a 70 entonces es una sección aprobada;
Si es mayor a 50 y menor o igual a 69, entonces puede mejorar
Pero si es menor a 49 entonces es una sección que reprueba.

Para cada SI debemos cerrar el ciclo con FinSi.


Muestro el código completo:


Algoritmo Calificaciones_graceleon
    // 1- definiendo calificaciones
    Definir  cal1, cal2, cal3, cal4, promedio Como real;
    // titulo "PROMEDIO DE NOTAS DE LA SECCIÓN";
    Imprimir "Bienvenidos al cálculo del promedio de la sección";
    Imprimir "Por favor introduzca las 4 calificaciones obtenidas (en el rango numérico del 0 al 100):";
    Imprimir "Calificación 1:";
    Leer cal1;
    Imprimir "Calificación 2:";
    Leer cal2;
    Imprimir "Calificación 3:";
    Leer cal3;
    Imprimir "Calificación 4:";
    Leer cal4;
    // cálculo del promedio de calificaciones
    promedio= (cal1+cal2+cal3+cal4)/4;
    // condicionales
    Si (promedio >= 70) Entonces
        Imprimir "Su promedio es: " promedio 
        Imprimir "**¡FELICIDADES! LA SECCION HA SIDO APROBADA**";
    SiNo Si (promedio <= 70 y promedio >=50) Entonces
            Imprimir "Su promedio es: " promedio 
            Imprimir "**LA SECCION PUEDE MEJORAR**"
        
        SiNo Si (promedio <= 49 y promedio >=0) Entonces
            Imprimir "Su promedio es: " promedio
            Imprimir "**SECCION REPROBADA**"
        FinSi 
    FinSi
    FinSi
FinAlgoritmo


PRUEBA 1:

image.png

PRUEBA 2:

image.png

PRUEBA 3:

image.png


Bien, así concluyo la primera parte de las condicionales en las estructuras de control. Esperando este material pueda ser útil para quien lo pueda leer.


Todos los captures son de mi autoría exclusivos para este post en steemit

@graceleon

Sort:  

Congratulations for bringing a quality post, you have earned a positive vote from team 2 and it is delivered by @pandora2010.

IMG-20240930-WA0213.jpg

Many Blessings...🙏🏻

Loading...

I see Pseint is easy for beginner, I want to use it but I don't understand Spanish. You write very good article.

Gracias es muy fácil, pero puedes desarrollarlo en el lenguaje de programación de tu preferencia y en tu idioma. Creo que solo evalúan el uso de los conceptos aprendidos en clase
Feliz semana

Coin Marketplace

STEEM 0.21
TRX 0.20
JST 0.034
BTC 97180.31
ETH 3331.80
USDT 1.00
SBD 3.02