3. 1.1 Breve historia sobre la
Computación
A lo largo de la historia el hombre fue resolviendo sus necesidades de registro,
para llevar la cuenta de sus bienes y efectuar las operaciones necesarias para
la permuta o la venta de los mismos. Fue ideando métodos ágiles de cálculos,
tales como contar con los elementos que les proporcionaba la naturaleza, por
ejemplo: dedos, piedras, nudos en la soga, etc. Partiendo de la idea de contar
con los dedos, los pueblos primitivos tomaron como base de sus cálculos el
número 10, pero no todos tomaron el mismo sistema, los mayas calculaban en
base al 20, los babilonios en base al 60, y los esquimales en base al 5, etc. En
la medida que el hombre acumulaba un mayor número de posesiones,
aumentaba la tarea de contar. El mundo antiguo iniciaba su expansión y los
comerciantes compraban, vendían, efectuaban trueques, inventariaban,
necesitaban un dispositivo para recoger información y obtener resultados
exactos.
Uno de los dispositivos mecánicos primitivos de cálculos fue el contador de arena
de los egipcios, que consistía en surco en la arena donde colocaban piedras o
guijarros.
4. Todo el desarrollo de las computadoras suele divisarse
por generaciones y el criterio que se determinó para
determinar el cambio de generación no está muy
bien definido, pero resulta aparente que deben
cumplirse al menos los siguientes requisitos:
– La forma en que están construidas.
– Forma en que el ser humano se comunica con
ellas.
5. Primera Generación de Computadores
En esta generación había un Características:
gran desconocimiento de las Estaban construidas por
capacidades de las medio de tubos de vacío.
computadoras, puesto que Eran programadas en
se realizó un estudio en esta lenguaje de máquina.
época que determinó que
con veinte computadoras se Grandes y costosas (aprox.
saturaría el mercado de los de ciento de miles de
Estados Unidos en el campo dólares).
de procesamiento de datos.
Esta generación abarco la
década de los cincuenta.
Computadoras: IBM 701, IBM 650, UNIVAC 80 y 90, las IBM 704 y 709,
Burroughs 220 y UNIVAC 1105.
6. Segunda Generación de Computadores.
Características :
Cerca de la década de 1960, las Están construidas con circuitos de
computadoras seguían transistores.
evolucionando, se reducía su Se programan en nuevos lenguajes
tamaño y crecía su capacidad de llamados lenguajes de alto nivel.
procesamiento. También en esta Mayor adaptación al equipo.
época se empezó a definir la forma
de comunicarse con las Posibilidad de obtener la máxima
computadoras, que recibía el velocidad con mínimo uso de
nombre de programación de memoria
sistemas.
Las computadoras representativas de
esta generación fueron: la Philco
212, UNIVAC M460, la Control
Data Corporation modelo
1604, seguida por la serie 3000, la
IBM 7090 y la NCR 315.
7. Tercera generación de Computadores
Tecnológicamente, la tercera Características :
generación de computadores Su fabricación electrónica esta
se caracteriza por la utilización basada en circuitos integrados
de circuitos integrados SSI (chips).
(pequeña escala de Su manejo es por medio de los
integración) y MSI (media lenguajes de control de los
escala de sistemas operativos.
integración), reemplazando a
los circuitos de transistores
directos, y consiguiéndose así
una reducción significativa en
coste y tamaño físico. También
poco a poco se fueron
imponiendo las memorias
realizadas con circuitos
integrados, desplazando a las
memorias de núcleos de ferrita.
8. Cuarta Generación de Computadores
La época se refiere principalmente Características :
a las computadoras de 1980 y Microchips
continúa hasta la fecha.
Aparecen los Difusión de sistemas operativos
microprocesadores, un gran estándar, no dependientes
adelanto de la microelectrónica, directamente de los
que son circuitos integrados de constructores del hardware
alta densidad y con una (Unix, MS-DOS y OS-DOS)
velocidad impresionante.
Surge el concepto de <sistemas
abiertos>, donde el usuario
puede configurar su sistema
prácticamente a medida,
adquiriendo software,
impresoras, unidades de disco,
etc. de <terceros> fabricantes.
9. Quinta Generación de Computadores.
El termino quinta generación fue Características :
acuñado por los japoneses
para describir las potentes e Procesamiento en paralelo
"inteligentes" computadoras mediante arquitecturas y
que deseaban producir a diseños especiales y circuitos
mediados de los noventa. La de gran velocidad.
meta es organizar sistemas de Manejo de lenguaje natural y
computación que produzcan sistemas de inteligencia
inferencias y no solamente artificial.
realicen cálculos. En el proceso
se han incorporado muchos
campos de investigación en la
industria de la
computación, como la
inteligencia artificial, los
sistemas expertos y el lenguaje
natural.
10. 1.2 Evolución de los lenguajes de
programación
Con la llegada de las computadoras aparecen las
secuencias de posiciones de llaves eléctricas que debían
conectarse para obtener una acción determinada, una
llave conectada era un 1 y una llave desconectada era un
0. Una sucesión de llaves en cualquiera de sus dos
posiciones definía una secuencia de ceros y unos (por
ejemplo: 0100011010011101...) que venía a representar
una instrucción o un conjunto de instrucciones
(programa) para el computador en el que se estaba
trabajando.
A esta primera forma de especificar programas para una
computadora se la denomina lenguaje máquina.
11. La necesidad de recordar secuencias de programación para las
acciones usuales llevó a denominarlas con nombres fáciles de
memorizar y asociar: ADD (sumar), SUB (restar), MUL
(multiplicar), CALL (ejectuar subrutina), etc.
A esta secuencia de posiciones se le denominó
"instrucciones", y a este conjunto de instrucciones se le llamó
lenguaje ensamblador.
Posteriormente aparecieron diferentes lenguajes de
programación, los cuales reciben su denominación porque
tienen una estructura sintáctica similar a los lenguajes escritos
por los humanos.
12. e
l
e
n
g
Las cinco generaciones de lenguajes
u de programación
a
j
e
s Generación Nombre Particularidad
d Primera Específico para cada microprocesador, uso de
De máquina
e código binario
Uso de nemotécnicos que abstraen del
p Segunda Ensamblador
lenguaje máquina.
r
o Lenguajes estructurados con comandos
Tercera De procedimientos
g cercanos al lenguaje común.
r
a Cuarta Programas orientados a problemas
Orientados a objetos
m específicos.
a Incluye inteligencia artificial y sistemas
c Quinta Natural
expertos.
i
13. Muestra de código de máquina y lenguaje assembler del Intel 8088.
El código de máquina se resalta en rojo, el código assembler en magenta y
las direcciones de memoria donde se encuentra el código, en azul.
14. Entre los lenguajes de tercera
generación se incluyen:
FORTRAN (Formula TRANslator), diseñado específicamente para programas matemáticos y
de ingeniería.
COBOL (Common Business Oriented Languaje) desarrollado en 1960, ganó amplia aceptación
como lenguaje estandarizado llegándose a utilizar ampliamente en los negocios.
BASIC (Begginners Allpurpose Symbolic Instruction Code) Fue desarrollado por Jhon Kemeny
y Thomas Kurtz en 1964. Por su simplicidad se volvió ampliamente popular y usado en
educación y entre los programadores aficionados.
PASCAL, nombrado en honor del inventor francés Blas Pascal, es introducido por Niklaus
Wirth en 1971. El Pascal, buscaba superar las limitaciones de los otros lenguajes de
programación y demostrar la manera adecuada de implementar un lenguaje de cómputo.
C, desarrollado a principios de los sesenta por Brian Kernighan y Dennis Ritchie. El C es
poderoso, puesto que brinda la libertad de conseguir que se realice casi cualquier cosa en
una computadora.
C++, Es un lenguaje de principios de los ochenta desarrollado por Bjarne Stroustrup. Es
extremadamente poderoso y eficiente igual que el C.
Java (1991) es desarrollado por Sun Microsistema. Cuando Internet comenzó a ganar
popularidad como red de comunicaciones a mediados de los noventa, Sun redirige a
Java para convertirlo en un ambiente de programación que permitiese crear sistemas
interactivos y dinámicos (denominados applets) para las páginas Web.
15. Entre los programas de cuarta
generación se tienen:
Los programas de ambientes visuales:
Existen versiones de programas populares
como el Visual BASIC o el Visual
C, PHP, Java, los cuales, soportan
características y métodos orientados a
objetos y que permiten crear programas en
un ambiente visual.
16. Clasificación de los lenguajes de
programación
Según el nivel de abstracción,
Según la forma de ejecución, y
Según el paradigma de programación que
poseen cada uno de ellos.
17. Según su nivel de abstracción
Lenguajes de bajo nivel
Los lenguajes de bajo nivel son lenguajes de programación que se acercan al
funcionamiento de una computadora. El lenguaje de más bajo nivel es, por
excelencia, el código máquina. A éste le sigue el lenguaje ensamblador.
Lenguajes de medio nivel
Tal es el caso del lenguaje C, entre otros, que tiene ciertas características
que lo acercan a los lenguajes de bajo nivel pero, al mismo tiempo, ciertas
cualidades que lo hacen un lenguaje más cercano al humano y, por tanto, de
alto nivel.
Lenguajes de alto nivel
Los lenguajes de alto nivel son normalmente fáciles de aprender porque están
formados por elementos de lenguajes naturales, como el inglés.
En BASIC, el lenguaje de alto nivel más conocido, los comandos como "IF
CONTADOR = 10 THEN STOP" pueden utilizarse para pedir a la computadora
que pare si CONTADOR es igual a 10.
20. Según la forma de ejecución
Lenguajes compilados
Los compiladores son aquellos cuya función es traducir un programa escrito en un
determinado lenguaje a un idioma que la computadora entienda (lenguaje máquina con
código binario).
Al usar un lenguaje compilado (p. e. los lenguajes del popular Visual Studio de Microsoft),
el programa desarrollado nunca se ejecuta mientras haya errores.
Lenguajes interpretados
Una alternativa diferente para traducir lenguajes de alto nivel. En vez de traducir el
programa fuente y grabar en forma permanente el código objeto que se produce durante la
corrida de compilación para utilizarlo en una corrida de producción futura, el programador
sólo carga el programa fuente en la computadora junto con los datos que se van a
procesar.
A continuación, un programa intérprete, almacenado en el sistema operativo del disco,
convierte cada proposición del programa fuente en lenguaje de máquina conforme vaya
siendo necesario durante el proceso de los datos. No se graba el código objeto para
utilizarlo posteriormente.
La siguiente vez que se utilice una instrucción, se le debe interpretar otra vez y traducir a
lenguaje máquina. lo cual hace que el programa sea más lento en tiempo de ejecución
(porque se va revisando el código en tiempo de ejecución) pero más rápido en tiempo de
diseño (porque no se tiene que estar compilando a cada momento el código completo).
22. Según el paradigma de programación
Un paradigma de programación representa un enfoque particular o filosofía para la
construcción del software.
No es mejor uno que otro sino que cada uno tiene ventajas y desventajas.
También hay situaciones donde un paradigma resulta más apropiado que otro.
Atendiendo al paradigma de programación, se pueden clasificar los lenguajes en :
Lenguajes imperativos
BASIC,C ,C++ ,Java ,C# ,Perl
Lenguajes Funcionales
– Puros: Haskell ,Miranda
– Híbridos: Lisp ,Scheme ,Ocaml ,Standard ML ,ML
Lenguajes Logicos
Prolog
Lenguajes orientados a objetos
Action Script, Ada ,C++ , C# , VB.NET ,Visual FoxPro , Clarion , Delphi ,
Harbour , Eiffel ,Java , JavaScript , Lexico (en castellano) , Objective-C, Ocaml
, Oz , Perl ,PHP, PowerBuilder , Python.
23. 1.4 Origen del Lenguaje C. El sistema
operativo UNIX
C es un lenguaje de programación creado en 1969 por Ken Thompson
y Dennis M. Ritchie en los Laboratorios Bell como evolución del
anterior lenguaje B, a su vez basado en BCPL. Al igual que B, es un
lenguaje orientado a la implementación de Sistemas Operativos,
concretamente Unix. C es apreciado por la eficiencia del código que
produce y es el lenguaje de programación más popular para crear
software de sistemas, aunque también se utiliza para crear
aplicaciones.
Se trata de un lenguaje débilmente tipado de medio nivel pero con
muchas características de bajo nivel. Dispone de las estructuras
típicas de los lenguajes de alto nivel pero, a su vez, dispone de
construcciones del lenguaje que permiten un control a muy bajo nivel.
Los compiladores suelen ofrecer extensiones al lenguaje que
posibilitan mezclar código en ensamblador con código C o acceder
directamente a memoria o dispositivos periféricos.
24. C se desarrolló originalmente (conjuntamente con el sistema
operativo Unix, con el que ha estado asociado mucho tiempo)
por programadores para programadores. Sin embargo, ha
alcanzado una popularidad enorme, y se ha usado en
contextos muy alejados de la programación de sistemas, para
la que se diseñó originalmente.
La versión original de Unix se desarrolló en lenguaje
ensamblador. Más tarde, el lenguaje C se desarrolló para
poder reescribir el sistema operativo.
En 1973, el lenguaje C se había vuelto tan potente que la mayor
parte del kernel Unix, originalmente escrito en el lenguaje
ensamblador PDP-11/20, fue reescrita en C. Éste fue uno de
los primeros núcleos de sistema operativo implementados en
un lenguaje distinto al ensamblador.
25. Programación
Se conoce como programación de computadoras a
la implementación de un algoritmo en un
determinado lenguaje de
programación, conformando un programa.
Mientras que un algoritmo se ejecuta en una máquina
abstracta que no tiene limitaciones de memoria o
tiempo, un programa se ejecuta en una máquina
real, que sí tiene esas limitaciones.
26. Objetivos de la programación
Corrección: un programa es correcto si hace lo que debe hacer. Para
determinar si un programa hace lo que debe es muy importante especificar
claramente qué debe hacer el programa antes de desarrollarlo y una vez
acabado compararlo con lo que realmente hace.
Claridad: es muy importante que el programa sea lo más claro y legible
posible para mejorar el mantenimiento del software.
Cuando se acaba de escribir el código del programa, se deben buscar errores
y corregirlos. Más luego, cuando el programa está concluido, es necesario
hacerle ampliaciones o modificaciones, según la demanda de los usuarios.
Eficiencia: debe consumir la menor cantidad de recursos posible.
Normalmente al hablar de eficiencia se suele hacer referencia al consumo de
tiempo y/o memoria.
La eficiencia y la claridad de un programa pueden ser objetivos contrapuestos: se
puede conseguir mayor claridad sacrificando parte de la eficiencia o viceversa.
Pero hay que tener en cuenta que el tiempo del programador es caro, y que
hoy en día el precio de los ordenadores es razonable y cada vez son más
baratos.
27. ¿Qué es un programador de
computadoras?
Existen muchas definiciones para los programadores de
computadoras, la mayoría de las cuales tienen que ver con
conocimientos técnicos para diseñar, escribir, probar y
documentar programas de software orientados a resolver
problemas usando un lenguaje de programación y una
computadora como herramientas.
Pero además, él o ella poseen la capacidad de resolver problemas
y se deleitan al buscar soluciones particulares y toman como
reto o juego intelectual el hacerlo. Explotan al máximo las
capacidades de las computadoras, convirtiéndose en agentes
de cambio en sus ambientes de trabajo al automatizar tareas
manuales, repetitivas, tediosas, lentas o complejas.
28. Características de un buen
programador
Capacidad analítica para comprender los problemas que se le
planteen.
Lógica y buen sentido común.
Capacidad de observación.
Espíritu autodidacta e investigativo.
Habilidad para estructurar una serie de pasos que conduzcan a
la solución de los problemas tomando en cuenta las
capacidades y limitantes de la computadora.
Podemos mencionar además de las anteriores otras
características adicionales igualmente importantes que un
programador debe poseer, tales como la constancia, la
dedicación, la disciplina y el deseo de superación.
29. La actitud del programador es vital, pero las habilidades lo son más. Tener la
actitud no es lo mismo que ser competente, por tanto existen un cierto
conjunto de herramientas básicas que debes dominar
Conocer y dominar conceptos básicos de informática (ordenador, hardware, software y
su clasificaciones, datos, información, sus unidades de medida y los diferentes medios de
almacenamiento de datos ).
Aprender cómo aprovechar al máximo tu sistema operativo, sus capacidades y las del
ordenador, en particular cómo administrar archivos, cómo ejecutar programas y utilizar los
periféricos; debes además conocer cómo utilizar sus herramientas (utilerías de discos,
editores de texto, calculadoras, programas de gráficos, administradores de impresión, etc.)
y las facilidades que ofrece (multitarea, modos gráficos y modo texto, uso de ventanas,
etc.).
Consigue un inglés funcional, la mayoría de los lenguajes de programación incorporan
en su sintaxis una gran cantidad de palabras inglesas, además, más de la mitad del
contenido de la Red se encuentra en este idioma.
conocer y dominar conceptos teóricos fundamentales de la programación tales como
variables, constantes, tipos de datos, algoritmo, sentencias de control, flujogramación,
programa, lenguajes de programación, estructuras de datos, compilación, traducción,
además de tópicos relacionados tales como el ciclo de vida de los programas, estrategias
de diseño y métodos de prueba de programas.
Obtén el compilador de un lenguaje y aprende a programar en él. Estudia un lenguaje
de programación. Aprende a programar en él. Usa las herramientas que ofrece y los
conceptos de programación que implementa. Lee los ejemplos que traen los libros para
comprenderlos y practica modificándolos.
30. Características de un buen programa.
Confiabilidad, es decir, el programa debe funcionar
en prácticamente cualquier situación.
Debe advertir los errores de entrada comunes y
obvios.
Debe ser bien estructurado, es decir, que utilicen
organizaciones de la programación estructurada.
Estar adecuadamente documentado y ser
comprensible, no sólo para quien lo crea, sino para
otros programadores. Esto es para facilitar las
futuras y muy posibles modificaciones que requiera.
32. Pasos de la Programación
Pasos Descripción
Determinar objetivos, salida, entrada y
1. Especificación
requerimientos del programa
Delinear los componentes y sus
2. Diseño
interfaces
Generar el programa en un lenguaje
3. Codificación
de programación
Verificar desempeño del programa,
4. Prueba determinar errores de sintaxis y lógica
Redactar documentación para
5. Documentación usuarios y programadores
Corrección de errores, ajustes por
6. Mantenimiento nuevos cambios
34. Definición y descripción de algoritmos
Se denomina algoritmo a una serie finita de pasos o instrucciones mediante los
cuales se resuelve un problema o se ejecuta una tarea específica. Más
formalmente los algoritmos se caracterizan por:
• Ser finitos, porque tienen un número determinado de pasos.
• Ser definidos, lo que implica que cada vez que se siga se obtendrá
invariablemente el mismo resultado.
• Ser precisos, pues cada paso tiene un orden a seguir.
Los algoritmos especifican los pasos (instrucciones) que permiten llegar a la
solución de un problema, sin importar si el proceso es manual o automatizado.
De modo que no se encuentran exclusivamente relacionados con la
computación.
En la vida cotidiana son empleados en diversas ocasiones. Por ejemplo, los
pasos seguidos para retirar dinero de un cajero automático de un banco o
cuando se sigue una receta de cocina. Se puede entenderlos entonces, como
una especie de “receta” que indica los pasos que permiten alcanzar la solución
de un problema.
35. Diagrama de flujo
"Es un esquema para representar gráficamente un
algoritmo. Se basan en la utilización de diversos
símbolos para representar operaciones específicas.
Se les llama diagramas de flujo porque los símbolos
utilizados se conectan por medio de flechas para
indicar la secuencia de operación.
Se utiliza principalmente en programación, economía y
procesos industriales.
36. Simbología
Inicio / Terminación. Este símbolo se utiliza para señalar el
comienzo así como el final de un diagrama. Tradicionalmente
se colocan las palabras “INICIO” ó “FIN” dentro de la figura para
hacerlo más explícito.
Es el único símbolo que solamente tiene una conexión (flecha)
ya sea de salida, en el de inicio, o de entrada, para el de fin.
Entrada de datos. En este símbolo se indican los valores
iniciales que deberá recibir el proceso. Esto se hace
asignándoles letras o nombres de variables para cada uno de
los valores y anotando estas letras en el interior de la figura.
Este símbolo siempre deberá tener al menos una conexión
entrante (generalmente del inicio) y una de salida.
37. Proceso de datos. Este símbolo lo utilizaremos para señalar operaciones
matemáticas, aritméticas o procesos específicos que se realicen con nuestros datos.
La manera de anotar dichos procesos, puede ser mediante una descripción breve de la
operación o mediante una asignación de dicha operación hacia una variable como por
ejemplo: R ← A + B
Este símbolo siempre deberá tener al menos una conexión de entrada y una de salida.
Decisión. Este símbolo nos representa una disyuntiva lógica o decisión. En su interior
se anota una instrucción o pregunta que pueda ser evaluada como cierta o falsa y que
determine el flujo del programa.
Este símbolo es el único que puede contener dos salidas y en cada una de las salidas
se suele poner un rótulo de “si/no” o “cierto/falso” indicando con esto cual de ellas se
tomará según el resultado de la evaluación de la función.
Es una buena práctica de diagramación utilizar siempre el mismo lado para los
positivos siempre que esto sea posible.
38. Desplegado de información. Este símbolo se utiliza
para mostrar un resultado, el cual puede representar la
solución al problema que se pretende resolver y que fue
conseguida a través del resto del diagrama.
Dentro de su interior se anotará la variable con el
resultado final o el mensaje que represente el resultado
del algoritmo.
Generalmente veremos este símbolo muy cerca del final
del proceso y precedido por el símbolo de terminación.
Este símbolo siempre deberá tener al menos una
conexión de entrada y una de salida.
40. Ejercicios propuestos
1. Hacer un diagrama para calcular el área de un triángulo.
2. Hacer un diagrama para convertir de grados centígrados a grados Fahrenheit.
3. Hacer un diagrama para imprimir la suma de los números del 1 al 100.
4. Hacer un diagrama que te pida un número y te diga si es par, es non y/o es primo.
5. Hacer un diagrama para imprimir la sucesión de Fibonacci.
6. Hacer un diagrama que pida 10 números y muestre el promedio.
7. Hacer un diagrama que pida 3 números y diga cual es el mayor.
8. Hacer un diagrama que pida la edad y despliegue si es menor de edad (<18), mayor
(>=18) o si pertenece a la 3ª edad.(>=60)
41. Ejercicios propuestos (cont.)
Hacer un diagrama para calcular el factorial de un número.
Hacer un diagrama que calcule e imprima N números primos.
Hacer un diagrama que solicite 4 calificaciones y diga si está
reprobado o no, según las reglas de tu escuela.
Hacer un diagrama que pida un número N y despliegue todas
las combinaciones de dos números que sumados den N.
Hacer un diagrama que despliegue la tabla de multiplicar de un
número X.
42. Ejercicio No. 1
Diseñar un diagrama de flujo para calcular y mostrar el área de un triángulo.
El diagrama deberá de solicitar los datos necesarios y mostrar el resultado.
43. Ejercicio No. 2
Diseñar un diagrama de flujo para convertir de grados centígrados a grados
Fahrenheit.
El diagrama deberá de solicitar los datos necesarios y mostrar el resultado.
44. Ejercicio No. 4
Diseñar un diagrama de flujo que solicite un número y determine si este es
par o es non.
45. Variables
Las variables son los “contenedores” de los datos que se van a
procesar, son un elemento común en la mayor parte de los lenguajes
de computación. Físicamente, las variables son áreas designadas de
memoria en donde se guarda el valor del dato. Supongamos que se
escribe un programa en el cual se solicitan sueldos de empleados. Se
debe contar con una variable que guarde ese dato. Puede escogerse
nombrarla, por ejemplo, v_sueldo.
Cuando, a solicitud del programa, el usuario introduce un número, ese
dato se convierte en el valor de la variable v_sueldo. Entonces de
manera semejante como en álgebra o física, las variables pueden ser
usadas en programación para realizar operaciones de informática. Si
el programa indica la declaración v_sueldo + 500 y el valor en
v_sueldo = 1.000, el resultado para esta declaración va a ser 1.500.
46. c
i
A continuación se presenta como ejemplo un sencillo programa fuente, escrito en C, y justo al lado se
ó
explica la acción que realizará la computadora en respuesta a los comandos del programa.
n
El programa tiene como finalidad el cálculo del promedio de una lista de cinco números.
q
Instrucciones en Lenguaje C Acción de la computadora
u
1.- Define una matriz (datos) de números enteros y le asigna los
e
int datos[ ] = { 25, 88, 20, 75, 62 };
valores 25, 88, 20, 75, 62.
int nDatos = 5; 2.- Define la variable (nDatos) de tipo entero y le asigna el valor 5.
r
3.- Define la función (promedio) que devuelve un número entero.
e
int promedio ()
{a
l int suma; 4.- Define la variable (suma) de tipo entero.
i int prom; 5.- Define la variable (prom) de tipo entero.
zint cont; 6.- Define la variable (cont) de tipo entero.
asuma = 0; 7.- Asigna a suma el valor 0.
r 8.- Para cada elemento de la matriz datos, añade su valor a la
for (cont=0; cont<nDatos; cont++)
á variable suma.
{
l suma += datos [cont];
a }
9.- Asigna a prom el resultado de dividir la variable suma por la
prom=suma/nDatos;
variable nDatos.
c
10.- Devuelve como resultado de la función el contenido de la variable
oreturn (prom); prom.
m
}