Sunteți pe pagina 1din 18

UNIVERSIDAD CATOLICA DE SANTA MARIA

FACULTAD DE CIENCIAS E INGENIERAS FISICAS Y FORMALES


PROGRAMA PROFESIONAL
INGENIERIA MECNICA, MECNICA-ELECTRCA Y MECATRNICA
Pgina:1/18
Jefes de Prcticas:
Ing. Sergio Mestas Ramos
Ing. Juan Carlos Cuadros
Ing. Henry Zegarra Gago
Ing. Christian Collado Oporto Laboratorio de Mecnica Computacional I
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
Cdigo: 4E03017
Semestre: III
Grupo: FECHA:
Apellidos y Nombres: Lab. N: 08 05 al 10/MAY/2014

I. OBJETIVOS
Comprender la necesidad del diseo de algoritmos en el estudio y resolucin de programas.
Comprender el concepto de estructura de datos.
Comprender y emplear el concepto de arreglo (array) unidimensional en la solucin de problemas de
estructuras de datos.
Comprender y emplear el concepto de arreglo (array) bidimensional en la solucin de problemas de
estructuras de datos.
Realizar la implementacin de soluciones en Visual C++ de los ejercicios propuestos referidos al tema
en discusin.
II. MARCO TEORICO
Introduccin: en muchas situaciones se necesita procesar una coleccin de datos que estn relacionados
entre s, por ejemplo, la lista de notas de los alumnos, los participantes de una carrera deportiva, etc.
Procesar ese conjunto de datos en forma independiente con variables simples(primitivas), es
tremendamente difcil, es por eso que los lenguajes de programacin incorporan mecanismos que facilitan
la manipulacin y organizacin para una coleccin de datos llamadosestructuras de datos.
Estructura de datos: es una coleccin de datos que pueden ser caracterizados por su organizacin y las
operaciones que se definen en ella.
Los tipos de datos simples pueden ser organizados en diferentes estructuras de datos: estticas y
dinmicas.
Las estructuras de datos estticas son aquellas en las que el tamao ocupado en memoria se define antes
de que el programa se ejecute y no puede modificarse dicho tamao durante la ejecucin del programa.
Ejemplos de estas estructuras son los array (vectores/matrices), registros, ficheros, conjuntos, cadenas.
Las estructuras de datos dinmicas no tienen las limitaciones o restricciones en el tamao de memoria
ocupada que son propias de las estructuras estticas. Mediante un tipo de datos especfico, denominado
puntero, es posible construir estructuras de datos dinmicas que son muy efectivas en la solucin de
problemas complejos. Ejemplos de este tipo de estructuras son las listas, listas enlazadas, rboles, grafos.
Vectores (array unidimensional) y Matrices (array bidimensional)
Un array (vector o matriz) es un conjunto finito (tamao fijo) y ordenado (usa un ndice) de elementos
homogneos. La propiedad ordenado significa que el elemento primero, segundo, tercero,, ensimo
de un array puede ser identificado. Los elementos de un array son homogneos, es decir, del mismo tipo
de datos. Un array puede estar compuesto de todos sus elementos de tipo cadena, otro puede tener sus
elementos de tipo entero, etc.
El tipo ms simple de array es el array unidimensional o vector (matriz de una dimensin) (Figura 1).
Las matrices son un tipo de arreglo en dos dimensiones como semuestra en la Tabla 1 (en este caso, para
saber la nota de un alumno debo saber 2 cosas, su nombre y a que fase se refiere.


Laboratorio de Mecnica Computacional I Pgina: 2/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

Los vectores y las matrices son arrays o tablaso estructuras de datos caracterizadas por:
- Una coleccin de datos del mismo tipo.
- Referenciados mediante un mismo nombre.
- Almacenados en posiciones de memoria fsicamente contiguas, de forma que, la direccin de memoria ms
baja corresponde a la del primer elemento, y la direccin de memoria ms alta corresponde a la del ltimo
elemento







Figura 1 Vector de N elementos

Arreglo de una dimensin
(Vector de 5 elementos, por ejemplo, vector de NOTAS)
0 1 2 3 4
15 12 18 14 12

LI 0 15

I
N
D
I
C
E

1 12
2 18
3 14
LS 4 12

El ndice o subndice de un elemento (0, 1, , i, n) designa su posicin en la ordenacin del vector. Ejemplo:
NOTAS(0), NOTAS(1), , NOTAS(I), NOTAS(N)
Observe que solo el vector global tiene nombre (NOTAS). Los elementos del vector se referencian por su
ndice.
Es importante mencionar que el primer elemento no tiene el indice 1 sino ms bien el indice 0..





INDICE

Laboratorio de Mecnica Computacional I Pgina: 3/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET


F
a
s
e

1

F
a
s
e

2

F
a
s
e

3

S
u
b
s
a

Aguilar Gutierrez, Fernando 9 8 10 13
Alarcon Llerena, Guillermo 12 10 12 14
Amado Arias 13 13 7 14
Amanca Tairo, Ronal 9 6 8 10
Arce Torres, Richard 14 11 9 15
Arcos Huillca, Tony 13 12 14 15
Ari Flores, Edwin 11 8 15 13
Ballon Peafiel, Cesar Oswaldo 10 9 12 12
Bernedo Flores, Carlos 6 8 12 11
Bravo Arredondo, Anthony 11 8 14 13

En el caso de la matriz es importante mencionar que la primera fila no tiene el ndice 1
sino 0, lo mismo pasa en las columnas.


Tabla 1 Array de dos dimensiones (matriz)
Operaciones con Arrays
Las operaciones con estructuras de datos son el procesamiento y el tratamiento individual de los elementos
del array, las cuales son pueden ser operaciones de:
Asignacin
Lectura/Escritura
Recorrido
Actualizacin (insertar, borrar, modificar)
Ordenacin
Bsqueda

Declaracin de un array vector:El formato general para la declaracin de una variable de tipo vector es el
siguiente:

Tipo_de_datos nombre_tabla [tamao];

Asignacin de valores a un vector: La asignacin de valores a los elementos de un vector se realiza
mediante el nombre de la tabla, tamao y los valores que se asignaran entre { } y separados por coma:

nombre_tabla [tamao]={valor1, valor2, valorN};


Laboratorio de Mecnica Computacional I Pgina: 4/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET


La asignacin de valores a un elemento del vector se realizara con la instruccin de asignacin:

A[29] 5 ; asigna el valor 5 al elemento 29 del vector A

Si se desea asignar valores a todos los elementos de un vector, se debe recurrir a estructuras repetitivas
(para, mientras o repetir) e incluso selectivas (si-entonces, segn).

Ejemplo:

int contador[3] ={ 24, 12, 6};

Otra forma de asignar valores al vector es:

int contador[3];




contador[0] = 24;
contador[1] = 12;
contador[2] = 6;


La manera ms habitual de inicializar un vector en tiempo de ejecucin consiste en recorrer
secuencialmente todos sus elementos y darles valores inicial correspondiente, as por ejemplo:

#define TAM 100 // Define la constante TAM con un valor de 100
void main()
{
int vector[TAM], i;
for (i= 0; i< TAM; i++)
vector[i] = 0;
}


Lectura/escritura de datos: la lectura/escritura de datos en Arrays u operaciones de entrada/salida
normalmente se realizan con estructuras repetitivas, aunque puede tambin hacerse con estructuras
selectivas. Las instrucciones simples de lectura/escritura se representarn como:

Leer (V[5]); leer el elemento V[5] del vector V


Laboratorio de Mecnica Computacional I Pgina: 5/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

Ejemplo:

#define LONGITUD 5 // Define la constante LONGITUD con un valor de 5
int main ()
{
int vector[LONGITUD], valor,i;

//INGRESANDO VALORES AL VECTOR
cout<<"EL vector tiene una longitud de: "<<LONGITUD<<"\n\n";
for(i=0;i<LONGITUD;i++)
{
cout<<"Ingrese valor de posicion["<<i<<"] del vector = ";
cin>>valor;
vector[i]=valor;
}
}

Acceso secuencial al vector (recorrido):se puede acceder a los elementos de un vector para introducir datos
(escribir) en l o bien para visualizar su contenido (leer. A la operacin de efectuar una accin general sobre
todos los elementos de un vector se le denomina recorrido del vector. Estos procesos se realizan utilizando
estructuras repetitivas, cuyas variables de control (por ejemplo, I) se utilizan como ndices del vector (por
ejemplo, S[I]). El incremento del contador del bucle producir el tratamiento sucesivo de los elementos del
vector.

Ejemplo: Lectura de veinte valores enteros de un vector denominado F

i 1
mientras i<= 20 hacer
leer (F[i]);
i i+1;
fin-mientras

Declaracin de un array matriz:El formato general para la declaracin de una variable de tipo matriz es el
siguiente:

Tipo_de_datos nombre_matriz [tamao_filas][tamao_columnas];

Asignacin de valores a una matriz: La asignacin de valores a los elementos de un vector se realiza
mediante el nombre de la matriz, tamao y los valores que se asignaran entre { } y separados por coma:

Ejemplo:

int C[2][2]={11,12,21,22};

Laboratorio de Mecnica Computacional I Pgina: 6/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

lo cual nos da: [


]

Es decir se deben poner todos los elementos de una fila, luego la siguiente y as sucessivamente.


Otra forma de asignar valores a la matriz es elemento a elemento:

int matriz[2] [2];

matriz[0] [0]=10;
matriz[0] [1]=11;
matriz[1] [0]=21;
matriz[1] [1]=22;







Columna 0 Columna 1

Fila 0
Fila 1{


}



La manera ms habitual de inicializar una matriz en tiempo de ejecucin consiste en recorrer
secuencialmente todos sus elementos y darles valores inicial correspondiente, as por ejemplo:


#define fil 6 //CANTIDAD MAXIMA DE FILAS M
#define col 6//CANTIDAD MAXIMA DE COLUMNAS N
int matriz[Nfila] [Ncolumna], fila, columna;

void main()
{
for (fila=0;fila<Nfila;fila++)
for (columna=0;columna<Ncolumna;columna++)
{
matriz[fila] [columna]=0;
}
}
{




Laboratorio de Mecnica Computacional I Pgina: 7/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

Lectura/escritura de datos: la lectura/escritura de datos en Arrays u operaciones de entrada/salida
normalmente se realizan con estructuras repetitivas, aunque puede tambin hacerse con estructuras
selectivas. Las instrucciones simples de lectura/escritura se representarn como:

Leer (M[3] [4]); leer el elemento de la tercera fila y cuarta columna de la matriz M.
Escribir (M[3] [4]); escribir el elemento de la tercera fila y cuarta columna de la matriz M.

Ejemplo:


#define fil 6 //CANTIDAD MAXIMA DE FILAS M
#define col 6//CANTIDAD MAXIMA DE COLUMNAS N
int matriz[Nfila] [Ncolumna], fila, columna;

void main()
{
//INGRESANDO VALORES A LA MATRIZ
for (fila=0;fila<Nfila;fila++)
for (columna=0;columna<Ncolumna;columna++)
{
cout<<"Ingrese el valor para la matriz ["<<fila<<"] "<<"["<<columna<<"] ";
cin>>matriz[fila] [columna];
}
}


III. PROCEDIMIENTO

Ejercicio01:Elaborar el diagrama de flujo y programa que permita ingresar valores a un vector
de N elementos. Emplear la estructura para y la estructura mientras.
METODO 1
#include<iostream>
usingnamespace std;
int vect[50],i,n;
void main(void)

{

cout<<"ingrese el numero :";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"el numero el valor :";
cin>>vect[i];

}

Laboratorio de Mecnica Computacional I Pgina: 8/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET


system("pause");
}

METODO 2
#include<iostream>
usingnamespace std;
int vect[50],i,n;
void main(void)

{
cout<<"*****************:""\n";
cout<<"ingrese el numero :";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"el numero el valor :";
cin>>vect[i];

}

system("pause");
cout<<"mostramos el vector ------->:""\n";
for(i=0;i<n;i++)
{
cout<<vect[i]<<"\n";
}
system("pause");

}


Ejercicio02:Elabore el diagrama de flujo y programa para que dado un array de N nmeros
obtenga el nmero mayor.
METODO
#include<iostream>
usingnamespace std;
int vect[50],i,n,may;
void main(void)

{
cout<<"*****************:""\n";
cout<<"ingrese el numero :";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"el numero el valor :";
cin>>vect[i];

}

system("pause");

Laboratorio de Mecnica Computacional I Pgina: 9/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

may=vect[0];
for (i=0;i<n;i++)//recorremos el vector
{
if (vect[i]>may)
may=vect[i];
}
cout<<"el mayor es "<<may<<"\n";

system("pause");

}
METODO DOS CON UBICACIN
#include<iostream>
usingnamespace std;
int vect[50],i,n,may,pos;
void main(void)

{
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"ingrese el numero :";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"+++++++++++++++++++++++++++++++++:""\n";
cout<<"el numero el valor :";
cin>>vect[i];

}

system("pause");
may=vect[0];
for (i=0;i<n;i++)//recorremos el vector
{
if (vect[i]>may)
may=vect[i];
{pos=i;}
}
cout<<"++++++++++++++++++++++++++++++++:""\n";
cout<<"el mayor es "<<may<<"\n";
cout<<"++++++++++++++++++++++++++++++++:""\n";
cout<<"ubicado en la posicion"<<pos<<"\n";

system("pause");

}

Ejercicio03:Elabore el diagrama de flujo y programa que lea cuatro nmeros y los almacene en
un vector A; lea otros cuatro nmeros y los almacene en el vector B, luego determine cuantos
nmeros del vector A se encuentren en el vector B.
#include<iostream>
usingnamespace std;
int A[50],B[50],i,j,n,h;
void main()

Laboratorio de Mecnica Computacional I Pgina: 10/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

{
cout<<"Numero de Elementos A: ";
cin>>n;
for (i=0;i<n;i++)
{
cout<<"Ingrese Valor: ";
cin>>A[i];
}
cout<<"Numero de Elementos B: ";
cin>>n;
for (j=0;j<n;j++)
{
cout<<"Ingrese Valor: ";
cin>>B[j];
}
h=0;
for (i=0;i<n;i++)
for (j=0;j<n;j++)
if (A[i]==B[j])
h++;
cout<<"La Cantidad de Numeros que se repite son: "<<h<<"\n";
system ("pause");






Ejercicio04: Realice un programa que me permita sumar dos vectores de la misma longitud.
METODO
#include<iostream>
usingnamespace std;
int A[50],B[50],i,j,C[50],n,cant;
void main(void)

{
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"numero de elementos de A :";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"+++++++++++++++++++++++++++++++++:""\n";
cout<<"INGRESE EL VALOR :";
cin>>A[i];

}
cout<<"numero de elementos de B :";
for(j=0;j<n;j++)
{
cout<<"+++++++++++++++++++++++++++++++++:""\n";
cout<<"INGRESE EL VALOR :";
cin>>B[j];

Laboratorio de Mecnica Computacional I Pgina: 11/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

}
//sumamos los vectores
for(i=0;i<n;i++)
C[i]=A[i]+B[i];
//mostramos resultados
for (i=0;i<n;i++)
cout<<C[i]<<"\n";
system("pause");

}


Ejercicio05Elaborar el diagrama de flujo y programa que permita ingresar valores a una matriz
de MxN.
#include<iostream>
usingnamespace std;
int A[20][20];
int i,j,m,n;
void main()
{
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"Numero de filas en A: ";
cin>>m;
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"Numero de columnas en A: ";
cin>>n;
for (i=0;i<m;i++) //recorre filas
for(j=0;j<n;j++)
{
cout<<"A["<<i<<","<<j<<"]= ";
cin>>A[i][j];
}
system ("pause");
}


Ejercicio06: Elabore el diagrama de flujo y programa para que dado una matriz de mxn
nmeros obtenga el nmero mayor.
#include<iostream>
usingnamespace std;
int A[20][20];
int i,j,m,n,may,x,y;
void main()
{
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"Numero de filas en A: ";
cin>>m;
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"Numero de columnas en A: ";
cin>>n;
for (i=0;i<m;i++) //recorre filas
for(j=0;j<n;j++)

Laboratorio de Mecnica Computacional I Pgina: 12/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

{
cout<<"A["<<i<<","<<j<<"]= ";
cin>>A[i][j];
}
system ("pause");
//Elabore el diagrama de flujo y programa para que dado una matriz de
mxn nmeros obtenga el nmero mayor.
may=A[0][0];
for (i=0;i<m;i++)
for(j=0;j<n;j++)
{
if (A[i][j]>may)
{
may=A[i][j];
x=i;
y=j;
}
}
cout<<"el numero mayor es A["<<x<<","<<y<<"]= "<<may<<"\n";
system ("pause");
}


Ejercicio07: Elabore el diagrama de flujo y programa que permita crear la matriz B a partir del
vector A. usando la menor cantidad de lneas de instruccin posibles.
A = [1 2 3 4 5]

15 10 5
12 8 4
9 6 3
6 4 2
3 2 1
B

#include<iostream>
usingnamespace std;
int A[20],B[20][20];
int i,j,m,n;
void main()
{
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"posicion del vector: ";
cin>>m;
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"filas de la matriz: ";
cin>>n;
for (i=0;i<m;i++) //recorre filas

{
cout<<"A["<<i<<"]= ";
cin>>A[i];
}
system ("pause");
//generamos la matriz

Laboratorio de Mecnica Computacional I Pgina: 13/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

for (i=0;i<m;i++)
for (j=0;j<n;j++)
B[i][j]=A[j]*(i+1);
//mostramos la matriz

for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
{
cout<<B[i][j]<<" ";
}

cout<<"\n";
}
system ("pause");
}



Ejercicio08: Realice un programa que me permita obtener la matriz transpuesta de una matriz
de 3x3 ingresada por teclado.
#include<iostream>
usingnamespace std;
int A[20][20],B[20][20];
int i,j,m,n;
void main()
{
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"Numero de filas en A: ";
cin>>m;
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"Numero de columnas en A: ";
cin>>n;
for (i=0;i<m;i++) //recorre filas
for(j=0;j<n;j++)
{
cout<<"A["<<i<<","<<j<<"]= ";
cin>>A[i][j];
}
system ("pause");
//generamos la transpuesta
for (i=0;i<m;i++)
for (j=0;j<n;j++)
B[i][j]=A[j][i];
//mostramos la transpuesta
//cout<<"B["<<i<<","<<j<<"]= ";
for (i=0;i<m;i++)
{
for (j=0;j<n;j++)
{
cout<<B[i][j]<<" ";
}

cout<<"\n";
}
system ("pause");
}

Laboratorio de Mecnica Computacional I Pgina: 14/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET



IV. CUESTIONARIO FINAL
1. Realice un programa con men que me permita:

1. Ingresar Vector
2. Sumar posiciones pares
3. Sumar posiciones impares
4. Salir del programa
#include<iostream>
#define a 1000


usingnamespace std;
unsignedint C;
int z,x,c,v;
float VA[a];
void main(void)
{
cout<<"++++++++++++++++++++++++++:""\n";
cout<<" vector A: ";
cin>>x;
cout<<"++++++++++++++++++++++++++:""\n";
cout<<"componentes vector A: ";
for (z=0;z<x;z++) //recorre filas

{
cout<<"posicion del vector A["<<z<<"]= ";
cin>>VA[z];
}
cout<<"el vector ingresado es: "<<"\n";
cout <<" ";
for (z=0,z<x,z++)
{
cout<<" ";
cout<<VA[z];
cout<<" ";
}
cout<<"\n";
cout<<"elija la opcion:""\n";
cout<<" sumar posiciones pares ""\n";
cout<<" sumar posiciones impares""\n";
cout<<" sumar posiciones impares""\n";
cout<<" salir""\n";
cin>>C;
switch (C)
{
case 1:
{
z=1;
v=0;
cout<<"Sumar las posiciones pares del vector""\n";
while(z<x)

Laboratorio de Mecnica Computacional I Pgina: 15/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

{
c=vA[i];
v=o+c;
x=x+2;
}
cout<<o;
cout<<"\n\n";
break;
}
case 2:
{
x=0;
v=0;
cout<<"Sumar las posiciones pares del vector""\n";
while(x<z)
{
c=vA[i];
v=c+v;
x=x+2;
}
cout<<o;
cout<<"\n";
break;
}
case 3:
{
}
break;

}
}









2. Disee un diagrama de flujo y programa para buscar un nmero en 7 nmeros ingresados y determine
la posicin y si existe o no el nmero buscado.
#include<iostream>

usingnamespace std;

int i,r,t,s;
unsignedint C;
float v[7];



void main (void)
{
cout<<"Ingrese el vector ""\n";
for(i=0;i<7;i++)
{
cout<<"Ingrese la posicion vector ["<<i<<"]=";

Laboratorio de Mecnica Computacional I Pgina: 16/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

cin>>v[i];
}
cout<<"El vector ingresado fue: ""\n";
cout<<"\n";
cout<<" ";
for(i=0;i<7;i++)
{
cout<<" ";
cout<<v[i];
cout<<" ";
}
cout<<" "<<"\n";
cout<<"que numero quiere encontrar?"<<"\n";
cin>>t;
cout<<"\n";
for(i=0;i<7;i++)
{
if(t==v[i])
{ cout<<"esta en la posicion: ";
cout<<i+1;
cout<<"\n";
}
else
{
cout<<"No se encuentra el numero"<<"\n";
}
}





3. Realice un programa con men que me permita:

#include<iostream>
usingnamespace std;
int A[20][20];
int m,n,i,j,may,x,y,men,c,d;

void main()
{
cout<<"Numero de filas: ";
cin>>m;
cout<<"numero de columnas: ";
cin>>n;
for (i=0;i<m;i++) //Recorre filas
for(j=0;j<n;j++) //Recorre columnas
{
cout<<"A["<<i<<","<<j<<"]=";
cin>>A[i][j];
}

Laboratorio de Mecnica Computacional I Pgina: 17/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

system("pause");
//calculamos el numero mayor de la matriz
may=A[0][0];
for (i=0;i<m;i++) //Recorre filas
for(j=0;j<n;j++) //Recorre columnas
{
if (A[i][j]>may)
{
may=A[i][j];
x=i;
y=j;
}
}

//calculamos el numero menor de la matriz
men=A[0][0];
for (i=0;i<m;i++) //Recorre filas
for(j=0;j<n;j++) //Recorre columnas
{
if (A[i][j]<men)
{
men=A[i][j];
c=i;
d=j;
}
}
cout<<"El numero mayor es A["<<x<<","<<y<<"]="<<may<<"\n";
cout<<"El numero menor es A["<<c<<","<<d<<"]="<<men<<"\n";

system("pause");
}


1. Ingresar matriz
2.Encontrar el mayor
3. Encontra el menor
4. Salir del programa

4. Disee un diagrama de flujo y programa para buscar ceros (0) en una matriz ingresada por teclado de
3x3. De encontrarse alguno o algunos deber indicar en que posicin se encuentran.


Laboratorio de Mecnica Computacional I Pgina: 18/18
Tema: PROGRAMACIN VISUAL C++
ESTRUCTURAS DE DATOS: ARREGLOS VECTORES Y MATRICES
LAB N 10
JP: Ings.
JCC-HZG-SMR-CCO-
JET

5. Disee un diagrama de flujo y programa para que extraiga dos vectores de una matriz de 4x3
ingresada por teclado y muestre en pantalla la suma. El usuario escoge que filas desea sumar, se debe
verifcar que las filas desedas esten dentro del rango posible.

V. OBSERVACIONES Y CONCLUSIONES
Emita al menos tres conclusiones en torno al trabajo realizado

1. ___________________________________________________________________________________________
___________________________________________________________________________________________
___________________________________________________________________________________________
2. ___________________________________________________________________________________________
___________________________________________________________________________________________
___________________________________________________________________________________________
3. ___________________________________________________________________________________________
___________________________________________________________________________________________
___________________________________________________________________________________________

Haga sus observaciones en torno al trabajo realizado (si es que las tuviera).

___________________________________________________________________________________________
___________________________________________________________________________________________
___________________________________________________________________________________________

S-ar putea să vă placă și