SlideShare una empresa de Scribd logo
Instrucción while
¿Para qué sirve la instrucción repetitiva
mientras (while) en C?
 En lenguaje C, para escribir una instrucción while (repetitiva mientras) se utiliza la sintaxis:
 while ( <expresión_lógica> )
 {
 <bloque_de_instrucciones>
 }
 Cuando el <bloque_de_instrucciones> sólo contiene una instrucción, los caracteres abrir llave ({) y
cerrar llave (}) son opcionales.
 Por otra parte, al igual que en las instrucciones alternativas doble y simple, a la <expresión_lógica>
de una instrucción repetitiva while, también se le llama condición.
 Para que se ejecute el <bloque_de_instrucciones>, la condición tiene que ser verdadera. Por el
contrario, si la condición es falsa, el <bloque_de_instrucciones> no se ejecuta
cuando el flujo de un programa llega a un bucle
while, existen dos posibilidades:
 1-Si la condición se evalúa a falsa, el bloque de instrucciones no se ejecuta, y el
bucle while finaliza sin realizar ninguna iteración.
 1-Si la condición se evalúa a verdadera, el bloque de instrucciones sí que se ejecuta
y, después, se vuelve a evaluar la condición, para decidir, de nuevo, si el bloque de
instrucciones se vuelve a ejecutar o no. Y así sucesivamente, hasta que, la condición
sea falsa.
Bucle While
El <bloque_de_instrucciones> de un bucle while puede ejecutarse cero o más veces
(iteraciones). Si el <bloque_de_instrucciones> se ejecuta al menos una vez, seguirá
ejecutándose repetidamente, mientras que, la condición sea verdadera. Pero, hay que tener
cuidado de que el bucle no sea infinito.
Cuando la condición de un bucle while se evalúa siempre a verdadera, se dice que se ha
producido un bucle infinito, ya que, el programa nunca termina. Un bucle infinito es un
error lógico.
Es importante hacer hincapié en el hecho de que, en un bucle while, primero se evalúa la
condición y, en el caso de que ésta sea verdadera, entonces se ejecuta el bloque de
instrucciones. Veremos que, en el bucle do while, el procedimiento es al revés. En él,
primero se ejecuta el bloque de instrucciones y, después, se evalúa la condición.
Ejemplo 1
Se quiere escribir un programa que muestre por pantalla los primeros diez números naturales:1
2 3 4 5 6 7 8 9 10 En lenguaje C, para resolver el problema de este ejemplo se puede escribir:
#include <stdio.h>
int main()
{int contador; printf( "n " );
contador = 1; /* Inicialización del contador */
while ( contador <= 10 ) /* Condición */
{printf( "%d ", contador ); /* Salida */
contador++; /* Incremento del contador */ }
return 0;
Ejemplo 2:
1º) Pida por teclado la nota (dato real) de una asignatura.
2º) En el caso de que la nota sea incorrecta, muestre por pantalla el mensaje:
"ERROR: Nota incorrecta, debe ser >= 0 y <= 10".
3º) Repita los pasos 1º y 2º, mientras que, la nota introducida sea incorrecta.
4º) Muestre por pantalla:
"APROBADO", en el caso de que la nota sea mayor o igual que 5.
"SUSPENDIDO", en el caso de que la nota sea menor que 5.
Ejemplo 2:
Introduzca nota (real): 12.4
ERROR: Nota incorrecta, debe ser >= 0 y <= 10
Introduzca nota (real): -3.3
ERROR: Nota incorrecta, debe ser >= 0 y <= 10
Introduzca nota (real): 8.7
APROBADO
Ejemplo 2:
#include <stdio.h>
int main(){ float nota;printf( "n Introduzca nota (real): " );scanf( "%f", &nota );+/* Si la primera
nota introducida por el usuario es correcta,el bucle no itera ninguna vez. */while ( nota < 0 || nota
> 10 ) {printf( "n ERROR: Nota incorrecta, debe ser >= 0 y <= 10n" );printf( "n Introduzca
nota (real): " );scanf( "%f", &not
/* Mientras que el usuario introduzca una
nota incorrecta, el bucle iterará.
Y cuando introduzca una nota correcta,
el bucle finalizará. */
if ( nota >= 5 )
printf( "n APROBADO" );
else
printf( "n SUSPENDIDO" );
return 0;
while
 Private Sub ShowText(ByVal textFilePath As String)
 If System.IO.File.Exists(textFilePath) = False Then
 Debug.WriteLine("File Not Found: " & textFilePath)
 Else
 Dim sr As System.IO.StreamReader = System.IO.File.OpenText(textFilePath)
 While sr.Peek() >= 0
 Debug.WriteLine(sr.ReadLine())
End Sub
Ejemplo #3
 Dim index As Integer = 0
 While index <= 10
 Debug.Write(index.ToString & " ")
 index += 1
 End While
 Debug.WriteLine("")
 ' Output: 0 1 2 3 4 5 6 7 8 9 10

Más contenido relacionado

PDF
Estructuras de Control Repetitivo
PPTX
While y do while
PDF
2.4 Bucles Repetitivos
PDF
Taller de ciclos en PSeInt
PPTX
estructuras de repeticion
DOCX
Estructuras de repetición en programacion
PDF
ESTRUCTURAS DE CONTROL: BUCLES EN C++
Estructuras de Control Repetitivo
While y do while
2.4 Bucles Repetitivos
Taller de ciclos en PSeInt
estructuras de repeticion
Estructuras de repetición en programacion
ESTRUCTURAS DE CONTROL: BUCLES EN C++

La actualidad más candente (19)

DOC
Capítulo 3 Qbasic sentencias de control repetitivas
PPT
While y do while c++
PPTX
Estructuras repetitivas (bloques de instrucciones)
PDF
Estructuras de Control en Lenguaje C
PDF
ESTRUCTURAS REPETITIVAS
PPTX
Estructura repetitiva for
DOCX
Bucles de Control Repetitivo Ciclos For
PDF
Estructuras de Control C++
PPT
Estructuras de repeticion
DOC
Estructuras De RepeticióN
PPTX
Estructura repetitiva do while
PPTX
Do while, for y foreach
DOCX
Estructuras repetitivas
PPT
Introducción A Las Estructuras De Seleccion En C
PPTX
Estructuras Repetitivas con PSeInt (Parte 2)
PPT
CICLO FOR
PPTX
Estructuras de control c++
DOCX
Deber piramide y cubo
PPTX
Estructuras de Control - Ivan Walkes Mc.
Capítulo 3 Qbasic sentencias de control repetitivas
While y do while c++
Estructuras repetitivas (bloques de instrucciones)
Estructuras de Control en Lenguaje C
ESTRUCTURAS REPETITIVAS
Estructura repetitiva for
Bucles de Control Repetitivo Ciclos For
Estructuras de Control C++
Estructuras de repeticion
Estructuras De RepeticióN
Estructura repetitiva do while
Do while, for y foreach
Estructuras repetitivas
Introducción A Las Estructuras De Seleccion En C
Estructuras Repetitivas con PSeInt (Parte 2)
CICLO FOR
Estructuras de control c++
Deber piramide y cubo
Estructuras de Control - Ivan Walkes Mc.
Publicidad

Similar a Instruccion while bm (20)

PDF
5.3 instruccion while
DOCX
Trabajo bucles bn
PPTX
Programa c++
PPTX
1clase e12 estructurasderepeticionc
PPSX
Estructura repetitiva
PPTX
Estructura de Control While
PPTX
Presentacion semana numero_14
PPTX
Alexander power point
DOCX
TEMA Nº 7: SENTENCIAS DE CONTROL DE FLUJO EN JAVA II
PPT
Tema 2 - Programación básica en C (III)
PPT
instruccion de control
PPTX
programacion en C# con Do while y while
PPTX
Sentencia Do...While
DOC
Sentencias condicionales y ciclos
PDF
5 c iterative
PPTX
Introduccion a programacion en lenguaje C 2023.pptx
PDF
Clase No.05 PARTE II SENTENCIAS REPETITIVAS JAVA.pdf
5.3 instruccion while
Trabajo bucles bn
Programa c++
1clase e12 estructurasderepeticionc
Estructura repetitiva
Estructura de Control While
Presentacion semana numero_14
Alexander power point
TEMA Nº 7: SENTENCIAS DE CONTROL DE FLUJO EN JAVA II
Tema 2 - Programación básica en C (III)
instruccion de control
programacion en C# con Do while y while
Sentencia Do...While
Sentencias condicionales y ciclos
5 c iterative
Introduccion a programacion en lenguaje C 2023.pptx
Clase No.05 PARTE II SENTENCIAS REPETITIVAS JAVA.pdf
Publicidad

Último (13)

PDF
27.-PRESENTACION-SALUD-NUTRICIONAL-EN-LOS-TRABAJADORES.pdf
PDF
awwwwwwwwwwwwwwwwwwwwwwwwaeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
PPTX
Signo y síntomas de Asma y como diagnósticar
PPTX
ap_presentacion_taller_0620vvvvvvvvvvvvv21.pptx
PPTX
Orientaciones para JornadaHSJK<ZHXKYGKFJTDHTRS
PDF
prox impresion 2.pdf.pdfhjjjjkkkkkkmmmmmmmmmmmmm
PPTX
TAREA PRÁCTICA DE LA UNIVERSIDAD BOLIBARIANA DEL ECUADOR
PPTX
Emergencias-y-Urgencias-Medicas.pptx....
PPTX
DEFENSA DE TESIS RIDER DUARTE año 2025..
PDF
Funciones de material didáctico para formación
PPTX
segunda revolución industrial secundaria pptx
PPTX
Clase Gramineas.pptx......................
PPTX
Presentation 4 hipermesis Gravidica ptrt
27.-PRESENTACION-SALUD-NUTRICIONAL-EN-LOS-TRABAJADORES.pdf
awwwwwwwwwwwwwwwwwwwwwwwwaeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
Signo y síntomas de Asma y como diagnósticar
ap_presentacion_taller_0620vvvvvvvvvvvvv21.pptx
Orientaciones para JornadaHSJK<ZHXKYGKFJTDHTRS
prox impresion 2.pdf.pdfhjjjjkkkkkkmmmmmmmmmmmmm
TAREA PRÁCTICA DE LA UNIVERSIDAD BOLIBARIANA DEL ECUADOR
Emergencias-y-Urgencias-Medicas.pptx....
DEFENSA DE TESIS RIDER DUARTE año 2025..
Funciones de material didáctico para formación
segunda revolución industrial secundaria pptx
Clase Gramineas.pptx......................
Presentation 4 hipermesis Gravidica ptrt

Instruccion while bm

  • 2. ¿Para qué sirve la instrucción repetitiva mientras (while) en C?  En lenguaje C, para escribir una instrucción while (repetitiva mientras) se utiliza la sintaxis:  while ( <expresión_lógica> )  {  <bloque_de_instrucciones>  }  Cuando el <bloque_de_instrucciones> sólo contiene una instrucción, los caracteres abrir llave ({) y cerrar llave (}) son opcionales.  Por otra parte, al igual que en las instrucciones alternativas doble y simple, a la <expresión_lógica> de una instrucción repetitiva while, también se le llama condición.  Para que se ejecute el <bloque_de_instrucciones>, la condición tiene que ser verdadera. Por el contrario, si la condición es falsa, el <bloque_de_instrucciones> no se ejecuta
  • 3. cuando el flujo de un programa llega a un bucle while, existen dos posibilidades:  1-Si la condición se evalúa a falsa, el bloque de instrucciones no se ejecuta, y el bucle while finaliza sin realizar ninguna iteración.  1-Si la condición se evalúa a verdadera, el bloque de instrucciones sí que se ejecuta y, después, se vuelve a evaluar la condición, para decidir, de nuevo, si el bloque de instrucciones se vuelve a ejecutar o no. Y así sucesivamente, hasta que, la condición sea falsa.
  • 4. Bucle While El <bloque_de_instrucciones> de un bucle while puede ejecutarse cero o más veces (iteraciones). Si el <bloque_de_instrucciones> se ejecuta al menos una vez, seguirá ejecutándose repetidamente, mientras que, la condición sea verdadera. Pero, hay que tener cuidado de que el bucle no sea infinito. Cuando la condición de un bucle while se evalúa siempre a verdadera, se dice que se ha producido un bucle infinito, ya que, el programa nunca termina. Un bucle infinito es un error lógico. Es importante hacer hincapié en el hecho de que, en un bucle while, primero se evalúa la condición y, en el caso de que ésta sea verdadera, entonces se ejecuta el bloque de instrucciones. Veremos que, en el bucle do while, el procedimiento es al revés. En él, primero se ejecuta el bloque de instrucciones y, después, se evalúa la condición.
  • 5. Ejemplo 1 Se quiere escribir un programa que muestre por pantalla los primeros diez números naturales:1 2 3 4 5 6 7 8 9 10 En lenguaje C, para resolver el problema de este ejemplo se puede escribir: #include <stdio.h> int main() {int contador; printf( "n " ); contador = 1; /* Inicialización del contador */ while ( contador <= 10 ) /* Condición */ {printf( "%d ", contador ); /* Salida */ contador++; /* Incremento del contador */ } return 0;
  • 6. Ejemplo 2: 1º) Pida por teclado la nota (dato real) de una asignatura. 2º) En el caso de que la nota sea incorrecta, muestre por pantalla el mensaje: "ERROR: Nota incorrecta, debe ser >= 0 y <= 10". 3º) Repita los pasos 1º y 2º, mientras que, la nota introducida sea incorrecta. 4º) Muestre por pantalla: "APROBADO", en el caso de que la nota sea mayor o igual que 5. "SUSPENDIDO", en el caso de que la nota sea menor que 5.
  • 7. Ejemplo 2: Introduzca nota (real): 12.4 ERROR: Nota incorrecta, debe ser >= 0 y <= 10 Introduzca nota (real): -3.3 ERROR: Nota incorrecta, debe ser >= 0 y <= 10 Introduzca nota (real): 8.7 APROBADO
  • 8. Ejemplo 2: #include <stdio.h> int main(){ float nota;printf( "n Introduzca nota (real): " );scanf( "%f", &nota );+/* Si la primera nota introducida por el usuario es correcta,el bucle no itera ninguna vez. */while ( nota < 0 || nota > 10 ) {printf( "n ERROR: Nota incorrecta, debe ser >= 0 y <= 10n" );printf( "n Introduzca nota (real): " );scanf( "%f", &not /* Mientras que el usuario introduzca una nota incorrecta, el bucle iterará. Y cuando introduzca una nota correcta, el bucle finalizará. */ if ( nota >= 5 ) printf( "n APROBADO" ); else printf( "n SUSPENDIDO" ); return 0;
  • 9. while  Private Sub ShowText(ByVal textFilePath As String)  If System.IO.File.Exists(textFilePath) = False Then  Debug.WriteLine("File Not Found: " & textFilePath)  Else  Dim sr As System.IO.StreamReader = System.IO.File.OpenText(textFilePath)  While sr.Peek() >= 0  Debug.WriteLine(sr.ReadLine()) End Sub
  • 10. Ejemplo #3  Dim index As Integer = 0  While index <= 10  Debug.Write(index.ToString & " ")  index += 1  End While  Debug.WriteLine("")  ' Output: 0 1 2 3 4 5 6 7 8 9 10