SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
E.S.T
JOSÉ DE ESCANDÓN
MATERIA
TECNOLOGÍA
TITULAR DE LA
MATERIA
ING.JOSÉALEJA NDRO
SALINASORTA
TEMA
CICLOFOR
REALIZADOPOR
MADELEINESARAI
CAMACHOMORENO
FABIÁNE. CASTAÑEDA
CALDERÓN
Estructura de control en la que la
PC nos muestrael como programar
si es que nosotros queremos
programar un robot b-bot , en este
se puede indicar el modo en la que
se puede indicar el número mínimo
de iteraciones.
Está disponible en casi todos los
lenguajes de programación
imperativos.
Elementos del bucle
• Variable de control':prácticamente
un mandato impuestopor el uso
habitual es utilizar la letra i Iterador
como variable de control,o bien sus
sucesoras en caso de bucles
anidados.
• Inicialización de la variable de
control: en pseudolenguaje se pide
explicitarlo (es la sección :=
ValorInicial), sin embargo, otros
lenguajes más permisivos como C no
lo requieren de forma obligatoria.
• Condiciónde control:en pseudolenguaje se ve
representadopor el valor final que puede tomar
la variable de control(la sección A ValorFinal).
En C es el segundoparámetroy puede ser
cualquiercondición(ni siquiera es obligación
que esté la variable de control, aunque una vez
más, estono se considera una buena práctica).
Incremento: en pseudolenguaje se
toma por defecto el valor 1, aunque
puede explicitarsepor medio de la
sentencia PASO = ValorPaso
cualquier número entero (léase
bien entero, o sea que
técnicamente podemos
decrementar).En C es el último
parámetro.
Su uso principal se orienta a los vectores, pudiendo modificar, agregar,
eliminar o consultar datos que se encuentren según el índice. Por esto
último, una condición mínima del vector es que debe ser ordenado, por
que si se intenta leer un dato inexistente, esto genera un error de
programación.
La principal diferencia de un bucle
PARA con respectoa los bucles
MIENTRAS Y REPETIR, es que puede
determinarse al comienzodel bucle
cuántas veces se iterará el mismo, lo
cual muchas veces puede redundar en
una optimizacióndel código por parte
de los compiladores.
PARA i=0 a CantidadRegistros(tabla) -
1, PASO = 1
PróximoRegistro(tabla)
HacerAlgo(ElementoActual(tabla))
FIN PARA
Ejemplo de PARA en pseudocódigo
Donde variablecontrol, valorinicial,
valorfinal y paso son enteros. La(s)
instrucción(es)del cuerpose
ejecutará(n)(valorfinal - valorinicial +
1) veces,o sea que va desde
valorinicial a valorfinal inclusive.
Ejemplo en C++
#include
<iostream>
#include <conio.h>
using namespace
std;
int vector[10], i;
for(i=0; i<10; i++)
{
vector[i] = i;
cout<< i<<endl;
}
getch();
return 0;
}
En la definición del for, tenemos que la
variable de control i se inicializa en un
valor 0, luego se entrega la condición
de control que debe ser falsa durante
su ejecución, para completar el ciclo; y
por último, tenemos el incrementador
en una unidad.
Si por ejemplo en la condición
colocamos i < 11, entonces el ciclo for
se ejecutará desde [0...10], lo cual, al
intentar acceder al elemento
vector[10], esto generará error, ya que
el vector (por definición) va desde
[0..(n-1)].
Cualquiera de los
componentes en el
paréntesis se puede
omitir, pero los
separadores punto y
coma deben aparecer
siempre. El resultado es
un bucle infinito.
Bucle Por Cada (For Each)
Este bucle es una evolucióndel
concepto del bucle para en algunos
lenguajes.Se utiliza para recorrer
estructuras repetitivas de datos de
forma más simple y ágil.El bucle for
each puede describirse genéricamente
(en pseudolenguaje) de la siguiente
manera
POR CADAelemento DE tipo
EN conjuntoHACER
Cuerpo
FIN FOR EACH
• Elemento:es el nombre de la
variable u objetoque toma el
elementoiteradoen el cuerpo del
bucle.
• Tipo de Dato:es el tipo de variable o
la clase a la que pertenece el objeto
que se quiere iterar.
• Conjunto: es la estructura de datos
que se quiere iterar.El uso más
típico es con vectores o -en
programaciónorientada a objetos-
clases del tipoColección.
• Cuerpo: es lo que se hará en cada
iteración, pueden ser una o más
instrucciones. Si bien no se impone
una obligaciónal respecto,lo más
común es que en este Cuerpo exista
alguna operaciónsobre el elemento
iterado.
Esta estructura surge
como una innovaciónen
los lenguajes para
permitir un código más
ágil y legible en una
situación que es una de
las principales causas del
uso del bucle PARA:
Con el bucle POR CADA
esto se reduce a:
POR CADA x DE tipo
EN Vector HACER
x =
AlgunaOperación(x)
FIN PARA
Las ventajas de utilizar la estructura
POR CADA son las siguientes:
1. No es necesariollamar a una
función que obtenga el tamañodel
vector
2. No es necesarioutilizar la incómoda
notación de sub-índices para
referirnos al valoren cuestión,
sobre todoteniendoen cuenta que
si utilizamos esta estructura es
porque no necesitamos el valor del
índice.
3. Nos permite hacer un chequeo en
tiempo de compilaciónsobre el tipo
de dato que representa el elemento.
El bucle POR cadao no es un sustituto
del PARA, es una mejora para el muy
frecuente caso anteriormente
mencionado. La diferencia esencial
entre el bucle PARA y el POR CADA es
que en el primeroguía su iteraciónpor
una variable que se incrementa hasta
cierto punto de corte; en cambio en el
segundo lo que guía la iteración es el
recorrido de todos los elementos de un
vector.
Ciertamente podemos transformar cualquier POR CADA en un PARA,
pero transformar un bucle PARA en un bucle POR CADA requeriría
inicializar y controlar manualmente las variables de control, con lo
cual se perdería nuevamente legibilidad en el código. Por tanto,
cuando en un lenguaje se nos da la posibilidad de utilizar ambas
estructuras
La eleccióndel POR CADA debe
hacerse en aquellos casos para los que
fue pensado: aplicar la misma
operación a todos los elementos de un
vector sin importar el orden en que se
hagan;si bien no es necesario que la
variable elemento sea utilizada en el
cuerpo del bucle, su ausencia denota
con seguridad una mala elecciónde
estructura de control.

Mais conteúdo relacionado

Mais procurados

Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2camnav
 
Comandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# SharpComandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# SharpAna Ruth G H
 
Ejemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stlEjemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stlUVM
 
Código intermedio
Código intermedioCódigo intermedio
Código intermedioyaya
 
Librerias en-lenguaje-c
Librerias en-lenguaje-cLibrerias en-lenguaje-c
Librerias en-lenguaje-cKevin2811
 
INVESTIGACION DE ELEMENTOS Y CODIGOS DE C++
INVESTIGACION DE ELEMENTOS Y CODIGOS DE C++INVESTIGACION DE ELEMENTOS Y CODIGOS DE C++
INVESTIGACION DE ELEMENTOS Y CODIGOS DE C++Alfredo Rivera
 
Que es una directiva de preprocesador
Que es una directiva de preprocesadorQue es una directiva de preprocesador
Que es una directiva de preprocesadorAndrew King
 

Mais procurados (20)

Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2
 
bibliotecas c++
bibliotecas c++bibliotecas c++
bibliotecas c++
 
Comandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# SharpComandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# Sharp
 
Tutorial C++
Tutorial C++Tutorial C++
Tutorial C++
 
C++
C++C++
C++
 
instrucciones
instruccionesinstrucciones
instrucciones
 
Ejemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stlEjemplo de solución de práctica funciones stl
Ejemplo de solución de práctica funciones stl
 
05 - Funciones en lenguaje C
05 - Funciones en lenguaje C05 - Funciones en lenguaje C
05 - Funciones en lenguaje C
 
Código intermedio
Código intermedioCódigo intermedio
Código intermedio
 
Guia final so
Guia final soGuia final so
Guia final so
 
Librerias en-lenguaje-c
Librerias en-lenguaje-cLibrerias en-lenguaje-c
Librerias en-lenguaje-c
 
FUNCIONES LENGUAJE C
FUNCIONES LENGUAJE CFUNCIONES LENGUAJE C
FUNCIONES LENGUAJE C
 
INVESTIGACION DE ELEMENTOS Y CODIGOS DE C++
INVESTIGACION DE ELEMENTOS Y CODIGOS DE C++INVESTIGACION DE ELEMENTOS Y CODIGOS DE C++
INVESTIGACION DE ELEMENTOS Y CODIGOS DE C++
 
Lenguaje de-programacion-c++
Lenguaje de-programacion-c++Lenguaje de-programacion-c++
Lenguaje de-programacion-c++
 
Libreria c++
Libreria c++Libreria c++
Libreria c++
 
100 1
100 1 100 1
100 1
 
Printf23
Printf23Printf23
Printf23
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Que es una directiva de preprocesador
Que es una directiva de preprocesadorQue es una directiva de preprocesador
Que es una directiva de preprocesador
 
Diego alexis 8
Diego alexis 8Diego alexis 8
Diego alexis 8
 

Destaque (8)

Tecnica
TecnicaTecnica
Tecnica
 
Alheli
AlheliAlheli
Alheli
 
Historia de la informatica
Historia de la informaticaHistoria de la informatica
Historia de la informatica
 
La técnica como sistema
La técnica como sistemaLa técnica como sistema
La técnica como sistema
 
Historia de la informatica
Historia de la informaticaHistoria de la informatica
Historia de la informatica
 
Pdf
PdfPdf
Pdf
 
Cambios tecnológicos y diversidad cultural
Cambios tecnológicos y diversidad culturalCambios tecnológicos y diversidad cultural
Cambios tecnológicos y diversidad cultural
 
Transformación de materiales y energía
Transformación de materiales y energíaTransformación de materiales y energía
Transformación de materiales y energía
 

Semelhante a Bucle For Visual Basic (20)

Funciones
FuncionesFunciones
Funciones
 
Introducción a Python
Introducción a PythonIntroducción a Python
Introducción a Python
 
Ciclos
CiclosCiclos
Ciclos
 
Introduccion a la programacion en c 1
Introduccion a la programacion en c 1Introduccion a la programacion en c 1
Introduccion a la programacion en c 1
 
For
ForFor
For
 
Metodos funciones
Metodos funcionesMetodos funciones
Metodos funciones
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Tutorial lenguaje c
Tutorial lenguaje cTutorial lenguaje c
Tutorial lenguaje c
 
Tutorial lenguaje c
Tutorial lenguaje cTutorial lenguaje c
Tutorial lenguaje c
 
Lenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de ControlLenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de Control
 
PHP MySql - FIEI - UNFV Clase03
PHP MySql - FIEI - UNFV Clase03PHP MySql - FIEI - UNFV Clase03
PHP MySql - FIEI - UNFV Clase03
 
Php basico
Php basicoPhp basico
Php basico
 
Taller de PHP Básico
Taller de PHP BásicoTaller de PHP Básico
Taller de PHP Básico
 
Php basico
Php basicoPhp basico
Php basico
 
Ciclos
CiclosCiclos
Ciclos
 
Php informacion
Php informacion Php informacion
Php informacion
 
Clase 5 php
Clase 5 phpClase 5 php
Clase 5 php
 
Presentación de matlab electromagnetismo ...
Presentación de matlab electromagnetismo                                     ...Presentación de matlab electromagnetismo                                     ...
Presentación de matlab electromagnetismo ...
 
Sentencias de Programacion
Sentencias de ProgramacionSentencias de Programacion
Sentencias de Programacion
 
Material de Clases TP 03 - Programación Computacional
Material de Clases TP 03 - Programación ComputacionalMaterial de Clases TP 03 - Programación Computacional
Material de Clases TP 03 - Programación Computacional
 

Mais de FabianBC20

NUEVAS TECNOLOGÍAS PARA 2015- 2016
NUEVAS TECNOLOGÍAS PARA 2015- 2016NUEVAS TECNOLOGÍAS PARA 2015- 2016
NUEVAS TECNOLOGÍAS PARA 2015- 2016FabianBC20
 
Procesos de Reciclaje
Procesos de ReciclajeProcesos de Reciclaje
Procesos de ReciclajeFabianBC20
 
Procesos tecnicos que se realizan en la creacion de un hardware
Procesos tecnicos que se realizan en la creacion de un hardwareProcesos tecnicos que se realizan en la creacion de un hardware
Procesos tecnicos que se realizan en la creacion de un hardwareFabianBC20
 
Vision del mundo
Vision del mundoVision del mundo
Vision del mundoFabianBC20
 
Plastico y sus daños
Plastico y sus dañosPlastico y sus daños
Plastico y sus dañosFabianBC20
 
Daños Ocasionados por el Plastico
Daños Ocasionados por el PlasticoDaños Ocasionados por el Plastico
Daños Ocasionados por el PlasticoFabianBC20
 
DAÑOS QUE CAUSAN LOS CONTAMINANTES AL AMBIENTE
DAÑOS QUE CAUSAN LOS CONTAMINANTES AL AMBIENTEDAÑOS QUE CAUSAN LOS CONTAMINANTES AL AMBIENTE
DAÑOS QUE CAUSAN LOS CONTAMINANTES AL AMBIENTEFabianBC20
 
DAÑOS QUE OCASIONA LOS APARATOS ELECTRONICOS
DAÑOS QUE OCASIONA LOS APARATOS ELECTRONICOSDAÑOS QUE OCASIONA LOS APARATOS ELECTRONICOS
DAÑOS QUE OCASIONA LOS APARATOS ELECTRONICOSFabianBC20
 
CONTAMINCACION DE LOS APARATOS ELECTRONICOS
CONTAMINCACION DE LOS APARATOS ELECTRONICOSCONTAMINCACION DE LOS APARATOS ELECTRONICOS
CONTAMINCACION DE LOS APARATOS ELECTRONICOSFabianBC20
 

Mais de FabianBC20 (11)

NUEVAS TECNOLOGÍAS PARA 2015- 2016
NUEVAS TECNOLOGÍAS PARA 2015- 2016NUEVAS TECNOLOGÍAS PARA 2015- 2016
NUEVAS TECNOLOGÍAS PARA 2015- 2016
 
Procesos de Reciclaje
Procesos de ReciclajeProcesos de Reciclaje
Procesos de Reciclaje
 
Procesos tecnicos que se realizan en la creacion de un hardware
Procesos tecnicos que se realizan en la creacion de un hardwareProcesos tecnicos que se realizan en la creacion de un hardware
Procesos tecnicos que se realizan en la creacion de un hardware
 
Vision del mundo
Vision del mundoVision del mundo
Vision del mundo
 
Materiales
MaterialesMateriales
Materiales
 
Plastico y sus daños
Plastico y sus dañosPlastico y sus daños
Plastico y sus daños
 
Daños Ocasionados por el Plastico
Daños Ocasionados por el PlasticoDaños Ocasionados por el Plastico
Daños Ocasionados por el Plastico
 
DAÑOS QUE CAUSAN LOS CONTAMINANTES AL AMBIENTE
DAÑOS QUE CAUSAN LOS CONTAMINANTES AL AMBIENTEDAÑOS QUE CAUSAN LOS CONTAMINANTES AL AMBIENTE
DAÑOS QUE CAUSAN LOS CONTAMINANTES AL AMBIENTE
 
DAÑOS QUE OCASIONA LOS APARATOS ELECTRONICOS
DAÑOS QUE OCASIONA LOS APARATOS ELECTRONICOSDAÑOS QUE OCASIONA LOS APARATOS ELECTRONICOS
DAÑOS QUE OCASIONA LOS APARATOS ELECTRONICOS
 
CONTAMINCACION DE LOS APARATOS ELECTRONICOS
CONTAMINCACION DE LOS APARATOS ELECTRONICOSCONTAMINCACION DE LOS APARATOS ELECTRONICOS
CONTAMINCACION DE LOS APARATOS ELECTRONICOS
 
Scott y faby
Scott y fabyScott y faby
Scott y faby
 

Último

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 

Último (10)

Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 

Bucle For Visual Basic

  • 1. E.S.T JOSÉ DE ESCANDÓN MATERIA TECNOLOGÍA TITULAR DE LA MATERIA ING.JOSÉALEJA NDRO SALINASORTA TEMA CICLOFOR REALIZADOPOR MADELEINESARAI CAMACHOMORENO FABIÁNE. CASTAÑEDA CALDERÓN
  • 2. Estructura de control en la que la PC nos muestrael como programar si es que nosotros queremos programar un robot b-bot , en este se puede indicar el modo en la que se puede indicar el número mínimo de iteraciones. Está disponible en casi todos los lenguajes de programación imperativos.
  • 3. Elementos del bucle • Variable de control':prácticamente un mandato impuestopor el uso habitual es utilizar la letra i Iterador como variable de control,o bien sus sucesoras en caso de bucles anidados. • Inicialización de la variable de control: en pseudolenguaje se pide explicitarlo (es la sección := ValorInicial), sin embargo, otros lenguajes más permisivos como C no lo requieren de forma obligatoria.
  • 4. • Condiciónde control:en pseudolenguaje se ve representadopor el valor final que puede tomar la variable de control(la sección A ValorFinal). En C es el segundoparámetroy puede ser cualquiercondición(ni siquiera es obligación que esté la variable de control, aunque una vez más, estono se considera una buena práctica). Incremento: en pseudolenguaje se toma por defecto el valor 1, aunque puede explicitarsepor medio de la sentencia PASO = ValorPaso cualquier número entero (léase bien entero, o sea que técnicamente podemos decrementar).En C es el último parámetro.
  • 5. Su uso principal se orienta a los vectores, pudiendo modificar, agregar, eliminar o consultar datos que se encuentren según el índice. Por esto último, una condición mínima del vector es que debe ser ordenado, por que si se intenta leer un dato inexistente, esto genera un error de programación.
  • 6. La principal diferencia de un bucle PARA con respectoa los bucles MIENTRAS Y REPETIR, es que puede determinarse al comienzodel bucle cuántas veces se iterará el mismo, lo cual muchas veces puede redundar en una optimizacióndel código por parte de los compiladores. PARA i=0 a CantidadRegistros(tabla) - 1, PASO = 1 PróximoRegistro(tabla) HacerAlgo(ElementoActual(tabla)) FIN PARA
  • 7. Ejemplo de PARA en pseudocódigo Donde variablecontrol, valorinicial, valorfinal y paso son enteros. La(s) instrucción(es)del cuerpose ejecutará(n)(valorfinal - valorinicial + 1) veces,o sea que va desde valorinicial a valorfinal inclusive. Ejemplo en C++ #include <iostream> #include <conio.h> using namespace std; int vector[10], i; for(i=0; i<10; i++) { vector[i] = i; cout<< i<<endl; } getch(); return 0; }
  • 8. En la definición del for, tenemos que la variable de control i se inicializa en un valor 0, luego se entrega la condición de control que debe ser falsa durante su ejecución, para completar el ciclo; y por último, tenemos el incrementador en una unidad. Si por ejemplo en la condición colocamos i < 11, entonces el ciclo for se ejecutará desde [0...10], lo cual, al intentar acceder al elemento vector[10], esto generará error, ya que el vector (por definición) va desde [0..(n-1)]. Cualquiera de los componentes en el paréntesis se puede omitir, pero los separadores punto y coma deben aparecer siempre. El resultado es un bucle infinito.
  • 9. Bucle Por Cada (For Each) Este bucle es una evolucióndel concepto del bucle para en algunos lenguajes.Se utiliza para recorrer estructuras repetitivas de datos de forma más simple y ágil.El bucle for each puede describirse genéricamente (en pseudolenguaje) de la siguiente manera POR CADAelemento DE tipo EN conjuntoHACER Cuerpo FIN FOR EACH
  • 10. • Elemento:es el nombre de la variable u objetoque toma el elementoiteradoen el cuerpo del bucle. • Tipo de Dato:es el tipo de variable o la clase a la que pertenece el objeto que se quiere iterar. • Conjunto: es la estructura de datos que se quiere iterar.El uso más típico es con vectores o -en programaciónorientada a objetos- clases del tipoColección. • Cuerpo: es lo que se hará en cada iteración, pueden ser una o más instrucciones. Si bien no se impone una obligaciónal respecto,lo más común es que en este Cuerpo exista alguna operaciónsobre el elemento iterado. Esta estructura surge como una innovaciónen los lenguajes para permitir un código más ágil y legible en una situación que es una de las principales causas del uso del bucle PARA: Con el bucle POR CADA esto se reduce a: POR CADA x DE tipo EN Vector HACER x = AlgunaOperación(x) FIN PARA
  • 11. Las ventajas de utilizar la estructura POR CADA son las siguientes: 1. No es necesariollamar a una función que obtenga el tamañodel vector 2. No es necesarioutilizar la incómoda notación de sub-índices para referirnos al valoren cuestión, sobre todoteniendoen cuenta que si utilizamos esta estructura es porque no necesitamos el valor del índice. 3. Nos permite hacer un chequeo en tiempo de compilaciónsobre el tipo de dato que representa el elemento.
  • 12. El bucle POR cadao no es un sustituto del PARA, es una mejora para el muy frecuente caso anteriormente mencionado. La diferencia esencial entre el bucle PARA y el POR CADA es que en el primeroguía su iteraciónpor una variable que se incrementa hasta cierto punto de corte; en cambio en el segundo lo que guía la iteración es el recorrido de todos los elementos de un vector. Ciertamente podemos transformar cualquier POR CADA en un PARA, pero transformar un bucle PARA en un bucle POR CADA requeriría inicializar y controlar manualmente las variables de control, con lo cual se perdería nuevamente legibilidad en el código. Por tanto, cuando en un lenguaje se nos da la posibilidad de utilizar ambas estructuras
  • 13. La eleccióndel POR CADA debe hacerse en aquellos casos para los que fue pensado: aplicar la misma operación a todos los elementos de un vector sin importar el orden en que se hagan;si bien no es necesario que la variable elemento sea utilizada en el cuerpo del bucle, su ausencia denota con seguridad una mala elecciónde estructura de control.