You are on page 1of 19

Universidad Cesar Vallejo

Escuela de Ingeniería de Sistemas
Curso: Metodología de la Programación
______________________________________________________________________
Arreglos
Un arreglo (array) es una colección de datos del mismo tipo, que se almacenan en posiciones
consecutivas de memoria y reciben un nombre común. Para referirse a un determinado elemento de un
array se deberá utilizar un índice, que especifique su posición relativa en el array. El índice de un
arreglo comienza en 0.
Un arreglo es una colección finita, homogénea y ordenada de elementos. Finita: Todo arreglo tiene un
límite; es decir, debe determinarse cuál será el número máximo de elementos que podrán formar
parte del arreglo. Homogénea: Todos los elementos del arreglo deben ser del mismo tipo. Ordenada:
Se puede determinar cuál es el primer elemento, el segundo, el tercero,.... y el n-ésimo elmento.
Los arreglos se clasifican de acuerdo con el número de dimensiones que tienen. Así se tienen los:
- Unidimensionales (vectores)
- Bidimensionales (tablas o matrices)
- Multidimensionales (tres o más dimensiones)
Vectores
La Declaración de un Arreglo es igual a como se haría con una variable, a excepción de que también se
especifica la cantidad de elementos en el arreglo encerrado entre corchetes de la siguiente manera:
Tipo_de_dato nombre_del_arreglo[tamaño];

Ejemplo:
int a[20]; // declara un vector de 20 elementos enteros
flota x[50]; // declara un vector de 50 elementos reales
char w[30]; // declara un vector de 30 elementos tipo carácter
char nombres[50][80]; // declara un vector de 50 elementos donde cada elemento
// es una cadena de 80 caracteres
Inicialización de un Vector
Cuando se declara un arreglo, sus valores se pueden inicializar de la siguiente manera:
int lista[9]= {0, 4, 78, 5, 32, 9, 77, 1, 23}
Una Característica importante de los arreglos en C es que no se pueden modificar los limites superior
e inferior (y por tanto el rango) durante el programa. El limite inferior se fija siempre en 0 y el
superior lo fija el programador, es decir:

Acceso a los elementos de un arreglo
Cada valor dentro de un arreglo se conoce como elemento del arreglo. Para acceder a un elemento de
un arreglo especifique el nombre del arreglo con el índice del elemento entre corchetes [].
Ejemplo:
int números = { 12, 20, 60, 80, 100 };
for(int índice = 0; índice < 5 ; índice++)
cout<<números[índice]<<endl;
El índice comienza en 0 y termina en 4 porque hay cinco elementos, y cada elemento del arreglo se
llama números[índice].

______________________________________________________________________
Docente: Mg. Ing. Marcelino Torres Villanueva

1

menor y el promedio. for(i=0. //--------------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------void ingresoVector(float x[]. lst->Items->Add(x[i]). int n.i++) { x[i]=InputBox("Ingreso".i<n. } } ______________________________________________________________________ Docente: Mg."").Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ Ejercicios Reeueltos de Vectores 1) Hacer un programa para ingresar n números en un Vector y calcular el mayor. #include <vcl.h> #pragma hdrstop #include "Unit1. Ing. int n.ToDouble().dfm" TForm1 *Form1. float x[100].h" //--------------------------------------------------------------------------#pragma package(smart_init) #pragma resource "*. Marcelino Torres Villanueva 2 ."elemento["+IntToStr(i)+"]:". lst->Items->Clear(). TListBox *lst) { int i.

} //--------------------------------------------------------------------------void __fastcall TForm1::btnCalcularClick(TObject *Sender) { edMay->Text=mayor(x.n). Ing.i<n. edMen->Text=menor(x.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ float mayor(float x[].n). } float menor(float x[]. } //--------------------------------------------------------------------------void __fastcall TForm1::btnLimpiarClick(TObject *Sender) { edN->Clear(). ingresoVector(x.n. Marcelino Torres Villanueva 3 . edProm->Clear().n). float may=x[0]. n=0. } ______________________________________________________________________ Docente: Mg. for(i=0.i++) s=s+x[i]. for(i=0. } void __fastcall TForm1::btnIngresarClick(TObject *Sender) { int i.i<n. lstNum->Items->Clear(). edProm->Text=promedio(x. for(i=0.i<n. } float promedio(float x[]. int n) { int i. n=edN->Text. edMen->Clear().i++) { if(x[i]>may) may=x[i]. return s/n. edN->SetFocus(). float s=0. int n) { int i.ToInt(). float men=x[0]. } return may. edMay->Clear().lstNum).i++) { if(x[i]<men) men=x[i]. int n) { int i. } return men.

h> #include<math. //--------------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------______________________________________________________________________ Docente: Mg.h> #pragma hdrstop #include "Unit1. Ing. Marcelino Torres Villanueva 4 . float x[100]. int n. } //--------------------------------------------------------------------------2) Programa para ingresar n números enteros y calcular la desviación standard.h" //--------------------------------------------------------------------------#pragma package(smart_init) #pragma resource "*. Donde: //--------------------------------------------------------------------------#include <vcl.dfm" TForm1 *Form1.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ //--------------------------------------------------------------------------void __fastcall TForm1::btnSalirClick(TObject *Sender) { Close().

edDs->Clear(). lst->Items->Add(x[i]). float s=0. ingresoVector(x.n). p=promedio(x.n).lstNum). Ing. int n) { int i.2).ToDouble(). } //--------------------------------------------------------------------------void __fastcall TForm1::btnCalcularClick(TObject *Sender) { edDs->Text=desviacion(x. int n) { int i. TListBox *lst) { int i. return sqrt(s/(n-1)).""). int n.ToInt(). Marcelino Torres Villanueva 5 . for(i=0."elemento["+IntToStr(i)+"]:". } //--------------------------------------------------------------------------______________________________________________________________________ Docente: Mg.i<n.p. n=0. n=edN->Text. } float desviacion(float x[]. for(i=0. } } float promedio(float x[].i++) s= s + x[i].n.i<n. } //--------------------------------------------------------------------------void __fastcall TForm1::btnLimpiarClick(TObject *Sender) { edN->Clear(). edN->SetFocus(). } void __fastcall TForm1::btnIngresarClick(TObject *Sender) { int i.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ void ingresoVector(float x[].i++) { x[i]=InputBox("Ingreso". return s/n. lstNum->Items->Clear().i<n.i++) s= s + pow(x[i]-p. float s=0. lst->Items->Clear(). for(i=0.

//--------------------------------------------------------------------------#include <vcl. //--------------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } void ingresoVector(float x[].h" //--------------------------------------------------------------------------#pragma package(smart_init) #pragma resource "*."")."elemento["+IntToStr(i)+"]:". Marcelino Torres Villanueva 6 . float x[100].i<n.dfm" TForm1 *Form1. int n. } //--------------------------------------------------------------------------3) Programa para ingresar n valores reales en un arreglo y luego invierta el arreglo.h> #pragma hdrstop #include "Unit1. for(i=0. TListBox *lst) { int i.i++) { x[i]=InputBox("Ingreso". int n. Ing.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ void __fastcall TForm1::btnSalirClick(TObject *Sender) { Close().ToDouble(). lst->Items->Add(x[i]). lst->Items->Clear(). } } ______________________________________________________________________ Docente: Mg.

lst->Items->Clear(). } //--------------------------------------------------------------------------- ______________________________________________________________________ Docente: Mg.i<n/2.n). float temp.n. int n. lstNum->Items->Clear(). for(i=0.n. x[j]=temp.j. mostrarVector(x.lstNum). int n) { int i.i++) lst->Items->Add(x[i]). } //--------------------------------------------------------------------------void __fastcall TForm1::btnSalirClick(TObject *Sender) { Close(). } //--------------------------------------------------------------------------void __fastcall TForm1::btnLimpiarClick(TObject *Sender) { edN->Clear(). TListBox *lst) { int i.j=n-1. } } //--------------------------------------------------------------------------void __fastcall TForm1::btnIngresarClick(TObject *Sender) { n=edN->Text.j--) { temp=x[i].lstNum).ToInt().i++. Ing. x[i]=x[j]. Marcelino Torres Villanueva 7 . ingresoVector(x.i<n. edN->SetFocus().Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ void mostrarVector(float x[]. } //--------------------------------------------------------------------------void __fastcall TForm1::btnInvertirClick(TObject *Sender) { invertirVector(x. } void invertirVector(float x[]. for(i=0.

//--------------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void ingresoVector(float x[].h> #pragma hdrstop #include "Unit1.i++) { x[i]=InputBox(mensaje. lst->Items->Add(x[i]). TListBox *lst.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ 4) Programa para ingresar 2 vectores de n elementos reales cada uno y reportar el producto escalar de ellos.h" //--------------------------------------------------------------------------#pragma package(smart_init) #pragma resource "*. int n.String mensaje) { int i. lst->Items->Clear(). //--------------------------------------------------------------------------#include <vcl. } } ______________________________________________________________________ Docente: Mg. Ing. int n. float A[100].i<n."elemento["+IntToStr(i)+"]:".""). Marcelino Torres Villanueva 8 .ToDouble(). B[100].dfm" TForm1 *Form1. for(i=0.

edPE->Clear()."Primer Vector"). Ing. for(i=0."Segundo Vector"). } //--------------------------------------------------------------------------void __fastcall TForm1::btnLimpiarClick(TObject *Sender) { edN->Clear(). ingresoVector(B.lstB. lstB->Items->Clear(). } //--------------------------------------------------------------------------void __fastcall TForm1::btnCalcularClick(TObject *Sender) { edPE->Text = productoEscalar(A.lstA.i++) PE = PE + x[i]*y[i]. float PE=0.n).i<n.ToInt(). float y[]. int n) { int i. Marcelino Torres Villanueva 9 . edN->SetFocus(). ingresoVector(A. return PE. lstA->Items->Clear(). } //--------------------------------------------------------------------------- ______________________________________________________________________ Docente: Mg.B. } void __fastcall TForm1::btnIngresoClick(TObject *Sender) { n = edN->Text.n.n. } //--------------------------------------------------------------------------void __fastcall TForm1::btnSalirClick(TObject *Sender) { Close().Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ float productoEscalar(float x[].

h" //--------------------------------------------------------------------------#pragma package(smart_init) #pragma resource "*. float x[100]. b) Dado un elemento eliminarlo del vector si es que se encuentra en caso contrario reportar dato no se encuentra.h> #pragma hdrstop #include "Unit1. Marcelino Torres Villanueva 10 . si este se encuentra mostrar su posición. //--------------------------------------------------------------------------#include <vcl. c) Dato un elemento modificarlo.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ 5) Programa para ingresar n elementos en un vector y permita mostrar los elementos y permita: a) Dado un elemento buscarlo en el vector. e) Ordenar los elementos de menor a mayor. Si la posición no es correcta mostrar Mensaje indicando posición incorrecta. si el elemento no se encuentra reportar dato no se encuentra. sino se encuentra mostrar dato no se encuentra d) Insertar un elemento y la posición donde se desea insertar y luego insertarlo en el vector. int n. //--------------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- ______________________________________________________________________ Docente: Mg.dfm" TForm1 *Form1. es decir si este se encuentra pedir un nuevo elemento y colocar este nuevo en la posición donde estaba el anterior. Ing.

lst->Items->Add(x[i]). } void burbuja(float x[]. int n. int n. x[p]=dato. float temp. for(i=0. int &n. n=n-1.j++) if(x[i]>x[j]) { temp=x[i]. int p) { int i. Ing. } void mostrarVector(float x[]. x[j]=temp. int &n. for(i=p. } void elimina(float x[].i<n.i++) x[i]=x[i+1].i++) lst->Items->Add(x[i]). lst->Items->Clear().i++) { if(x[i]==dato) return i. } } int buscar(float x[]. lst->Items->Clear().i++) for(j=i+1. float dato) { int i."elemento["+IntToStr(i)+"]:". } return -1. int n. TListBox *lst) { int i.i<n.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ void ingresoVector(float x[]. for(i=0. for(i=n-1.i>=p. } } ______________________________________________________________________ Docente: Mg.i<n.i--) x[i+1]=x[i].TListBox *lst) { int i.i<n-1.j. for(i=0.i++) { x[i]=InputBox("Ingreso".j<n.float dato."").i<n-1. for(i=0.ToDouble(). n=n+1. Marcelino Torres Villanueva 11 . } void inserta(float x[]. x[i]=x[j]. int n) { int i. int p) { int i.

n.dato)."").ToDouble(). int p. ShowMessage("Dato modificado"). } //--------------------------------------------------------------------------void __fastcall TForm1::btnInsertarClick(TObject *Sender) { float dato.ToDouble(). int p."").ToInt().dato). p=buscar(x. int p.dato).n.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ void __fastcall TForm1::btnIngresarClick(TObject *Sender) { n=edN->Text. } //--------------------------------------------------------------------------void __fastcall TForm1::btnModificarClick(TObject *Sender) { float dato.p). } //--------------------------------------------------------------------------void __fastcall TForm1::btnEliminarClick(TObject *Sender) { float dato. } //--------------------------------------------------------------------------void __fastcall TForm1::btnBuscarClick(TObject *Sender) { float dato.ToDouble(). p=InputBox("Insercion". dato=InputBox("Buscar". ShowMessage("Dato eliminado")."Nuevo dato : ". dato=InputBox("Buscar". } else ShowMessage("Dato no se encuentra"). if(p!=-1) ShowMessage("Dato se encuentra en posicon "+IntToStr(p))."Dato a buscar : "."Dato a insertar". dato=InputBox("Buscar".lstNum). if(p!=-1) { x[p]=InputBox("Modificar". p=buscar(x. Ing.ToDouble().n."Dato a eliminar : ".lstNum). if(p>=0 && p<=n) { ______________________________________________________________________ Docente: Mg.ToInt(). if(p!=-1) { elimina(x.ToDouble()."")."").lstNum)."Dato a modificar : ".n. dato=InputBox("Insercion"."posicion a Insertar"."").n. p=buscar(x. int p. ingresoVector(x.n. mostrarVector(x. else ShowMessage("Dato no se encuentra")."").n. mostrarVector(x. } else ShowMessage("Dato no se encuentra"). Marcelino Torres Villanueva 12 .

dato. mostrarVector(x.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ inserta(x. ______________________________________________________________________ Docente: Mg.n. } //--------------------------------------------------------------------------void __fastcall TForm1::btnOrdenarClick(TObject *Sender) { burbuja(x. edN->SetFocus(). } //--------------------------------------------------------------------------- 6) Lea dos Vectores A y B y luego diga que elementos del vector A no se encuentran en B.n. } //--------------------------------------------------------------------------void __fastcall TForm1::btnSalirClick(TObject *Sender) { Close().lstNum). } //--------------------------------------------------------------------------void __fastcall TForm1::btnLimpiarClick(TObject *Sender) { edN->Clear(). } else ShowMessage("Posicion no valida"). n=0. Ing.lstNum).n. lstNum->Items->Clear(). mostrarVector(x. ShowMessage("Dato insertado"). Marcelino Torres Villanueva 13 .p).n).

Marcelino Torres Villanueva 14 .p.i<n.a[i])==-1) { c[p]=a[i]. float dato) { int i. float b[]. p++.i++) { if(x[i]==dato) return i. int n.C[100]. int n. } int buscar(float x[]. int m.i<n. //--------------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } void ingresoVector(float x[]. } } } ______________________________________________________________________ Docente: Mg. int n. int &p) { int i. float c[]."elemento["+IntToStr(i)+"]:". int n.B[100]."").Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ //--------------------------------------------------------------------------#include <vcl. p=0. } void diferencia(float a[]. float A[100]. } } void mostrarVector(float x[]. for(i=0. lst->Items->Clear(). lst->Items->Clear(). TListBox *lst) { int i.p.i<n. lst->Items->Add(x[i]). for(i=0.dfm" TForm1 *Form1. TListBox *lst) { int i.ToDouble().i++) { x[i]=InputBox("Ingreso". Ing.m. for(i=0.h" //--------------------------------------------------------------------------#pragma package(smart_init) #pragma resource "*.m. for(i=0.h> #pragma hdrstop #include "Unit1. int n.i++) lst->Items->Add(x[i]).a[i])==-1 && buscar(b. } return -1.i++) { if(buscar(c.i<n.

} //--------------------------------------------------------------------------- ______________________________________________________________________ Docente: Mg.B.ToInt(). lstC->Items->Clear().m.p). Ing. n=0. } //--------------------------------------------------------------------------void __fastcall TForm1::btnLimpiarClick(TObject *Sender) { edN->Clear(). edM->Clear(). Marcelino Torres Villanueva 15 . lstB->Items->Clear(). } //--------------------------------------------------------------------------- void __fastcall TForm1::btnCalcularClick(TObject *Sender) { diferencia(A.lstB).n. edN->SetFocus(). } //--------------------------------------------------------------------------void __fastcall TForm1::btnIngresoBClick(TObject *Sender) { m=edM->Text.m.ToInt(). if(p!=-1) mostrarVector(C.lstA). p=0. lstA->Items->Clear().lstC).C.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ //--------------------------------------------------------------------------void __fastcall TForm1::btnIngresoAClick(TObject *Sender) { n=edN->Text.p. ingresoVector(B. } //--------------------------------------------------------------------------- void __fastcall TForm1::btnSalirClick(TObject *Sender) { Close(). ingresoVector(A. m=0.n.

Marcelino Torres Villanueva 16 . String nombres[100].""). float notas[10]. TListBox *lst2) { int i. for(i=0.h" //--------------------------------------------------------------------------#pragma package(smart_init) #pragma resource "*."Nota["+IntToStr(i)+"]:". int n.h> #pragma hdrstop #include "Unit1.dfm" TForm1 *Form1.i<n. float notas[].i++) { nombres[i]=InputBox("Ingreso". lst1->Items->Add(nombres[i]).Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ 7) Ingresar los nombres y las notas de n alumnos y reportar una lista en orden Alfabético y una lista en orden de merito //--------------------------------------------------------------------------#include <vcl.""). int n. lst2->Items->Clear()."Nombre["+IntToStr(i)+"]:". lst2->Items->Add(notas[i]). //--------------------------------------------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------void ingreso(String nombres[]. lst1->Items->Clear(). } ______________________________________________________________________ Docente: Mg. TListBox *lst1.ToDouble(). Ing. notas[i]=InputBox("Ingreso".

int n) { int i. nombres[j]=temp1.lstNotas).Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ } void mostrar(String nombres[]. nombres[i]=nombres[j]. Marcelino Torres Villanueva 17 . Ing. String temp1.j++) if(nombres[i]>nombres[j]) { temp1=nombres[i]. temp2=notas[i].j.i++) for(j=i+1. nombres[j]=temp1. float temp2.notas.i++) { lst1->Items->Add(nombres[i]). TListBox *lst2) { int i.i<n-1.i<n.j<n. ingreso(nombres. lst1->Items->Clear(). notas[i]=notas[j]. } //--------------------------------------------------------------------------void __fastcall TForm1::btnOrdenAlfabeticoClick(TObject *Sender) { ordenAlfabetico(nombres. for(i=0.j<n.i++) for(j=i+1.i<n-1.notas.n. for(i=0. int n. TListBox *lst1. float notas[].n).j. float notas[]. int n) { int i. } } void ordenAlfabetico(String nombres[]. notas[j]=temp2. notas[i]=notas[j]. nombres[i]=nombres[j].ToInt(). temp2=notas[i]. notas[j]=temp2.j++) if(notas[i]<notas[j]) { temp1=nombres[i]. String temp1. for(i=0. float temp2.lstNombres. } } void __fastcall TForm1::btinIngresoClick(TObject *Sender) { n=edN->Text. float notas[]. lst2->Items->Clear(). lst2->Items->Add(notas[i]). } } void ordenDeMerito(String nombres[]. ______________________________________________________________________ Docente: Mg.

} //--------------------------------------------------------------------------- void __fastcall TForm1::btnSalirClick(TObject *Sender) { Close().notas.lstNombres. Ing. n=0.n). } //--------------------------------------------------------------------------void __fastcall TForm1::btnLimpiarClick(TObject *Sender) { edN->Clear().n.n. } //--------------------------------------------------------------------------void __fastcall TForm1::btnOrdenMeritoClick(TObject *Sender) { ordenDeMerito(nombres.notas. lstNotas->Items->Clear(). mostrar(nombres.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ mostrar(nombres. lstNombres->Items->Clear(). Marcelino Torres Villanueva 18 .notas.lstNotas). edN->SetFocus(). } //--------------------------------------------------------------------------- ______________________________________________________________________ Docente: Mg.lstNombres.lstNotas).

3) Sea un vector de n elementos reales. intersección y la diferencia del primero con el segundo.Universidad Cesar Vallejo Escuela de Ingeniería de Sistemas Curso: Metodología de la Programación ______________________________________________________________________ Ejercicios Propuestos de Vectores 1) Ingresar n números en un vector y mostrar luego. 8) Ingresar n enteros en un vector A y otros n enteros en un vector B y mostrar la lista de enteros del vector C. ______________________________________________________________________ Docente: Mg. 14) Ingrese los nombres y las tallas de los jugadores de un equipo de fútbol y determine la talla promedio y el nombre del jugador más alto. Mostrar la lista de números menores al promedio. 11) Se tienen dos vectores ordenados y se desea unirlos en un tercero pero manteniendo los datos ordenados (sin usar métodos de ordenamiento). 6) Programa para ingresar n elementos en un vector y luego ingresar un elemento. 7) Programa para ingresar n elementos en un vector y al final quede sin elementos repetidos. Donde cada C[i]=A[i]+B[i] 9) Ingresar dos vectores y reportar si son iguales. La mediana de un vector ordenado es el elemento central si el número de términos es impar. primero la lista de los números pares que fueron ingresados y luego la lista de los números negativos 2) Ingresar N notas en un vector y determinar el porcentaje de aprobados y el porcentaje de desaprobados. 13) Calcule el promedio ponderado de un conjunto de datos. Ing. 10) Ingresar 2 vectores de n y m elementos y calcular la unión. 12) Calcule la mediana de un conjunto de datos. La media armónica se define como: el Inverso del promedio de los inversos 5) Ingresar n elementos en un vector y luego ingresar un elemento y reportar cuantas veces aparece ese elemento en el vector. si este se encuentra en el vector eliminarlo todas las veces que se encuentra. Se deben ingresar las cantidades con sus respectivos pesos. 4) Calcule la media armónica de un conjunto de datos. Y la semisuma de los términos centrales si el número de términos es par. Marcelino Torres Villanueva 19 .