180 likes | 375 Views
PROGRAMACIÓN ESTRUCTURADA EN PSEUDÓCODIGO. Profr. Miguel Rodríguez Hernández ARREGLOS O VECTORES. ARREGLOS O VECTORES INTRODUCCIÓN. Supóngase que pedimos los pesos en kg de 7 alumnos del grupo Agustín Josue Julio Lorena Paty Liana Miguel
E N D
PROGRAMACIÓN ESTRUCTURADA EN PSEUDÓCODIGO Profr. Miguel Rodríguez Hernández ARREGLOS O VECTORES Arreglos o vectores
ARREGLOS O VECTORESINTRODUCCIÓN • Supóngase que pedimos los pesos en kg de 7 alumnos del grupo Agustín Josue Julio Lorena Paty Liana Miguel 49 53 60 42 35 48 65 Cuantas variables necesitamos para almacenar estos valores ? (No es lo más recomendable) Podemos denotar los valores de los pesos de esta lista usando sólo un símbolo, digamos W y un índice para saber a qué alumno pertenece el valor. Arreglos o vectores
1 2 3 4 5 6 7 Introducción Agustín Josué Julio Lorena Paty Liana Miguel 49 53 60 42 35 48 65 W Índice Decimos ahora que todos los pesos de los alumnos están representados por W. Entonces para referirse al peso de Lorena hacemos W[4] , donde 4 es la posición que ocupa el peso de Lorena ahora con el símbolo W Arreglos o vectores
Introducción Es importante notar que se hace uso del símbolo W para no tener que hacer referencia al nombre de los alumnos, ya que todos son diferentes. Observemos que: W[1] =49 es el peso de Agustín W[2] =53 es el peso de Josué W[3] =60 es el peso de Julio . . . W[7] =65 es el peso de Miguel Arreglos o vectores
A la lista de pesos representada por W se le llama arreglo o vector Arreglo o Vectores un identificador que te permite trabajar con una colección de valores, todos del mismo tipo y que comparten un nombre común. Por ejemplo, Si queremos crear una colección de 5 valores enteros qué hacemos. 1a. Podemos declarar 5 variables enterar directamente enteros a , b, c, d ,e; ¿Qué pasa si queremos 1000 enteros? Arreglos o vectores
Soluciones: 2da. Podemos declarar una arreglo o vector de 5 enteros. int A[5] ; (así se declara en C ) No hay problema si queremos 5000 enteros Los 5 enteros separados dentro del arreglo son accedidos mediante un índice. Nota: En C todos los arreglo inician en el índice 0 Arreglos o vectores
Diferencias entre variables simples y arreglos o vectores Arreglos o vectores
Referencia a un elemento del vector • Se hace referencia a un elemento de un vector mediante: • El nombre del vector • La posición que ocupa dentro de él • Ejemplo: Hacer referencia al peso del alumno Miguel (65) • W [ 7 ] Nombre del arreglo Posición que ocupa el valor del peso de Miguel dentro del arreglo Arreglos o vectores
1.- Leer o cargar un vector de tamaño 30 Inicio Entero V [ 30 ] , i Para i = 1 hasta 30 hacer Inicio Leer V[ i ] Fin_para Fin 2.- Escribir un vector de tamaño 30 Inicio Entero V [ 30 ] , i Para i = 1 hasta 30 hacer Inicio Escribir V[ i ] Fin_para Fin OPERACIONES BÁSICAS CON ARREGLOS Arreglos o vectores
OPERACIONES BÁSICAS CON ARREGLOS. Continuación 3.- Inicializar un vector de tamaño 30 Inicio Entero i,V [ 30 ] ={ 3, 5, 2, 4, 56, 634, 25, . . . , 56 } Fin Estamos indicando que cuando se declare el arreglo V de tipo entero se le asignen los valores 3, 5, 2, 4, 56, 634, 25, . . . , 56 automáticamente y no tengamos que leerlos del teclado Arreglos o vectores
Ejemplo. Calcular el promedio de edad de un grupo de 20 alumnos 1. Inicio 2. Var’s entero i, Promedio, Edades[20], Suma=0 3. Para i = 1 hasta 20 hacer Inicio_para Escribir “ Dame la edad “ Leer Edades[ i ] Fin_para 3. Para i = 1 hasta 20 hacer Inicio_para Suma =Suma + Edades[ i ] Fin_para 4. Promedio= Suma / 20 5 Escribir “El proemdio de edades es: “ , Promedio 6. Fin Usted codifique y ejecute Arreglos o vectores
Declaración de un arreglo en C Ejemplo: int Numeros [ 30 ] ; Número de elementos en el arreglo Nombre del arreglo Tipo del arreglo Arreglos o vectores
Un ejemplo en C /* Declaración de un arreglo. */ #include <stdio.h> main() /* Rellenamos del 0 - 9 */ { int vector[10],i; for (i=0;i<10;i++) vector[i]=i*2; for (i=0;i<10;i++) printf(" %d",vector[i]); } ¿Qué hace este programa ? Arreglos o vectores
/*********Otro Ejemplo*******/ #include <stdio.h> main() { int temp[24]; /* Con esto ya tenemos declaradas las 24 variables */ float media=0.0; int hora; /* Ahora tenemos que dar el valor de cada una */ for( hora=0; hora<24; hora++ ) { printf( "Temperatura de las %i: ", hora ); scanf( "%i", &temp[hora] ); media = media + temp[hora]; } media = media / 24; printf( "\nLa temperatura media es %f\n", media ); } Arreglos o vectores ¿Qué hace?
Ejercicios • Determine la salidad de los siguientes bloque de codigo • Int index, sum=0; • int ar[5] = {1,2,3,4,5} • float avg; • for (index=0,index < 5; index++) { • sum =sum +(ar[index] + 2); • } • printf(“ %f” , sum /5.0); • B) Int index, sum=0; • int ar[10] = {1,2,3,4,5,6,7,8,9,10} • for (index=0,index < 5; index++) { • if (ar[index] % 2 == 0) • printf(“ %d ”,ar[index]); • } • printf(“ %d” , ar[9]*10); Arreglos o vectores
Ejercicios para entregar 1.- Lea un vector de N elementos y luego imprima cuántos y cuáles elementos son múltiplos de 6 2.- Llenar un vector de 20 elementos, imprimir la posición y el valor del elemento mayor almacenado en el vector. Suponga que todos los elementos del vector son diferentes. 3. Llenar dos vectores A y B de 45 elementos cada uno, sumar el elemento uno del vector A con el elemento uno del vector B y así sucesivamente hasta 45, almacenar el resultado en un vector C, e imprimir el vector resultante. 4.- Lea un vector de 10 elementos enteros y luego los imprima en orden inverso. 5*.- Elabore un traductor simple de ingles a español utilizando dos arreglos de tipo cadena con 20 palabras como nínimo Arreglos o vectores
Ejercicios. Continuacion 6.-Escriba un programa que escriba el siguiente menú == MENU ===== 0.- Salir 1.- Leer Datos 2.- Desplegar Datos 3.- Escribir el mínimo y máximo 4.- Escribir Suma y Promedio El numero de datos a leer es de 10 enteros. El menú se estará repitiendo hasta dar un cero 7.-Diseñe un algoritmo que lea dos vectores A y B de 20 elementos cada uno y multiplique el primer elemento de A con el ultimo elemento de B y luego el segundo elemento de A por el diecinueveavo elemento de B y así sucesivamente hasta llegar al veinteavo elemento de A por el primer elemento de B. El resultado de la multiplicación almacenarlo en un vector C. 8.- Diseñe un algoritmo que lea un numero cualquiera y lo busque en el vector X, el cual tiene almacenados 80 elementos cualquiera. Escribir la posición donde se encuentra almacenado el numero en el vector o el mensaje “NO” si no lo encuentra. Arreglos o vectores
Ejercicios. Continuación 9.-Se digitan N números y se almacenan en vector y luego se ordenan. 10.-El producto punto de dos vectores se obtiene de la siguiente manera. A={a1,a2,a3,...,an} y B={b1,b2,b3,...,bn} A•B ={a1*b1+a2*b2+a3*b3 +...+an*bn} Lea los vectores A y B y obtenga su producto punto. 11.-Leer tres números X, K y N (N<k) y un vector de dimensión N. Inserte el número X en posición K del vector. Muestre el vector después de cada inserción Arreglos o vectores