Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ALGORÍTMICA Y
PROGRAMACIÓN
TEORÍA
YAMIWIN
01/01/2018
La principal razón para que las personas aprendan lenguajes de programación es utilizar un ordenador como
una herramienta para la resolución de problemas.
Ensayo y error: Consiste en actuar hasta que algo funcione. Puede tomar mucho tiempo y no es seguro
Iluminación: Implica la súbita conciencia de una solución que sea viable. Es muy utilizado el modelo
Heurística: Se basa en la utilización de reglas empíricas para llegar a una solución.
Algoritmos: Consiste en aplicar adecuadamente una serie de pasos detallados que aseguran una solución
correcta.
Análisis de medios y fines : Se funda en la comparación del estado inicial con la meta que se pretende
alcanzar para identificar las diferencias.
Razonamiento analógico: Se apoya en el establecimiento de una analogía entre una situación que resulte
familiar y la situación problema. Requiere
Lluvia de ideas: Consiste en formular soluciones viables a un problema. El modelo propuesto por Mayer
(1992) plantea: definir el problema; generar muchas soluciones (sin evaluarlas); decidir los criterios
para estimar las soluciones generadas; y emplear esos criterios para seleccionar la mejor solución.
El pensamiento lateral: requiere que se exploren y consideren la mayor cantidad posible de
alternativas para solucionar un problema.
Modelo de procesamiento de información: consiste en plantear varios momentos para un problema (estado
inicial, estado final y vías de solución.
El objetivo del análisis del problema, es ayudar al programador a llegar a una cierta comprensión de la naturaleza del
mismo. Este análisis supone, en particular, la superación de una serie de pasos.
DISEÑO DE ALGORITMOS
ALGORITMO (Matemático Persa Mohamed ibn Musa al Khwarizmi 780-850 d.C, tratado “Quitad Al Mugabala” entre 800 y 825.)
Un algoritmo es una secuencia ordenada de instrucciones, pasos o procesos que llevan a la solución
de un determinado problema. Los hay tan sencillos y cotidianos como seguir la receta para hacer una
arepa, abrir una puerta, lavarse los dientes, etc.; hasta los que conducen a la solución de problemas muy
complejos.
TIPOS DE ALGORITMOS
REPRESENTACIÓN DE ALGORITMOS
Gráficos. Las operaciones descritas en el algoritmo se representen con símbolos y/o formas
geométricas. Los más conocidos son los
DIAGRAMAS DE FLUJO
LENGUAJE NATURAL.
PSEUDOCÓDIGO. El pseudocódigo (falso lenguaje, el prefijo pseudo significa falso) es una
descripción de alto nivel de un algoritmo que emplea una mezcla de lenguaje natural con algunas
convenciones sintácticas propias de lenguajes de programación, como asignaciones, ciclos y
condicionales, aunque no está regido por ningún estándar: INICIO, LEER, ESCRIBIR,
MOSTRAR, ASIGNAR, HACER, FIN. Los algoritmos descritos en pseudocódigo requieren menos
espacio para representar instrucciones complejas. El pseudocódigo está pensado para facilitar a las
personas el entendimiento de un algoritmo, y por lo tanto puede omitir detalles irrelevantes que son
necesarios en una implementación.
COMPILACIÓN Y EJECUCIÓN.
Hace falta software que transforme el código en el lenguaje de alto nivel en código entendible por el
ordenador en un proceso conocido como interpretación o compilación (dependiendo del lenguaje).
Es posible que al hacer la codificación se cometan errores de sintaxis gramaticales que riñan con las normas
establecidas en el lenguaje de programación elegido. Como se dijo antes, el compilador analiza, una a una,
las instrucciones del programa codificado para detectar si están bien escritas o no. Si existen errores se
producirá un listado de éstos indicando su localización y causa del error, para corregirlos e iniciar de nuevo la
fase de compilación. Cuando no existan errores el programa se traduce al lenguaje de máquina, único
lenguaje que la computadora entiende, lo cual da origen a lo que se conoce como programa objeto. En esta
fase se les asigna dirección de memoria a todos los campos y además se le da valor a los campos constantes.
EJECUCIÓN
Esta fase consiste en dar una orden para que sean ejecutadas, una a una, las instrucciones del programa
objeto; por lo tanto, es necesario suministrar datos de entrada cada vez que la computadora encuentre una
orden de este tipo, de igual manera como se hizo en la prueba de escritorio. En esta fase se le da valor a los
campos variables. Es necesario analizar los resultados obtenidos para darse cuenta si están de acuerdo con los
resultados reales que se desean conseguir; de lo contrario, hay que hacer modificaciones en las instrucciones
que causan el error o errores, en caso de que éstos sean leves. Si son errores graves de lógica es necesario
reanalizar el problema.
DEPURACIÓN
Después de traducir el algoritmo en un lenguaje de programación como Logo, el programa resultante debe
ser probado y validados los resultados. A este proceso se le conoce como depuración.
La corrección de fallas es una de las situaciones que mayor frecuencia tienen en el mundo profesional. Con
esta actividad se intenta identificar fallas sintácticas o lógicas en programas que no funcionan
adecuadamente; una vez aislada la falla, esta se soluciona y se vuelve a probar el programa y a validar los
resultados. Según Jonassen (2003), para corregir fallas efectiva y eficientemente se requiere conocimiento del
sistema (comprensión conceptual de cómo funciona el sistema), conocimiento procedimental (cómo llevar a
cabo tanto procedimientos de solución de fallas, como actividades de prueba) y conocimiento estratégico
(saber cuándo, dónde y por qué aplicar procedimientos de solución de fallas y actividades de prueba).
LA DOCUMENTACIÓN
También se elabora un manual de corrida (manual del operador) que contiene todas las instrucciones que
necesita el operador de la computadora para correr el programa, qué archivos de entrada se van a cargar,
qué tipos de salida se deben preparar, etcétera.
LA DOCUMENTACIÓN SE DIVIDE EN TRES PARTES:
1. Documentación Interna
2. Documentación Externa
3. Manual del Usuario
1. Documentación Interna: Son los comentarios o mensaje que se añaden al código fuente para hacer más
claro el entendimiento de un proceso.
3. Manual del Usuario: Describe paso a paso la manera cómo funciona el programa, con el fin de que el
usuario obtenga el resultado deseado.
DOCUMENTACIÓN EXTERNA
Cuando a través de distintas pruebas se establece que el programa está a punto, es decir, funciona
produciendo resultados correctos, es necesario documentarlo, para que éste pueda ser utilizado por
distintos programadores o usuarios sin necesidad de recurrir directamente a su autor. La documentación
debe incluir aspectos relevantes del proceso como: enunciado del problema, narración de la solución,
método empleado, definición de campos variables utilizados, listado del programa fuente, dispositivos de
computación utilizados, listado de la salida producida. Si el programa utiliza subprogramas, éstos también
deben estar documentados.
DOCUMENTACIÓN DE SUBPROGRAMAS
Una de las grandes utilidades que tienen los subprogramas es que se construyen para que sean utilizados
por diferentes módulos, cada que se requiera la tarea específica que realiza el módulo subordinado. Debido
a esto, cada que se construye un subprograma se debe indicar la forma de su empleo. Esta documentación
debe incluir:
Nombre: es el nombre escogido por quien lo construye, para diferenciarlo de los demás subprogramas; por
lo tanto, debe ser único.
Parámetros: Se deben describir cada uno y en el orden en que se encuentran en la lista; no importa el
nombre del parámetro, pero sí el tipo de dato de cada uno de ellos.
Método usado: esta parte se describe en caso de que la solución de la tarea que hace el subprograma tenga
más de un modelo de solución; en consecuencia, se debe decir cuál de los métodos de solución se empleó.
PROGRAMA
Una vez que el algoritmo está diseñado y representado gráficamente se pasa a la etapa de “traducción”
generando así un programa (programa fuente). Entonces un programa de ordenador no es más que una
secuencia de instrucciones escritos en un lenguaje (de programación) en particular, con un grupo de datos
específicos que el ordenador debe seguir para realizar una tarea. Lo anterior nos lleva al razonamiento de
que un programa nos sirve para solucionar un problema específico.
Las computadoras pueden ejecutar un gran número de operaciones a muy altas velocidades y con
intervención mínima de seres humanos. Sin embargo, a una computadora se le debe indicar exactamente qué
operaciones debe ejecutar y en qué orden. A estos conjuntos de instrucciones se les denomina programas
para computadora y son elaborados por programadores. Un programa es una serie de instrucciones escritas en
forma codificada que la computadora puede traducir a su propio lenguaje.
Con base en el algoritmo terminado, se escribe una serie de instrucciones detalladas. Las que se denominan
programa fuente y suelen estar escritas en lenguaje simbólico. Un lenguaje simbólico es aquél que la mente
humana puede entender con relativa facilidad, pero que no puede entender una computadora. El sistema de
computación no puede entender directamente el lenguaje simbólico que usó el programador. Antes debe ser
traducido a lenguaje de máquina. El compilador efectúa esta traducción. El compilador es un programa
especial que única y exclusivamente traduce el lenguaje simbólico al lenguaje de máquina. Al programa
traducido se le denomina programa objeto.
PROGRAMACIÓN ESTRUCTURADA
En esta programación se utiliza una técnica que genera programas que sólo permiten utilizar tres
estructuras de control:
Secuencias (instrucciones que se leen secuencialmente).
Alternativas (sentencias SI).
Iterativas (bucles condicionales).
PROGRAMACIÓN MODULAR
Completa la programación anterior permitiendo la definición de módulos independientes cada uno de los
cuales se encargará de una tarea del programa. De esta forma el programador se concentra en la
codificación de cada módulo haciendo más sencilla esta tarea. Al final se deben integrar los módulos para
dar lugar a la aplicación final.
El código de los módulos puede ser invocado en cualquier parte del código. Realmente cada módulo se
comporta como un subprograma que, a partir de unas determinadas entradas, obtienen unas salidas
concretas. Su funcionamiento no depende del resto del programa por lo que es más fácil encontrar los
errores y realizar el mantenimiento.
Es la más novedosa, se basa en intentar que el código de los programas se parezca lo más posible a la
forma de pensar de las personas. Las aplicaciones se representan en esta programación como una serie de
objetos independientes que se comunican entre sí.
Cada objeto posee datos y métodos propios, por lo que los programadores se concentran en programar
independientemente cada objeto y luego generar el código que inicia la comunicación entre ellos.
Es la programación que ha revolucionado las técnicas últimas de programación ya que han resultado un
importante éxito gracias a la facilidad que poseen de encontrar fallos, de reutilizar el código y de
documentar fácilmente el código.
Una vez que se ha terminado de escribir un algoritmo es necesario comprobar que realiza las tareas para
las que se ha diseñado y produce el resultado correcto y esperado. El modo más normal de comprobar un
algoritmo es mediante su ejecución manual, usando datos significativos que abarquen todo el posible
rango de valores y anotando en una hoja de papel las modificaciones que se den estos datos y en los del
resto del algoritmo, en las diferentes fases hasta la obtención de los resultados. Este proceso se conoce
como corrida en frio o traza.
DATOS
Los datos son la materia prima de trabajo de un programa. El programa toma los datos (de entrada) y los
convierte en información (salida) útil.
Datos Numéricos: Permiten representar valores escalares de forma numérica, esto incluye a los
números enteros y los reales. Este tipo de datos permiten realizar operaciones aritméticas comunes.
Datos Lógicos: Son aquellos que solo pueden tener dos valores (cierto o falso) ya que representan el
resultado de una comparación entre otros datos (numéricos o alfanuméricos).
Un dato real de precisión doble es un valor que puede tener un punto decimal (puede tener hasta 16 dígitos
significativos, lo que da lugar a cálculos más exactos) y puede estar comprendido en el rango:
char(carácter-1byte)
Es el tipo básico alfanumérico, es decir que puede contener un carácter, un dígito numérico o un signo de
puntuación. Desde el punto de vista del ordenador, todos esos valores son caracteres. En C++ este tipo
siempre contiene un único carácter del código ASCII. El tamaño de memoria es de 1 byte u octeto.
Cadenas de caracteres
Una cadena de caracteres es una secuencia de caracteres delimitada por comillas ("). Dentro de la cadena,
pueden aparecer caracteres en blanco. El tipo cadena de caracteres es un caso especial de tipo de datos, ya
que algunos lenguajes lo incorporan como tipo elemental (con un tamaño fijo), mientras que en otros
lenguajes se define como un vector de caracteres (tipo char). Es una secuencia de caracteres alfanuméricos
que permiten representar valores identificables de forma descriptiva, esto incluye nombres de personas,
direcciones, etc. Es posible representar números como alfanuméricos, pero estos pierden su propiedad
matemática, es decir no es posible hacer operaciones con ellos. Este tipo de datos se representan
encerrados entre comillas.
bool (booleano)
Las variables de este tipo sólo pueden tomar dos valores "true" o "false". Sirven para evaluar expresiones
lógicas. Este tipo de variables se puede usar para almacenar respuestas.
OPERADORES
Un operador es un símbolo o grupo de símbolos que actúa sobre una, dos o más constantes o variables para
realizar una determinada operación con un determinado resultado.
Aritméticos: Posibilitan las operaciones entre datos de tipo numérico y dan como resultado otro valor de
tipo numérico. Los operadores matemáticos permiten realizar operaciones aritméticas básicas con los tipos
de datos que intervienen en un programa, bien números propiamente dichos, o variables cuyo contenido
sea numérico, o bien valores de retorno de funciones que sean numéricos.
Alfanuméricos: Permiten operar con datos de tipo carácter o cadenas. La mayoría de los lenguajes de
programación admiten el operador + para realizar la concatenación (unión) de caracteres o cadenas.
Relaciónales: Permiten la comparación entre datos del mismo tipo y dan como resultado uno de dos
valores posibles: Verdadero o Falso.
Se utilizan para establecer una relación entre dos valores.
Compara estos valores entre si y esta comparación produce un resultado de certeza o falsedad
(verdadero o falso).
Los operadores relaciónales comparan valores del mismo tipo (numéricos o cadenas).
Tienen el mismo nivel de prioridad en su evaluación.
Los operadores relaciónales tiene menor prioridad que los aritméticos.
Operadores Relaciónales
> Mayor que
< Menor que
> = Mayor o igual que
< = Menor o igual que
< > Diferente
= Igual
Lógicos: Posibilitan la evaluación lógica de dos expresiones de tipo lógico. Dan como resultado uno de
dos valores posibles: Verdadero o Falso.
Operadores Lógicos
And Y
Or O
Not Negación
AND OR NOT
IDENTIFICADORES
Identificadores son los nombres que se dan a las constantes simbólicas, variables, funciones,
procedimientos, u otros objetos que manipula el algoritmo. La regla para construir un identificador
establece que:
CONSTANTES
Son datos cuyo valor no cambia durante todo el desarrollo del programa. Las constantes podrán ser
literales o con nombres. Las constantes literales serán un valor propiamente dicho y las que tienen nombre
se identifican por su nombre y el valor asignado. Tendremos pues constantes:
VARIABLES
Una variable es un objeto cuyo valor puede cambiar durante el desarrollo del algoritmo. Se identifica
por su nombre (identificador) y por su tipo, es el que determina el conjunto de valores que podrá tomar
la variable. En los algoritmos se deben declarar las variables. Cuando se traduce el algoritmo a un
lenguaje de programación y se ejecuta el programa resultante, la declaración de cada una de las variables
originará que se reserve un determinado espacio en memoria etiquetado con el correspondiente
identificador. Dependiendo de su ubicación dentro del algoritmo (programa) pueden ser globales
o locales.
Los nombres pueden estar formados por una combinación de letras y números.
El primer carácter de un nombre debe ser una letra.
La mayoría de los lenguajes de programación diferencian las mayúsculas de las minúsculas.
Los nombres deben ser nemotécnicos, con solo leerlos se puede entender lo que contienen. Deben
ser muy descriptivos; no utilizar abreviaturas, a menos que se justifique plenamente.
Es conveniente utilizar una sola palabra.
No utilizar caracteres reservados (%, +, /, >, etc).
Se debe tener en cuenta que algunos lenguajes de programación no admiten las tildes.
No utilizar palabras reservadas por los lenguajes de programación.
Para cumplir con convenciones ampliamente
El carácter subrayado se considera como una letra más.
Un identificador no puede contener espacios en blanco
ANSI C permite definir identificadores de hasta 31 caracteres de longitud.
Numéricas
Por su contenido Lógicas
Alfanuméricas
VARIABLES
De trabajo
Por su uso Contadores
Acumuladores
CONTADORES
Los contadores son una estructura de programación que consistente en almacenar en una variable (V) el
valor de ella misma (V) más un valor constante n (V=V + n). Es muy útil para controlar el número de
veces que debe ejecutarse un grupo de instrucciones (ciclo o bucle).
Los contadores deben declararse y muchas veces inicializarse (darle un valor antes de comenzar a usarse)
antes de activar el ciclo donde se necesite el contador, de lo contrario se repetirá el valor inicial cada vez
que se repite el ciclo.
operador significado
+ = Suma y asigna
− = Resta y asigna
* = Multiplica y asigna
/ = Divide y asigna
ACUMULADORES
Estructura muy utilizada en programación (V =V + S) y que consiste en almacenar en una variable (V) el
valor de ella misma (V) más otro valor variable (S). Es muy útil para calcular sumatorias.
La diferencia con el contador radica en que el incremento o disminución de cada suma es variable en lugar
de constante, como en el caso del contador. Los contadores deben declararse y muchas veces inicializarse.
EXPRESIONES
Una expresión es una combinación de operadores y operandos. Los operandos podrán ser constantes,
variables u otras expresiones y los operadores de cadena, aritméticos, relacionales o lógicos. Las
expresiones se clasifican, según el resultado que producen, en:
• Numéricas. Los operandos que intervienen en ellas son numéricos, el resultado es también de tipo
numérico y se construyen mediante los operadores aritméticos. Se pueden considerar análogas a las
fórmulas matemáticas.
• Alfanuméricas. Los operandos son de tipo alfanumérico y producen resultados también de dicho tipo.
Se construyen mediante el operador de concatenación, representado por el operador ampersand (&) o
con el mismo símbolo utilizado en las expresiones aritméticas para la suma (+).
• Booleanas. Su resultado podrá ser verdad o falso. Se construyen mediante los operadores relacionales y
lógicos. Actúan sobre operandos del mismo tipo y siempre devuelven un resultado de tipo lógico
determinados por las tablas de verdad correspondientes a cada uno de ellos.
ESTRUCTURAS DE CONTROL
Llamaremos estructuras de control a las acciones que tienen por objeto marcar el orden de realización
de los distintos pasos de un programa o algoritmo. Cada estructura tiene un punto de entrada y uno de
salida, lo que facilita la depuración de posibles errores. Estas son de tres tipos: Una estructura se
define como un esquema con cierta distribución y orden que permite representar una idea de forma
simplificada y que bajo ciertas condiciones es constante (Trejos, 1999).
ESTRUCTURA SECUENCIAL
La estructura de control secuencial es la más sencilla. También se la conoce como estructura lineal. Se
compone de instrucciones que deben ejecutarse en forma consecutiva, una tras otra, siguiendo
una línea de flujo. Solamente los problemas muy sencillos pueden resolverse haciendo uso
únicamente de esta estructura. Normalmente, la estructura secuencial hace parte de soluciones a
problemas complejos en las que se la utiliza mezclada con estructuras iterativas (repetir varias
veces un conjunto de instrucciones) y condicionales (tomar decisiones)
ESTRUCTURA CONDICIONAL
Es fundamental que los estudiantes presten atención especial a las estructuras que utilizan para
resolver problemas y las reconozcan para lograr mayor control sobre la solución planteada. De
esta manera, la programación de computadores les ayuda a planear conscientemente las
secuencias de acciones que resuelven un problema planteado y las estructuras involucradas en una
solución dada.
La estructura condicional se utiliza para indicarle al computador que debe evaluar una condición
y, a partir del resultado, ejecutar el bloque de instrucciones correspondiente. La forma más
común está compuesta por una proposición (condición) que se evalúa y dos bloques de
instrucciones que se ejecutan, uno cuando la condición es verdadera (selección simple y doble) y otro
cuando ésta es falsa (únicamente en la selección doble). Algunos autores se refieren a este tipo de
estructura como estructura de selección, estructura selectiva o estructura de decisión; en esta guía,
todas estas denominaciones son consideradas sinónimas.
Para que una proposición (frase declarativa) sea válida, debe poder afirmarse que es verdadera o
falsa. Adicionalmente, las proposiciones pueden ser sencillas o compuestas. Las proposiciones
compuestas se forman con dos o más proposiciones sencillas unidas por operadores lógicos (y, o,
no). Cuando se unen dos proposiciones por medio del operador lógico “y”, significa que ambas
proposiciones deben ser verdaderas (conjunción). Cuando se unen dos proposiciones por medio del
operador lógico “o”, significa que por lo menos una de las dos proposiciones debe ser verdadera
(disyunción).
Por su parte, un bloque de instrucciones puede contener una o varias instrucciones que se ejecutan una
detrás de otra. La estructura condicional tiene tres variantes:
• Selección simple.
• Selección doble.
• Selección múltiple.
Las estructuras condicionales simple y doble evalúan una proposición (condición) que devuelve
como resultado únicamente dos valores posibles y excluyentes: verdadero o falso. En cambio, la
estructura condicional de selección múltiple permite que la condición devuelva más de un valor
posible y que para cada uno de esos valores se ejecute el bloque de instrucciones
correspondiente.
SELECCIÓN SIMPLE
Se ejecutarán unas acciones u otras según el resultado que se obtenga al evaluar una expresión. Se
considera que dicho resultado ha de ser de un tipo ordinal, es decir de un tipo de datos en el que cada uno
de los elementos que constituyen el tipo, excepto el primero y el último, tiene un único predecesor y un único
sucesor.
Cada grupo de acciones se encontrará ligado con: un valor, varios valores separados por comas, un
rango, expresado como valor_inicial.., valor_final o una mezcla de valores y rangos.
Se ejecutarán únicamente las acciones del primer grupo que, entre los valores a los que está ligado, cuente
con el obtenido al evaluar la expresión. Cuando el valor obtenido al evaluar la expresión no esté presente en
ninguna lista de valores se ejecutarían las acciones establecidas en la cláusula si_no, si existiese dicha cláusula.
ESTRUCTURA ITERATIVA (REPETICIÓN)
En programación existen al menos dos tipos de estructuras repetitivas, las cuales a su vez
tienen variantes en los diferentes lenguajes de programación. La característica común es que ambos
tipos permiten ejecutar una o varias instrucciones:
• un número determinado de veces.
• Mientras se cumpla una condición.
Debido a que esta guía está diseñada para educación básica, solo se cubre aquí el primer tipo
de estructura repetitiva: Ejecutar una o varias instrucciones un número determinado de veces.
La estructura repetitiva mientras (en inglés while) es aquella en que el cuerpo del bucle se repite
mientras se cumple una determinada condición. Cuando se ejecuta la instrucción mientras, la primera
cosa que sucede es que se evalúa la condición (una expresión booleana). Si se evalúa falsa, no se toma
ninguna acción y el programa prosigue en la siguiente instrucción del bucle. Si la expresión booleana es
verdadera, entonces se ejecuta el cuerpo del bucle, después de lo cual se evalúa de nuevo la expresión
booleana. Este proceso se repite una y otra vez mientras la expresión booleana (condición) sea
verdadera
mientras (condición)
acción S1
acción S2
.
.
acción Sn
fin _ mientras
El bucle hacer-mientras es análogo al bucle mientras y el cuerpo del bucle se ejecuta una y otra vez
mientras la condición (expresión booleana) sea verdadera. Existe, sin embargo, una gran diferencia y es
que el cuerpo del bucle está encerrado entre las palabras reservadas hacer y mientras, de modo que las
sentencias de dicho cuerpo se ejecutan, al menos una vez, antes de que se evalúe la expresión booleana.
En otras palabras, el cuerpo del bucle siempre se ejecuta, al menos una vez, incluso aunque la expresión
booleana sea falsa.
hacer
acción
acción
acción
mientras (expresión)
En muchas ocasiones se conoce de antemano el número de veces que se desean ejecutar las acciones d e
un bucle. En estos casos, en el que el número de iteraciones es fijo, se debe usar la estructura desde o
para. La estructura para ejecuta las acciones del cuerpo del bucle un número especificado de veces y
de modo automático controla el número de iteraciones o pasos a través del cuerpo del bucle.
Una estructura de datos es una colección de datos que pueden ser caracterizados por su organización y
las operaciones que se definen en ella. Las estructuras de datos son muy importantes en los sistemas de
computadora. Los tipos de datos más frecuentes utilizados en los diferentes lenguajes de programación
son
ARRAYS (ARREGLOS)
Arreglo: Un Arreglo es una estructura de datos que almacena bajo el mismo nombre (identificador
/variable) una colección de datos del mismo tipo.
Un array es una colección de elementos que se disponen en memoria consecutivamente y que poseen el
mismo tipo y el mismo nombre y que permite acceder a cada elemento individual de la colección a través
de un número entero que se le llama índice. Para que el ordenador asigne la cantidad exacta de memoria
que necesita el array, hay que declararle. En la declaración se indica el tipo de datos que contendrá el
array y la cantidad de elementos.
Los elementos se numeran y referencian con un índice que va desde 0 hasta (número elementos-1).
Un array o arreglo (vector o matriz) es un conjunto finito y ordenado de elementos homogéneos. La
propiedad “ordenado” significa que el elemento primero, segundo, tercero,..., enésimo de un array puede
ser identificado. Y homogéneos porque todos son del mismo tipo de dato.
Un vector es un arreglo donde los elementos que lo conforman están dispuestos linealmente (en
fila o columna), es decir, los datos están organizados de una manera lineal, por lo que para referenciar
un elemento del arreglo es necesario un índice, que indique la posición relativa del elemento en el
arreglo: ai
matriz =
ARRAYS MULTIDIMENSIONALES
Un array puede ser definido de tres dimensiones, cuatro dimensiones, hasta de n-dimensiones. Los
conceptos de rango de subíndices y número de elementos se pueden ampliar directamente desde arrays
de una y dos dimensiones a estos arrays de orden más alto. En general, un array de n-dimensiones
requiere que los valores de los n subíndices puedan ser especificados a fin de identificar un elemento
individual del array. Si cada componente de un array tiene n subíndices, el array se dice que es sólo de n-
dimensiones.