Ejecute declaraciones if y else en C/C++ simultáneamente

Escriba un programa C/C++ que ejecute ambas instrucciones de bloque if-else simultáneamente. 

Syntax of if-else statement in C/C++ language is:
if (Boolean expression)
{
    // Statement will execute only 
    // if Boolean expression is true
}
else
{
    // Statement will execute only if 
    // the Boolean expression is false 
}

Por lo tanto, podemos concluir que solo uno de los bloques de la declaración if-else se ejecutará de acuerdo con la condición de la expresión booleana. 

Pero podemos cambiar nuestro código para que tanto las declaraciones dentro del bloque if como el bloque else se ejecuten, para la misma condición.

El truco consiste en usar la declaración goto que proporciona un salto incondicional de ‘goto’ a una declaración etiquetada en la misma función.

A continuación se muestra el programa C/C++ para ejecutar ambas declaraciones simultáneamente: 

C++

#include <bits/stdc++.h>
using namespace std;
int main()
{
if (1) // Replace 1 with 0 and see the magic
{
    label_1: cout <<"Hello ";
     
    // Jump to the else statement after
    // executing the above statement
    goto label_2;
}
else
{
    // Jump to 'if block statement' if
    // the Boolean condition becomes false
    goto label_1;
 
    label_2: cout <<"Geeks";
}
return 0;
}
 
// this code is contributed by shivanisinghss2110

C

#include <stdio.h>
int main()
{
  if (1) //Replace 1 with 0 and see the magic
  {
    label_1: printf("Hello ");
     
    // Jump to the else statement after
    // executing the above statement
    goto label_2;
  }
  else
  {
    // Jump to 'if block statement' if
    // the Boolean condition becomes false
    goto label_1;
 
    label_2: printf("Geeks");
  }
  return 0;
}

Producción: 
 

Hello Geeks

Por lo tanto, ambas declaraciones de if y else se ejecutan simultáneamente. Otro hecho interesante es que la salida siempre será la misma y no dependerá de si la condición booleana es verdadera o falsa.

NOTA : se desaconseja encarecidamente el uso de la declaración goto en cualquier lenguaje de programación porque dificulta el seguimiento del flujo de control de un programa, lo que hace que el programa sea difícil de entender y modificar. Como programador, debemos evitar el uso de la sentencia goto en C/C++.

Este blog es una contribución de Shubham Bansal . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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