Saltar al contenido

IF, IF Otro y otros IF nidos con ejemplo

¿Qué es una declaración condicional en C?

Declaraciones condicionales en C. Los programas se utilizan para tomar decisiones basadas en las condiciones. Las declaraciones condicionales se ejecutan secuencialmente cuando no existe ninguna condición en torno a las declaraciones. Si establece alguna condición para un bloque de instrucciones, el flujo de ejecución puede cambiar según el resultado que evalúa la condición. La toma de decisiones se da en ‘C’. en este proceso.

Las declaraciones condicionales se pueden calcular en el registro ‘C’ con la ayuda de las dos construcciones siguientes:

1. Si una declaración

2. Si otra declaración

También se le llama rama porque un programa decide qué declaración hacer basándose en el resultado de la condición que se está evaluando.

En este tutorial, aprenderá:

Si una declaración

Es una de las poderosas declaraciones condicionales. Si la sentencia es responsable de modificar el flujo de ejecución de un programa. Si una declaración se usa siempre con una condición. La condición se evalúa primero antes de que se haga cualquier declaración dentro del cuerpo de If. La sintaxis de si la declaración es:

 if (condition) 
     instruction; 

Considere la condición verdadera o falsa. Verdadero es siempre un valor distinto de cero y un valor que contiene cero es un valor falso. Las instrucciones pueden ser una sola instrucción o un bloque de código entre llaves {}.

El siguiente programa ilustra el uso de la programación ‘C’:


#include<stdio.h>
int main()
{
	int num1=1;
	int num2=2;
	if(num1<num2)		//test-condition
	{
		printf("num1 is smaller than num2");
	}
	return 0;
}

Producción:

num1 is smaller than num2

La tabla anterior ilustra el uso de la igualdad de dos dígitos si se va a construir.

  1. En la tabla anterior, hemos comenzado dos variables con num1, num2 con un valor como 1, 2 respectivamente.
  2. Luego usamos if con una oración de prueba para verificar qué número es más pequeño y qué número es más grande. Estamos usando una expresión relacionada si se está construyendo. Dado que el valor de num1 es menor que num2, la condición se considerará verdadera.
  3. Entonces imprimirá la declaración dentro del bloque If. A partir de entonces, el control saldrá del bloque y el programa se terminará con un resultado exitoso.

Operadores de relaciones

C tiene seis operadores relativos que se pueden usar para formar una expresión booleana para determinar y probar condiciones, que devuelven verdadero o falso:

<= menor o igual que

> más de

> = mayor o igual que

== igual a

! no es igual

Tenga en cuenta que la prueba equivalente (==) difiere del operador de asignación (=) porque es uno de los problemas más comunes que enfrenta un programador al mezclarlo.

Por ejemplo:


int x = 41;
x =x+ 1;
if (x == 42) {
   printf("You succeed!");}

Producción:

 You succeed 

Tenga en cuenta que una condición que tenga un valor distinto de cero se considera verdadera.

Por ejemplo:


int present = 1;
if (present)
  printf("There is someone present in the classroom n");

Producción:

There is someone present in the classroom 

La declaración If-Else

Versión extendida de If. La forma general es la siguiente:

if (test-expression)
{
    True block of statements
}
Else
{
    False block of statements
}
Statements;

En este tipo de construcción, si el valor demostrado por la prueba es verdadero, se ejecutará el bloque de enunciado verdadero. Si el valor de la sentencia de prueba es falso, se ejecutará el bloque de declaración falsa. En cualquier caso, después de la ejecución, el control cambiará automáticamente a las declaraciones que aparecen fuera del bloque If.

Los siguientes programas ilustran el uso de la construcción if-else:

Primero agregaremos una variable a un cierto valor y escribiremos un programa para ver si el valor es menor que diez o mayor que diez.

Empecemos.


#include<stdio.h>
int main()
{
	int num=19;
	if(num<10)
	{
		printf("The value is less than 10");
	}
	else
	{
		printf("The value is greater than 10");
	}
	return 0;
}

Producción:

The value is greater than 10
  1. Tenemos una variable inicial con un valor de 19. Necesitamos averiguar si el número es mayor o menor que 10 usando el programa ‘C’. Para hacer esto, usamos la propuesta if-else.
  2. Hemos proporcionado una condición num <10 aquí porque necesitamos comparar nuestro valor con 10.
  3. Como puede ver, el primer bloque es siempre un bloque real, lo que significa que si el valor de rendimiento de la prueba es verdadero, entonces el primer bloque será Si
  4. El segundo bloque es otro bloque. Este bloque contiene las declaraciones que se ejecutarán si el valor de la expresión de prueba es falso. En nuestro programa, el valor num es mayor que diez, por lo que la condición de prueba se vuelve falsa y se ejecuta otro bloque. Entonces, nuestra salida será de otro bloque que es “El valor es mayor que 10”. Después de lo siguiente, el programa terminará con un resultado exitoso.

En los programas ‘C’ podemos usar múltiples construcciones if-else entre sí llamadas sentencias if-embedded if-else.

Expresión condicional

Hay otra forma de expresar una declaración si de otra manera ?: operador. En una expresión condicional el ?: el operador tiene solo una declaración relacionada con la otra y con ella.

Por ejemplo:


#include <stdio.h>
int main() {
  int y;
  int x = 2;
   y = (x >= 6) ?  6 : x;/* This is equivalent to:  if (x >= 5)    y = 5;  else    y = x; */
   printf("y =%d ",y);
  return 0;}

Producción:

y =2

Declaraciones anidadas si son otras

Cuando se requiere un conjunto de decisiones, se usa el anidamiento si se usa otro. Anidar significa usar un edificio dentro de otro.

Escribiremos un programa para demostrar el uso anidado en caso contrario.


#include<stdio.h>
int main()
{
	int num=1;
	if(num<10)
	{
		if(num==1)
		{
			printf("The value is:%dn",num);
		}
		else
		{
			printf("The value is greater than 1");
		}
	}
	else
	{
		printf("The value is greater than 10");
	}
	return 0;
}

Producción:

The value is:1

El programa anterior verifica si un número es menor o mayor que 10 e imprime el resultado usando una construcción anidada if.

  1. Primero, determinamos una variable num con un valor como 1. Luego usamos otra construcción.
  2. En el caso externo, si, la condición verifica si el número es menor que 10. Si la condición es verdadera, solo entonces ejecutará el ciclo interno. En este caso, la condición es real y, por lo tanto, se procesa el bloque interno.
  3. En el bloque interno, nuevamente tenemos una condición que verifica si nuestra variable tiene un valor de 1 o no. Cuando una condición es verdadera, procesará el bloque. De lo contrario, procesará otro bloque. En este caso, la condición es verdadera si se ejecuta un bloque y el valor se imprime en la pantalla de salida.
  4. El programa anterior imprimirá con éxito el valor de variables y eventos.

Intente cambiar el valor de una variable para ver cómo se comporta el programa.

NOTA: Cuando anidamos if, debemos tener cuidado con la sangría porque múltiples construcciones, si más, están involucradas en este proceso, por lo que se vuelve difícil descifrar construcciones individuales. La sangría adecuada hace que el programa sea fácil de leer.

Otras declaraciones anidadas si

Se utilizan otros nidos, si se utilizan decisiones de multiplicación.

La sintaxis general de cómo se construyen otras escaleras en tableros ‘C’ es la siguiente:

 if (test - expression 1) {
    statement1;
} else if (test - expression 2) {
    Statement2;
} else if (test - expression 3) {
    Statement3;
} else if (test - expression n) {
    Statement n;
} else {
    default;
}
Statement x;

La otra escalera se da si. Esta cadena generalmente tiene una escalera y, por lo tanto, se llama otra escalera. Las frases de prueba se evalúan de arriba a abajo. Siempre que se encuentra una prueba real, si se encuentra, se ejecuta una declaración relacionada. Cuando todas las expresiones de prueba son falsas, se ejecuta la siguiente instrucción predeterminada.

Veamos el trabajo real con la ayuda de un programa.


#include<stdio.h>
int main()
{
	int marks=83;
	if(marks>75){
		printf("First class");
	}
	else if(marks>65){
		printf("Second class");
	}
	else if(marks>55){
		printf("Third class");
	}
	else{
		printf("Fourth class");
	}
	return 0;
}

Producción:

First class

El programa anterior imprime la calificación de acuerdo con las calificaciones obtenidas en una prueba. Usamos la otra escalera si está en la tabla de arriba.

  1. Hemos comenzado una variable con marcas. En la otra estructura de escalera, si, hemos proporcionado diferentes condiciones.
  2. El valor de las marcas variables se comparará con la primera condición, ya que es cierto que la declaración relacionada se imprimirá en la pantalla de salida.
  3. Si la primera condición de prueba es falsa, se compara con la segunda condición.
  4. Este proceso continuará hasta que se haya evaluado toda la expresión o el control no se salga de la otra escalera; si se imprime, se imprimirá la declaración predeterminada.

Intente modificar el valor y observe el cambio en la salida.

Resumen

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *