Arreglos y Archivos Ledezma

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 12

INSTITUTO TECNOLOGICO

DE CIUDAD MADERO
TECNOLOGICO NACIONAL
DE MADERO

Alumno: Josué Ángel Ledezma Rodríguez

Docente: Sergio Fidel Rivas Ferretiz

Algoritmos y Lenguajes de Programación

Unidad 5

Tema:
Arreglos y archivos.

27/ Mayo/ 2024

1
UNIDAD 5
Arreglos y archivos

Temas
5.1 Arreglos unidimensionales……………………………3

5.2 Arreglo bidimensionales y multidimensionales………….7

5.3 Apertura entrada-salida de datos, y cierre de archivos………..10

5.4 Elaboración de programas………………………………….12

2
5.1 Arreglos unidimensionales
Un arreglo unidimensional es un tipo de dato que permite almacenar un conjunto
de datos homogéneos, es decir, del mismo tipo de dato. Al declararse el arreglo
debe indicarse el tamaño, en ese momento el compilador reserva la memoria
que se necesite para almacenar los datos solicitados por el programador.
El límite en la dimensión de los arreglos varía dependiendo del lenguaje de pro-
gramación que se utilice, siendo el límite natural la memoria de la computadora.

Un arreglo funciona de la misma forma. Al declararse se debe especificar el ta-


maño, es decir el número de localidades de memoria. Es como si se declararan
muchas variables del mismo tipo al al mismo tiempo y asociadas todas ellas a
un nombre en común.
Por ejemplo, considere el caso de un profesor que desea tener una lista de cali-
ficaciones de cierto grupo. En ese grupo tiene 8 alumnos y las calificaciones son
numéricas no necesariamente enteras. Esta es la lista de calificaciones.

En este caso, podrían declararse 8 variables donde cada una contendría la cali-
ficación de cada alumno, pero esto resulta impráctico de muchas formas. Una de
ellas ocurre si el grupo tuviera más alumnos habría que hacer muchas declara-
ciones y ademas la forma de acceder a los datos sería poco práctico. Por otro
lado, si hubiera alumnos que se dan de baja entonces la lista disminuiría y habría
que hacer cambios funcionales en el código que hayamos escrito. Este problema
y otros más se pueden resolver con un arreglo.

3
Para este ejemplo declaremos un arreglo que se llame calificaciones, de tipo Sin-
gle y de 8 localidades. Esto se haría con la siguiente línea de código.

Como puede obervar, el arreglo fue declarado como Single lo que significa que
todas los contenedores dentro de el son del mismo tipo, es decir, son
homogéneas. Para diferenciar las calificaciones, cada alumno debe tener un
número de lista.

la numeración de las localidades del arreglo comienza en 0, quizá lo más natural


para un humano sería comenzar la numeración de las localidades de memoria
desde 1 hasta 8, pero se comienza en 0 debido a la manera como están nume-
radas las localidades de memoria en las computadoras y se hace de esta forma
en la gran mayoría de los lenguajes de programación.
Cada una de las localidades actúa entonces como una variable independiente
de las demás, por esa razón puede ser leída y/o modificada sin afectar a las
demás. Lo que tienen en común las variables en los contenedores, es que son
del mismo tipo y que pertenecen al mismo arreglo, en este caso el arreglo califi-
caciones.
Por ejemplo, observe el programa a continuación y trate de entender como fun-
ciona.

4
declaramos un arreglo llamado calificaciones tipo Single de 8 posiciones. Luego
se le asignan a todas las lolcalidades todos los valores de la tabla mostrada an-
teriormente.
Si por alguna razón se intentara hacer referencia a una localidad que no exista
en el arreglo, el compilador mandará un mensaje de error. Por ejemplo, si igno-
raramos el hecho de que la numeración de las localidades comienzan en 0,
el código incorrecto sería el siguiente:

Este programa envía un mensaje de error "Fuera de los límites" que indica que
se rebasaron los límites del arreglo, debido a que solo existen 8 posiciones en
memoria que comienzan en 0 y terminan en 7. El programa hace una
referencia a la posición 8, la novena, que no existe. Es muy importante que
tenga esto en mente siempre que desarrolle un programa en cualquier lenguaje
de programación.
Haremos la impresión de todas las calificaciones dentro del arreglo.

5
las asignaciones a las localidades del arreglo se hacen a través de un ciclo,
Debido a que el ingreso de calificaciones es un proceso repetitivo, se utiliza
un ciclo, El ciclo se debe ajustar a las dimensiones del arreglo. Por esta razón
es que en los dos ciclos que utilizamos en este programa la condición inicial
es 0, la condición final es 7 y el incremento es 1.
Se hace una referencia a la localidad del arreglo a través el valor de la varia-
ble de control i, tanto en el caso del Print y el Input.
El pimer ciclo se encarga de solicitar al usuario los valores de las calificacio-
nes, se utiliza un Print para mostrar información al usuario y un Input para
almacenar el valor en la localidad correspondiente. El segundo ciclo se en-
carga de imprimir el contenido del arreglo en la pantalla mediante el Print.
Finalmente, el en caso del Print se hace una combinación de los valores de
la variable de control i y el contenido de las localidades del arreglo calificacio-
nes.

6
5.2 Arreglo bidimensionales y multidimensionales
ARREGLOS UNIDIMENSIONALES
Un arreglo unidimensional es la estructura natural para modelar listas de elemen-
tos iguales. Están formados por una colección finita y ordenada de datos del
mismo tipo. Los datos que se guarden en los arreglos todos deben ser del mismo
tipo.

Se caracteriza por ser un acceso directo, es decir, podemos acceder a cualquier


elemento del arreglo sin tener que consultar a elementos anteriores o posterio-
res, esto mediante el uso de un índice para cada elemento del arreglo que nos
da su posición relativa.

Los arreglos nos permiten hacer un conjunto de operaciones para manipular los
datos guardados en ellos, estas operaciones son: ordenar, buscar, insertar, eli-
minar, modificar entre otras.

La declaración de un arreglo se hace de la siguiente forma:

TipoDeDato nombre[] = new TipoDeDato [n];


Donde n es la capacidad (tamaño) del arreglo.
Ejemplos:

String nombres[ ] = new String [4];


double notas[ ] = new double [5];
int edadEstudiantes[ ] = new int [3];

String nombres[] = new String [4];


Define un arreglo llamado nombres, que almacena cadenas de texto y puede
contener máximo 4 elementos (con índices 0, 1, 2 y 3).
double notas[] = new double [5];
Define un arreglo llamado notas, que almacena números reales y puede tener
máximo 5 elementos (con índices 0, 1, 2, 3 y 4).
int edadEstudiantes[] = new int [3];
Define un arreglo llamado edadEstudiantes, que almacena
números enteros y puede tener máximo 3 elementos (con
índices 0, 1 y 2).
TipoDeDato nombre[] = new TipoDeDato [n];
Los arreglos definidos de esta forma no están inicializados, es decir, no contie-
nen ningún valor, lo cual se representa con null si es String o con 0 si es int o
double.

7
ARREGLOS MULTIDIMENSIONALES
Los arreglos multidimensionales tienen más de una dimensión. En C#, las di-
mensiones se manejan por medio de un par de corchetes, dentro de los que se
escriben los valores de cada dimensión, separados por comas.

Operaciones.

Para manejar un arreglo, las operaciones a efectuarse son:

• Declaración del arreglo


• Creación del arreglo
• Inicialización de de los elementos del arreglo
• Acceso a los elementos del arreglo.
A continuación describiremos cada una de estas operaciones, en C#.

Declaración.

La sintaxis para declarar un arreglo multidimensional es la siguiente:

<tipo> [ , …] < identificador > ;

Donde:

tipo indica el tipo correspondiente a los elementos del arreglo , identificador es el


nombre del arreglo, y el par de corchetes, la coma y las diéresis, [ , …], repre-
sentan las dimensiones del arreglo. Los corchetes encierran todas las comas
necesarias para separar las dimensiones del arreglo.

Ejemplos:

double [ , ] bidim; // Dos dimensiones.


int [ , , ] tridim ; // Tres dimensiones.
char [ , , , ] enciclopedia; // Cuatro dimensiones.
Observe que, en la declaración, el espacio entre los corchetes está vacío. Esto
se debe a que, durante dicha operación, no se reserva espacio en la memoria.

Creación.

La creación de un arreglo multidimensional consiste en reservar espacio en la


memoria para todos sus elementos, utilizando la siguiente sintaxis:

< identificador > = new <tipo> [ dim1, dim2 … dimN ] ;

Donde:

new es el operador para gestionar espacio de memoria, en tiempo de ejecución,


dim1 , dim2 , dimN son valores enteros que representan las dimensiones del
arreglo.

8
El tamaño del arreglo es el resultado de multiplicar los valores de las dimensio-
nes y representa el número de elementos del arreglo.

Ejemplos:

bidim = new double [2, 3] ;

tridim = new int[ 2, 3, 4] ;

enciclopedia = new char[30, 80, 500, 10] ;


Las operaciones de declaración y creación anteriores se pueden agrupar en una
sola instrucción, como se muestra enseguida:

double [ , ] bidim = new double [2,3] ;

int [ , , ] tridim = new int[2, 3, 4] ;

char [ , , , ] enciclopedia = new char[ 30, 80, 500, 10 ] ;

Inicialización.

Un arreglo es un objeto que,cuando es creado por el compilador, se le asignan


automáticamente valores iniciales predeterminados a cada uno de sus elemen-
tos, de acuerdo a los siguientes criterios:

Si el tipo del arreglo es numérico, a sus elementos se les asigna el valor cero.
Si el tipo del arreglo es char, a sus elementos se les asigna el valor ‘\u0000’.
Si el tipo del arreglo es bool, a sus elementos se les asigna el valor false.
Si el tipo del arreglo es una clase, a sus elementos se les asigna el valor null.
Cuando se requiere asignar valores iniciales diferentes de los predeterminados,
es posible agrupar las operaciones de declaración, creación e inicialización en
una sola instrucción, por ejemplo:

int [ , , ] tridim={{{12, 59, 70, 45} , {20, 16, 29, 48} , {93, 75, 43, 10}},

{{44, 72, 30, 24} , {60, 89, 39, 61} , {99, 52, 34, 47}}};
Acceso.

Se puede acceder a los valores de los elementos de un arreglo bidimensional a


través del nombre del arreglo y dos subíndices. Los subíndices deben escribirse
entre corchetes y representa la posición del elemento en el arreglo. Así, podemos
referirnos a un elemento del arreglo escribiendo el nombre del arreglo y los sub-
índices del elemento entre corchetes. Los valores de los subíndices empiezan
en cero para el primer elemento, hasta el tamaño del arreglo menos uno.

9
5.3 Apertura entrada-salida de datos, y cierre de archivos

Un archivo es una colección de registros lógicamente relacionados,


compuesto a su vez de registros, los cuales son una colección de
campos con información, lógicamente relacionados. Los registros de un
archivo se almacenan juntos. Un archivo o fichero informático es un
conjunto de bits que son almacenados en un dispositivo

La organización de os archivos, es la forma de administrar o gestionar los archi-


vos en función de las relaciones de los registros o datos que contienen. Por lo
tanto, existen algunas formas de manipular los archivos:

Independientemente de su organización y estructura lógica de sus registros, se


aplican las siguientes operaciones a los Archivo:

1.- Creación: Permite a los usuarios la creación de nuevos archivos, indicando


una serie tanto de propiedades como de características del archivo

10
2.- Apertura: Esta operación localiza e identifica un archivo existente, para ope-
rarcon el archivo.

3.- Cerrar: Se utiliza para dejar de utilizar el archivo, es decir, termina el acceso
al archivo.

4.- Borrar: Elimina el archivo del directorio o la tabla de contenidos

Es un archivo organizado secuencialmente, los registros se graban de


forma consecutiva. Es común que los registros en un archivo secuencial, se or-
denen de acuerdo a un campo del registro.
Por lo tanto, la estructura de un archivo secuencial los registros se almacenan
en posición: de primer registro, segundo, etc

11
5.4 Elaboración de programas
Análisis
En esta fase se establece el producto a desarrollar, siendo necesario especifi-
car los procesos y estructuras de datos que se van a emplear. Debe existir una
gran comunicación entre el usuario y el analista para poder conocer todas las
necesidades que precisa la aplicación.
Diseño
En esta fase se alcanza con mayor precisión una solución óptima de la aplica-
ción, teniendo en cuenta los recursos físicos del sistema (tipo de ordenador,
periféricos, comunicaciones, etc…) y los recursos lógicos. (sistema operativo.,
programas de utilidad, bases de datos, etc…)
Explotación
En esta fase se realiza la implantación de la aplicación en el sistema o siste-
mas físicos donde van a funcionar habitualmente y su puesta en marcha para
comprobar el buen funcionamiento.
Actividades a tener en cuenta o realizar:
• Instalación del/los programa/s.
• Pruebas de aceptación al nuevo sistema.
• Conversión de la información del antiguo sistema al nuevo (si hay una aplica-
ción antigua)
• Eliminación del sistema anterior.
Mantenimiento
Esta es la fase que completa el ciclo de vida y en ella nos encargaremos de
solventar los posibles errores o deficiencias de la aplicación. Existe la posibili-
dad de que ciertas aplicaciones necesiten reiniciar el ciclo de vida.
Tipo de mantenimiento:
Mantenimiento correctivo: Consiste en corregir errores no detectados en prue-
bas anteriores y que aparezcan con el uso normal de la aplicación. Este mante-
nimiento puede estar incluido en la garantía o mantenimiento de la aplicación.
• Análisis.
• Diseño.
• Codificación o construcción.
• Implantación o explotación.
• Mantenimiento
Codificación
Consiste en traducir los resultados obtenidos a un determinado lenguaje de
programación, teniendo en cuenta las especificaciones obtenidas en el cua-
derno de carga. Se deben de realizar las pruebas necesarias para comprobar
la calidad y estabilidad del programa.

12

También podría gustarte