Ejercicios_resueltos_estructurasDecision: Bloc de notas

Anuncio
Ejercicios_resueltos_estructurasDecision
Informática III - Algunas implementaciones ejercicios planteados
estructuras de decisión primer parcial
Ejercicio número 4
----------------------clc
clear all
disp('Compra en productos')
cod1 = 0;
can1 = 0;
vlru1 = 0;
valort1 = 0;
cod2 = 0;
can2 = 0;
vlru2 = 0;
valort2 = 0;
cod3 = 0;
can3 = 0;
vlru3 = 0;
valort3 = 0;
disp('Producto uno')
cod1 = input('Código: ');
can1 = input('Cantidad :');
vlru1 = input('Valor unitario :');
% Valor compra del producto uno
valort1 = can1 * vlru1;
disp('Producto dos')
cod2 = input('Código: ');
can2 = input('Cantidad :');
vlru2 = input('Valor unitario :');
% Valor compra del producto dos
valort2 = can2 * vlru2;
disp('Producto tres')
cod3 = input('Código: ');
can3 = input('Cantidad :');
vlru3 = input('Valor unitario :');
% Valor compra del producto tres
valort3 = can3 * vlru3;
% Comparar el total de la compra para establecer el menor valor
if valort1 < valort2 & valort1 < valort3
disp(sprintf('Producto uno fue el de menor compra codigo %d',
cod1))
end
if valort2 < valort1 & valort2 < valort3
disp(sprintf('Producto dos fue el de menor compra codigo %d',
cod2))
end
if valort3 < valort1 & valort3 < valort2
disp(sprintf('Producto tres fue el de menor compra codigo %d',
cod3))
end
disp('Fin del ejercicio...')
Ejercicio número 8
----------------------Página 1
Ejercicios_resueltos_estructurasDecision
a) Solución matlab comparando la letra inicial del color de la
ficha
clc
clear all
ficha1 = '';
ficha2 = '';
ficha3 = '';
canbla = 0;
canroj = 0;
canneg = 0;
sumapun = 0 ;
disp('Juego de Damas Chinas')
disp('Ingrese para el color una letra: b, r ó n')
ficha1 = input('Color de la primera ficha: ', 's');
ficha2 = input('Color de la segunda ficha: ', 's');
ficha3 = input('Color de la tercera ficha: ', 's');
% Se evalúa la primera ficha
% por la letra inicial del color
if ficha1 == 'b' | ficha1 == 'B'
canbla = canbla + 1;
elseif ficha1 == 'r' | ficha1 == 'R'
canroj = canroj + 1;
elseif ficha1 == 'n' | ficha1 == 'N'
canneg = canneg + 1;
end
% Se evalúa la segunda ficha
% por la letra inicial del color
if ficha2 == 'b' | ficha2 == 'B'
canbla = canbla + 1;
elseif ficha2 == 'r' | ficha2 == 'R'
canroj = canroj + 1;
elseif ficha2 == 'n' | ficha2 == 'N'
canneg = canneg + 1;
end
% Se evalúa la tercera ficha
% por la letra inicial del color
if ficha3 == 'b' | ficha3 == 'B'
canbla = canbla + 1;
elseif ficha3 == 'r' | ficha3 == 'R'
canroj = canroj + 1;
elseif ficha3 == 'n' | ficha3 == 'N'
canneg = canneg + 1;
end
% Calcular los puntos
sumapun = canroj * 2 + canneg * 3;
disp('===================================')
disp(sprintf('Cantidad de fichas blancas %d', canbla))
disp(sprintf('Cantidad de fichas rojas %d', canroj))
disp(sprintf('Cantidad de fichas negras %d', canneg))
disp(sprintf('Puntaje total de las fichas %d', sumapun))
disp('===================================')
disp('Fin del ejercicio...')
Página 2
Ejercicios_resueltos_estructurasDecision
b) Solución matlab comparando el nombre completo del color de la
ficha
clc
clear all
ficha1 = '';
ficha2 = '';
ficha3 = '';
canbla = 0;
canroj = 0;
canneg = 0;
sumapun = 0;
disp('Juego de Damas Chinas')
disp('Ingrese para el color las palabras: blanca, roja ó
negra')
ficha1 = input('Color de la primera ficha: ', 's');
ficha2 = input('Color de la segunda ficha: ', 's');
ficha3 = input('Color de la tercera ficha: ', 's');
% Se evalúa la primera ficha
% por el nombre completo del color
if strcmp(ficha1, 'blanca')
canbla = canbla + 1;
elseif strcmp(ficha1, 'roja')
canroj = canroj + 1;
elseif strcmp(ficha1, 'negra')
canneg = canneg + 1;
end
% Se evalúa la segunda ficha
% por el nombre completo del color
if strcmp(ficha2, 'blanca')
canbla = canbla + 1;
elseif strcmp(ficha2, 'roja')
canroj = canroj + 1;
elseif strcmp(ficha2, 'negra')
canneg = canneg + 1;
end
% Se evalúa la tercera ficha
% por el nombre completo del color
if strcmp(ficha3, 'blanca')
canbla = canbla + 1;
elseif strcmp(ficha3, 'roja')
canroj = canroj + 1;
elseif strcmp(ficha3, 'negra')
canneg = canneg + 1;
end
% Calcular los puntos
sumapun = canroj * 2 + canneg * 3;
disp('===================================')
disp(sprintf('Cantidad de fichas blancas %d', canbla))
disp(sprintf('Cantidad de fichas rojas %d', canroj))
disp(sprintf('Cantidad de fichas negras %d', canneg))
disp(sprintf('Puntaje total de las fichas %d', sumapun))
disp('===================================')
disp('Fin del ejercicio...')
Página 3
Ejercicios_resueltos_estructurasDecision
Ejercicio número 12
----------------------clc
clear all
disp('Comparación de número ingresado')
numero = 0;
numero = input('Ingrese un número: ');
if numero > 12
disp('Número ingresado es mayor que 12')
elseif numero > 12 & numero < 100
disp('Número ingresado es mayor que 12 pero menor que 100')
elseif numero < 12
disp('Número ingresado es menor que 12')
elseif numero < 12 & numero < 0
disp('Número ingresado es menor que 12 y negativo')
elseif numero == 12
disp('Número ingresado es igual que 12')
end
disp('Fin del ejercicio...')
Ejercicio número 16
----------------------clc
clear all
disp('Cobro de seguro en vehículo')
marca = '';
color = '';
edad = 0;
preciobase = 0;
vlrseguro = 0;
marca = input('Marca del vehículo, ingrese -> a ó b: ', 's');
color = input('Color del vehículo, ingrese -> b, m, o: ', 's');
edad = input('Edad del propietario: ');
% Hallar el precio base
% Se evalúa la primera marca de carros tipo a
if marca == 'a' & color == 'b'
preciobase = 1400000;
elseif marca == 'a' & color == 'm'
preciobase = 800000;
elseif marca == 'a' & color == 'o'
preciobase = 650000;
end
% Se evalúa la segunda marca de carros tipo b
if marca == 'b' & color == 'b'
preciobase = 850000;
elseif marca == 'b' & color == 'm'
preciobase = 700000;
elseif marca == 'b' & color == 'o'
preciobase = 500000;
end
% Hallar el valor de incremento o decremento del seguro
Página 4
Ejercicios_resueltos_estructurasDecision
if edad <= 35
incremento = 0.9;
elseif edad >= 35 & edad <= 60
incremento = 0.8;
else
incremento = 1.3;
end
% Calcular el valor del seguro
% una vez resueltas las incognitas de precio base e incremento
vlrseguro = preciobase * incremento;
disp(sprintf('El valor del seguro es %.2f', vlrseguro))
disp('Fin del ejercicio...')
Página 5
Descargar