Los Acumuladores
Estas variables tienen un trabajo especifico, como su nombre lo indica su misión es acumular ciertas cantidades, por ejemplo si quisiéramos sumar los números del 1 al 5, nosotros haríamos los siguiente: 1+2+3+4+5, esto es fácil en una lista de numero pequeña pero si hablamos de 1000 números las cosas cambian. La forma de usar un acumulador tiene la siguiente sintaxis:
Sintaxis:
acumulador = 0
Bucle
acumulador = acumulador + x
FinBucle
acumulador = 0; esto significa que el acumulador se esta inicializando, normalmente en CERO.
acumulador = acumulador + x; aquí actualizamos el acumulador e ingrementamos el valor de x.
Los acumuladores son muy usados para calcular sumatorias, sumas de series, para hallar totales.
Ejercicio 1. Desarrollar un programa para hallar la suma de los números del 1 al 10.
Análisis
Esto significa que nos piden hacer el siguiente calculo, 1+2+3+4+5+6+7+8+9+10, como podemos ver los números del 1 al 10 los podemos generar con el bucle PARA, en este caso k es el contador del bucle, por tanto.
Modelo: suma = suma + k, donde suma inicia en cero y k varia su valor desde 1 hasta 10 de uno en uno.
Diseño
Algoritmo SumaDeNumeros
Inicio
Real suma, k
suma = 0
Para k = 1 Hasta 10
suma = suma + k
FinPara
Escribir(suma)
Fin
Código Fuente en C#
public static void Main(string[] args)
{
double suma, k;
suma = 0;
for(k = 1; k <= 10; k++)
{
suma = suma + k;
}
Console.WriteLine("La suma de los números del 1 al 10 es: " + suma);
Console.ReadLine();
}
Notas
Puedes cambiar el valor de 10 por cualquier numero, e incluso modificar el programa para que pueda calcular la suma de los números de 1 hasta el valor que quieras (n), haciendo esta modificación tenemos:
public static void Main(
string[] args)
{
double suma, k, n;
Console.
WriteLine(
"♣♣♣♣ SUMA DE LOS NUMEROS DESDE 1 HASTA N ♣♣♣♣");
Console.
WriteLine(
"Ingresa el valor de N: ");
n =
double.
Parse( Console.
ReadLine());
suma =
0;
for(k =
1; k <= n; k++)
{
suma = suma + k;
}
Console.
WriteLine(
"La suma de los numeros es:" + suma);
Console.
ReadLine();
}
Ejercicio 2. Hacer un programa para sumar n numeros.
Análisis
Podemos ponernos en el ejemplo que tengamos 4 números, entonces lo que debemos hacer es: 45 + 98 + 33 + 14, entonces aquí usamos un acumulador y como los números cambian y pueden ser cualquier numero necesitamos leerlos, también debemos tener en cuenta la cantidad de números, en este caso 4 que podemos llamar n.
Modelo: total = total + numero, donde total es el acumulador y numero un dato ingresado.
Diseño
Algoritmo CalculoDelTotal
Inicio
Entero n, k
Real numero, total
total = 0
Leer(n)
Para k = 1 Hasta n
Leer(numero)
total = total + numero
FinPara
Escribir(total)
Fin
Codigo Fuente en C#
public static void Main(string[] args)
{
int n, k;
double numero, total;
total = 0;
Console.WriteLine("♣♣♣ PROGRAMA PARA SUMAR N NUMEROS ♣♣♣");
Console.Write("Ingresa N: ");
n = int.Parse(Console.ReadLine());
Console.WriteLine("******** INGRESO DE DATOS *********");
for(k = 1; k <= n; k++)
{
Console.Write("=====> Ingresa el numero: ");
numero = double.Parse(Console.ReadLine());
total = total + numero;
}
Console.WriteLine("******** RESULTADO FINAL *********");
Console.WriteLine("La suma de los numeros es: " + total);
Console.ReadLine();
}
Notas
En el programa se han añadido mensajes que facilitan el manejo del programa y el mostrar los resultados, esto en un programa es muy importante.
Figura de Sumatorias Numéricas
Ejercicio 3. Resolver la sumatoria Nº 2 de la figura.
Análisis
Ya tenemos el modelo, este es: g = g + (i/(i+1)), donde g es el acumulador, i es el contador del bucle que va desde 1 hasta n.
Diseño
Algoritmo SegundoEjercicioDeFigura
Inicio
Entero n, i
Real g
g = 0
Leer(n)
Para i = 1 Hasta n
g = g + (i/(i+1))
FinPara
Escribir(g)
Fin
Código Fuente en C#
public static void Main(string[] args)
{
int n, i;
double g;
g = 0;
Console.WriteLine("*********** SUMATORIA EJERCICIO 2********** ");
Console.Write("Ingresa el valor de n: ");
n = int.Parse(Console.ReadLine());
for(i = 1; i <= n; i++)
{
g = g + (i/(i+1.0));
}
Console.WriteLine("*********** RESULTADO ***********");
Console.WriteLine("La sumatoria es: " + g);
Console.ReadLine();
}
Notas
Las sumatorias también se usan para el calculo de algunas series.
- Codifique un programa para calcular el promedio de n notas.
- Una tienda desea calcular el precio total de ventas, para ello ingresa las cantidades y los precios unitarios, el programa debe calcular el total, por ejemplo: 5 x 1.22 + 3 x 5.1, el 5 y el 3 son las cantidades y el 1.22 y el 5.1 son los precios unitarios, esto debe sumarse, este ejemplo solo es con dos ventas, el programa debe resolverlo para n ventas.
- Haga un programa para la serie 4 de la figura.
- Desarrolle un programa para la serie 6 de la figura.