Sie sind auf Seite 1von 5

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA


CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO

Ciclo for
En C# y en casi todos los lenguajes de programacin este ciclo es uno de los ms
usados para repetir una secuencia de instrucciones sobre todo cuando se conoce
su inicio y final o la cantidad exacta de instrucciones a repetir
Su formato general es:
for (inicializacin; condicin; incremento)
{
Instrucciones
} // fin del ciclo
En su forma sencilla y la ms utilizada la inicializacin se hace con una
instruccin de asignacin que carga una variable de control de ciclo con un valor
inicial. Luego se condiciona indicando las veces que se repetir
Por ltimo El incremento es el que dice en que en pasos de cuando se harn los
incrementos.
Es de destacar que tanto la variable de inicio como la condicin y el incremento
deben estar separados por punto y coma (;).
La mejor forma de entender esto es mediante un ejemplo
Ejercicio 1
Realizar un programa que sume los 10 primeros nmeros naturales e imprima su
resultado.
Este ejercicio, est resuelto en algoritmo, por ende no se realiza el anlisis
correspondiente
Solucin
namespace ciclofor1
{

1
2
3
4

class Program
{
static void Main(string[] args)
{
int k, suma = 0;
for (k = 1; k <= 10; k++)
{
suma = suma + k;

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA
CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO
5
6
8
9
10 }
11 }

}
Console.WriteLine("\n\n el resultado de la suma de los 10
nmeros es {0} ", suma);
Console.ReadKey();
}

Explicacin
Lnea 2: for(k=1;k<=10;k++)- este ciclo se divide en tres partes principales
1.-la variable k toma un valor inicial de arranque, aunque c#, permite definir
las variables en el mismo ciclo.
La condicin k < = 10; condicin, de parada, para este caso que llegue a 10
El incremento k++; incremento, decimos que queremos incrementar la
variable k en pasos de 1; se puede utilizar en sentido inverso k--, es decir
decrementos
Lnea 3 y 5 Como dentro del ciclo, no hay sino una instruccin, entonces no
se requiere apertura ni cierre de llaves, pero para este caso lo vamos a
utilizar lo cual no es un error
Lnea 4: Es la representacin bsica de un acumulador.
En la pgina http://ivan.lopezortiz.googlepages.com/algoritmos Puede ver el video
del funcionamiento paso a paso del ejercicio (video ciclo for1)
Ejercicio 2
Una pequea variacin al ejercicio anterior
Realizar la suma de 10 nmeros cualesquiera e imprimir su resultado
static void Main(string[] args)
{
int numero,k, suma = 0;
for (k = 1; k <= 10; k++)
{
Console.Write("por favor entre el {0} nemro ", k, " ");
numero = int.Parse(Console.ReadLine());
suma = suma + numero;
}
Console.WriteLine("\n\n el resultado de la suma de los 10
nmeros es {0} ", suma);

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA
CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO
Console.ReadKey();
}

Explicacin:
En este caso, el ciclo si abre llaves, por tener ms de una instruccin, a dems es
importante ir ingresando cada uno de los nmeros e irlos acumulado
Ejercicio
Es importante combinar los siclos con otras instrucciones, por ejemplo con
condicionales, para lo cual se propone el siguiente ejercicio
Realizar un programa que permita ingresar 10 nmeros, de los cuales se debe
sumar aquellos que son positivos y contar los que son negativos, imprimir los
resultados
static void Main(string[] args)
{
int k, numero, suma=0, kn=0;
for (k=1;k<=10;k++)
{
Console.Write("Por favor entre un el {0} nmero ",k);
numero = int.Parse(Console.ReadLine());
if (numero >=0)
suma=suma+numero;
else
kn++;
}
Console.WriteLine("el resultado de la suma de los nmeros
positivos es : {0}", suma);
Console.WriteLine("la cantidad de nmeros negativos ingresados es
:{0} ",kn);
Console.ReadKey();
}

Explicacin
La sentencia kn++, remplaza a k=k+1;
Ejercicios de verificacin
1.-codificar los algoritmos del taller propuesto en el tem relacionado con el ciclo
para
2.-Profundizar y realizar ejemplos con sentencias de incrementos y decrementos
3.-Consultar la directiva de posicionamiento en la pantalla y para la limpieza de la
misma, para darle ubicacin y presentacin a los programas

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA
CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO

Ciclos while
En este ciclo el cuerpo de instrucciones se ejecuta mientras la condicin
permanezca como verdadera y en el momento en que la condicin se convierte en
falsa el ciclo termina, es importante mencionar que para que se ejecute las
instrucciones este debe ser verdadero por lo menos la primera vez
Sentencia while: esta sentencia de ciclo o bucle es muy sencilla pero muy
potente, su estructura.
while (<condicin>) <sentencia>
Puede ser tambin
While (condicin)
{
-------}
Ciclo do while :
Este ciclo es muy utilizado cundo queremos realizar filtros 1 y cuando deseamos
que se permita el ingreso al ciclo al menos una vez
Ejemplo
Para entender mejor el funcionamiento de esos ciclos, lo mejor es demostarlo con
un programa prctico.
Planteamiento: Se debe desarrollar un programa que permita ingresar las notas
del curso de algoritmos. El programa debe terminar cuando la nota ingresada es
cero (0), luego mostrar el promedio de las notas ingresadas, las notas ingresadas
no deben ser negativos ni superiores a cinco
Anlisis:
Gran parte de este anlisis se realizo en el tema referente a ciclos, trabajado con
algoritmos.

Filtro: permitir el ingreso de datos dentro de un rango especificado

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERA
CONTENIDO DIDCTICO DEL CUSO: 301303 ALGORITMO

Con este ejemplo se utilizaran dos tipos de ciclos, uno para controlar las entradas
de datos hasta que estas sean diferentes de cero y el otro ciclo que permita entrar
nicamente valores mayores a cero y menores o iguales a cinco
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

int k;
float suma,nota,promedio;
suma = 0; k = 0; nota = 5; ;
while (nota != 0)
{
do
{
Console.WriteLine("entre una nota");
nota= float.Parse(Console.ReadLine());
if (nota <0 || nota >5)
{
Console.WriteLine("Error. Intntelo nuevamente");
}
}
while (nota<0 || nota >5);
if (nota !=0 )
{
suma=suma+nota;
k++;
}
}
promedio=suma/k;
Console.WriteLine("la cantidad de notas ingresadas son: {0}
",k);
Console.WriteLine("El promedio de las notas es de : {0}
",promedio);
Console.ReadKey();

Explicacin General
Es el primer ejercicio de los realizados donde utilizamos un tipo de dato diferente
al int, en este caso el float, con esto nos damos cuenta lo fcil de utilizar. Tambin
es de destacar la utilizacin de los conectores lgicos y se representan as
o El conector O con ||
o El conector Y con &&
Para finalizar es importante mencionar queel ciclo do se cierra llaves l con un
while, el cual termina con punto y coma