Crea una cuenta o inicia sesi贸n

隆Contin煤a aprendiendo sin ning煤n costo! 脷nete y comienza a potenciar tu carrera

Expresi贸n if

3/13
Recursos

Aportes 22

Preguntas 5

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

Operadores l贸gicos

.
Operadores l贸gicos en explicados de manera sencilla

  1. Con AND (&&) si una de las dos expresiones es falsa entonces toda la expresi贸n ser谩 falsa.
  2. Con OR (||) si una de las dos expresiones es verdadera entonces toda la expresi贸n ser谩 verdadera.
  3. Con NOT (!) si la expresi贸n es falsa entonces toda la expresi贸n viene a ser verdadera, pero si la expresi贸n es verdadera entonces toda la expresi贸n viene a ser falsa.

.
Enti茅ndase que el valor de toda una expresi贸n viene a ser 0 si es falsa y 1 si es verdadera.
.

Bien siguiendo el paso a la clase les muestro una peque帽a funci贸n que usa los if como en la clase, la funci贸n solo convierte una letra que en esencia representar铆a un hexadecimal a un decimal

short Hex_a_int(char Hex){
    if(Hex >= '0' && Hex <= '9')
        return(short)Hex - 48;
    else if(Hex >= 'A' && Hex <= 'F')
        return(short)Hex - 55;
    else if(Hex >= 'a' && Hex <= 'f')
        return(short)Hex - 87;
    else
        return 0;}```

Un detalle, en el c贸digo de Ricardo hay un error, y es que cuando n = 20 entra en el else statement, imprimiendo 鈥渆rror no quiero numeros negativos鈥.

Este programa checa si hay soluci贸n en los reales o no las hay.
No existe soluci贸n en los reales

#include <stdio.h>
int a=2,b=1,c=2,discriminante=0;
main()
{   
    discriminante = (b*b) - (4 *a*c);   
    if(discriminante>=0)
        printf("Existe solucion en los reales ");
    else
        printf("No existe solucion en los reales");
    return 0 ;

}```


No existe solucion en los reales


#include <stdio.h>
int n = -1;

int main()
{
    if(n > 10 && n < 20)
    printf("el numero es mayor que diez, pero menor que 20");
    else if (n == 10)
    printf("el numero es diez");
    else if (n > 20)
    printf("el numero es mayor que veinte");
    else if(n < 10 && n >= 0)
    printf("el numero esta en el rango de 0 a 9");
    else
    printf("ERROR no quiero numeros negativos");
    return 0;
    
}#include <stdio.h>
int n = -1;

int main()
{
    if(n > 10 && n < 20)
    printf("el numero es mayor que diez, pero menor que 20");
    else if (n == 10)
    printf("el numero es diez");
    else if (n > 20)
    printf("el numero es mayor que veinte");
    else if(n < 10 && n >= 0)
    printf("el numero esta en el rango de 0 a 9");
    else
    printf("ERROR no quiero numeros negativos");
    return 0;
    
}```

Si profe dig谩mole no a la negatividad 馃槃

Hola a todos, he a帽dido la fucionalidad de que el usuario pueda introducir el numero, este es el codigo;

#include <stdio.h>



int main()
{
    int n;
    printf("please choose a number: ");
    scanf("%d", &n);
    if (n>10 && n<20)
    printf("el numero es mayor que diez");
    else if (n == 10)
    printf("el numero es diez");
    else if (n>20)
    printf("el numeor es mayor que veinte");
    else if (n<10 && n>=0)
    printf("el numero es menor que diez");
    else
    printf("lo siento pero no acepto numeros negativos");
    return 0;
}

muichas gracias profe por la explicacion

El que haya 0 preguntas es una buena m茅trica para saber que ha sido una buena clase

con lo if hacemos control de flujo, una forma tambien de hacer control de esta

Que gran clase!

#include <stdio.h>

int n = -2;

int main()
{
    if (n > 10 && n < 20 )
    printf("the  number is greater than 10 and less than 20");
    else if (n<10 && n>0)
    printf("the number is less than 10 and greater than 20");
    else if (n>20)
    printf("the number is greater than 20");
     else if (n == 10)
    printf("the number is equal than 10");
    else 
    printf(" the number is incorrect");
    return 0;
}

exelente clase.

muy buena la clase

DIFERENCIA ENTRE USAR VARIOS IF SEGUIDOS O USAR UN IF CON VARIOS ELSE IF SEGUIDOS: varios if seguidos funcionan diferente que un if con varios else if seguidos. dependiendo de lo que necesite hacer el programa se puede usar uno u otro
.
IF SEGUIDOS: aqui se verifican todos los if ya sea que la condicion de cada if se cumpla o no, osea, si la condicion se cumple en el primer if aun asi se comprueba la condicion del segundo if y si se cumple la condicion del segundo if igual se comprueba el tercer if y asi sucesivamente

if(a==1)
if(a==2)
if(a==3)
if(a==4)
if(a==5)

.
UN IF CON VARIOS ELSE IF: aqui se comprueban las condiciones hasta que una condicion se cumpla, osea, si la condicion se cumple en el segundo else if los otros 3 else if y el else del final no se ejecutan o si la condicion se cumple en el primer if el resto de else if y el else del final no se ejecutan

if(a==1) //en la primer condicion se pone un if solo
else if(a==2)
else if(a==3)
else if(a==4)
else if(a==5)
else

me gusto la clase

Aprovechando que se ejecuta la primera expresi贸n verdadera

#include<stdio.h>

char edad = 1;

int main(){
    
    if      ( edad < 0  )   
    printf("\nSeguro que estas vivo?");
    else if ( edad < 18 )   
    printf("\nEres menor de edad");
    else if ( edad < 110)   
    printf("\nEres mayor de edad");
    else                    
    printf("\nChangos eres inmortal");
    
    return 0;
}

una buena practica es que cuando se trate de validar numeros (aparte de usar los operaodres logicos) se haga en el orden desde el numero mayos hacia el menor

Si se utiliza el c贸digo habr铆a un error en n=20 , lo interpreta como un n煤mero negativo, entonces deber铆a ser n igual o mayor a 20 o crear una condici贸n cuando n es igual a 20
en el
else if ( n > = 20)
printf(鈥渆l numero es igual o mayor que veinte鈥);

He aqu铆 la funci贸n del ejemplo hecha con recursividad y escaneo de entrada.

#include <stdio.h>
int n;
int option;
int foption() {
printf("Introduzca 1 para continuar, cualquier otro n煤mero para salir: ");
    scanf("%i", &option);
    if(option == 1)
    {
        printf("Introduzca el valor del n煤mero a evaluar: ");
        scanf("%i", &n);
        if(n > 0 && n <= 9)
            printf("n es mayor a cero y menor a diez \n");
        else if (n >= 10 && n <= 20)
            printf ("n est谩 entre 10 y 20\n");
         else if (n == 0)
            printf ("n es igual a cero\n");
        else if (n > 20)
            printf ("n es mayor a 20\n");
        else
            printf("n es un n煤mero negativo\n");
        foption();
    }
    else
        printf("Cerrando el ciclo.\n");
    return 0;
}

int main() {
    foption();
    return 0;
}

#include <stdio.h>
int n;
int option;
int foption() {
printf(鈥淚ntroduzca 1 para continuar, cualquier otro n煤mero para salir: 鈥);
scanf(鈥%i鈥, &option);
if(option == 1)
{
printf(鈥淚ntroduzca el valor del n煤mero a evaluar: 鈥);
scanf(鈥%i鈥, &n);
if(n > 0 && n <= 9)
printf(鈥渘 es mayor a cero y menor a diez \n鈥);
else if (n >= 10 && n <= 20)
printf (鈥渘 est谩 entre 10 y 20\n鈥);
else if (n == 0)
printf (鈥渘 es igual a cero\n鈥);
else if (n > 20)
printf (鈥渘 es mayor a 20\n鈥);
else
printf(鈥渘 es un n煤mero negativo\n鈥);
foption();
}
else
printf(鈥淐errando el ciclo.\n鈥);
return 0;
}

int main() {
foption();
return 0;
}

Es bueno para la legibilidad y por buenas pr谩cticas usar la tabulaci贸n, en los printf que van despu茅s de los if, else if y else.