Logo Studenta

LP05_EstrucDatos

¡Este material tiene más páginas!

Vista previa del material en texto

Lenguaje de Programación
ARREGLOS
ESTRUCTURAS DE DATOS
Lenguaje de Programación
Conjunto finito y ordenado de elementos homogéneos
Ordenado Se puede identificar cualquier elemento del arreglo
5.3
4.7
2.1
6.0
Homogéneo Todos los elementos son del mismo tipo
Nombre Todos los elementos tienen el mismo nombre
Arreglo (vector)
nota(1)
nota(2)
nota(i)
nota(n)
.
.
.
.
5.3
4.7
2.1
6.0
Variables simples
Test1
Test2
Lab1
Lab12
 
Lenguaje de Programación
ARREGLOS UNIDIMENSIONALES: Operación de lectura
ESTRUCTURAS DE DATOS
Lenguaje de Programación
Notas
(1)
(2)
(i)
(n)
.
.
.
.
5.3
4.7
2.1
6.0
Notas(1)=input(‘……’);
Notas(2)=input(‘……’);
for i=1:n
Notas(i)=input(‘……’);
end
Memoria
 
Lenguaje de Programación
ARREGLOS UNIDIMENSIONALES: Operación de escritura
ESTRUCTURAS DE DATOS
Lenguaje de Programación
Notas
(1)
(2)
(i)
(n)
.
.
.
.
5.3
4.7
2.1
6.0
fprintf(1,’\n Lab 1 = %3.1f’,Notas(1));
fprintf(1,’\n Lab 2 = %3.1f’,Notas(2));
for i=1:n
fprintf(1,’\n Lab %2.0f = %3.1f’,i,Notas(i));
end
Lab 1 = 5.3
Lab 2 = 4.7
Pantalla
Lab 1 = 5.3
Lab 2 = 4.7
.
.
Lab i = 2.1
.
.
Lab n = 6.0
Pantalla
Memoria
 
Lenguaje de Programación
ARREGLOS UNIDIMENSIONALES: Operación de asignación
ESTRUCTURAS DE DATOS
Lenguaje de Programación
(1)
(2)
(i)
(n)
.
.
.
.
5.3
4.7
2.1
6.0
P=0;
for k=1:n
P=P+Notas(k);
end
P=P/n;
fprintf(1,’\n Promedio = %3.1f’,P);
Promedio = 4.9
Pantalla
Memoria
 
Lenguaje de Programación
ARREGLOS UNIDIMENSIONALES: Ejemplo
ESTRUCTURAS DE DATOS
Lenguaje de Programación
clear all
clc
%
n=input(‘Ingrese N° de notas: ’);
for i=1:n
fprintf(1,’\n Ingrese Nota %0.0f: ’,i);
Notas(i)=input(‘’);
end
%
P=0;
for k=1:n
P=P+Notas(k);
end
P=P/n;
%
clc
fprintf(1,’\n Promedio = %3.1f’,P);
close all
Notas
(1)
(2)
5.3
4.7
2.1
6.0
(3)
(4)
(5)
(6)
5.7
4.1
Ingrese N° de notas: _
Ingrese Nota 1: _
Ingrese Nota 2: _
.
.
.
Ingrese Nota n: _
PantallaMemoria
Promedio = 5.6
Pantalla
 
Lenguaje de Programación
ARREGLOS UNIDIMENSIONALES: Ejemplo
ESTRUCTURAS DE DATOS
Lenguaje de Programación
PROBLEMA
Utilizando diagrama de flujo, diseñe un algoritmo que
ordene de manera creciente las componentes de un
arreglo unidimensional A.
Utilizar el mismo arreglo para almacenar las componentes ordenadas.
Traducir el algoritmo generado a un programa en
Lenguaje Matlab.
 
Lenguaje de Programación
ARREGLOS UNIDIMENSIONALES: Ejemplo
ESTRUCTURAS DE DATOS
Lenguaje de Programación
PROBLEMA
Utilizando diagrama de flujo, desarrollar un algoritmo que
permita ingresar un número entero positivo, correspondiente
a una cantidad de dinero y calcule e imprima el
desglose de moneda.
Monedas disponibles: 20000, 10000, 5000, 2000, 1000, 500, 100, 50, 10, 5, 1.
Traducir el algoritmo generado a un programa en
Lenguaje Matlab.
 
Lenguaje de Programación
ARREGLOS BIDIMENSIONALES
ESTRUCTURAS DE DATOS
Lenguaje de Programación
Rancagua
Talca
Concepción
Temuco
.
.
.
.
(08:00) (10:00) . . . (16:00) (20:00). . . . . . .
20
23
17 19
15 18
21
23 20
20
23
18
15
20
18
21
Arreglo (matriz): Temp
(1,1) (1,2) (1,5) (1,7)
(2,1) (2,2) (2,5) (2,7)
(k,1) (k,2) (k,5) (k,7)
(n,1) (n,2) (n,5) (n,7)
 
Lenguaje de Programación
ARREGLOS BIDIMENSIONALES
ESTRUCTURAS DE DATOS
Lenguaje de Programación
clear all
clc
%
Nvm=7;
Nciud=5;
%
H(1)=8;
for i=2:Nvm
H(i)=H(i-1)+2;
end
%
Ciudad(1,1:10)=‘Concepcion‘;
Ciudad(2,1:10)=‘Penco ‘;
Ciudad(3,1:10)=‘Lirquen ‘;
Ciudad(4,1:10)=‘Tome ‘;
Ciudad(5,1:10)=‘Dichato ‘;
%
for i=1:Nciud
for j=1:Nvm
Temp(i,j)=input(‘…’);
end
end
for i=1:Nciud
Prom(i)=0;
for j=1:Nvm
Prom(i)=Prom(i)+Temp(i,j);
end
Prom(i)=Prom(i)/Nvm;
end
%
clc
fprintf(1,’\n Ciudad ...
Temp. Promedio’);
for i=1:Nciud
fprintf(1,’\n %10s ...
%4.1f’,Ciudad(i,1:10),Prom(i));
end
close all
Ciudad Temp.Promedio
Concepcion 20.2
Penco 19.8
Lirquen 18.5
Tome 17.7
Dichato 19.3
Pantalla
 
Lenguaje de Programación
ARREGLOS BIDIMENSIONALES: Ejemplo
Lenguaje de Programación
PROBLEMA
Desarrollar un algoritmo, utilizando diagrama de flujo,
que permita sumar dos matrices conocidas
A y B de orden nxm.
ESTRUCTURAS DE DATOS
 
Lenguaje de Programación
ARREGLOS BIDIMENSIONALES: Ejemplo
Lenguaje de Programación
PROBLEMA
Se dispone en memoria de una matriz A de orden nxm.
Se requiere desarrollar un algoritmo que:
- Determine el promedio de cada fila 
 y los almacene en el vector F.
- Determine el promedio de cada columna
 y los almacene en el vector C.
ESTRUCTURAS DE DATOS
 
Lenguaje de Programación
ARREGLOS UNIDIMENSIONALES: Ejemplo
Lenguaje de Programación
PROBLEMA
ESTRUCTURAS DE DATOS
Diseñar un programa que lea desde la consola
una cierta cantidad de datos numéricos, hasta que
se ingrese el valor 9999 el cual no debe ser procesado.
Se requiere determinar el valor máximo de los
promedios correspondientes a parejas de valores sucesivos.
 
Lenguaje de Programación
ARREGLOS UNIDIMENSIONALES: Ejemplo
Lenguaje de Programación
PROBLEMA
ESTRUCTURAS DE DATOS
En un ensayo de tracción de probetas de acero,
se debe registrar la fuerza aplicada a la probeta
(variable independiente) y el alargamiento que
sufre ésta (variable dependiente).
Durante el ensayo el alargamiento se incrementa
gradualmente hasta que la probeta se rompe.
Diseñar un programa que permita leer los valores
de alargamiento y fuerza y calcule e imprima el
intervalo en el que la pendiente de la curva,
fuerza- alargamiento, es máxima.
 
Lenguaje de Programación
ARREGLOS BIDIMENSIONALES: Ejemplo
Lenguaje de Programación
PROBLEMA
ESTRUCTURAS DE DATOS
Diseñar un programa en Matlab que permita ingresar
una matriz de orden nxm y que realice las siguientes
operaciones, según lo requiera el usuario:
Ingresar la matriz
Imprimir la matriz en pantalla
Desplazar todas las columnas una posición hacia la derecha
Desplazar todas las filas una posición hacia abajo
Desplazar todas columnas hacia la derecha y todas las filas hacia abajo
El desplazamiento es circular, es decir, a la derecha
de la última columna corresponde la primera columna
y debajo de la última fila corresponde la primera fila.
 
Lenguaje de Programación
ARREGLOS BIDIMENSIONALES: Ejemplo
Lenguaje de Programación
PROBLEMA
ESTRUCTURAS DE DATOS
Diseñar un programa en Matlab que genere un cuadrado mágico de
orden n impar y lo muestre en pantalla.
Un cuadrado mágico se compone de los números enteros comprendidos
entre 1 y n2, tal que la suma de los términos que figuran en cada fila,
columna y diagonal son iguales.
Un método de generación consiste en situar el número 1 en el centro de la primera
fila, el número siguiente en la casilla situada por encima y a la derecha y así
sucesivamente. El cuadrado es circular, es decir, la fila encima de la primera es la
última y la columna a la derecha de la última es la primera. En el caso que el número
generado deba situarse en un lugar ya ocupado, se debe posicionar debajo del
último número generado.
	Diapositiva 1
	Diapositiva 2
	Diapositiva 3
	Diapositiva 4
	Diapositiva 5
	Diapositiva 6
	Diapositiva 7
	Diapositiva 8
	Diapositiva 9
	Diapositiva 10
	Diapositiva 11
	Diapositiva 12
	Diapositiva 13
	Diapositiva 14
	Diapositiva 15

Otros materiales