arreglos en c++

3

Click here to load reader

Upload: santiago-sarmiento

Post on 02-Jul-2015

854 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Arreglos en C++

Nombre:Santiago René Sarmiento Sotomayor

Docente:Ing.Daniel Irene

Tema: Arrays y Estructuras.

ARRAYS UNIDIMENSIONALES.

Conjunto finito y ordenado de elementos homogéneos.

<array> ::=<nombre_tipo><Identificador> [" <dimensión> "];

En el ejemplo "V" será un array o vector que contiene 10 elementos de tipo entero, cada unode

ellos con un índice asociado (1 a 10).

8 -4 0 3 5 60 -3 4 5 8

0 1 2 3 4 5 6 7 8 9

Así:

V [4] tiene el valor 5

V [7] tiene el valor 4

V [1] tiene el valor -4

EJEMPLO #include <iostream> #include <windows.h> #define filas 4//Tamaño del arreglo o vector using namespace std; int main() { int elemento; cout<<"ARREGLO UNIDIMENSIONAL"<<endl<<"Ingrese los elementos"<<endl; int arreglo[filas]; for(int i=0;i<filas;i++)//Ingreso de las componentes { cin>>elemento; arreglo[i]=elemento; } cout<<"ARREGLO "<<"[ "; for(int i=0;i<filas;i++)//Lectura del arreglo o vector cout<<arreglo[i]<<" "; cout<<"]"; system("pause>null"); }

Declaración de una cadena: char nombre[i]; #include <iostream> #include <windows.h> #define Flchar 5//dimension using namespace std; int main()

{ char A[Flchar]={'H','o','l','a'}; for(int i=0;i<Flchar;i++) cout<<A[i]; system("pause>null"); }

COMPONENTES

INDICES (UBICAION)

ACCEDER A UN ELEMENTO DEL

ARRAY:

nombre[i];

Dónde: 0 <= i < n

Recorrido: Usando bucles

incrementamos el índice.

DECLARACIÓN:

<Tipo>nom_array[<limite>];

int A[4] = {0, 1, 2, 3};

char A*Flchar+=”Hola” “\0”;

String

Page 2: Arreglos en C++

ARRAYS BIDIMENCIONALES.(considerado vector de vectores)

1 … J … M

1

I A[I,J]

N

EJEMPLO #include <iostream> #include <windows.h> #include <iomanip> #define fila 3//Define limite de 3 filas #define col 4//Limite de 4 columnas using namespace std; int main() { cout<<"ARRAY BIDIMENCIONAL DE 3x4"<<endl; int A[fila][col]={ {0,1,9,3}, {1,2,8,0}, {-1,6,4,15} }; for (int i=0;i<fila;i++) { cout<<"\n"; for (int j=0;j<col;j++) cout<<setw(2)<<A[i][j]<<"\t"; } system("pause>null"); }

ARRAYS DE ESTRUCURAS.

Consiste en tener n arrays cada uno con su tipo de variable fijados como columnas.

Struct: nombre_estructuraEJEMPLO Tipo_1: campo 1 Tipo_2: campo2 Tipo_i: campo i

UNION EN ARRAYS.

Una UNION es muy similar a una estructura, pero en el caso de la UNION este define una unica

posición que puede ser ocupada con diferentes mienbros con nombres diferentes.

Union valor Entero valor_e Real valor_r Fin_union

Campo i Edad Nombre Calificación

Tipo_i Int (18) Char (Santiago) Float (14.63)

… … … …

FILA 1

FILA I

COL. 1

COL. J

Es un conjunto de elementos que se

distinguen por poder ser ubicados con

dos índices.El elemento A [I,J] también

se representa como AI,J

Acceder a un elemento del array bidimensional: nombre[i][j];

Dónde: 0 <= i <f ; 0 <= j < c;

Formato para declarar un arraymultimensional:

int nombre[<limfila>][<limcol>]…; Dónde: i,j,…>= 1;

Page 3: Arreglos en C++

LIBRERIAS DE C++

#include<algorithm>

#include<bitset>

#include <complex>

#include <deque>

#include <exception>

#include <fstream>

#include <functional>

#include <iomanip>

#include <ios>

#include <iosfwd>

#include <iostream>

#include <istream>

#include <iterator>

#include <limits>

#include <list>

#include <locale>

#include <map>

#include <memory>

#include <new>

#include <numeric>

#include <ostream>

#include <queue>

#include <set>

#include <iostream>

#include <stack>

#include <stdexcept>

#include <streambuf>

#include <string>

#include <typeinfo>

#include <utility>

#include <valarray>

#include<vector>

#include <string.h>

La biblioteca “string” tiene una gran cantidad de funciones prácticas para trabajar con cadenas de

caracteres. Para utilizarlas debemos de incluir el fichero que define los prototipos de dichas

funciones:

#include <string.h>

Algunas de las funciones más importantes son:

• strlen(<cadena>): Devuelve la longitud de la cadena sin tomar en cuenta el caracter de final de

cadena.

• strcpy(<cadena_destino>, <cadena_origen>) : Copia el contenido de <cadena_origen> en

<cadena_destino>.

• strcat(<cadena_destino>, <cadena_origen>) : Concatena el contenido de <cadena_origen> al

final de <cadena_destino>.

• strcmp(<cadena1>, <cadena2>) : Compara las dos cadenas y devuelve un 0 si las dos cadenas

son iguales, un número negativo si <cadena1> es menor que (precede alfabéticamente a)

<cadena2> y un número positivo (mayor que cero) si <cadena1> es mayor que <cadena2>.

Referencias.

http://www.lcc.uma.es/~afdez/apuntes/laboratorio/apuntes/arrays.PDF

http://www.uco.es/grupos/eatco/informatica/metodologia/cadenasyarrays.pdf

Capítulo Nro. 7 del Libro de Luís Joyanes Aguilar. (2008): “Fundamentos de Programación,

Algoritmos, Estructuras de Datos y Objetos.” Cuarta Edición. Mc-Graw Hill. Madrid.