You are on page 1of 28

INTRODUCCIN

La estructura de control repetitiva, tambin conocida como ciclo, es una


estructura que nos permite representar un conjunto de instrucciones que
debe repetirse una cantidad limitada de veces, normalmente dependiente de
una condicin o de una cantidad determinada de repeticiones o iteraciones.
Los ciclos permiten iterar todo un proceso tantas veces como el programador
( el usuario) lo determine. Es comn, que en la solucin de muchos
problemas algortmicos, se requiera realizar la repeticin de cierto bloque de
instrucciones, con el fin de obtener el objetivo buscado por el algoritmo. Para
implementar repeticin de bloques de instrucciones se utilizan las estructuras
de control llamadas ciclos o estructuras repetitivas.

Primero que todo, es importante conocer el concepto de estructura de


datos, una estructura de datos es "una coleccin de datos organizados de un
modo particular." Las estructuras de datos pueden ser de dos tipos: estticas
y dinmicas. Las estructuras de datos estticas son aquellas a las que se le
asigna una cantidad fija de memoria cuando se declara la variable. Las
estructuras de datos dinmicas son aquellas cuya ocupacin de memoria
puede aumentar o disminuir durante el tiempo de ejecucin. Entre las
estructuras de datos estticas podemos encontrar los vectores y los arreglos,
los arreglos o array, es una lista de un nmero determinado de elementos del
mismo tipo

1. Estructura de Control Repetitivas:

Este tipo de estructuras marcan como orden de ejecucin la reiteracin de


4
una serie de acciones basndose en un bucle. Bucle: es la estructura de
control que permite la repeticin de una serie determinada de sentencias, es
importante tener en cuenta cuntas veces se repite el bucle y cul es el
cuerpo del bucle, El cuerpo del bucle lo constituyen la serie de sentencias
que pueden ser de cualquier tipo (secuencial, de decisin o repetitivo) las
cuales sern repetidas n veces, pudiendo ser n conocido o desconocido.
Cuando n es desconocido, el nmero de veces que debe repetirse el cuerpo
del bucle estar condicionado por una expresin lgica.

Figura N 1. Estructura de Control Repetitivas

1.1. Existen tres tipos de estructura repetitivas

1.1.1. Mientras-hacer (while)

La estructura Hacer-Mientras es una sentencia del tipo repita mientras


con la diferencia que evala la condicin al final del lazo y no al principio, las
sentencias (una o ms) del cuerpo del lazo se ejecutan mientras que la
condicin (expresin lgica) es cierta, si la condicin nunca se hace falsa, las
sentencias del cuerpo del lazo se ejecutarn indefinidamente. Las variables
que intervienen en la condicin pueden inicializarse antes de la primera
ejecucin del lazo o durante sta, ya que la evaluacin de la condicin se
hace al final de la estructura; hay que estar pendientes de MODIFICAR
dentro del cuerpo del lazo los valores de las variables que intervienen en la
condicin. La modificacin de estos valores debe estar en aras de garantizar
que en algn momento la condicin se haga falsa y el lazo pueda terminar su
ejecucin.

5
En resumen, una instruccin repetitiva hacer...mientras permite ejecutar
repetidamente (una o ms veces) un bloque de instrucciones, mientras que,
una determinada condicin sea verdadera.

Figura N 2. Representacin Mientras-hacer (while)

1.1.1.1. Caracterstica de While

En un bucle hacer mientras, primero se ejecuta el bloque de


instrucciones y, despus, se evala la condicin. En el caso de que
sta sea verdadera, se vuelve a ejecutar el bloque de instrucciones, y
as sucesivamente, hasta que, la condicin sea falsa.
Se ejecuta el bloque de instrucciones y, despus, si la condicin se
evala a falsa, el bloque de instrucciones no se vuelve a ejecutar, de
manera que, el bucle hacer mientras finaliza, habiendo realizado una
sola iteracin.

Se ejecuta el bloque de instrucciones y, a continuacin, si la


condicin se evala a verdadera, el bloque de instrucciones se vuelve

6
a ejecutar, y as sucesivamente, hasta que la condicin sea falsa.

1.1.1.1. Diagrama de flujo

Figura N 3. Representacin grfica


de Diagrama de flujo de While

7
Figura N 3. Representacin grfica de Diagrama de flujo de While

1.1.1.3 Ejemplos en lenguaje C

Que muestre los nmeros del 1 al 100

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int x;
for (x=1;x<=100;x++)
{
printf("%d\n",x);
}
system("PAUSE");
return 0;
}
Que imprima la suma de todos los nmeros que van del 1 al 100

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int x,sum;
sum=0;
for (x=1;x<=100;x++)
{
sum=sum+x;
}
printf("%d\n",sum);
system("PAUSE");

8
return 0;
}

1.1.1. Repetir-hasta (do/ while)

Es otra estructura repetitiva, la cual ejecuta al menos una vez su bloque


repetitivo, a diferencia del while o del for que podan no ejecutar el bloque,
esta estructura repetitiva se utiliza cuando conocemos de antemano que por
lo menos una vez se ejecutar el bloque repetitivo. La condicin de la
estructura est abajo del bloque a repetir, a diferencia del while o del for que
est en la parte superior, el bloque de operaciones se repite mientras que la
condicin sea verdadera, si la condicin retorna falso el ciclo se detiene. En
Java, todos los ciclos repiten por verdadero y cortan por falso; es importante
analizar y ver que las operaciones se ejecutan como mnimo una vez. Este
tipo de estructuras repetitivas, es especialmente til cuando no se puede
definir con precisin cuantas iteraciones o repeticiones deben efectuarse a
un bloque de sentencias para poder dar resolucin al problema que se est
afrontando.

1.1.1.1. Caractersticas

El ciclo repita hasta es Similar al ciclo mientras, pero a diferencia, en


el ciclo Repita Hasta se lleva a cabo la ejecucin de las acciones
primero y finalmente se evala la condicin.

La instruccin Hacer Repetir Mientras, se usa para repetir un


proceso que necesariamente se ejecuta al menos una vez. Ah radica
su diferencia con mientras hacer, ya que sta puede llegar a no
ejecutarse si no se cumple la condicin de entrada.

comprueba la condicin de finalizacin al final del cuerpo del bucle, y


si sta es cierta continua con el resto del programa, a veces esto
resulta ms adecuado.
9
El cuerpo del bucle es el fragmento de programa que ser repetido
en cada iteracin.

La condicin lgica se evala al principio de cada interaccin.

1.1.1.1. Diagrama de flujo y pseudocdigo

Instruccin 1
Instruccin 2
Hacer
Instruccin 3
Instruccin 4
Repetir Mientras [Condicin 1]
Instruccin 5
Instruccin 6
Repetir Mientras [Condicin 2]

Figura N 4. Representacin de Diagrama de flujo de Do/While

1.1.1.2. Estructura bsica en lenguaje C

do
10
{
<bloque_de_instrucciones>
} while ( <expresin_lgica> );

Cuando el bloque de instrucciones slo contiene una instruccin, los


caracteres abrir llave ({) y cerrar llave (}) son opcionales, adems, como se
puede apreciar, la instruccin repetitiva do while, tambin hace uso de una
condicin., en un bucle do while, primero se ejecuta el bloque de
instrucciones y, despus, se evala la condicin, en el caso de que sta sea
verdadera, se vuelve a ejecutar el bloque de instrucciones, y as
sucesivamente, hasta que, la condicin sea falsa. Por consiguiente, cuando
el flujo de un programa llega a un bucle do while, existen dos posibilidades:

a) Se ejecuta el bloque de instrucciones y, despus, si la condicin se


evala a falsa, el bloque de instrucciones no se vuelve a ejecutar, de
manera que, el bucle do while finaliza, habiendo realizado una sola
iteracin.

b) Se ejecuta el bloque de instrucciones y, a continuacin, si la condicin se


evala a verdadera, el bloque de instrucciones se vuelve a ejecutar. Y as
sucesivamente, hasta que la condicin sea falsa.

El bloque de instrucciones de un bucle do while puede ejecutarse una o


ms veces (iteraciones), tambin hay que prevenir que el bucle no sea
infinito.

En resumen, una instruccin repetitiva do while permite ejecutar


repetidamente (una o ms veces) un bloque de instrucciones, mientras que,
una determinada condicin sea verdadera.

1.1.1.1. Ejemplo

11
En el siguiente programa de ejemplo se usa un ciclo while para
imprimir los nmeros desde el 0 hasta 100:

#include <stdio.h>
main(void)
{
int numero=0;
while (numero<=100)
{
printf("%d\n", numero);
numero = numero+1;
}
system("PAUSE");
}

Imprimir diez veces la serie de nmeros del 1 al 10

#include <stdio.h>
main(void)
{
int i=1;
int j=1;
while (i<=10)
{
while (j<=10){
printf("%i ", j);
j = j+1;
}
j=1;
printf("\n");
i = i+1;
}

12
printf("\n");
system("PAUSE");
}

1.1.2. Desde (For)

La sentencia for nos sirve ya que con ella se puede ejecutar un bucle que
se repita determinado nmero de veces, esta sentencia requiere que
conozcamos el nmero de veces que se desea ejecutar la sentencia del
interior del bucle. Si no se conoce de antemano el nmero de repeticiones es
mejor utilizar la sentencia while o repeat; la forma de ejecucin del ciclo es la
siguiente:

Control representa una variable que va a tomar valores iniciando en valor


inicial y terminando en valor tope avanzando con un incremento, en los casos
en los que no se especifica el valor del paso la mayora de los lenguajes de
programacin asume el incremento de 1, sin embargo el lenguaje C requiere
que la variable de control sea incrementada, si la variable de control se llama
vi y el paso es de 1 el incremento de la variable de control se define as,
vi=vi+1. El Cuerpo del Ciclo se ejecutar una vez por cada valor que tome la
variable control.

1.1.2.1. Caracterstica

Se suele emplear en sustitucin del bucle while cuando se conoce el


nmero de iteraciones que hay que realizar.

Ciclo el cual permite ejecutar una sentencia simple o compuesta


repetidamente un nmero de veces conocido, la sentencia adecuada
for.

En la ejecucin del for participan tres elementos V: variable de

13
control del bucle, Vi: valor inicial, Vf: valor final, existen dos formas de
utilizar las estructuras de control repetitivas:

a) Con incremento del contador (Vi, Vf)

Cuando Vi es menor que Vf el valor de V se incrementa de uno en uno


desde el valor de Vi hasta el valor de Vf, por cada valor que V toma, el
cuerpo del bucle se ejecuta una vez.
b) Con decremento del contador (Vi > Vf):

Cuando Vi es mayor que Vf el valor de V se disminuye de uno en uno


desde el valor de Vi hasta el valor de Vf, por cada valor que V toma, el
cuerpo del bucle se ejecuta una vez.

Figura N 5. Representacin de FOR

FOR tiene tres partes encerradas entre parntesis:

La primera es la inicializacin, que tiene efecto solamente antes de


comenzar la primera repeticin del bucle. en esta parte se suele
colocar la variable que utilizaremos para llevar la cuenta de las veces
que se ejecuta el bucle (variable de control).

La segunda parte es la condicin, que se evaluar cada vez que


comience la repeticin del bucle. Contiene una expresin condicional,
que de cumplirse, permite la ejecucin de las acciones encerradas
14
entre llaves.
Por ltimo tenemos la actualizacin, que sirve para indicar los
cambios que queramos ejecutar en la variable de control cada vez que
termina la repeticin del bucle y antes de comprobar si se debe seguir
ejecutando.
1.1.1.1. Algoritmo y cdigo en C

Un algoritmo que muestre los pares que hay entre 1 y N.

Inicio
Entero: n, i
Mostrar ('digite numero')
Leer (n)
Para (i= 2 hasta n,2)
Mostrar (los nmeros pares son:', i)
Fin para
Fin.

Figura N 6. Algoritmo de FOR

1.1.1.2. Estructura bsica de for en lenguaje C

For (inicio;mientras;incremento)
{
//CODIGO A EJECUTAR
}
Su forma de ejecucin es muy sencilla: Mientras se cumpla que la condicin
sea Verdadera entonces se ejecutar el cuerpo del ciclo, de igual forma
tambin se podra decir que el Cuerpo del Ciclo se repetir tantas veces
como lo permita la condicin o mientras dicha condicin sea Verdadera. En
condiciones normales la cantidad de veces que se repita el cuerpo del ciclo

15
ser siempre una cantidad finita y deber existir, dentro del mismo cuerpo del
ciclo, una o ms instrucciones que hagan que en algn momento la condicin
sea Falsa.
1.1.1.3. Ejemplo

Especificando que x comienza con un valor de 2, y que tendr incrementos


de 2 en 2 mientras sea menor a 20, el resultado ser la impresin de valores
del 2 al 18(solo nmeros pares).

#include <stdio.h>
int main(int argc, const char * argv[])
{
//CICLOS FOR EN C
int y;
for(int x=2;x<20;x+=2)
{
printf("El contador X vale: %d\n",x);
}
return 0;
}

Demostrar funcin Y=X^2 +3

#include <stdio.h>
#include <math.h>
int main(int argc, const char * argv[])
{
//CICLOS FOR EN C
int y;
for(int x=0;x<10;x++)
{
y = pow(x,2)+3;

16
printf("El resultado de Y vale: %d\n",y);
} return 0;
}

1.2. Diferencia en de cada estructura repetitiva

For: El ciclo o bucle for se utiliza cuando tenemos claro un


punto de inicio y un punto de finalizacin. Por ejemplo si
deseamos imprimir los nmeros pares entre el 20 y el 36.

For (int k = 20; k <= 36; k++) (k % 2 == 0)? printf("%d\n", k)

En el cdigo vemos que si el residuo de la divisin del nmero K


entre 2 es igual a cero, entonces el nmero es par y se imprime
dicho nmero, caso contrario decimos que el bucle FOR se ejecute
con el siguiente valor de K.

Mientras-hacer (while): El bucle WHILE, a diferencia del


FOR, se utiliza cuando no sabemos cundo finalizar una
condicin dada, un claro ejemplo puede ser cuando el usuario
quiere continuar haciendo algo en repetidas ocasiones hasta
que pulse la tecla 'n'.

char val = 's';

while(val == 's')

printf("Deseas continuar? s/n: ");

scanf("%c", &val);

En este pequeo cdigo el programa le preguntar al usuario si


desea continuar, a menos que ste presione la tecla 'n', el programa

17
le preguntar infinitas veces.

Repetir-hasta (do/ while): El bucle do while es casi igual al


anterior, con la diferencia de que la condicin dada se ejecuta
al menos una vez, siguiendo con el ejemplo anterior, qu
pasara si la variable val tuviera otro valor, por ejemplo char
val = 'z'? simplemente el ciclo while jams se ejecutara
porque no se cumple la condicin de que val tenga un valor s;
entonces con el bucle do while hacemos que el cdigo entre
llaves se ejecute al menos una vez.

char val = 'z';

do

printf("Deseas continuar? s/n");

canf("%c", &val);

while(val == 's');

Como vemos, el cdigo se ejecutar solamente una vez si el usuario


introduce un valor distinto a 's', en otro caso el cdigo se ejecutar
indefinidamente hasta que el usuario pulse una tecla que no sea 's'.

1. Arreglos

18
Un arreglo es un conjunto de variables que son del mismo tipo de datos, a
cada parte de un arreglo se le denomina elemento, los cuales se hacen
referencia con el mismo nombre y se almacenan en posiciones consecutivas.
Los arreglos tienen un tamao que es la cantidad de objetos del mismo tipo
que pueden almacenar, son entidades estticas debido a que se declaran de
un cierto tamao y conservan ese tamao a lo largo de la ejecucin del
programa en el cual fue declarado. Los arreglos se definen como una
coleccin finita, homognea y ordenada de elementos.

Finita: Todo arreglo tiene un lmite, es decir, debe terminarse cul


ser el nmero mximo de elementos que podrn formar parte del
arreglo.

Homognea: Todo los elementos de una arreglo son del mismo tipo o
naturaleza (todos enteros, todos booleanos, etc.), pero nunca una
combinacin de distinto tipos,

Ordenada: Se debe determinar cul es el primer elemento, el


segundo, el tercero... y el ensimo elemento.

1.1. Tipos de arreglos

1.1.1. Arreglos unidimensionales

Es un tipo de datos estructurado que est formado de una coleccin finita y


ordenada de datos del mismo tipo, es la estructura natural para modelar
listas de elementos iguales, estn formados por un conjunto de elementos
de un mismo tipo de datos que se almacenan bajo un mismo nombre, y se
diferencian por la posicin que tiene cada elemento dentro del arreglo de
datos. Al declarar un arreglo, se debe inicializar sus elementos antes de
utilizarlos, para declarar un arreglo tiene que indicar su tipo, un nombre nico
y la cantidad de elementos que va a contener.

1.1.2. Arreglos multidimensionales

19
Es un tipo de dato estructurado, que est compuesto por dimensiones, para
hacer referencia a cada componente del arreglo es necesario utilizar n
ndice, uno para cada dimensin. El trmino dimensin representa el nmero
de ndices utilizados para referirse a un elemento particular en el arreglo, los
arreglos de ms de una dimensin se llaman arreglos multidimensionales.

1.1.3. Arreglos con mltiple subndices

Es la representacin de tablas de valores, consistiendo de informacin


arreglada en renglones y columnas. Para identificar un elemento particular de
la tabla, deberemos de especificar dos subndices; el primero identifica el
rengln del elemento y el segundo identifica la columna del elemento. A los
arreglos que requieren dos subndices para identificar un elemento en
particular se conocen como arreglo de doble subndice. Note que los arreglos
de mltiples subndices pueden tener ms de dos subndices, el estndar
ANSI indica que un sistema ANSI C debe soportar por lo menos 12
subndices de arreglo.

1.2. Caractersticas

Almacenar los elementos del array en posiciones de memoria


continua.

Tener un nico nombre de variable que representa a todos los


elementos, y stos a su vez se diferencian por un ndice o
subndice.

Acceso directo o aleatorio a los elementos individuales del


array.

Todos los arrays son de tamao variable, tanto si se especifica


cmo no un tamao al ser declarados.

Para ver el contenido de los arrays segn van siendo


ejecutadas las lneas de cdigo que los declaran, utilizaremos

20
la ventana locales del depurador, que muestra las variables de
mbito local al procedimiento que estamos ejecutando
actualmente.

Los arrays se crean con el operador new seguido del tipo y


nmero de elementos.

Se puede acceder al nmero de elementos de un array con la


variable miembro implcita length (por ejemplo, vect.length).

Se accede a los elementos de un array con los corchetes [] y


un ndice que vara de 0 a length-1.

Se pueden crear arrays de objetos de cualquier tipo, en


principio un array de objetos es un array de referencias que
hay que completar llamando al operador new.

Los elementos de un array se inicializan al valor por defecto


del tipo correspondiente (cero para valores numricos, la
cadena vaca para Strings, false para boolean, null para
referencias).

Como todos los objetos, los arrays se pasan como


argumentos a los mtodos por referencia.

Ejemplo

Sea V un arreglo de 30 elementos con ndices enteros.

V= (52,12,31,102,....75)
V (50) = v(1), v(2), v(3),...., v(30),
Su representacin grfica es:

Componentes

52 12 31 102 - 75
21
1

Dnde:

NTC = (30-1+1) = 30
Cada componente del arreglo V ser un nmero entero, y podr accederse
por medio de un ndice que ser un valor comprendido entre 1 y 30.
De esta manera.
V(1) hace referencia al elemento de la posicin 1 cuyo valor es 52
V(2) hace referencia al elemento de la posicin 2 cuyo valor es 12

Arreglos Unidimensionales: Arreglos o Vectores

Un arreglo unidimensional es un tipo de datos estructurado que est


formado por una coleccin finita y ordenada de datos del mismo tipo, es la
estructura natural para modelar listas de elementos iguales, los datos que se
guarden en los arreglos todos deben ser del mismo tipo. El tipo de acceso a
los arreglos unidimensionales es el acceso directo, es decir, podemos
acceder a cualquier elemento del arreglo sin tener que consultar a elementos
anteriores o posteriores, esto mediante el uso de un ndice para cada
elemento, para implementar arreglos unidimensionales se debe reservar
espacio en memoria, los arreglos nos permiten hacer un conjunto de
operaciones para manipular los datos guardados en ellos, estas operaciones
son: ordenar, buscar, insertar, eliminar, modificar entre otras, los arreglos se
representan en memoria de la forma siguiente:

x : array[1..5] of integer

22
Figura N 7. Arreglos Unidimensionales

Ejemplo N 1:

Sea el siguiente arreglo unidimensional donde se va a guardar 5 datos de


tipo entero (integer)

x : array[1..5] of integer

En memoria el computador guarda 5 espacios: esto quiere decir en el


arreglo X en la posicin 1 guarda 34, en el arreglo X en la posicin 2 guarda
22, as hasta la ltima posicin del arreglo X posicin 5 guarda 72.
X [1]
34
X [2]
22
X [3]
39
X [4]
63

23
X [5]
72

Declaracin de los arreglos unidimensionales: Se declara el tipo del arreglo,


con la palabra reservada TYPE, luego se declara la variable de tipo arreglo,
esto se hace en el bloque de declaracin de variables palabra reservada
VAR.

Type
nombre_arreglo= array[x..y]of tipo_dato;

Ejemplo N 2:

salarios= array [1x] of real;


nombre trabajador=array[1..x] of string;
Nota: El tipo de dato del arreglo puede ser: integer, real, boolean, string etc.
Variables tipo array
Var sueldo: salarios;

Una vez declarados los arreglos procedemos a cargar informacin en ellos,


para esto usamos estructuras repetitivas la ms recomendable por su
facilidad es el for, una vez cargada la informacin se puede hacer cualquier
operacin de clculo y por ltimo mostramos la informacin de los arreglos
usando de igual manera la estructura repetitiva for.

Arreglos Bidimensionales: Matrices m x n

Un arreglo bidimensional es un conjunto de n elementos del mismo tipo


almacenado en memoria contigua en una matriz o tabla, para hacer
referencia a cada uno de sus elementos, es necesario utilizar dos ndices, el
primero indica la fila y el segundo la columna; un arreglo bidimensional
tendr almacenado m x n elementos (donde m es el nmero de filas o

24
renglones y n el nmero de columnas). Consiste en reservar el espacio que
ocupar el arreglo en la memoria, una vez que el arreglo ha sido declarado,
sus valores pueden ser almacenados mediantes asignaciones o cmo ocurre
frecuentemente en la prctica utilizando ciclos anidados. Los elementos de
un arreglo bidimensional pueden ser modificados en cualquier momento,
para realizar esta accin slo es necesario especificar el nombre de la
matriz, la posicin tanto de la fila como de la columna y el nuevo valor, un
arreglo bidimensional equivale a una tabla con mltiples filas y mltiples
columnas.

Figura N 8: Representacin grfica de Arreglos Bidimensionales

25
En general se puede definir un arreglo de 2 dimensiones de la siguiente
manera:

<nombre arreglo>: arreglo[rango-filas, rango-columnas] de <tipo de dato>

As la matriz para la representacin de las ventas mensuales de cinco aos


ser:

Ventas: arreglo [5, 12] de real tamao = mx n = 5 x 12 = 60

En memoria, sin embargo todos los elementos del arreglo se almacenan en


posiciones contiguas.

Matriz de ventas 5 x 12, total de 60 elementos:

En
memoria se almacenan los elementos en forma consecutiva:

Arreglos Multidimensionales: Matrices m x n x...z

Un arreglo multidimensional es una matriz de 3 ms dimensiones, si se


tiene un arreglo de N dimensiones, donde cada dimensin es de tamao
d1,d2,..,dN, el nmero de elementos del arreglo ser d1xd2x..xdN.

26
Para acceder a un elemento del arreglo se utilizan N ndices, cada uno de los
cuales referencia a una posicin dentro de una dimensin, siempre segn el
orden de declaracin. En memoria, el arreglo se sigue almacenando en
posiciones consecutivas. La declaracin de un arreglo multidimensional ser:

Nom_arreglo: arreglo[rangoI, rangoII, ..., rangoN]

Ejemplo N 1:

Definir la matriz de ventas mensuales por cinco aos para tres vendedores y
asignar a las ventas del mes 10 del cuarto ao para el vendedor 2, la
cantidad de 120000.5.

Ventas: arreglo [3, 5, 12] de real


Ventas[2, 4, 10]= 120000.5

Almacenamiento de Arreglos en Memoria: Un arreglo en memoria siempre se


almacena en posiciones contiguas a partir de la direccin base de comienzo
del arreglo, la cual se asigna cuando se declara una variable del tipo arreglo.
El tamao que ocupa el arreglo en memoria es el producto del nmero de
sus elementos por el tamao de cada uno de ellos.

Ejemplo N 2:

Arreglo [100] de carcter, si se asume que cada carcter necesita un byte


para ser almacenado, entonces el arreglo necesita un total de 100 bytes de
memoria: 1 byte x 100 elementos = 100 bytes.

En el caso de un arreglo multidimensional, tambin se almacena en


posiciones contiguas de memoria. Su tamao ser el producto de sus
elementos por el tamao requerido para representar cada elemento en
memoria.

27
Ejemplo N 3:

Arreglo[3, 5, 12] de enteros, si se asume que cada entero necesita dos byte
para ser almacenado y se tiene un total de 3 x 5 x 12 = 180 elementos,
entonces el arreglo requiere un total de 360 bytes de memoria: 2 bytes x (3 x
5 x 12) elementos = 360 bytes.

CONCLUSIN

Como resultado de la investigacin he llegado a comprender ms sobre la


estructura de control repetitiva, el conocimiento adquirido sobre dicho trabajo
me permite conocer los tres tipos de estructura repetitiva, que son la while,
do while y la for, donde cada una cumple dichas funciones distintas, una al
principio otra al final, obteniendo resultados especifico segn lo esperado por
el usuario , al mismo tiempo me permite conocer su estructura en lenguaje C,
y el algoritmo de cada uno de los ciclos. Como tambin diferenciar una
estructura de la otra, sobre todo la while y do while que siendo muy parecida
cada una cumple una funcin, la while hace su funcin mientras la condicin
sea verdadera, esta se ejecuta al final, en cambio la do while su funcin es
repetir mientras la condicin sea verdadera, si esta es falsa el ciclo se
detiene.

En el trabajo resalta tambin los arreglos, conocidos como array, estos son
finita, homognea y ordenada, se dice que es finito pues se debe de
determinar la cantidad mxima de elementos que pueden formar parte del
arreglo, homognea todos los arreglos son iguales, del mismo tipo, y
ordenado, como lo dice la palabra se debe de seguir un orden en los
arreglos, quien va primero de segundo etc, los tipos arreglos se definen por:
unidimensionales, multidimensionales, y Multidimensionales, como tambin

28
podemos encontrar los Unidimensionales que permiten ordenar datos del
mismo tipo, los arreglos bidimensionales que Consiste en reservar el
espacio que ocupar el arreglo en la memoria, y los multidimensionales que
se basa matrices. Con esto doy como finalizado el trabajo donde puedo
aprovechar el conocimiento sobre estructura de control repetitiva y los
arreglos.

BIBLIOGRAFA

http://webdelprofesor.ula.ve/nucleotrujillo/frank_delgadillo/file/estructura_ciclic
a.pdf

http://es.slideshare.net/laryenso/estructura-repetitivas?from_action=save

http://ocw.unican.es/ensenanzas-tecnicas/fundamentos-de-
informatica/Curso-Fortran-3.pdf

http://iutprogramacion.blogspot.com/2012/10/unidad-v-ciclo-while-y-do-while-
en-c.html

http://programavideojuegos.blogspot.com/2013/05/25-ejercicios-resueltos-de-
estructuras_16.html

http://www.pixelesybytes.com/2015/07/bucles-ciclos-do-while.html

http://www.carlospes.com/curso_de_lenguaje_c/03_02_repetitiva_hacer_mie
ntras.php

http://www.javaya.com.ar/detalleconcepto.php?codigo=85&inicio=

29
http://adsi.wikia.com/wiki/Ciclo_DO_WHILE_-_REPETIR_HASTA

http://aprenderaprogramar.com/index.php?
option=com_content&view=article&id=405:instruccion-hacer-repetir-mientras-
do-while-pseudocodigo-y-diagramas-de-flujo-cu00156a&catid=28:curso-
bases-programacion-nivel-i&Itemid=59

https://es.wikipedia.org/wiki/Bucle_repetir
https://adolfredobelizario.wordpress.com/2012/06/21/tutorial-6-lenguaje-c/

http://teoriasdelosalgoritmo.blogspot.com/2013/02/estructura-de-control-
repetitiva-grupo-7.html

http://artemisa.unicauca.edu.co/~nediaz/LabII/practica07.htm

http://www.institutozurbaran.com/asignaturas/wp-
content/uploads/2010/04/TIC_JAVASCRIPT_SESION7.pdf

http://elvex.ugr.es/decsai/java/pdf/5C-iterative.pdf

http://wwwalgoritmos-jesus.blogspot.com/2011/04/ciclo-for.html

http://codigoprogramacion.com/cursos/tutoriales-c/ciclo-for-en-c-y-
ejemplos.html#.V0EmB1grLVN

http://blog.nativehex.com/diferencia-entre-for-while-do-while

http://www.uaeh.edu.mx/docencia/P_Presentaciones/icbi/asignatura/arreglos.
pdf

https://www.fing.edu.uy/tecnoinf/mvd/cursos/prinprog/material/teo/prinprog-
teorico07.pdf

30
http://exa.unne.edu.ar/informatica/programacion1/public_html/archivos/estruc
turas_arreglos.pdf
http://www.ecured.cu/Arreglos_(Inform%C3%A1tica)
http://www.monografias.com/trabajos71/clasificacion-arrays/clasificacion-
arrays.shtml
http://programacionunefa.blogspot.com/2008/06/arreglos-
unidimensionales.html

http://unpocodealgoritmos.blogspot.com/2013/06/61-arreglos-
unidimencionales.html

http://es.slideshare.net/marigelcontreras/aplicacin-de-arreglos-
bidimensionales

http://www.cs.buap.mx/~mtovar/doc/Matrices.pdf

http://www.utm.mx/~mgarcia/PE4(Arreglos).pdf

https://es.scribd.com/doc/306990873/Fundamentos-de-Programacion-Libro1-
progrV4-Corregido STC

31

You might also like