SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
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
 
Bucles de Control Repetitivo Ciclos For
Bucles de Control Repetitivo  Ciclos ForBucles de Control Repetitivo  Ciclos For
Bucles de Control Repetitivo Ciclos ForRichard 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
 
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 FlujoEmilio Aviles Avila
 
Sentencia de control
Sentencia de controlSentencia de control
Sentencia de controlStalyn Cruz
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivasyance1
 
Estructuras de control repetitivos
Estructuras de control repetitivosEstructuras de control repetitivos
Estructuras de control repetitivosReina 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 whileSNPP
 
Estructuras repetitivas
Estructuras repetitivasEstructuras repetitivas
Estructuras repetitivasDanny Martinez
 
Php04 estructuras control
Php04 estructuras controlPhp04 estructuras control
Php04 estructuras controlJulio Pari
 
Sentencias de Programacion
Sentencias de ProgramacionSentencias de Programacion
Sentencias de Programacionaeroscar90
 
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 trabajoRenny Centeno
 
Instrucciones de control de salto
Instrucciones de control de saltoInstrucciones de control de salto
Instrucciones de control de saltoAbrirllave
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de controlFernando 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
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivasCarlos Pes
 
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.pdfNoe 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.pdfSNPP
 
RR_TAYI.pdf
RR_TAYI.pdfRR_TAYI.pdf
RR_TAYI.pdfSNPP
 
1. panel de le ds
1. panel de le ds1. panel de le ds
1. panel de le dsSNPP
 
7. incubadora de huevos
7. incubadora de huevos7. incubadora de huevos
7. incubadora de huevosSNPP
 
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 realSNPP
 
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 feederSNPP
 
3. radar medidor de velocidad
3. radar medidor de velocidad3. radar medidor de velocidad
3. radar medidor de velocidadSNPP
 
2. soft starter monofasico
2. soft starter monofasico2. soft starter monofasico
2. soft starter monofasicoSNPP
 
Operadores y expresiones
Operadores y expresionesOperadores y expresiones
Operadores y expresionesSNPP
 
6.2 cadenas de caracteres
6.2 cadenas de caracteres6.2 cadenas de caracteres
6.2 cadenas de caracteresSNPP
 
6.1 vectores
6.1 vectores6.1 vectores
6.1 vectoresSNPP
 
5.1 instruccion if-else
5.1 instruccion if-else5.1 instruccion if-else
5.1 instruccion if-elseSNPP
 
4. entrada y salida de datos
4. entrada y salida de datos4. entrada y salida de datos
4. entrada y salida de datosSNPP
 
3.6 funciones de biblioteca
3.6 funciones de biblioteca3.6 funciones de biblioteca
3.6 funciones de bibliotecaSNPP
 
3.5 operador condicional
3.5 operador condicional3.5 operador condicional
3.5 operador condicionalSNPP
 
2.10 entrada y salida
2.10 entrada y salida2.10 entrada y salida
2.10 entrada y salidaSNPP
 
2.9 variables
2.9 variables2.9 variables
2.9 variablesSNPP
 
2.8 constantes
2.8 constantes2.8 constantes
2.8 constantesSNPP
 
2.7 tipo de dato logico
2.7 tipo de dato logico2.7 tipo de dato logico
2.7 tipo de dato logicoSNPP
 
2.6 tipo de dato caracter
2.6 tipo de dato caracter2.6 tipo de dato caracter
2.6 tipo de dato caracterSNPP
 

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

CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.pptVitobailon
 
PRESENTACION DE CLASE. Factor de potencia
PRESENTACION DE CLASE. Factor de potenciaPRESENTACION DE CLASE. Factor de potencia
PRESENTACION DE CLASE. Factor de potenciazacariasd49
 
Conservatorio de danza Kina Jiménez de Almería
Conservatorio de danza Kina Jiménez de AlmeríaConservatorio de danza Kina Jiménez de Almería
Conservatorio de danza Kina Jiménez de AlmeríaANDECE
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdfEdwinAlexanderSnchez2
 
Peligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionPeligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionOsdelTacusiPancorbo
 
TEC-SEMANA 9-GRUPO1 SENATI SEGURIDAD Y PREVENCIÓN DE RIESGOS.pptx
TEC-SEMANA 9-GRUPO1 SENATI SEGURIDAD Y PREVENCIÓN DE RIESGOS.pptxTEC-SEMANA 9-GRUPO1 SENATI SEGURIDAD Y PREVENCIÓN DE RIESGOS.pptx
TEC-SEMANA 9-GRUPO1 SENATI SEGURIDAD Y PREVENCIÓN DE RIESGOS.pptxYEDSONJACINTOBUSTAMA
 
Historia de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfHistoria de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfIsbelRodrguez
 
Fisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfFisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfJessLeonelVargasJimn
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilDissneredwinPaivahua
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfCAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfReneBellido1
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
Clase 1 Análisis Estructura. Para Arquitectura pptx
Clase 1 Análisis Estructura. Para Arquitectura pptxClase 1 Análisis Estructura. Para Arquitectura pptx
Clase 1 Análisis Estructura. Para Arquitectura pptxPaolaVillalba13
 
3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptxJhordanGonzalo
 
Descubrimiento de la penicilina en la segunda guerra mundial
Descubrimiento de la penicilina en la segunda guerra mundialDescubrimiento de la penicilina en la segunda guerra mundial
Descubrimiento de la penicilina en la segunda guerra mundialyajhairatapia
 
Edificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCEdificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCANDECE
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasSegundo Silva Maguiña
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
Electromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfElectromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfAnonymous0pBRsQXfnx
 

Último (20)

CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.ppt
 
PRESENTACION DE CLASE. Factor de potencia
PRESENTACION DE CLASE. Factor de potenciaPRESENTACION DE CLASE. Factor de potencia
PRESENTACION DE CLASE. Factor de potencia
 
Conservatorio de danza Kina Jiménez de Almería
Conservatorio de danza Kina Jiménez de AlmeríaConservatorio de danza Kina Jiménez de Almería
Conservatorio de danza Kina Jiménez de Almería
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf
 
Peligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionPeligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacion
 
TEC-SEMANA 9-GRUPO1 SENATI SEGURIDAD Y PREVENCIÓN DE RIESGOS.pptx
TEC-SEMANA 9-GRUPO1 SENATI SEGURIDAD Y PREVENCIÓN DE RIESGOS.pptxTEC-SEMANA 9-GRUPO1 SENATI SEGURIDAD Y PREVENCIÓN DE RIESGOS.pptx
TEC-SEMANA 9-GRUPO1 SENATI SEGURIDAD Y PREVENCIÓN DE RIESGOS.pptx
 
Historia de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdfHistoria de la Arquitectura II, 1era actividad..pdf
Historia de la Arquitectura II, 1era actividad..pdf
 
Fisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdfFisiología del azufre en plantas S.S.pdf
Fisiología del azufre en plantas S.S.pdf
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civil
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdfCAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
CAP4-TEORIA EVALUACION DE CAUDALES - HIDROGRAMAS.pdf
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
Clase 1 Análisis Estructura. Para Arquitectura pptx
Clase 1 Análisis Estructura. Para Arquitectura pptxClase 1 Análisis Estructura. Para Arquitectura pptx
Clase 1 Análisis Estructura. Para Arquitectura pptx
 
3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx3039_ftg_01Entregable 003_Matematica.pptx
3039_ftg_01Entregable 003_Matematica.pptx
 
Descubrimiento de la penicilina en la segunda guerra mundial
Descubrimiento de la penicilina en la segunda guerra mundialDescubrimiento de la penicilina en la segunda guerra mundial
Descubrimiento de la penicilina en la segunda guerra mundial
 
Edificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCEdificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRC
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la Ingenierías
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
Electromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfElectromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdf
 

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