Está en la página 1de 12

PRACTICO 7: VECTORES

NOMBRE: JORGE MARCO ARANIBAR ROMÁN

1. Hacer un programa para sacar el máximo valor de un vector de


valores ya sean reales o enteros.
#include <iostream>
using namespace std;
int main()
{
int numeros[100],n,i,mayor=0;
cout<<"Ingrese el numero de elementos del vector"<<endl;
cin>>n;
for (i=0;i<n;i++)
{
cout<<i+1<<". Digite un numero: ";
cin>>numeros[i];
if(numeros[i]>mayor){
mayor=numeros[i];
}
}
cout<<"El mayor elemento del vector es: "<<mayor<<endl;

return 0;
}
2. Hacer un programa para sacar el mínimo valor de un vector de
valores ya sean reales o enteros.
#include <iostream>
using namespace std;
int main()
{
int numeros[100],n,i,menor=0;
cout<<"Ingrese el numero de elementos del vector"<<endl;
cin>>n;
for (i=0;i<n;i++)
{
cout<<i+1<<". Digite un numero: ";
cin>>numeros[i];
if(numeros[i]<menor){
menor=numeros[i];
}
}
cout<<"El menor elemento del vector es: "<<menor<<endl;

return 0;
}

3. Hacer un programa para sacar el promedio de valores de un


vector.
#include <iostream>
using namespace std;
int main()
{
int i=0,suma=0;
float promedio=0,n;
int vector[100];
cout<<"Ingrese el numero de elementos del vector"<<endl;
cin>>n;
for (i=0;i<n;i++)
{
cout<<i+1<<". Digite un numero: ";
cin>>vector[i];
suma=suma+vector[i];
promedio=suma/n;
}
cout<<endl<<"La suma de los valores del vector es:
"<<suma<<endl;
cout<<"El promedio de los valores del vector es:
"<<promedio<<endl;

return 0;
}
4. Hacer un programa para revertir la lista de valores de un vector,
en otro vector, es decir se debe mantener el vector original.
#include <iostream>

int arregloNumeros[20];
using namespace std;
int main()
{
int cantidad,i,auxiliar;
cout<<"Ingrese numero de elementos"<<endl;
cin>>cantidad;
for(i=0;i<cantidad;i++){
cout<<i+1<<". Digite un numero: ";
cin>>arregloNumeros[i];
}
cout<<endl;
for(i=0;i<cantidad;i++){
cout<<endl<<"Elemento "<<(i+1)<<" : "<<arregloNumeros[i];
}
for(i=0;i< cantidad/2;i++){
auxiliar=arregloNumeros[i];
arregloNumeros[i]=arregloNumeros[cantidad-1-i];
arregloNumeros[cantidad-1-i]=auxiliar;
}
cout<<endl;
for(i=0;i<cantidad;i++){
cout<<endl<<"Elemento "<<(i+1)<<" : "<<arregloNumeros[i];
}

return 0;
}
5. Hacer un programa para generar números enteros aleatorios en
un vector de tamaño N. Los números aleatorios están en el rango
de un mínimo a un máximo.
#include <iostream>

using namespace std;


int main()
{
int vector[100],dim,i;
cout<<"Dimension: ";
cin>>dim;
for(i=0;i<dim;i++)
{
vector[i]=rand()%21;
cout<<"["<<vector[i]<<"]";
}
return 0;
}
6. Hacer un programa para determinar si un vector es capicúa, es
decir, si el vector revertido es igual al inicial, se dice que el vector
es capicúa.
#include <iostream>

using namespace std;


int main()
{
int x,n,i,j,b=0;
cout<<"Ingresar el numero de dimensiones"<<endl;
cin>>n;
int v[n];
j=n-1;
for(i=0;i<=n-1;i++){
cout<<"Ingresar el valor de la dimension "<<i+1<<": ";
cin>>x;
v[i]=x;
}
cout<<"Su vector es: "<<endl;
for(i=0;i<=n-1;i++){
cout<<v[i]<<" ";
if(v[i]==v[j]){
b=b+1;
}
j=j-1;
}
if(b==n){
cout<<endl<<"El vector es capicua"<<endl;
}
else{
cout<<"El vector no es capicua"<<endl;
}
return 0;
}
7. Sacar el promedio de cada tres valores consecutivos en un vector.
P1= A1 + A2 + A3
P2= A2 + A3 + A4
P3= A3 + A4 + A5
……………………
#include <iostream>
using namespace std;
int main()
{
int x,n,i,a=0,j=0;
float p=0;
cout<<"Ingresar el numero de dimensiones"<<endl;
cin>>n;
int v[n];
for(i=0;i<=n-1;i++){
cout<<"Ingresar el valor de la dimension "<<i+1<<": ";
cin>>x;
v[i]=x;
}
while(n>2){
j=j+1;
for(i=a;i<=a+2;i++){
x=v[i];
p=p+x;
}
cout<<"Promedio "<<j<<": "<<p/3<<endl;
n=n-1;
a=a+1;
p=0;
}

return 0;
}
8. Dado un vector A de n números reales, obténgase la diferencia
más grande entre dos elementos consecutivos de este vector.
#include <iostream>

using namespace std;


int main()
{
int x,n,i,a=0,j=0,p=0,c=0,d,e,f;
cout<<"Ingresar el numero de dimensiones"<<endl;
cin>>n;
int v[n];
for(i=0;i<=n-1;i++){
cout<<"Ingresar el valor de la dimension "<<i+1<<": ";
cin>>x;
v[i]=x;
}
while(n>1){
for(i=a;i<=a+1;i++){
j=j+1;
x=v[i];
f=p;
p=x;
}
if(f<p){
d=p-f;
}
else{
d=f-p;
}
if(d>c){
e=d;
}
c=d;
n=n-1;
a=a+1;
p=0;
}
cout<<"La mayor diferencia consecutiva es de: "<<e;

return 0;
}

9. Concatenar dos vectores de tamaño n y m respectivamente.


[a1,a2,......an;] [b1,b2,....bm]; concatenado resulta
[a1,a2,......an,b1,b2,....bm] con n+m elementos.
#include <iostream>
using namespace std;

int main()
{
int n,m,o,x,i=0,d[100];
cout<<"Ingresar la dimension del v1"<<endl;
cin>>n;
cout<<"Ingresar la dimension del v2"<<endl;
cin>>m;
o=m+n;
d[o];
for (int i=0;i<=n-1;i++){
cout<<"Ingresar el valor "<<i+1<<" de v1: ";
cin>>x;
d[i]=x;
}
for(i=0;i<=m-1;i++){
cout<<"Ingresar el valor "<<i+1<<" de v2: ";
cin>>x;
d[i+n]=x;
}
system("clear");
cout<<"Vector 1: "<<endl;
for (i=0;i<=n-1;i++){
cout<<d[i]<<" ";
}
cout<<endl<<"Vector 2: "<<endl;
for(i=0;i<=m-1;i++){
cout<<d[i+n]<<" ";
}
cout<<endl<<"Su vector concatenado es: "<<endl;
for(i=0;i<=o-1;i++){
cout<<d[i]<<" ";
}

return 0;
}
10. Intercalar dos vectores A y B clasificados ascendentemente de
tamaño n y m respectivamente en uno solo de tal forma que el
resultado sea un vector clasificado.
#include <iostream>
using namespace std;

int main()
{
int n,m,i,l,j,t;
cout<<"Ingresar la dimension del vector 1"<<endl;
cin>>n;
int a[n];
for(i=0;i<n;i++){
cout<<"Valor "<<i+1<<" del v1: ";
cin>>a[i];
}
cout<<"Ingresar la dimension del vector 2"<<endl;
cin>>m;
l=m+n;
int b[m],c[l];
for(i=0;i<m;i++){
cout<<"Valor "<<i+1<<" del v2: ";
cin>>b[i];
}
for(i=0;i<n;i++){
c[i]=a[i];
}
for(i=0;i<n;i++){
c[i+n]=b[i];
}
for(i=0;i<l-1;i++){
for(j=0;j<l-1;j++){
if(c[j]>c[j+1]){
t=c[j];
c[j]=c[j+1];
c[j+1]=t;
}
}
}
cout<<"El vector concatenado es: "<<endl;
for(i=0;i<l;i++){
cout<<c[i]<<" ";
}

return 0;
}

11. Hacer un programa que permita contar número de valores


negativos, positivos y ceros que hay en un vector.
#include <iostream>
using namespace std;

int main()
{
int n,i=0,a=0,b=0,c=0;
cout<<"Ingresar la dimension del vector"<<endl;
cin>>n;
int v[n];
for (i=0;i<n;i++){
cout<<"Ingresar el valor "<<i+1<<" de v1: ";
cin>>v[i];
if(v[i]==0){
a=a+1;
}
else{
if(v[i]>0){
b=b+1;
}
else{
c=c+1;
}
}
}
cout<<"Su vector es: "<<endl;
for (i=0;i<n;i++){
cout<<v[i]<<" ";
}
cout<<endl<<"Numeros positivos:" <<b<<endl;
cout<<"Numeros neutros:" <<a<<endl;
cout<<"Numeros negativos:" <<c<<endl;
return 0;
}

12. Hacer un programa para eliminar los números duplicados de un


vector.
#include <iostream>
using namespace std;

int main()
{
int Inicial[50],Aux[50],Final[50];
int n,i,j=0,z=0,k,cont,num;
cout<<"Ingresar las posiciones del vector"<<endl;
cin>>n;
for(i=0;i<n;i++){
cout<<"Valor "<<i+1<<" del vector: ";
cin>>Inicial[i];
}
for(i=0;i<n;i++){
cont=0;
num=Inicial[i];
Aux[j]=num;
j++;
for(k=0;k<n;k++){
if(Aux[k]==num){
cont++;
}
}
if(cont==1){
Final[z]=num;
z++;
}
}
cout<<"El vector sin repeticiones es: "<<endl;
for(i=0;i<z;i++){
cout<<Final[i]<<" ";
}

return 0;
}

13. Hacer un programa para invertir una lista de valores de un


vector en el mismo vector.
#include <iostream>

int arregloNumeros[20];
using namespace std;
int main()
{
int cantidad,i,auxiliar;
cout<<"Ingrese numero de elementos"<<endl;
cin>>cantidad;
for(i=0;i<cantidad;i++){
cout<<i+1<<". Digite un numero: ";
cin>>arregloNumeros[i];
}
cout<<endl;
for(i=0;i<cantidad;i++){
cout<<endl<<"Elemento "<<(i+1)<<" : "<<arregloNumeros[i];
}
for(i=0;i< cantidad/2;i++){
auxiliar=arregloNumeros[i];
arregloNumeros[i]=arregloNumeros[cantidad-1-i];
arregloNumeros[cantidad-1-i]=auxiliar;
}
cout<<endl;
for(i=0;i<cantidad;i++){
cout<<endl<<"Elemento "<<(i+1)<<" : "<<arregloNumeros[i];
}

return 0;
}

14. Hacer un programa para clasificar una lista de valores (enteros o


reales) en orden ascendente/descendente.
#include <iostream>

using namespace std;


int main()
{
int i,j,n,aux;
cout<<"Ingresar la dimension del vector"<<endl;
cin>>n;
int v[n];
for (i=0;i<n;i++){
cout<<"Ingresar el valor "<<i+1<<" del vector: ";
cin>>v[i];
for(j=0;j<n;j++){
if(v[j]>v[j+1]){
aux=v[j];
v[j]=v[j+1];
v[j+1]=aux;
}
}
}
cout<<"Orden Ascendente: "<<endl;
for(i=0;i<n;i++){
cout<<v[i]<<" ";
}

return 0;
}
15. Un vector tiene la lista de Nro. de Registro y otro vector tiene las
notas. Hacer un programa para obtener las tres mejores notas.
Hay que tener cuidado cuando se intercambia los elementos del
vector de Nro. de Registro también se debe intercambiar las
notas.

16. Generar los primeros n números de Fibonacci en un vector.


#include <iostream>

using namespace std;


int main()
{
int i,n;
float a=0,b=1,c=1;
cout<<"Ingresar la dimension del vector"<<endl;
cin>>n;
int fib[n];
for (i=0;i<n;i++){
fib[i]=a;
c=a+b;
a=b;
b=c;
}
cout<<"La serie es: "<<endl;
for(i=0;i<n;i++){
cout<<fib[i]<<" ";
}

return 0;
}

También podría gustarte