prof. carlos rodriguez sanchez comp 242 introducci Ó n a los arreglos (arrays) en c++

13
PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 IntroducciÓn a los Arreglos (“arrays”) en C++

Upload: valentin-bracamonte

Post on 09-Jan-2015

8 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

PROF. CARLOS RODRIGUEZ SANCHEZCOMP 242

IntroducciÓn a los Arreglos (“arrays”) en C++

Page 2: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Tipos de datos en C++

Simple data typesStructured data typesPointers data types

Page 3: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Structured data types

Variables definidas que pueden almacenar en memoria varios valores al mismo tiempo Arreglos (arrays)

Page 4: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arreglos (Arrays)

Colección de un número fijo de componentes que son del mismo tipo de dato.

Forma general para declarar un arreglo de una dimensión: dataType arrayName[intExp];

Donde intExp es cualquier expresión constante que al evaluarse produce un número positivo entero. También, intExp especifica el número de componentes del arreglo.

Page 5: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Ejemplos: La instrucción: int num[5]; declara un arreglo

llamado num de cinco componentes, cada uno de tipo int.

num[0] num[1] num[2] num[3] num[4]

num

Page 6: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Para acceder a los componentes de un arreglo, la forma general utilizada es: arrayName[indexExp]

Donde indexExp, también llamado el index, es cualquier expresión cuyo valor debe ser un entero positivo. Especifica la posición de un componente dentro del arreglo.

Ejemplo: int list[10]; //declara un arreglo llamado list de 10 componentes

list[5] = 34; // almacena el valor 34 en la sexta posición del arreglo list

34

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9]

Page 7: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Suponer que aa es una variable de tipo int. int. Las instrucciones: a = 3;a = 3; list[a] = 63;list[a] = 63; asignan el valor de 3 a la variable a, y luego le asigna

el valor 63 a la cuarta posición del arreglo list. De la misma forma, si el valor de la variable a es 4, entonces la instrucción

list[2 * a – 3] = 58;list[2 * a – 3] = 58; almacena el valor 58 dentro de list[5]list[5] porque 2*a-3

evalua a cinco.

Page 8: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Analice las siguientes instrucciones: list[3] = 10; list[3] = 10; //asigna el valor de 10 al cuarto componente de listlist

list [6] = 35; list [6] = 35; //asigna el valor de 35 a la posición siete de listlist list [5] =list [5] = list[3] + list [6] = 35; list[3] + list [6] = 35; //añade el contenido de list[3] y de list[6] a

list[5]

10 45 35

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9]

Page 9: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Uso práctico de arreglos en C++ Problema: hacer un programa que en C++ que lea

cinco números, los sume, y luego los escriba en el orden inverso como se entraron. Se necesitan declarar al menos cinco variables todas del

mismo tipo para almacenar en memoria los números que se van a entrar.

Page 10: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Flowchart: start

Entrar 5 numerosa,b,c,d,e

sum = a+b+c+d+e

Mostrar e,d,c,b,a

stop

Page 11: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Programa #1#include<iostream>using namespace std;

int main(){ int num1, num2, num3, num4, num; int sum;

cout << “Enter five integers: “; cin >> num1, num2, num3, num4, num5; cout << endl;

sum = num1 + num2 + num3 + num4 + num5;

cout << “The sum of the numbers = “ << sum << endl; cout << “The numbers in reverse order are: “; cout << num5 << “ “ << num4 << “ “ << num3 << “ “ << num2 << “ “ << num1<< endl; system(“pause”); return 0;}

Page 12: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Hacer el mismo programa pero para que lea 100 números en lugar de solo cinco. En vez de definir cien variables del mismo tipo en el

programa, es más conveniente definir un arreglo de cien posiciones donde se pueda acumular cada valor en su lugar correspondiente, leerlos, sumarlos, y por último escribirlos en el orden inverso como se entraron.

Page 13: PROF. CARLOS RODRIGUEZ SANCHEZ COMP 242 Introducci Ó n a los Arreglos (arrays) en C++

Arrays

Solución:#include<iostream>using namespace std;

int main(){ int list[100]; int sum = 0; cout << “Enter 100 integers: “; for (int i = 0; i < 100; i ++) { cin >> list[i]; sum = sum + list[i]; } cout << endl; cout << “The sum of the numbers = “ << sum << endl; cout << “The numbers in reverse order are: “; for(int i = 99; i >=0; i --) cout << list[i] << “ “; cout << endl;

system(“pause”); return 0;}