Anda di halaman 1dari 10

Tecnológico Nacional de México

Instituto Tecnológico de Celaya

Asignatura: Programación Básica

Apuntes Unidad V

Grupo: Ingeniería Mecatrónica A, 1° semestre

Profesor: Gutiérrez Vera Francisco

Alumno: Bravo Hernández José Alonso


Unidad V
Arreglos y archivos
5.1 Arreglos
Definición: Es un lugar en la memoria que guarda valores varias veces a la vez
Los arreglos son una colección de variables del mismo tipo que se referencian
utilizando un nombre común. Un arreglo consta de posiciones de memoria contigua.
La dirección más baja corresponde al primer elemento y la más alta al último. Un
arreglo puede tener una o varias dimensiones. Para acceder a un elemento en
particular de un arreglo se usa un índice. Regularmente se representan por rejas.4
Ejemplo

Esta figura representa un arreglo de ocho casillas cada una de las cuales se puede
utilizar para guardar un dato o elemento como se indica.
En C, todos los arreglos usan cero como índice para el primer elemento. Por tanto,
el ejemplo anterior declara un arreglo de enteros con diez elementos desde a[0]
hasta a[9].
Características de los arreglos:
 Los elementos tienen un orden y se pueden acceder mediante su posición,
 Los elementos se pueden recorrer usando un ciclo for, este tipo de ciclo es
muy requerido en el uso cuando se usan arreglos.
 Todos los elementos del arreglo deben tener el mismo tipo,
 En general, el tamaño del arreglo es fijo (no van creciendo dinámicamente
como las listas),
 Se ocupan principalmente para almacenar datos numéricos, pero pueden
manejar letras, así se pueden usar palabras.
 El índice comienza en 0.
Estos tienen que ser Finitos queriendo decir que se debe determinar cuál será el
número máximo de elementos del arreglo.
Son homogéneos como se menciona arriba, tienen el mismo tipo de datos, ya sea
enteros, flotantes o caracteres.
Y son Ordenados, también como se menciona arriba, en estos puedes determinar
cuál es el primer elemento, el segundo y así hasta el enésimo.
Clasificación de los arreglos
Estos generalmente se clasifican dependiendo de sus dimensiones
 Arreglos unidimensionales.
 Arreglos multidimensionales.
 Arreglo con múltiple subíndices.
Arreglos unidimensionales
Un arreglo unidimensional tiene una sola dimensión. Es un tipo de datos
estructurado que está formado de una colección finita y ordenada de datos del
mismo tipo. Es la estructura natural para modelar listas de elementos iguales. A los
arreglos de una dimensión también se les llama listas.
Un ejemplo claro fue el de la imagen de la página anterior o el de abajo.

Un ejemplo que se podría dar para entender los arreglos es como los estantes
enumerados en los centros comerciales, están ordenados numéricamente y cada
casilla tiene un determinado objeto que aquí, en programación, en vez de un objeto
tendríamos un dato específico.
Declaración de un arreglo unidimensional
Al igual que las variables este se debe declarar antes de usarlo. Este se declara de
una manera muy similar a los otros tipos de datos a excepción de que se debe iniciar
con su tipo de dato, el nombre del arreglo, su longitud y después se pueden indicar
sus valores. La sintaxis es de la siguiente manera:
Tipo de dato nombre del arreglo[Tamaño];
O
Tipo de dato nombre del arreglo[Tamaño]={dato1,dato2,dato3…};
Ejemplos

1)La declaración de un arreglo que consta de 4 números enteros:


Int numeros[4];
2) La declaración de un arreglo que consta de 4 números enteros que son: 1,2,3,4.
Int numeros[4]={1,2,3,4};
Nótese que los números se separan con comas.
También se puede dejar sin declarar la longitud y este tomará automáticamente la
longitud de los números dados, sin embargo sólo tendrá esa longitud durante todo
el programa.
Int números[]={1,2,3,4}
Para dar valores al arreglo puede ser de la siguiente manera
numeros[0]=1;
numeros[1]=2;
numeros[2]=3;
numeros[3]=4;

Cabe mencionar nuevamente que el primer valor se encuentra en la posición 0.


Y se puede acceder de la siguiente manera a un número, por ejemplo de pasado
al dato con el valor de 3

a=Números[2]*2;
a=3*2
a=6

Como se mencionó anteriormente en los arreglos son muy requeridos los ciclos for,
ya que una manera muy práctica de asignar valores es con estos, un ejemplo es el
siguiente:
for(i=0; i<4; i++){
numeros[i]=i*i+4;
}
Ejemplo:
Dar valores a un arreglo de solamente 0
For(i=0;i<4;i++)
Numeros[i]=0;
Dar valores a un arreglo de 1,2,3,4
For(i=0;i<4;i++)
Números[i]=i+1;
Arreglos bidimensionales y multidimensionales
Bidimensionales

Los arreglos bidimensionales son tablas de valores. Cada elemento de un arreglo


bidimensional está simultáneamente en una fila y en una columna.

En matemáticas, a los arreglos bidimensionales se les llama matrices, y son muy


utilizados en problemas de Ingeniería.

En un arreglo bidimensional, cada elemento tiene una posición que se identifica


mediante dos índices: el de su fila y el de su columna.

Una representación gráfica clara sería como la siguiente:


Ejemplo:

Declaración
Aquí es una forma casi idéntica al arreglo unidimensional sólo que tendrá dos
parámetros de longitud, uno para la columna y otro para la fila. La sintáxis sería la
siguiente:
Tipo de dato nombre del arreglo[Tamaño] [Tamaño];
O
Tipo de dato nombre del arreglo [Tamaño] [Tamaño] = {{dato1,dato2,dato3…},
{dato,4,dato 5,dato6…}};
Si podemos apreciar cada “grupo” de números está separado por una copa y todo
encerrado entre las llaves.
Ejemplo en C
#include<stdio.h>
main(){
int sala [30][30];
int a,b,c,i,j;
for(i=0;i<30;i++){
for(j=0;j<30;j++){
sala[i][j]=0;
}
}
Tengo un arreglo de números enteros y con dos ciclos for le asignaré el valor de 0
a cada una de las 900 casillas que tiene este arreglo.
Con esto podemos apreciar lo práctico que es usar un arreglo ya que con tan sólo
ese código se le dio el valor de 0 a 900 datos.
Y se puede accesar y declarar cada valor de la siguiente manera
numero[2][3]=2;
a= numero[2][3]*2;
a=2*2=4
Un ejemplo claro de la vida cotidiana de un arreglo bidimensional es en la sala de
cine, están ordenados por una letra y un número, otro podría ser en los autobuses
o aviones.
Arreglos multidimensionales
Estos son de una complejidad más alta como en los pasados teníamos una longitud
o un largo y ancho ahora podemos tener un espacio, incluso en las bibliotecas se
puede apreciar que se utilizan arreglos de índices mucho más altos, una
representación de estos sería la siguiente:
Comparación de arreglos:

Arreglos en paralelo:

Si dos arreglos usan el mismo subíndice para referirse a términos homólogos se


llaman “arreglos paralelos”.
Estos arreglos se pueden procesar simultáneamente.

Cadena de caracteres
Definición
Es un conjunto de caracteres unidos en una organización
Los caracteres es cualquier símb
olo del código ASCII e cual tiene 256 caracteres incluidos letras, minúsculas y
mayúsculas, signos (+,-…) números, espacio entro otros más.
El código fue propuesto por Robert W. Bemer, buscando crear códigos para caracteres alfa-
numéricos (letras, símbolos, números y acentos). De esta forma sería posible que las
computadoras de diferentes fabricantes lograran entender los mismos códigos ya que la
computadora no entiende por letras, sino por números.
Cabe mencionar que está el carácter número 0 que siempre ocupará un lugar en las cadenas
de caracteres.
Código ASCII

La manera de definir una cadena es la siguiente:


char nombre[longitud máxima];
Ejemplo:
Cuando se declara una cadena hay que tener en cuenta que tendremos que
reservar una posición para almacenar el carácter nulo terminador, de modo que si
queremos almacenar la cadena "HOLA", tendremos que declarar la cadena como:
char saludo[5];
Estos se indican con comillas.
Las cuatro primeras posiciones se usan para almacenar los caracteres "HOLA" y la
posición extra, para el carácter nulo.
También nos será posible hacer referencia a cada uno de los caracteres individuales
que componen la cadena, simplemente indicando la posición. Por ejemplo el tercer
carácter de nuestra cadena de ejemplo será la 'L', podemos hacer referencia a él
como Saludo[2].
Osea que sería de la siguiente manera
La asignación directa sólo está permitida cuando se hace junto con la declaración.
Ejemplo
Char nombre[30]=”Maria”
O también se puede hacer lo siguiente como en arreglos
Char nombre[]=”Maria”
Tomará como máximo los caracteres de María mas el nulo.

5.2 Manejo de archivos


Definición
Un archivo es un conjunto de bits almacenado en un dispositivo de memoria
secundaria, el cuál puede ser almacenado con un conjunto de propiedades y
recuperado de la misma manera por el sistema operativo para que un programa
tenga acceso a este.
Un archivo es identificado por un nombre y la descripción de la carpeta o directorio
que lo contiene.
Los archivos digitales se llaman así porque son los equivalentes digitales de los
archivos en tarjetas, papel o microfichas del entorno de oficina tradicional.
Tipos de archivos
 De texto
 Binarios
Archivos de texto:
Es una secuencia de caracteres organizados en líneas terminadas por un carácter
de nueva línea.
Los archivos de por ser planos, es decir, solo contienen caracteres de texto y se
pueden almacenar fuentes, programas, textos planos, etc.
Archivos binarios:
Es una secuencia de bytes que tienen una correspondencia uno a uno con un
dispositivo externo. Así que no tendrá lugar ninguna traducción de caracteres.
Manejo de archivos en C
En c, un archivo es un concepto lógico que puede aplicarse a muchas cosas desde
archivos de disco hasta terminales o una impresora. Se asocia una secuencia con
un archivo específico realizando una operación de apertura. Una vez que el archivo
está abierto, la información puede ser intercambiada entre este y el programa. Se
puede conseguir la entrada y la salida de datos a un archivo a través del uso de la
biblioteca de funciones; C no tiene palabras claves que realicen las operaciones de.
La siguiente tabla da un resumen de las funciones que se pueden utilizar. Se debe
incluir la librería stdio.h.

Constante (#define)
Esto es una cadena de sustitución, esta se pone junto con los incluidos de la
siguiente manera
#define n 10 Sería la palabra de sustitución
Lo que hará es que donde haya una expresión con n este lo sustituirá por 10.
Ejemplo
#define n 1000
main(){
int num;
float x[n]: sería un arreglo de flotantes de 1000

}
Estas suelen ser muy usadas para hacer fórmulas matemáticas y sustituirlas en el
programa así haciéndolo más fácil o incluso se puede traducir al español Dev C++.

Anda mungkin juga menyukai