Actividad 16 Contadores y Acumuladores

Anuncio
Actividad 16
Contadores y Acumuladores
Contadores
Los contadores son variables que permiten contar eventos dentro de un
algoritmo o programa. Sus características son las siguientes:
Se incrementan o decrementan siempre con un valor constante
Se representan como:
Contador= contador +/- valor constante
Generalmente el valor constante es 1 de tal manera que se representan de la
siguiente manera:
Contador= contador +1
Esto es en la mayoría de los casos, aunque este valor constante también
puede tomar otros valores, o inclusive en lugar de aumentar, puede
decrementar su valor de la siguiente manera:
Contador = Contador -1
Los contadores se inicializan ( es decir siempre se les asigna un valor inicial)
generalmente con cero:
Contador =0
La inicialización es fundamental, ya que de no hacerla corremos el riesgo que
tanto los contadores como los acumuladores almacenen valores “basura”, que
se almacenan al ser creados los espacios de memoria, y que provocan valores
erróneos en el uso de estas variables. Por tal motivo es indispensable siempre
inicializarlas.
Acumuladores.
Los acumuladores almacenan o acumulan valores. Estos valores
generalmente son variables, a diferencia de los contadores que se incrementan
en valores constantes. En los acumuladores se pueden almacenar la suma de
valores o el producto de valores.
Para acumuladores de suma de valores su representación es:
Acumulador= Acumulador + valor variable
Para el caso de los acumuladores de producto su representación es:
Acumulador = Acumulador* valor variable.
Los acumuladores también se inicializan, para el caso de los acumuladores de
suma de valores se inicializa generalmente con 0 de la siguiente manera:
Acumulador=0
Los acumuladores de producto siempre se inicializan con 1:
Acumulador =1
Esto debido a que si se inicializaran con cero el producto de cualquier valor
por cero siempre es cero
Observa el siguiente ejemplo:
Se desea el algoritmo que calcule el promedio de tres calificaciones.
Nota:
Utilizaremos la palabra “leer “ para obtener cada calificación y “escribir” para
imprimir en la pantalla los resultados, como podemos observar se requiere un
contador para contar la cantidad de calificaciones ( contador= contador +1)y un
acumulador ( acumulador= acumulador +calif 1.etc.) para guardar cada una de
las tres calificaciones. El primer proceso es inicializar siempre los contadores y
los acumuladores. El promedio de las calificaciones lo obtenemos al dividir el
acumulador entre el contador.
Entradas: calificación1, calificación2, calificación 3
Salidas: Promedio
Proceso:
Contador =0
Acumulador=0
Leer calificación1
Acumulador= Acumulador + calificación1
Contador = Contador +1
Leer calificación2
Acumulador = Acumulador + calificación2
Contador= Contador +1
Leer calificación3
Acumulador= Acumulador+calificación3
Contador= Contador+1
Promedio= Acumulador/contador
Imprimir Promedio
Prueba de escritorio
La prueba de escritorio nos permite verificar como van cambiando paso a paso
cada una de las variables de intervienen en un algoritmo. La metodología es
poner una columna por cada una de las variables que intervienen y seguir el
algoritmo e ir modificando los valores que se van tomando. En el problema
anterior tenemos las siguientes variables:
Contador
Acumulador
Calificación1
0
0
10
(inicializamos (inicializamos
el contador
el
acumulador
Calificación2
Calificación3
Promedio
8
6
Acumulador/
0+10=10
0+1=1
10+8=18
1+1=2
18+6=24
Contador
24/3=8
2+1=3
Para llegar a esta tabla tuvimos que seguir paso a paso el algoritmo desde su
inicio, como podemos observar los primeros valores que asignamos en la tabla
fueron los iniciales de contador y acumulador.
Los valores de calificación1, calificación2 y calificación 3 son aleatorios y
proporcionados por el usuario (la instrucción leer significa que es un dato de
entrada)
El promedio se calcula con el resultado final del acumulador (suma de valores)
entre el contador(cantidad de calificaciones).
Esta prueba es muy práctica porque nos permite visualizar los cambios que van
sufriendo nuestras variables para llegar al resultado final, con ella es posible
detectar un cambio no deseado en las variables. Generalmente es utilizada en
la fase de comprobación de un problema.
Acumuladores como acumuladores de producto
Como ya lo habíamos mencionado los acumuladores también pueden
almacenar producto de valores veamos el siguiente ejemplo, para ello el
acumulador siempre debe inicializarse con 1, es decir debe tomar el siguiente
valor
Acumulador=1
Veamos el siguiente ejemplo:
Se desea obtener el producto de tres números.
Entradas: numero1, numero2, numero3
Salidas: Producto de los tres números
Proceso
Acumulador =1 */inicializo el acumulador */
Leer numero1
Acumulador=Acumulador*numero1
Leer numero2
Acumulador=Acumulador*numero2
Leer numero3
Acumulador=Acumulador*numero3
Escribir Acumulador.
Veamos la prueba de escritorio, con los siguientes valores:
Numero 1=4
Número 2=5
Número 3=3
Acumulador
Numero1
1
4
1*4=4
4*5=20
Numero2
Numero3
5
3
20*3=60
Acumulador=60
Ejercicio: Realizar las pruebas de escritorio de los programas sugeridos por la profesora.
Descargar