Cómo convertir el ciclo while en declaraciones if

While Loop: repite ciertas instrucciones hasta que no se cumpla una determinada condición . Cada vez que comienza en la primera de las instrucciones, comienza una nueva iteración. La condición puede ser un bucle simple 10 veces o hasta que var1 = True.

i = 0
Mientras yo <10
imprimir hola // imprime hola 10 veces
i ++

Declaración If: si se cumple una condición, ejecute ciertas instrucciones una vez .

i = 0
Si yo <10
print hello // imprime hello 1 vez

Para convertir un bucle While en un conjunto de declaraciones if de una manera ingenua es escribir declaraciones if. Esto solo funcionará si sabemos de antemano cuántas iteraciones se requieren en el momento de la compilación.

si yo <10
imprimir hola
i ++
si yo <10
imprimir hola
i ++
.
.
si yo <10
print hello // 10 declaraciones if y cada if imprime hola una vez

Si no se conoce el número de iteraciones en el momento de la compilación, entonces, como Manish K Singh mostró, utilice la recursividad. El único problema que debe considerar es que el ciclo recursivo debe finalizar en algunos puntos. Es decir, no debería ser un ciclo interminable.

Otra opción disponible si está trabajando con lenguaje ensamblador o programación en C es usar declaraciones GOTO. Sin embargo, este uso está altamente desaconsejado. Para nuestro ejemplo, el trabajo simple es similar al de while.

si yo <10
imprimir hola
i ++
Ir a la declaración 1

Usar Recursion es la mejor manera de convertir el ciclo while en la declaración if …

Ejemplo

Demostración de clase

{

static void printFun (int n)

{

si (n <= 10)

{

System.out.println (n);

printFun (n + 1);

}

}

public static void main (String [] args)

{

printFun (1);

}}

No puede convertir un ciclo while genérico (o cualquier ciclo) a si las declaraciones como un ciclo son una construcción de programación que ejecuta un conjunto de declaraciones por un número específico de veces, mientras que si es una declaración condicional que solo se ejecuta una vez.

Los bucles tienen una propiedad llamada iterative. For, while, do while solo tiene esta propiedad a la que puede convertir un while para usar if pero no puede convertir un while directamente en if.

Puede hacer esto usando la instrucción goto.

consulte el siguiente fragmento de código en c: –

int i = 0;

101:

i ++;

si (i <10) {

goto 101;

}

Use la recursión y ponga la condición if para terminar el caso

así que con la solución anterior puede convertir el ciclo while a la declaración if

More Interesting

¿Cuáles son algunos de los algoritmos / estructuras de datos que son útiles en la vida real?

¿Por qué conocer estructuras de datos y algoritmos básicos no es suficiente para descifrar la mayoría de las entrevistas técnicas?

Cómo resolver el problema INUMBER usando gráficos

1,000 participantes toman un examen que consta de 100 preguntas y 5 opciones por pregunta. ¿Cuál es el mejor enfoque (algoritmo) para encontrar todos los pares posibles de participantes con al menos un 80% de coincidencia en las opciones que eligieron?

¿Cuál es el mejor algoritmo para un conjunto de datos con muchas características correlacionadas, débiles y ruidosas?

¿Qué estructuras de datos y algoritmos básicos se deben aprender antes de comenzar la programación competitiva?

¿Qué significan términos como inicialización, evaluación, selección, cruce, mutación en el contexto de algoritmos genéticos?

Teoría de grafos: ¿en qué se diferencian los árboles de expansión construidos a partir de Prim de los árboles de expansión construidos a partir de Kruskal?

¿Por qué hay una necesidad de matrices dinámicas si tenemos matrices de longitud variable?

¿Qué es un contador Loglog?

¿Qué temas básicos hay que saber en C ++ antes de aprender estructuras de datos y algoritmos?

¿Cómo funciona el algoritmo de creación de coincidencias dota 2?

¿Cuáles son algunas buenas implementaciones de un algoritmo evolutivo / genético en C / C ++?

Cómo identificar la recursividad en un problema de programación

Cómo programar un algoritmo de análisis de datos