Estructuras de decisión

2/13
Recursos
Transcripción

Aportes 23

Preguntas 5

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Notas de clase

Un statement es una línea de código o un solo comando que el programa compila de a uno a la vez.
Ejemplo:

printf("Hello world \n");

Por su parte, un bloque de código es un conjunto de varios statements que se compilan juntos, estos se agrupan con los corchetes “{}”.
Ejemplo:

statment1;
statment2;
.
.
.
statmentx;

Ahora ¿Cómo funcionan los “if’s”?
Sencillo, estas estructuras tienen el siguiente formato:

if (condicion1)
{
    statment1;
    statment2;
}
else if (condicion2)
{
    statment3;
    statment4;
    statment5;
}
else if (condicion3)
    statment6;
else
{
    statment7;
    statment8;
    .
    .
    .
    statmentn;
}

Aunque esté escrito en pseudocódigo funciona para darnos una idea.
Los ciclos if siempre van acompañados de una condición, si esta se cumple se realizarán los statments o el bloque de código correspondiente, y si no se cumple, se procederá a comparar con en el siguiente comparativo else if y checará la condición de este nuevo comparativo, si se cumple entrará al bloque de código y si no seguirá comparando con los else if restantes hasta llegar al comparativo else final que es el bloque a ejecutar por defecto.

Notas:

  • Veamos que en el segundo “else if”, no se utilizan corchetes ya que solo se ejecutará un statment.

  • La programación es secuencial, es decir, si se cumple por ejemplo la condición del primer if se ejecutará el bloque de código correspondiente y no comparará con los demás “else if” ni “else”. Por lo que si tenemos condiciones repetidas, siempre se ejecutará el bloque de código correspondiente a la condición cumplida que esté “más arriba” en el código.

los bloques entre llaves a solas tienen un ventaja y es que si declaras un variable dentro de ella esta solo vivirá y morirá dentro de ella

![](

#include <stdio.h>
int main()
{
    int a = 1;
    {
        char a = 'a';
        printf("%c\n",a);
    }
    printf("%d\n",a);
    return 0;
}```

esta parte es muy importante en cualquier lenguaje

Statement: Es declarar una sola variable o una linea de codigo desde que empieza hasta que se pone el ;

Bloques: Se pone entre {}

El if funciona atraves de expresiones

Cuando tengas un solo statement no necesitas poner las llaves {}

Puedes poner tantos else if como requieras

Un Statement es una línea de código individual que se compila uno a la vez , en cambio un bloque de statement es una son varios códigos contenidos por los corchetes al cual el compilador los toma como una línea de códigos.

Cuando menciona que está mal poner llaves a los if, else o elseif cuando solo tienen una sentencia, realmente está bien, es una buena práctica de programación para la legibilidad y mantenimiento del código (evita que en futuros cambios se olviden poner las llaves y el código haga cosas que no quieres)

Los Statements son Simples unidades básica de código y Los bloques de códigos tienen varios Statements

{// aqui un bloque de codigo

// Statements 1
// Statements 2
// Statements 3
.
.

}

cuando escribe una estrucutra de decición ya se un if, un else if o un else, si consta más de una linea de código lo que se quiere ejecutar, es requerido definir las llaves, si solo contiene una línea entonces es opcional.

En programación estructurada podemos escribir todos los
ellse if es una construcción que no tiene limites y podemos escribir todos los que queramos

Yo diría que una línea de código puede tener varios statements separados por ;
Yo no diría que es lo mismo línea de código que statement.

Statement

  • A code line that finishes with a ;

    printf("Hello World");
    

Code block

  • A code block is defined by { }. These can have one or several statements inside

    if(expression){
    	statement1;
    	statement2;
    }	
    

Por mi parte cuando tengo una sola linea de código después de un if. La ubico al lado del if les doy unos tabs y listo.

if 	(expresión1)	statement1;
else if 	(expresión2)	statement2;
else 			statement3;

Muy buena la clase

Hola profe tome su curso en C porque estoy interesado en el internet de las cosas IoT.

Todavía esperamos el curso de robotica en Platzi.

Creo que a muchos nos pasa el mismo miedo de no poder cerrar las llaves. O se le hace extraño porque las reglas indican que siempre se deben cerrar las llaves.

Buena practica si se tiene un solo Statament no es necesario dejar los corchetes "{}"

Un statement o declaración de estado es una sola linea de codigo.

Yo trabajo bastante con C, en mi país es difícil estandarizar y de ante mano ya esta mal para escribir un código básico tienes que seguir los estándares de sintaxis,etc de C ANSI/ISO, eso incluye para robótica
SALUDOS

No conocía en lo absoluto en que si solo teníamos un statement no eran necesitas las llaves, pero bueno ya no cometeremos mas ese error 😃

Funcionamiento del if.

Hola, me gustaria dejar este peequeño aporte con algo que me parecio super util de otro curso, la sintaxis de un if en linea en C:

(proposición) ? Valor V: Valor F

Bloque de código. Conjunto de statements entre llaves.

Statement (declaración). Unidad de código en C que cierra con ;