SlideShare una empresa de Scribd logo
CENTRO TECNOLÓGICO DE AVANZADA
AREA DE MECATRÓNICA
Código: M06 MICROCONTROLADORES I
Laboratorio: D-19
Duración: 2 Hs INSTRUCCIONES DE CONTROL
5.5. Instrucción for
Objetivos
1. Entender el funcionamiento de la estructura for.
Esta construcción iterativa no presenta un formato fijo estricto, sino que admite
numerosas variantes, lo que la dota de gran potencia y flexibilidad.
Su forma más general para la ejecución repetida de una sola sentencia es:
for(inicializacion; condicion; incremento/decremento)
sentencia;
o para la ejecución repetida de un grupo de sentencias:
for(inicializacion; condicion; incremento/decremento)
{
grupo de sentencias;
}
La primera parte de la construcción for acostumbra a ser una sentencia de asignación
donde se inicializa alguna variable que controla el número de veces que debe ejecutarse el
cuerpo del bucle. Esta sentencia se ejecuta una sola ocasión, antes de entrar por primera
vez al cuerpo del bucle. La segunda parte corresponde a la condición que indica cuándo
finaliza el bucle, de la misma forma que en las construcciones iterativas anteriores. En
este caso, la condición se evalúa antes de ejecutar el cuerpo del bucle, por lo que al igual
que en la construcción while, el cuerpo puede ejecutarse entre 0 y N veces, donde N
depende de la condición.
La tercera parte corresponde normalmente a una sentencia de incremento o decre-
mento sobre la variable de control del bucle. Esta sentencia se ejecuta siempre después
de la ejecución del cuerpo del bucle.
La Figura 5.1 muestra esquemáticamente el funcionamiento del bucle for.
Pedro Ramírez <pedroramirez22@gmail.com> 1
CENTRO TECNOLÓGICO DE AVANZADA
AREA DE MECATRÓNICA
Código: M06 MICROCONTROLADORES I
Laboratorio: D-19
Duración: 2 Hs INSTRUCCIONES DE CONTROL
5.3. Construcci´on for 36
Condición
Sentencia inicial
Incremento / Decremento
Grupo de sentencias
Cierto
Falso
Figura 5.3: Esquema de funcionamiento de for
cont = 0;
do
f
scanf( "%d", &num );
if (num == 3)
cont++;
g while (num != -1);
printf( "El 3 ha aparecido %d vecesnn", cont );
g
Es importante destacar el uso de ‘;’ despu´es de la condici´on, a diferencia de en la construcci´on
while , donde no se utiliza.
Finalmente, cabe decir que tradicionalmente, tanto la construcci´on while como la construcci´on
do-while se utilizan en bucles donde se desconoce a priori el n´umero exacto de iteraciones.
5.3 Construcci´on for
Esta construcci´on iterativa no presenta un formato fijo estricto, sino que admite numerosas variantes, lo
que la dota de gran potencia y flexibilidad.
Su forma m´as general para la ejecuci´on repetida de una sola sentencia es:
for (sentencia inicial ; condici´on ; incremento/decremento)
sentencia;
o para la ejecuci´on repetida de un grupo de sentencias:
Figura 5.1: Esquema de funcionamiento de for
El programa del siguiente utiliza la construcción for para calcular el sumatorio 10
i=1 i3:
#include <stdio.h>
void main()
{
int i, cubo, suma;
suma = 0;
for(i = 0; i <= 10; i++)
{
cubo = i * i * i;
suma += cubo;
}
printf("El sumatorio es %d n", suma);
}
Las tres partes de la construcción for son opcionales, por lo que es posible omitir
alguna o todas ellas. En cualquier caso, los punto y coma (;) separadores son siempre
necesarios. Un ejemplo clásico de este tipo de bucle for es el bucle infinito (nunca concluye
la ejecución):
for(;1;)
{
/* Grupo de sentencias */
}
Pedro Ramírez <pedroramirez22@gmail.com> 2
CENTRO TECNOLÓGICO DE AVANZADA
AREA DE MECATRÓNICA
Código: M06 MICROCONTROLADORES I
Laboratorio: D-19
Duración: 2 Hs INSTRUCCIONES DE CONTROL
Tradicionalmente la construcción for se utiliza en bucles donde el número exacto de
iteraciones es conocido a priori, y puede controlarse mediante una variable que actúa
como contador.
5.5.1. El operador coma (,)
C permite la utilización de más de una sentencia en la primera y tercera partes de la
construcción for, así como de más de una condición en la segunda parte. Por ejemplo,
el siguiente bucle es válido en C:
for(i=0, j=10; i<10, j>0; i++,j+=2)
{
/* Grupo de sentencias */
}
Así pues, las variables i y j se inicializan a 0 y 10, respectivamente, antes de comenzar
la ejecución del bucle. En la segunda parte de la construcción, aparecen dos condiciones,
i < 10 y j > 0. Si alguna de ellas es falsa, la ejecución del bucle se detiene. Finalmente,
tras ejecutarse el cuerpo del bucle, i se incrementa en 1 y j se decrementa en 2, tras lo
cual vuelven a comprobarse las condiciones, y así sucesivamente.
5.5.2. Las sentencias break y continue
C proporciona dos mecanismos para alterar la ejecución de las construcciones itera-
tivas: las sentencias break y continue.
break Esta sentencia tiene una doble finalidad. Por un lado, indica el final de un case
en la construcción switch, como ya se vio en secciones anteriores. Y por otro, para forzar
la terminación inmediata de la ejecución de un bucle. De esta forma, se permite salir de
la construcción repetitiva ignorando la evaluación de la condición. Si bien su uso está
reconocido como no muy elegante, permite en ocasiones escribir programas más legibles
y compactos.
continue Esta sentencia se utiliza únicamente en las construcciones repetitivas. Su
función es la de evitar que se ejecute todo el código a continuación de ella y hasta el final
del cuerpo del bucle, durante una iteración determinada.
Pedro Ramírez <pedroramirez22@gmail.com> 3
CENTRO TECNOLÓGICO DE AVANZADA
AREA DE MECATRÓNICA
Código: M06 MICROCONTROLADORES I
Laboratorio: D-19
Duración: 2 Hs INSTRUCCIONES DE CONTROL
El siguiente ejemplo pretende ilustrar el uso de estas sentencias:
do
{
scanf("%d", &num);
if(num < 0)
{
printf("Valor ilegal n");
break; /* Abandonar el bucle.*/
}
if(num > 100)
{
printf("Valor demasiado grande n");
continue; /* No ejecutar el resto de sentencias e ir al final del bucle. */
}
......
/* Procesar el valor leido */
}while(num != 0);
......
5.5.3. Ejercicios
1. Escribir un programa que convierta un número entero positivo a cualquier base de
numeración dada, igual o inferior a 10.
2. Escribir un programa que calcule el factorial de un número entero leído por teclado.
3. Escribir un programa que calcule la suma de todos los números múltiplos de 5
comprendidos entre dos enteros leídos por teclado.
Ultima Actualización 16 de marzo de 2017
Pedro Ramírez <pedroramirez22@gmail.com> 4

Más contenido relacionado

La actualidad más candente

Sentencias de repetición en Java
Sentencias de repetición en JavaSentencias de repetición en Java
Sentencias de repetición en JavaJdcaste
 
5.quinto ejercicio emu8086
5.quinto ejercicio emu80865.quinto ejercicio emu8086
5.quinto ejercicio emu8086
Sebastian Gonzalez
 
6.sexto ejercicio emu8086
6.sexto ejercicio emu80866.sexto ejercicio emu8086
6.sexto ejercicio emu8086
Sebastian Gonzalez
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
Angel R Pilco Q
 
SALTO CONDICIONAL
SALTO CONDICIONALSALTO CONDICIONAL
SALTO CONDICIONAL
Jorge Paredes Toledo
 
Bucles de Control Repetitivo Ciclos For
Bucles de Control Repetitivo  Ciclos ForBucles de Control Repetitivo  Ciclos For
Bucles de Control Repetitivo Ciclos For
Richard Robalino
 
Fpr0407 control
Fpr0407 controlFpr0407 control
Fpr0407 controllabebelo
 
Iv unidad estructuras de control
Iv unidad estructuras de controlIv unidad estructuras de control
Iv unidad estructuras de controlmariaisabelg
 
Estructuras De RepeticióN
Estructuras De RepeticióNEstructuras De RepeticióN
Estructuras De RepeticióNRegina Flores
 
Sentencias de control
Sentencias de controlSentencias de control
Sentencias de control
Fernando Solis
 
Matlab 2
Matlab 2Matlab 2
Matlab 2jmh700
 
Curso Java Inicial 3 Sentencias De Control De Flujo
Curso Java Inicial   3 Sentencias De Control De FlujoCurso Java Inicial   3 Sentencias De Control De Flujo
Curso Java Inicial 3 Sentencias De Control De Flujo
Emilio Aviles Avila
 
Sentencia de control
Sentencia de controlSentencia de control
Sentencia de controlStalyn Cruz
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
yance1
 
Estructuras de control repetitivos
Estructuras de control repetitivosEstructuras de control repetitivos
Estructuras de control repetitivos
Reina Rodriguez
 
Estructuras de Control C++
Estructuras de Control C++Estructuras de Control C++
Estructuras de Control C++
Jorge Leonardo
 

La actualidad más candente (18)

Sentencias de repetición en Java
Sentencias de repetición en JavaSentencias de repetición en Java
Sentencias de repetición en Java
 
While y do while c++
While y do while c++While y do while c++
While y do while c++
 
5.quinto ejercicio emu8086
5.quinto ejercicio emu80865.quinto ejercicio emu8086
5.quinto ejercicio emu8086
 
6.sexto ejercicio emu8086
6.sexto ejercicio emu80866.sexto ejercicio emu8086
6.sexto ejercicio emu8086
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
SALTO CONDICIONAL
SALTO CONDICIONALSALTO CONDICIONAL
SALTO CONDICIONAL
 
Bucles de Control Repetitivo Ciclos For
Bucles de Control Repetitivo  Ciclos ForBucles de Control Repetitivo  Ciclos For
Bucles de Control Repetitivo Ciclos For
 
Fpr0407 control
Fpr0407 controlFpr0407 control
Fpr0407 control
 
Iv unidad estructuras de control
Iv unidad estructuras de controlIv unidad estructuras de control
Iv unidad estructuras de control
 
Manual
ManualManual
Manual
 
Estructuras De RepeticióN
Estructuras De RepeticióNEstructuras De RepeticióN
Estructuras De RepeticióN
 
Sentencias de control
Sentencias de controlSentencias de control
Sentencias de control
 
Matlab 2
Matlab 2Matlab 2
Matlab 2
 
Curso Java Inicial 3 Sentencias De Control De Flujo
Curso Java Inicial   3 Sentencias De Control De FlujoCurso Java Inicial   3 Sentencias De Control De Flujo
Curso Java Inicial 3 Sentencias De Control De Flujo
 
Sentencia de control
Sentencia de controlSentencia de control
Sentencia de control
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
 
Estructuras de control repetitivos
Estructuras de control repetitivosEstructuras de control repetitivos
Estructuras de control repetitivos
 
Estructuras de Control C++
Estructuras de Control C++Estructuras de Control C++
Estructuras de Control C++
 

Similar a 5.5 instruccion for

5.3 instruccion while
5.3 instruccion while5.3 instruccion while
5.3 instruccion while
SNPP
 
ESTRUCTURAS DE CONTROL.pdf
ESTRUCTURAS DE CONTROL.pdfESTRUCTURAS DE CONTROL.pdf
ESTRUCTURAS DE CONTROL.pdf
JavierAlexanderCarre
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
Danny Martinez
 
Php04 estructuras control
Php04 estructuras controlPhp04 estructuras control
Php04 estructuras controlJulio Pari
 
Sentencias de Programacion
Sentencias de ProgramacionSentencias de Programacion
Sentencias de Programacion
aeroscar90
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
Fernando Omar Arciniega Martinez
 
ESTRUCTURA DO WHILE
ESTRUCTURA  DO WHILEESTRUCTURA  DO WHILE
ESTRUCTURA DO WHILE
Fernando Solis
 
Practicas3 Secuencia While
Practicas3 Secuencia WhilePracticas3 Secuencia While
Practicas3 Secuencia While
Saul Olaf Loaiza Meléndez
 
While do while
While do whileWhile do while
While do while
pedrorodriguez20044
 
Lenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de ControlLenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de ControlKarina Arguedas Ruelas
 
programacion iterativa trabajo
programacion iterativa trabajoprogramacion iterativa trabajo
programacion iterativa trabajo
Renny Centeno
 
Instrucciones de control de salto
Instrucciones de control de saltoInstrucciones de control de salto
Instrucciones de control de salto
Abrirllave
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
Fernando Solis
 
Tema 2 - Programación básica en C (III)
Tema 2  - Programación básica en C (III)Tema 2  - Programación básica en C (III)
Tema 2 - Programación básica en C (III)
Pablo Haya
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Javaquesada_diego
 
Estructuras de Control
Estructuras de Control Estructuras de Control
Estructuras de Control
Jaime Alberto Sousa Adames
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivas
Carlos Pes
 
Plc crist
Plc cristPlc crist
Plc crist
cyesquenm
 
5 c iterative
5 c iterative5 c iterative
5 c iterative
Yulisa Reyes Custodio
 
Tema 5. Sentencias de Control 19-03-23.pdf
Tema 5. Sentencias de Control 19-03-23.pdfTema 5. Sentencias de Control 19-03-23.pdf
Tema 5. Sentencias de Control 19-03-23.pdf
Noe Castillo
 

Similar a 5.5 instruccion for (20)

5.3 instruccion while
5.3 instruccion while5.3 instruccion while
5.3 instruccion while
 
ESTRUCTURAS DE CONTROL.pdf
ESTRUCTURAS DE CONTROL.pdfESTRUCTURAS DE CONTROL.pdf
ESTRUCTURAS DE CONTROL.pdf
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivas
 
Php04 estructuras control
Php04 estructuras controlPhp04 estructuras control
Php04 estructuras control
 
Sentencias de Programacion
Sentencias de ProgramacionSentencias de Programacion
Sentencias de Programacion
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
ESTRUCTURA DO WHILE
ESTRUCTURA  DO WHILEESTRUCTURA  DO WHILE
ESTRUCTURA DO WHILE
 
Practicas3 Secuencia While
Practicas3 Secuencia WhilePracticas3 Secuencia While
Practicas3 Secuencia While
 
While do while
While do whileWhile do while
While do while
 
Lenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de ControlLenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de Control
 
programacion iterativa trabajo
programacion iterativa trabajoprogramacion iterativa trabajo
programacion iterativa trabajo
 
Instrucciones de control de salto
Instrucciones de control de saltoInstrucciones de control de salto
Instrucciones de control de salto
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Tema 2 - Programación básica en C (III)
Tema 2  - Programación básica en C (III)Tema 2  - Programación básica en C (III)
Tema 2 - Programación básica en C (III)
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Java
 
Estructuras de Control
Estructuras de Control Estructuras de Control
Estructuras de Control
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivas
 
Plc crist
Plc cristPlc crist
Plc crist
 
5 c iterative
5 c iterative5 c iterative
5 c iterative
 
Tema 5. Sentencias de Control 19-03-23.pdf
Tema 5. Sentencias de Control 19-03-23.pdfTema 5. Sentencias de Control 19-03-23.pdf
Tema 5. Sentencias de Control 19-03-23.pdf
 

Más de SNPP

RR00X_RESUMEN.pdf
RR00X_RESUMEN.pdfRR00X_RESUMEN.pdf
RR00X_RESUMEN.pdf
SNPP
 
RR_TAYI.pdf
RR_TAYI.pdfRR_TAYI.pdf
RR_TAYI.pdf
SNPP
 
1. panel de le ds
1. panel de le ds1. panel de le ds
1. panel de le ds
SNPP
 
7. incubadora de huevos
7. incubadora de huevos7. incubadora de huevos
7. incubadora de huevos
SNPP
 
6. visualizacion remota de consumo de agua en tiempo real
6. visualizacion remota de consumo de agua en tiempo real6. visualizacion remota de consumo de agua en tiempo real
6. visualizacion remota de consumo de agua en tiempo real
SNPP
 
5. alimentador de animales domesticos smart feeder
5. alimentador de animales domesticos smart feeder5. alimentador de animales domesticos smart feeder
5. alimentador de animales domesticos smart feeder
SNPP
 
3. radar medidor de velocidad
3. radar medidor de velocidad3. radar medidor de velocidad
3. radar medidor de velocidad
SNPP
 
2. soft starter monofasico
2. soft starter monofasico2. soft starter monofasico
2. soft starter monofasico
SNPP
 
Operadores y expresiones
Operadores y expresionesOperadores y expresiones
Operadores y expresiones
SNPP
 
6.2 cadenas de caracteres
6.2 cadenas de caracteres6.2 cadenas de caracteres
6.2 cadenas de caracteres
SNPP
 
6.1 vectores
6.1 vectores6.1 vectores
6.1 vectores
SNPP
 
5.1 instruccion if-else
5.1 instruccion if-else5.1 instruccion if-else
5.1 instruccion if-else
SNPP
 
4. entrada y salida de datos
4. entrada y salida de datos4. entrada y salida de datos
4. entrada y salida de datos
SNPP
 
3.6 funciones de biblioteca
3.6 funciones de biblioteca3.6 funciones de biblioteca
3.6 funciones de biblioteca
SNPP
 
3.5 operador condicional
3.5 operador condicional3.5 operador condicional
3.5 operador condicional
SNPP
 
2.10 entrada y salida
2.10 entrada y salida2.10 entrada y salida
2.10 entrada y salida
SNPP
 
2.9 variables
2.9 variables2.9 variables
2.9 variables
SNPP
 
2.8 constantes
2.8 constantes2.8 constantes
2.8 constantes
SNPP
 
2.7 tipo de dato logico
2.7 tipo de dato logico2.7 tipo de dato logico
2.7 tipo de dato logico
SNPP
 
2.6 tipo de dato caracter
2.6 tipo de dato caracter2.6 tipo de dato caracter
2.6 tipo de dato caracter
SNPP
 

Más de SNPP (20)

RR00X_RESUMEN.pdf
RR00X_RESUMEN.pdfRR00X_RESUMEN.pdf
RR00X_RESUMEN.pdf
 
RR_TAYI.pdf
RR_TAYI.pdfRR_TAYI.pdf
RR_TAYI.pdf
 
1. panel de le ds
1. panel de le ds1. panel de le ds
1. panel de le ds
 
7. incubadora de huevos
7. incubadora de huevos7. incubadora de huevos
7. incubadora de huevos
 
6. visualizacion remota de consumo de agua en tiempo real
6. visualizacion remota de consumo de agua en tiempo real6. visualizacion remota de consumo de agua en tiempo real
6. visualizacion remota de consumo de agua en tiempo real
 
5. alimentador de animales domesticos smart feeder
5. alimentador de animales domesticos smart feeder5. alimentador de animales domesticos smart feeder
5. alimentador de animales domesticos smart feeder
 
3. radar medidor de velocidad
3. radar medidor de velocidad3. radar medidor de velocidad
3. radar medidor de velocidad
 
2. soft starter monofasico
2. soft starter monofasico2. soft starter monofasico
2. soft starter monofasico
 
Operadores y expresiones
Operadores y expresionesOperadores y expresiones
Operadores y expresiones
 
6.2 cadenas de caracteres
6.2 cadenas de caracteres6.2 cadenas de caracteres
6.2 cadenas de caracteres
 
6.1 vectores
6.1 vectores6.1 vectores
6.1 vectores
 
5.1 instruccion if-else
5.1 instruccion if-else5.1 instruccion if-else
5.1 instruccion if-else
 
4. entrada y salida de datos
4. entrada y salida de datos4. entrada y salida de datos
4. entrada y salida de datos
 
3.6 funciones de biblioteca
3.6 funciones de biblioteca3.6 funciones de biblioteca
3.6 funciones de biblioteca
 
3.5 operador condicional
3.5 operador condicional3.5 operador condicional
3.5 operador condicional
 
2.10 entrada y salida
2.10 entrada y salida2.10 entrada y salida
2.10 entrada y salida
 
2.9 variables
2.9 variables2.9 variables
2.9 variables
 
2.8 constantes
2.8 constantes2.8 constantes
2.8 constantes
 
2.7 tipo de dato logico
2.7 tipo de dato logico2.7 tipo de dato logico
2.7 tipo de dato logico
 
2.6 tipo de dato caracter
2.6 tipo de dato caracter2.6 tipo de dato caracter
2.6 tipo de dato caracter
 

Último

FISICA_Hidrostatica_uyhHidrodinamica.pdf
FISICA_Hidrostatica_uyhHidrodinamica.pdfFISICA_Hidrostatica_uyhHidrodinamica.pdf
FISICA_Hidrostatica_uyhHidrodinamica.pdf
JavierAlejosM
 
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
FRANCISCOJUSTOSIERRA
 
Medicina Peruana en el siglo XX y XXI- Julio Gabriel Pereda Sanchez.pptx
Medicina Peruana en el siglo XX y XXI- Julio Gabriel  Pereda Sanchez.pptxMedicina Peruana en el siglo XX y XXI- Julio Gabriel  Pereda Sanchez.pptx
Medicina Peruana en el siglo XX y XXI- Julio Gabriel Pereda Sanchez.pptx
gabrielperedasanchez
 
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
JhonatanOQuionesChoq
 
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALESLA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LuisLobatoingaruca
 
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de IloPlan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
AlbertoRiveraPrado
 
Diagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdfDiagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdf
joseabachesoto
 
libro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdflibro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdf
MiriamAquino27
 
Vehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebralVehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebral
everchanging2020
 
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
CarlitosWay20
 
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
DavidHunucoAlbornoz
 
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
JuanChaparro49
 
Bash Script Programacion en la consola.pptx
Bash Script Programacion en la consola.pptxBash Script Programacion en la consola.pptx
Bash Script Programacion en la consola.pptx
SantosCatalinoOrozco
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
LuisLobatoingaruca
 
Becas de UOC _ Caja Ingenieros 2024-25.pdf
Becas de UOC _ Caja Ingenieros 2024-25.pdfBecas de UOC _ Caja Ingenieros 2024-25.pdf
Becas de UOC _ Caja Ingenieros 2024-25.pdf
UOC Estudios de Informática, Multimedia y Telecomunicación
 
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaaEspecificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
ssuserebb7f71
 
Las Fuentes de Alimentacion Conmutadas (Switching).pdf
Las Fuentes de Alimentacion Conmutadas (Switching).pdfLas Fuentes de Alimentacion Conmutadas (Switching).pdf
Las Fuentes de Alimentacion Conmutadas (Switching).pdf
NicolasGramajo1
 
01-introduccion-a-la-perforacion.pdf de minas
01-introduccion-a-la-perforacion.pdf de minas01-introduccion-a-la-perforacion.pdf de minas
01-introduccion-a-la-perforacion.pdf de minas
ivan848686
 
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdfPLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
MariaCortezRuiz
 
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxtema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
DianaSG6
 

Último (20)

FISICA_Hidrostatica_uyhHidrodinamica.pdf
FISICA_Hidrostatica_uyhHidrodinamica.pdfFISICA_Hidrostatica_uyhHidrodinamica.pdf
FISICA_Hidrostatica_uyhHidrodinamica.pdf
 
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
TR-514 (3) - BIS copia seguridad DOS COLUMNAS 2024 1.6.24 PREFERIDO.wbk.wbk S...
 
Medicina Peruana en el siglo XX y XXI- Julio Gabriel Pereda Sanchez.pptx
Medicina Peruana en el siglo XX y XXI- Julio Gabriel  Pereda Sanchez.pptxMedicina Peruana en el siglo XX y XXI- Julio Gabriel  Pereda Sanchez.pptx
Medicina Peruana en el siglo XX y XXI- Julio Gabriel Pereda Sanchez.pptx
 
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
SESION 1 - SESION INTRODUCTORIA - INTRODUCCIÓN A LA PERFORACIÓN Y VOLADURA DE...
 
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALESLA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
 
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de IloPlan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
Plan de Desarrollo Urbano de la Municipalidad Provincial de Ilo
 
Diagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdfDiagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdf
 
libro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdflibro conabilidad financiera, 5ta edicion.pdf
libro conabilidad financiera, 5ta edicion.pdf
 
Vehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebralVehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebral
 
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
PROCEDIMIENTO Y PLAN DE RESCATE PARA TRABAJOS EN ALTURAS (Recuperado automáti...
 
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
14. DISEÑO LOSA ALIGERADA MOD G VOLADO.pdf
 
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
CODIGO DE SEÑALES Y COLORES NTP399 - ANEXO 17 DS 024
 
Bash Script Programacion en la consola.pptx
Bash Script Programacion en la consola.pptxBash Script Programacion en la consola.pptx
Bash Script Programacion en la consola.pptx
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
 
Becas de UOC _ Caja Ingenieros 2024-25.pdf
Becas de UOC _ Caja Ingenieros 2024-25.pdfBecas de UOC _ Caja Ingenieros 2024-25.pdf
Becas de UOC _ Caja Ingenieros 2024-25.pdf
 
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaaEspecificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
Especificacioes tecnicas.pdfaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Las Fuentes de Alimentacion Conmutadas (Switching).pdf
Las Fuentes de Alimentacion Conmutadas (Switching).pdfLas Fuentes de Alimentacion Conmutadas (Switching).pdf
Las Fuentes de Alimentacion Conmutadas (Switching).pdf
 
01-introduccion-a-la-perforacion.pdf de minas
01-introduccion-a-la-perforacion.pdf de minas01-introduccion-a-la-perforacion.pdf de minas
01-introduccion-a-la-perforacion.pdf de minas
 
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdfPLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
 
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxtema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
 

5.5 instruccion for

  • 1. CENTRO TECNOLÓGICO DE AVANZADA AREA DE MECATRÓNICA Código: M06 MICROCONTROLADORES I Laboratorio: D-19 Duración: 2 Hs INSTRUCCIONES DE CONTROL 5.5. Instrucción for Objetivos 1. Entender el funcionamiento de la estructura for. Esta construcción iterativa no presenta un formato fijo estricto, sino que admite numerosas variantes, lo que la dota de gran potencia y flexibilidad. Su forma más general para la ejecución repetida de una sola sentencia es: for(inicializacion; condicion; incremento/decremento) sentencia; o para la ejecución repetida de un grupo de sentencias: for(inicializacion; condicion; incremento/decremento) { grupo de sentencias; } La primera parte de la construcción for acostumbra a ser una sentencia de asignación donde se inicializa alguna variable que controla el número de veces que debe ejecutarse el cuerpo del bucle. Esta sentencia se ejecuta una sola ocasión, antes de entrar por primera vez al cuerpo del bucle. La segunda parte corresponde a la condición que indica cuándo finaliza el bucle, de la misma forma que en las construcciones iterativas anteriores. En este caso, la condición se evalúa antes de ejecutar el cuerpo del bucle, por lo que al igual que en la construcción while, el cuerpo puede ejecutarse entre 0 y N veces, donde N depende de la condición. La tercera parte corresponde normalmente a una sentencia de incremento o decre- mento sobre la variable de control del bucle. Esta sentencia se ejecuta siempre después de la ejecución del cuerpo del bucle. La Figura 5.1 muestra esquemáticamente el funcionamiento del bucle for. Pedro Ramírez <pedroramirez22@gmail.com> 1
  • 2. CENTRO TECNOLÓGICO DE AVANZADA AREA DE MECATRÓNICA Código: M06 MICROCONTROLADORES I Laboratorio: D-19 Duración: 2 Hs INSTRUCCIONES DE CONTROL 5.3. Construcci´on for 36 Condición Sentencia inicial Incremento / Decremento Grupo de sentencias Cierto Falso Figura 5.3: Esquema de funcionamiento de for cont = 0; do f scanf( "%d", &num ); if (num == 3) cont++; g while (num != -1); printf( "El 3 ha aparecido %d vecesnn", cont ); g Es importante destacar el uso de ‘;’ despu´es de la condici´on, a diferencia de en la construcci´on while , donde no se utiliza. Finalmente, cabe decir que tradicionalmente, tanto la construcci´on while como la construcci´on do-while se utilizan en bucles donde se desconoce a priori el n´umero exacto de iteraciones. 5.3 Construcci´on for Esta construcci´on iterativa no presenta un formato fijo estricto, sino que admite numerosas variantes, lo que la dota de gran potencia y flexibilidad. Su forma m´as general para la ejecuci´on repetida de una sola sentencia es: for (sentencia inicial ; condici´on ; incremento/decremento) sentencia; o para la ejecuci´on repetida de un grupo de sentencias: Figura 5.1: Esquema de funcionamiento de for El programa del siguiente utiliza la construcción for para calcular el sumatorio 10 i=1 i3: #include <stdio.h> void main() { int i, cubo, suma; suma = 0; for(i = 0; i <= 10; i++) { cubo = i * i * i; suma += cubo; } printf("El sumatorio es %d n", suma); } Las tres partes de la construcción for son opcionales, por lo que es posible omitir alguna o todas ellas. En cualquier caso, los punto y coma (;) separadores son siempre necesarios. Un ejemplo clásico de este tipo de bucle for es el bucle infinito (nunca concluye la ejecución): for(;1;) { /* Grupo de sentencias */ } Pedro Ramírez <pedroramirez22@gmail.com> 2
  • 3. CENTRO TECNOLÓGICO DE AVANZADA AREA DE MECATRÓNICA Código: M06 MICROCONTROLADORES I Laboratorio: D-19 Duración: 2 Hs INSTRUCCIONES DE CONTROL Tradicionalmente la construcción for se utiliza en bucles donde el número exacto de iteraciones es conocido a priori, y puede controlarse mediante una variable que actúa como contador. 5.5.1. El operador coma (,) C permite la utilización de más de una sentencia en la primera y tercera partes de la construcción for, así como de más de una condición en la segunda parte. Por ejemplo, el siguiente bucle es válido en C: for(i=0, j=10; i<10, j>0; i++,j+=2) { /* Grupo de sentencias */ } Así pues, las variables i y j se inicializan a 0 y 10, respectivamente, antes de comenzar la ejecución del bucle. En la segunda parte de la construcción, aparecen dos condiciones, i < 10 y j > 0. Si alguna de ellas es falsa, la ejecución del bucle se detiene. Finalmente, tras ejecutarse el cuerpo del bucle, i se incrementa en 1 y j se decrementa en 2, tras lo cual vuelven a comprobarse las condiciones, y así sucesivamente. 5.5.2. Las sentencias break y continue C proporciona dos mecanismos para alterar la ejecución de las construcciones itera- tivas: las sentencias break y continue. break Esta sentencia tiene una doble finalidad. Por un lado, indica el final de un case en la construcción switch, como ya se vio en secciones anteriores. Y por otro, para forzar la terminación inmediata de la ejecución de un bucle. De esta forma, se permite salir de la construcción repetitiva ignorando la evaluación de la condición. Si bien su uso está reconocido como no muy elegante, permite en ocasiones escribir programas más legibles y compactos. continue Esta sentencia se utiliza únicamente en las construcciones repetitivas. Su función es la de evitar que se ejecute todo el código a continuación de ella y hasta el final del cuerpo del bucle, durante una iteración determinada. Pedro Ramírez <pedroramirez22@gmail.com> 3
  • 4. CENTRO TECNOLÓGICO DE AVANZADA AREA DE MECATRÓNICA Código: M06 MICROCONTROLADORES I Laboratorio: D-19 Duración: 2 Hs INSTRUCCIONES DE CONTROL El siguiente ejemplo pretende ilustrar el uso de estas sentencias: do { scanf("%d", &num); if(num < 0) { printf("Valor ilegal n"); break; /* Abandonar el bucle.*/ } if(num > 100) { printf("Valor demasiado grande n"); continue; /* No ejecutar el resto de sentencias e ir al final del bucle. */ } ...... /* Procesar el valor leido */ }while(num != 0); ...... 5.5.3. Ejercicios 1. Escribir un programa que convierta un número entero positivo a cualquier base de numeración dada, igual o inferior a 10. 2. Escribir un programa que calcule el factorial de un número entero leído por teclado. 3. Escribir un programa que calcule la suma de todos los números múltiplos de 5 comprendidos entre dos enteros leídos por teclado. Ultima Actualización 16 de marzo de 2017 Pedro Ramírez <pedroramirez22@gmail.com> 4