La variable indicadora se utiliza como una señal en la programación para que el programa sepa que se ha cumplido una determinada condición. Por lo general, actúa como una variable booleana que indica que una condición es verdadera o falsa.
Ejemplo 1: Comprobar si una array tiene algún número par.
Entrada: arr[] = {1, 3, 7, 5}
Salida: No
Todos los números son impares.Entrada: arr[] = {1, 2, 7, 5}
Salida: Sí
Hay un número par en la array.
Inicializamos una variable de bandera como falsa, luego recorremos la array. Tan pronto como encontramos un elemento par, establecemos la bandera como verdadera y rompemos el ciclo. Finalmente volvemos bandera.
// C++ program to check if given array is has // any even number #include <iostream> using namespace std; bool checkIfAnyEven(int arr[], int n) { bool flag = false; for (int i=0; i<n; i++) { if (arr[i] % 2 == 0) { flag = true; break; } } return flag; } int main() { int arr[] = {1, 3, 2, 5, 6, 7}; int n = sizeof(arr)/sizeof(arr[0]); if (checkIfAnyEven(arr, n)) cout << "Yes"; else cout << "No"; }
Yes
Ejemplo 2: Comprobar si el número dado es primo o no.
Entrada: n = 5
Salida: SíEntrada: n = 18
Salida: No
Inicializamos una variable de bandera como verdadera. Luego recorremos todos los números del 2 al n-1. Tan pronto como encontremos un número que divide a n, establecemos la bandera como falsa. Finalmente volvemos bandera.
// C++ implementation to show the use of flag variable #include <iostream> using namespace std; // Function to return true if n is prime bool isPrime(int n) { bool flag = true; // Corner case if (n <= 1) return false; // Check from 2 to n-1 for (int i = 2; i < n; i++) { // Set flag to false and break out of the loop // if the condition is not satisfied if (n % i == 0) { flag = false; break; } } // flag variable here can tell whether the previous loop // broke without completion or it completed the execution // satisfying all the conditions return flag; } // Driver code int main() { if(isPrime(13)) cout << "PRIME"; else cout << "NOT A PRIME"; return 0; }
PRIME
Publicación traducida automáticamente
Artículo escrito por Devyansh_Ojha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA