47
Profesores Programación 1 Unidad 04 Matrices (Arreglos Bidimensionales) Wilmar Ascue Víctor Balta William Bravo Walter Cueva  os! "sca#adillo $elicia %ucero &on'alo Mori "dson Mendiola'a  uan amír e' icard odrigue' %uis Vives

04 Arreglos Bidimensionales Teoria

Embed Size (px)

Citation preview

Page 1: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 1/47

Profesores

Programación 1Unidad 04

Matrices (Arreglos Bidimensionales)

•Wilmar Ascue•Víctor Balta•William Bravo•Walter Cueva• os!"sca#adillo

•$elicia%ucero

•&on'alo Mori•"dsonMendiola'a

• uan amíre'•icardodrigue'

•%uis Vives

Page 2: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 2/47

Unidad 04Arreglos Bidimensionales*+#etivos

• $e,nición• Creación de una matri'• %ectura - escritura de datos en una .osición

determinada• M!todos comunes con arreglos/

▫ ecorrido .or ,la .or columna - .or matri'▫ Bs2ueda secuencial .or ,la .or columna - .or matri'▫ Bs2ueda del ma-or - menor .or ,la .or columna -

.or matri'▫ Posición del ma-or - del menor .or ,la .or columna -

Page 3: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 3/47

Pro+lema

esolvamos lo siguiente/Una universidad desea controlar losresultados de los alumnos de unasección del curso de %engua#e 1 de la3acultad de ngeniería5"l .rograma de+e ingresar las notas de

las 6 .r7cticas de los 80 alumnosmatriculados en la sección5 9e solicitadeterminar - visuali'ar el .romedio de.r7cticas de cada alumno - el .romedio

de cada una de las .r7cticas5

Page 4: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 4/47

"s .osi+le resolver este .ro+lema con lovisto asta aora:

Pro+lema

Para resolver el

.ro+lemaanteriorde+emostra+a#ar conuna ta+la (omatri' oarreglo

+idimensional)5

Prácticas

A     l      u    m    n      o    

 s    

0 1 2 3 4 5

0 ; 14 <0 1; 6 =

1 <0 1 10 1= 0 1<

2 <0 > 4 16 8 8

… 1= > 1; <0 ? 1;

28 11 1< 1< 14 8 <

29 1? = 1; > 8 10

Page 5: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 5/47

$e,nición• Una Matri' o arreglo +idimensional es

una colección de datos del mismo ti.o dein@ormación identi,cados mediante dos

índices llamados/ ,las - columnas5

1< 1 1?

; 8 10

14 = 6

1

2

,las

del0al

columnas del 0 al <

0 1 2

0

Page 6: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 6/47

• Para e@ectos de la e.licación utili'aremos

los índices de las ,las -o columnas dedistinto color a los valores de la matri'/

1< 1 1?

; 8 10

14 = 6

1

2

0 1 2

0Índices de filas

Índices de columnas

Solo valores de la matriz

Page 7: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 7/47

Declaración y creación•

$e,nir el ti.o de dato del arreglo/int car oat dou+le etc5

• $e,nir el nom+re del arreglo

tipodato **nombre;

• $e,nir la cantidad de ,las - columnas del arreglo5

• Creación de la matri'

nombre ne! tipodato* "n#la$;

for% int i0; i&n#la; i''(

  nombre"i$ ne! tipodato "ncol)mna$;

ota+

,l n-mero de #las y col)mnas p)eden ser .ariables+

Page 8: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 8/47

"#em.los de creación dematricesint DDmatri'Ematri' F neG intDH8IE

@or(int iF0E iJ8E iKK)

  matri'HiI F neG int H?IE

8 ,las desde el 0 al <5? columnas desde 0 asta 4

0 1 2 3 4

0  

1  

2  

int DDta+lero8E

ta+lero8 F neG intDH8IE@or(int iF0E iJ8E iKK)

  ta+lero8HiI F neG int H8IE

8 ,las desde el 0 al <5

8 columnas desde 0 asta <

0 1 2

0  

1  

2  

Page 9: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 9/47

"#em.los de Matrices

• "l orario de clases

  0 1 2 3 4 5 6

0  

1  

2  

3  4  

5  

Lunes Martes Miércoles Jueves Viernes Sábado Domino

Page 10: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 10/47

"#em.los de Matrices

• Una sistema de ecuaciones

0 1 2 3

0   5 2 !1   !3

1   3 2 "   1"

2   1 1 !3   !12

? K <- L 'F 8

8 K <- K='F 1=

  K - L 8'F 1<

Cada ,la de la matri' guarda los coe,cientes de cadaecuación del sistema de ecuaciones5

Page 11: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 11/47

"#em.los de Matrices

• Un ta+lero de a#edre'

0 1 2 3 4 5 6 7

01

2

3

4

5

6

Page 12: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 12/47

"#em.los de Matrices

• "scri+e 8 e#em.los .r7cticos dónde encuentres el uso deuna matri'5

Page 13: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 13/47

%ectura - escritura de datos

Page 14: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 14/47

%ectura - escritura de datos

• Un arreglo +idimensional almacenadatos en dos índices / ,la - columna

• Para re@erenciar un dato 2ue.ertenece al arreglo de+emos usar los

dos índices

Page 15: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 15/47

%ectura - escritura de datos

9i tenemos la siguiente de,nición/

oat DD.romediosE

"n donde en nmero de ,las ser7 4 - el nmero decolumnas ser7 65

Para acer re@erencia al elemento u+icado en la ,la < -columna 1 se escri+e/

.romediosH<IH1I

0 1 2 3 4 5

0  

1  

2  

3  

fila 2

columna 1

Page 16: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 16/47

%ectura - escritura de datosvoid main()N int DD matri'E

  matri' F neG intDH4IE

  @or(int iF0E iJ4E iKK)

  matri'HiI F neG int H6IEmatri'H<IH1I F ?E

O

0 1 2 3 4 5

0  

1  

2   5

3  

fila 2

columna 1

Page 17: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 17/47

%ectura - escritura de datosvoid main()N int DD matri'E

  matri' F neG intDH4IE

  @or(int iF0E iJ4E iKK)

  matri'HiI F neG int H6IE  matri'H<IH1I F ?E

coutJJ"l dato es/ Q JJmatri'H<IH1IE

O   0 1 2 3 4 5

0  

1  

2   5

3  !esultado"

"l dato es/ ?

Page 18: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 18/47

/omo liberar la memoria de)na matri•

9i tenemos de,nida una matri'

tipodato **nombre;

• 9e conoce la cantidad de ,las - columnas de la matri'5

• Para li+erar la memoria de+emos reali'ar lo siguiente/  for% int i0; i&n#la; i''(

  delete "$ nombre"i$; se libera cada .ector de

enterosdelete "$ nombre; se libera el .ector de p)nteros

Page 19: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 19/47

M!todos o algoritmos comunesentre matrices

Page 20: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 20/47

ecorrido .or ,las (egla del 9erruco)

0 1 2 3

0

12

3

Page 21: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 21/47

ecorrido .or ,las (egla del 9erruco)

0 1 2 3

0

12

3

Page 22: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 22/47

ecorrido .or ,lasnresar mprimir

@or (iF0EiJ,lasEiKK)@or(#F0E#JcolumnasE#KK)

  Matri'HiIH#IF0E

$onde Matri' es delti.o del arreglo

+idimensional

@or (iF0EiJ,lasEiKK)

 N@or

(#F0E#JcolumnasE#KK)

coutJJMatri'HiIH#IE

coutJJRnQE

O

Page 23: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 23/47

Crear - mostrar arreglo .or ,las(egla del 9erruco)

#include $iostream%#include %stdio&'%

#include %conio&'%

#de(ine (ilas 2

#de(ine columnas 3

usin names)ace std*

Void main+,-

  int ..M/*

  int i*

  Matri 7 ne8 int. 9(ilas:*

  (or+i7 0* i;(ilas* i<<,

  Matri9i: 7 ne8 int9columnas:*

  (or+i70* i;(ilas* i<<,

  (or+70* ;columnas* <<,

  Matri9i:9: 7 3 . i . 10 < + < 1, . 10*

  (or+i70* i;(ilas* i<<,

  -

  (or+70* ;columnas* <<,

cout;;M/9 i :9 :*

  cout;;%=n%*

  >

  ?etc'+,*

>

Salida del #ro$rama

Page 24: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 24/47

ngreso .or ,las dato a dato@

#de(ine (ilas 2#de(ine columnas 3

usin names)ace std*

void main+,

-

  int ..M/*

  int i*

  Matri 7 ne8 int. 9(ilas:*  (or+i7 0* i;(ilas* i<<,

  Matri9i: 7 ne8 int9columnas:*

  (or+i70* i;(ilas* i<<,

  (or+70* ;columnas* <<,

  -

cout;;$nresar el dato de la (ila $ ;; i ;; $ A columna B ;; ;;$C $*

cinM/9 i :9 : *

  >

  E. mostramos los datos inresados .E

  (or+i70* i;(ilas* i<<,

  -

  (or+70* ;columnas* <<,

  cout;;M/9 i :9 :*

  cout;;%=n%*

  >

  ?etc'+,*>

Page 25: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 25/47

ngreso .or ,las aleatoriamente@

#de(ine (ilas 2#de(ine columnas 3

usin names)ace std*

usin names)ace SAstem*

void main+,

- int ..M/*

  andom (*

  int i*  Matri 7 ne8 int. 9(ilas:*

  (or+i7 0* i;(ilas* i<<,

  Matri9i: 7 ne8 int9columnas:*

  (or+i70* i;(ilas* i<<,

  (or+70* ;columnas* <<,

  M/9 i :9 : 7 (&FeGt+030,*

  E. mostramos los datos inresados .E

  (or+i70* i;(ilas* i<<,

  -

  (or+70* ;columnas* <<,

cout;;M/9 i :9 :*

  cout;;%=n%*

  >

  ?etc'+,*

>

Page 26: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 26/47

ecorrido .or columnas (egla del9erruco)• Consiste en/

▫   Por cada columna recorrer todas las ,las .araingresar u o+tener un valor

0 1 2 3

0

12

3

Page 27: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 27/47

ecorrido .or columnas (egla del9erruco)• Consiste en/

▫   Por cada columna recorrer todas las ,las .araingresar u o+tener un valor

0 1 2 3

0

12

3

Page 28: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 28/47

ecorrido .or columnasnresar mprimir

@or (#F0E#JcolumnasE#K

K)@or (iF0EiJ,lasEiKK)

  Matri'HiIH#IF0E

$onde Matri' es delti.o del arreglo+idimensional

@or (#F0E#JcolumnasE#K

K)N

@or (iF0EiJ,lasEiKK)

  coutJJMatri'HiIH#IE

coutJJRnQE

O

l ( l d l

Page 29: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 29/47

ngreso .or columnas (egla del9erruco)#de(ine (ilas 2

#de(ine columnas 3

usin names)ace std*

void main+,-

int ..M/*

int i*

  Matri 7 ne8 int. 9(ilas:*

  (or+i7 0* i;(ilas* i<<,

  Matri9i: 7 ne8 int9columnas:*

(or+70* ;columnas* <<,

  (or+i70* i;(ilas* i<<,

  - cout;;%nresar el dato de la (ila $ ;; i ;; % A columna $ ;; ;; $ C %*  cinM/9 i:9 :*

  >

(or+70* ;columnas* <<,

  - (or+i70* i;(ilas* i<<,

  cout;;M/9 i :9 :*

  cout;;%=n%*

  >

 E. Homo se uardan los datos )or (ilas .E

cout;;%=n=n%*

(or+i70* i;(ilas* i<<,

-

(or+70* ;columnas* <<,

cout;;M/9 i :9 :*

cout;;%=n%*

>

 ?etc'+,*

>

Page 30: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 30/47

ngreso .or columnas (egla del9erruco)

Page 31: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 31/47

Bs2ueda ne,ciente de la ultima ocurrencia de un dato en la Matri'

int posc,posf;posc=posf=-1;

for (i=0;i<filas ;i++)

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

  if (Matriz[i][j]== valor )

  { posc=j;

  posf=i;

 }

if (posf==-1 posc==-1)

cout<<!"l #ato no s$ $ncu$ntra $n la matriz%;

$ls$

 cout<<!"l #ato $ $ncu$ntra $n i&%<< posf <<% j&%<<posc;

9ea valor el dato 2ue se +usca en una matri'

.osc  / "l nmero de columna donde est7 eldato.os@ / "l nmero de ,la donde est7 el dato

Page 32: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 32/47

Bs2ueda ne,ciente de la .rimera ocurrencia de un dato en la Matri'

int posc,posf;posc=posf=-1;cont=0;

for (i=0;i<filas ;i++)

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

  if (Matriz[i][j]== valor '' cont==0 )

  { posc=j; cont++;

  posf=i;

 }

if (posf==-1 posc==-1)

cout<<!"l #ato no s$ $ncu$ntra $n la matriz%;

$ls$

 cout<<!"l #ato $ $ncu$ntra $n i&%<< posf <<% j&%<<posc;

9ea valor el dato 2ue se +usca en una matri'

.osc  / "l nmero de columna donde est7 eldato.os@ / "l nmero de ,la donde est7 el dato

Page 33: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 33/47

Bs2ueda de un dato en la Matri'

ool $ncontro;int posc,posf;

$ncontro=false;

for (i=0;i<filas '' $ncontro==fals$;i++)

for (j=0;j<columnas '' $ncontro==fals$;j++)

  if (Matriz[i][j]== valor)

  { $ncontro=true;

  posc=j;

  posf=i;

 }

if ($ncontro)

cout<<!"l #ato no s$ $ncu$ntra $n la matriz%;

9ea valor el dato 2ue se +usca en una matri'

.osc  / "l nmero de columna donde est7 eldato.os@ / "l nmero de ,la donde est7 el dato

Page 34: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 34/47

Bs2ueda del ma-or valor en la Matri'

int valormayor;int posc,posf;

posc=posf=0;

valormayor =Matriz[0][0];

for (i=0;i<filas;i++)

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

  if (Matriz[i][j]*valormayor)

  { valormayor=Matriz[i][j];

  posc=j;

  posf=i;

 }

cout<<!"l maor alor almac$na#o $s & %<< valormayor;

valorma-or/ Ma-or valor de la matri'

.osc  / "l nmero de columna donde est7 eldato.os@ / "l nmero de ,la donde est7 el dato

Page 35: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 35/47

Bs2ueda del menor valor en la Matri'

int valormenor;

int posc,posf;

posc=posf=0;

valormenor =Matriz[0][0];

for (i=0;i<filas;i++)

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

  if (Matriz[i][j]<valorm enor)

  { valormenor=Matriz[i][j];

  posc=j;

  posf=i;

 }

cout<<!"l m$nor alor almac$na#o $s & % << valorm enor;

valormenor/ Menor valor de la matri'

.osc  / "l nmero de columna donde est7 eldato.os@ / "l nmero de ,la donde est7 el dato

Page 36: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 36/47

%&em#lo 1"

9e tiene una matri' de 4 ,las - ? columnas5 "n la

matri' se almacena sólo nmeros enteros5 9e .idereali'ar las siguientes o.eraciones en la matri'/

• &enerar todos los valores .ermitidos en la matri'

(<0 valores) de @orma aleatoria5• Pedir un nmero entero - +uscarlo en la matri'5

Page 37: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 37/47

Soluci'n 1"

#include $iostream%

#include %stdio&'%

#include %conio&'%

#de(ine (ilas 4

#de(ine columnas 5

usin names)ace std*

usin names)ace SAstem*

void main+,

-  int ..M/*

  andom (*

  int i*

  Matri 7 ne8 int. 9(ilas:*

  (or+i7 0* i;(ilas* i<<,

  Matri9i: 7 ne8 int9columnas:*

(or+70* ;columnas* <<,

(or+i70* i;(ilas* i<<,

  M/9 i :9 : 7 (&FeGt+0100,*

(or+i70* i;(ilas* i<<,

-

(or+70* ;columnas* <<,

cout;;M/9 i :9 :*

cout;;%=n%*

>

 ?etc'+,*

>

Primero ingresamos los <0 valores

Page 38: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 38/47

Soluci'n 1"

%uego de+emos de .edir el dato a +uscar

llam!mosle VA%*BU9CA$*5 %a idea de la+s2ueda se +asa en recorrer la matri'mediante la regla del serruco .or ,las5%uego com.arar el VA%*BU9CA$* con cadavalor de la matri'/

Page 39: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 39/47

Soluci'n 1"

(n$resar el dato o valor a )uscar" 62

 A*ora+ ,A-.!/SA. tiene el valor de 62

-ue$o+ ,A-.!/SA. de)e ser com#arado con los datos de la#rimera fila" 20+ 47+ 1+ 60+ 43

Si no se encuentra continuar+ con los datos de la se$unda fila" 14+ 67+ 4+

61+ 6 As sucesivamente *asta encontrar ,A-.!/SA. en la matriz

Si ,A-.!/SA. se *a encontrado+ informar al #ro$rama ue 8a seu)ic' 8 mostrar en ue fila 8 columna se encuentra Si nunca seencuentra+ emitir un mensa&e adecuado

Page 40: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 40/47

Soluci'n 1"

9include :iostream;

9include ;stdio*;9include ;conio*;

9define filas 49define columnas 5usin$ names#ace std<usin$ names#ace S8stem<

void main=>?  int @@AB!(C<

  int ,A-.!/SA.<  !andom f<  )ool encontrado false<  int i+&+ #osf+ #osc<  atriz neD int@ EfilasF<  for=i 0< iGfilas< iHH>  atrizEiF neD intEcolumnasF<

  for=&0< &Gcolumnas< &HH>for=i0< iGfilas< iHH>

  AB!(CE i FE & F fIeJt=0+100><

  for=i0< iGfilas< iHH>  ?

for=&0< &Gcolumnas< &HH>  coutGGAB!(CE i FE & F<coutGG;Kn;<

  L  coutGG;Kn(n$resar el dato a )uscar" ;<  cinMM,A-.!/SA.<

for=i0< iGfilas NN Oencontrado< iHH>

  for=&0< &Gcolumnas< &HH>  if= ,A-.!/SA.  AB!(CE i FE & F >  ?

#osf i<#osc &<encontrado true<)rea<

  L

if=encontrado>  coutGG ;%l dato se encuentra en la fila ; GG #osf GG ; 8 columna ; GG #osc GG ; de la matriz;<

else  coutGG;%l dato no se encuentra en la matriz;< Q$etc*=><L

Page 41: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 41/47

Soluci'n 1"

Page 42: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 42/47

%&ercicio 1"

9e tienen las tem.eraturas mensuales del aSo

anterior de la ciudad de %ima 2ue @ueron registradasen 80 estaciones5 "sta in@ormación @ue almacenadaen una matri' de 1< ,las 80 columnas5

0 1 2 @ 2I 2

0 30 31 2 1 25 26

1 23 2I 31 2 21 2

2 21 23 2 32 31 21

@ @ @ @ @ @ @

10 23 1I 1 1I 1I 23

11 24 1 21 23 24 20

Estaciones

M      e     s     e    

 s    

Page 43: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 43/47

%&ercicio 1" =continuaci'n>

"scri+a un .rograma en CKK 2ue .ermita/• &enerar en @orma aleatoria las

tem.eraturas mensuales de cada una delas 80 estaciones5

• Tallar la tem.eratura m7s alta registradael aSo anterior - cu7l @ue el mes - en 2u!estación se registro5

• Calcular el .romedio mensual de

tem.eraturas en cada una de las 80estaciones5

Page 44: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 44/47

Una em.resa automotri' tiene cinco agencias -

cuenta con la in@ormación acerca de las ventasmensuales de automóviles logradas el aSo .asado.or cada una de !stas5 A .artir de estos datos laem.resa constru-ó la siguiente matri'/

%&ercicio 2"

     

 e     s     e    

 s    

 A$encias0 1 2 3 4

0 11" 15" 123 51 105

1 1 1II 165 5" 1"

2 4 1"4 6 126 1"3

@ @ @ @ @ @

10 102 163 1I3 15" II

11 1"" 100 1I4 " 1"0

Page 45: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 45/47

"scri+a un .rograma en CKK 2ue .ermita lo

siguiente/

%&ercicio 2" continuaci'n

• ngresar las ventas mensuales de cadauna de las agencias

Cu7l @ue el total de ventas en el aSo dela agencia <:

• Cu7l @ue el .romedio de ventas en elmes 1<:

• u! agencia tuvo ma-ores ventas enel mes ?:

• "n 2u! mes se registraron las menoresventas del aSo considerando todas lasagencias:

Page 46: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 46/47

%&ercicio 3"

9e tienen los resultados de las ltimaselecciones .ara .residente regional en la.rovincia el cual est7 con@ormado .or ?munici.ios5 "n dicas elecciones u+o 4

candidatos5

0 1 2 3 4

0 155 3"4 6 303 II

1 144 23 414 1"I 22

2 5 413 4I2 I5 335

3 0 212 134 33 1"1

Municipios

 C     

 a    n     d     

i      d       a    

 t      o     s    

Page 47: 04 Arreglos Bidimensionales Teoria

7/24/2019 04 Arreglos Bidimensionales Teoria

http://slidepdf.com/reader/full/04-arreglos-bidimensionales-teoria 47/47

%&ercicio 3" continuaci'n

"scri+a un .rograma en CKK 2ue/• %ea los votos o+tenidos en cada munici.io

.or los 4 candidatos5• Calcule el total de votos reci+idos .or cada

candidato - el .orcenta#e del total devotos o+tenidos5• $etermine el candidato m7s votado5