arreglos 1 mb545 consola

4
Universidad Nacional de Ingeniería Facultad de Mecánica BORLAND C++ 5.0 Tema: Arreglos y Aplicaciones Autor: Ingeniero Daniel Osorio Maldonado

Upload: lucho-payano

Post on 21-Dec-2015

212 views

Category:

Documents


0 download

DESCRIPTION

programacion

TRANSCRIPT

Page 1: Arreglos 1 Mb545 Consola

Universidad Nacional de Ingeniería

Facultad de Mecánica

BORLAND C++ 5.0 Tema: Arreglos y Aplicaciones

Autor: Ingeniero Daniel Osorio Maldonado

Page 2: Arreglos 1 Mb545 Consola

UNI – FIM

AACBH

ARREGLOS

Ing. Daniel Osorio Maldonado Página 2 de 4

1. //Genera Matriz de Primos

#include<iostream.h>

#include<conio.h>

#include<stdlib.h>

#include<iomanip.h>

#define mensaje "\n Otra Generacion [S][N] :"

#include<ctype.h>

//Declaracion de las constantes de las filas y

//columnas///////////////

const int fi= 6;

const int co= 6;

//Prototipos de las funciones

int grarPrimo();

void mostrar(int [][co],int,int);

//funcion principal

main(){

int M[fi][co];char opc; do{

clrscr(); randomize();

cout<<"Generando la matriz de números primos\n";

for(int i=0;i<fi;i++)

for(int j=0;j<co;j++)

M[i][j]=grarPrimo();

mostrar(M,fi,co);

cout<<mensaje;

opc=toupper(getch());

}while(opc=='S');

}

//definicion de la funcion que genera un //numero

primo aleatorio primo

int grarPrimo() {

int primo,num,cantDiv;

num=rand()%100;

cantDiv=0;

for(int div=1;div<=num;div++)

if(num%div==0)

cantDiv++;

if(cantDiv==2)

primo=num;

else

return(grarPrimo());

return(primo);

}

//definicion de la funcion que se encarga de

//mostrar la matriz

void mostrar(int matriz[][co],int ff,int cc)

{cout<<"\nLa matriz de numeros primos\n";

for(int m=0;m<ff;m++)

for(int n=0;n<cc;n++)

{gotoxy(6*m+10,5+n);cout<<setw(2)<<matriz[m][n];

if(n==3)

cout<<endl;

}

}

2. //un Vector Aleatorio

#include<iostream.h>

#include<conio.h>

#include<stdlib.h>

int num, sw=0;

void LeerN(int &N)

{cout<<"Ingrese el Numero de elementos ";cin>>N;

}

void LeerLista(int N,int lista[])

{for(int i=0;i<N;i++)

lista[i]=random(45)+1;}

void EscribirLista(int N,int lista[]){

cout<<'{';

for( int i=0;i<N;i++)

cout<<lista[i]<<' ';

cout<<'}'; }

void BuscarElemento(int N,int lista[])

{cout<<"\nIngrse el valor a buscar ";cin>>num;

for( int i=0;i<N;i++)

if(num==lista[i]) {

cout<<"Hallado el valor y se encuentra en la

posicion lista[i]= "<<(i+1);

sw=1;

break;}

if(sw==0)

cout<<"El valor no esta en el vector";

}

main(){

int Vector[100],M; randomize();

LeerN(M);

LeerLista(M,Vector);

EscribirLista(M,Vector);

BuscarElemento(M,Vector);

getch();

}

3. //crear una matriz y luego realizar calculos

para obtener

// matriz triangular inferior y superior...

Page 3: Arreglos 1 Mb545 Consola

UNI – FIM

AACBH

ARREGLOS

Ing. Daniel Osorio Maldonado Página 3 de 4

#include<conio.h>

#include<iostream.h>

#include<math.h>

#include<ctype.h>

void trisup(float X[10][10], int a);

void triinf(float B[10][10], int a);

void matrix(float M[10][10],int a);

void main() //funcion

principal

{

float M[10][10];

float X[10][10];

float B[10][10];

char op,Op;

int a,i,j;

gotoxy(10,2);cout<<"Matriz M:";

gotoxy(10,3);cout<<"Ingrese el orden de la

matriz:";cin>>a;

matrix(M,a);

triinf(B,a);

trisup(X,a);

gotoxy(10,22);cout<<"desea calcular la matriz

triangular inferior[S/N]:";cin>>op;

if(toupper(op)=='S')

{

triinf(B,a);

for(i=1;i<=a;i++)

{for(j=1;j<=a;j++)

{gotoxy(2+15*(j-1),5+i);

cout<<""<<M[i][j];

}

}

getch();}

gotoxy(10,25);cout<<"desea calcular la matriz

triangular superior[S/N]:";cin>>Op;

if(toupper(Op)=='S')

{

trisup(X,a);

for(i=1;i<=a;i++)

{for(j=1;j<=a;j++)

{gotoxy(2+15*(j-1),5+i);

cout<<""<<M[i][j];

}

}

}

getch();

}

void matrix(float M[10][10], int a)

//funcion de la matriz

{

int i,j;

clrscr();

gotoxy(10,2);cout<<"eleccion de la

matriz("<<a<<";"<<a<<"):\n";

gotoxy(10,4);cout<<"ingrese:\n\r";

for(i=1;i<=a;i++)

{for(j=1;j<=a;j++)

{gotoxy(2+15*(j-1),5+i);

cout<<"M["<<i<<"]["<<j<<"]=";cin>>M[i][j];

}

}

}

void triinf(float M[10][10],int a) //funcion

triangular inferior

{

int i,j,k;

float h;

clrscr();

for(k=1;k<=a;k++)

{for(j=k+1;j<=a;j++)

{h=M[k][j]/M[k][k];

for(i=1;i<=a;i++)

{M[i][j]=M[i][j]-h*M[i][k];

}

}

}

getch();}

void trisup(float M[10][10],int a) //funcion

triangular superior

{

int i,j,k;

float h;

clrscr();

for(k=1;k<=a;k++)

{for(i=k+1;i<=a;i++)

{h=M[i][k]/M[k][k];

for(j=1;j<=a;j++)

{M[i][j]=M[i][j]-h*M[k][j];

}

}

}

getch();}

//Creacion de una Matrix con funciones

//Una Matrix Aleatoria ,mostrando el minimo en

una fila

// y el maximo en una columna

#include<iostream.h>

Page 4: Arreglos 1 Mb545 Consola

UNI – FIM

AACBH

ARREGLOS

Ing. Daniel Osorio Maldonado Página 4 de 4

#include<stdlib.h>

#include<iomanip.h>

void LeerM(int &M){

cout<<"Ingrese el Valor de las Filas ";cin>>M;}

void LeerN(int &N){

cout<<"Ingrese el Valor de las Columnas ";cin>>N;}

void LeerMatrix(int Ma[][100],int M,int N);

void EscribirMatrix(int Ma[][100],int M,int N);

void EscribirMatrixm(int Ma[][100],int M,int a);

void EscribirMatrixn(int Ma[][100],int N,int b);

void MayorElemento(int Ma[][100],int M,int

&mayor,int&temp,int a);

void MenorElemento(int Ma[][100],int N,int

&menor,int&temn,int b);

int i,j;

main(){

int Ma[100][100], M, N, a, b, temp, temn, mayor,

menor; randomize();

LeerM(M);

LeerN(N);

LeerMatrix(Ma,M,N);

EscribirMatrix(Ma,M,N);

cout<<"Que columna desea ver:";cin>>a;

EscribirMatrixm(Ma,M,a);

cout<<"Que fila desea ver:";cin>>b;

EscribirMatrixn(Ma,N,b);

MayorElemento(Ma,M,mayor,temp,a);

cout<<"El Mayor Elemento de la columna

es:"<<mayor<<endl;

cout<<"["<<(temp+1)<<"]"<<"["<<a<<"]"<<endl;

MenorElemento(Ma,N,menor,temn,b);

cout<<"El Menor Elemento de la fila

es:"<<menor<<endl;

cout<<"["<<b<<"]"<<"["<<(temn+1)<<"]"<<endl;

system("pause");

}

void LeerMatrix(int Ma[][100], int M, int N)

{ for(i=0;i<M;i++){

for(j=0;j<N;j++)

{Ma[i][j]=rand()%77;}

}

}

void EscribirMatrix(int Ma[][100],int M,int N){

for(i=0;i<M;i++){

for(j=0;j<N;j++)

cout<<'\t'<<Ma[i][j]<<' '<<setw(3);

cout<<endl;}

}

void EscribirMatrixm(int Ma[][100],int M,int a){

for(i=0;i<M;i++){

cout<<'\t'<<Ma[i][(a-1)]<<' '<<setw(3);

cout<<endl;}

}

void EscribirMatrixn(int Ma[][100],int N,int b){

for(j=0;j<N;j++){

cout<<'\t'<<Ma[(b-1)][j]<<' '<<setw(3);}

cout<<endl;

}

void MayorElemento(int Ma[][100], int M, int

&mayor, int&temp, int a){

mayor=Ma[0][0];

for(i=0;i<M;i++){

if(Ma[i][a-1]>mayor){

temp=i;

mayor=Ma[i][a-1];}

}

}

void MenorElemento(int Ma[][100],int N,int

&menor,int &temn,int b){

menor=Ma[0][0];

for(j=0;j<N;j++){

if(Ma[b-1][j]<menor){

temn=j;

menor=Ma[b-1][j];}}// si al compilar se cierra el

//programa se debe copiar todo el archivo a un

//documento nuevo y alli si va compilar

}