Sunteți pe pagina 1din 11

UNIDAD 2 Y 3 – CONSTRUCCION GRUPAL DE LA SOLUCION AL PROBLEMA

PLANTEADO
SOFTWARE PARA INGENIERIA
ACTIVIDAD GRUPAL

GRUPO COLABORATIVO: 203036_4

INTEGRANTES
MARIO JOSE DE LOS RIOS
EDUARDO SANTOS CONTRERAS
OBED FUERTES

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA


FACULTAD DE INGENIERIA
2017-01
INTRODUCCION

Los lenguajes de programación son herramientas de múltiples usos, si bien es


cierto que el desarrollo de estos es realizado por computadoras y muchas de las
actividades o necesidades diarias ya están automatizadas y controladas al ser
programadas con anterioridad es estrictamente necesario para cualquier
ingeniería el manejo de software de programación que nos permitan ir mas allá de
un problema planteado y encontrar la manera más oportuna, rápida y económica
de resolverlo, a través de sencillos programas y códigos que reemplacen la
actividad humana para más agilidad y eliminación del error humano en ciertas
tareas como cálculos de dineros, formulas financieras, software de diseño
controlada por computación y robótica.

Los campos de aplicación del software de programación casi que podríamos decir
están presentes en todo desde simples relojes hasta los más complejos y
modernos sistemas de transmisiones de datos.

A continuación daremos solución práctica a uno de los casos más conocidos sobre
la electrónica básica, la identificación del valor de una resistencia mediante código
de colores y conocer su código de colores a partir de su valor ingresado, para ellos
vamos a hacer utilización del software de programación utilizado durante el
desarrollo del curso, SCILAB O MATLAB, haciendo uso de las estructuras de
control que el lenguaje nos ofrece como es la función “SWITCH/CASE” la cual nos
ayudara a resolver el ejercicio y hacerlo más sencillo que con otras funciones
como IF.

A continuación daremos a conocer el código fuente del mismo y cada una de las
funciones que realizan las líneas de este.
ALGORITMO DESARROLLADO

1. Identificar el valor de una resistencia a partir del código de colores que


ingrese el usuario incluyendo la tolerancia.

clear all%borra todas las variables, incluyendo las globales, y las


funciones.
close all%borra la ventana de comandos
% indico que colores, nombres acepta el programa
disp('Programa para determinar el valor de una resistencia a partir del
código de colores.');
disp('los colores deben introducirse en comitas y los colores aceptados
son: ');
disp('negro, marron, rojo, naranja, amarillo, verde, azul, violeta, gris
y blanco (primera, segunda y tercera banda)');
disp('plateado y dorado (cuarta banda)');

%busqueda del primer color


B1=input('\n Por favor ingrese el color de la primera banda: ');%mensaje
de entreda solicitando el color de la primera banda en comitas
tf1=strcmp(B1,'negro');%comparo con color negro
tf2=strcmp(B1,'marron');
tf3=strcmp(B1,'rojo');
tf4=strcmp(B1,'naranja');
tf5=strcmp(B1,'amarillo');
tf6=strcmp(B1,'verde');
tf7=strcmp(B1,'azul');
tf8=strcmp(B1,'violeta');
tf9=strcmp(B1,'gris');
tf10=strcmp(B1,'blanco');

if tf1==1%si es negro entonces


R1=0;
else
if tf2==1%es marrón
R1=1;
else
if tf3==1%es rojo
R1=2;
else
if tf4==1%es naranja
R1=3;
else
if tf5==1%es amarrillo
R1=4;
else
if tf6==1%es verde
R1=5;
else
if tf7==1%es azul
R1=6;
else
if tf8==1%es violeta
R1=7;
else
if tf9==1%es gris
R1=8;
else
if tf10==1%es blanco
R1=9;
else
end
end
end
end
end
end
end
end
end
end
B2=input('\n Por favor ingrese el color de la segunda banda: ');%mensaje
de entreda solicitando el color de la segunda banda en comitas
%busqueda segundo color
tf1=strcmp(B2,'negro');%comparo con color negro
tf2=strcmp(B2,'marron');
tf3=strcmp(B2,'rojo');
tf4=strcmp(B2,'naranja');
tf5=strcmp(B2,'amarillo');
tf6=strcmp(B2,'verde');
tf7=strcmp(B2,'azul');
tf8=strcmp(B2,'violeta');
tf9=strcmp(B2,'gris');
tf10=strcmp(B2,'blanco');

if tf1==1%si es negro entonces


R2=0;
else
if tf2==1%es marrón
R2=1;
else
if tf3==1%es rojo
R2=2;
else
if tf4==1%es naranja
R2=3;
else
if tf5==1%es amarrillo
R2=4;
else
if tf6==1%es verde
R2=5;
else
if tf7==1%es azul
R2=6;
else
if tf8==1%es violeta
R2=7;
else
if tf9==1%es gris
R2=8;
else
if tf10==1%es blanco
R2=9;
else
end
end
end
end
end
end
end
end
end
end
B3=input('\n Por favor ingrese el color de la tercera banda: ');%mensaje
de entreda solicitando el color de la tercera banda en comitas
%busqueda tercer color
tf1=strcmp(B3,'negro');%comparo con color negro
tf2=strcmp(B3,'marron');
tf3=strcmp(B3,'rojo');
tf4=strcmp(B3,'naranja');
tf5=strcmp(B3,'amarillo');
tf6=strcmp(B3,'verde');
tf7=strcmp(B3,'azul');
tf8=strcmp(B3,'violeta');
tf9=strcmp(B3,'gris');
tf10=strcmp(B3,'blanco');

if tf1==1%si es negro entonces


R3=0;
else
if tf2==1%es marrón
R3=1;
else
if tf3==1%es rojo
R3=2;
else
if tf4==1%es naranja
R3=3;
else
if tf5==1%es amarrillo
R3=4;
else
if tf6==1%es verde
R3=5;
else
if tf7==1%es azul
R3=6;
else
if tf8==1%es violeta
R3=7;
else
if tf9==1%es gris
R3=8;
else
if tf10==1%es blanco
R3=9;
else
end
end
end
end
end
end
end
end
end
end

B4=input('\n Por favor ingrese el color de la cuarta banda: ');%mensaje


de entreda solicitando el color de la cuarta banda en comitas
%busqueda cuarto color
tf1=strcmp(B4,'plateado');%comparo con color plateado
tf2=strcmp(B4,'dorado');
Rt=R2*10^R3+R1*10^(R3+1);% calculo del valor de la resistencia
fprintf('\n El valor de la resistencia es: \n %3.2f\n',Rt);%mensaje de
salida del valor de la resistencia
if tf1==1%si es plateado
Rmax=Rt*1.1;
Rmin=Rt*0.9;
else
if tf2==1%es dorado
Rmax=Rt*1.05;% Calculo del valor maximo de la tolerancia de una
resistencia
Rmin=Rt*0.95;% Calculo del valor minimo de la tolerancia de una
resistencia
end
end
fprintf('\nRango de la resistencia para una tolerancia: \n');%mensaje de
salida del rango de resistencia para una resistencia
B4
[Rmin Rmax]%vector del rango minimo y maximo de la tolerencia de una
resistencia

2. Desarrolle un algoritmo que identifique el código de colores de una


resistencia al ingresar su valor resistivo en ohmios.

clc
clear global;
disp('saber el codigo de colores de una resistencia a partir de su
valor');
disp (' ');
%disp('solo funciona con valores mayores a 1');
%disp (' ');
n=input('ingrese el valor de la resistencia en Ohmios: ');
B4=input('ingrese el porcentaje de tolerancia a usar 5 o 10: ');

cop=n; % copiamos el valor de n a la variable cop


d=0; %número de dígitos

while cop>=1 % mientras el valor ingresado sea mayor a 1 hacemos;


cop=cop/10; dividimos entre 10 el valor de n y se guarda en cop
d=d+1; se realiza un acumulador para la variable dígitos

end
d;
cop=n;
B1=fix(cop/10^(d-1)); el valor de la banda uno es redondeado a cero,
luego de realizar las operaciones necesarias.
e=d-1;
B2=fix((cop-(B1*(10^e)))/10);
cc=d-2;

%cantidad de ceros

% de acuerdo a los procedimientos realizados anteriormente, el programa


busca el resultado para determinar el color, para ello anteriormente se
hace el proceso inverso. Y ahora según el resultado obtenido en B1
disponemos a establecer el color de la primera banda conforme las
opciones que nos presenta la función switch para cada caso, de obtener un
resultado distinto nos arrojara “resultado o valor no conocido”.

switch (B1);
case 0
disp('el color de la banda 1 es: negro ');
case 1
disp('el color de la banda 1 es: cafe ');
case 10
disp('el color de la banda 1 es: cafe ');
case 2
disp('el color de la banda 1 es: rojo ');
case 3
disp('el color de la banda 1 es: naranja ');
case 4
disp('el color de la banda 1 es: amarillo ');
case 5
disp('el color de la banda 1 es: verde ');
case 6
disp('el color de la banda 1 es: azul ');
case 7
disp('el color de la banda 1 es: violeta ');
case 8
disp('el color de la banda 1 es: gris ');
case 9
disp('el color de la banda 1 es: blanco ');
otherwise
disp('valor no reconocido');
end
% Se procede a encontrar el valor de la segunda banda, cuyo resultado es
almacenado en B2 y dependiendo de los casos mostrara el mensaje diciendo
el color de dicha banda, de no encajar en ninguno de los casos dirá
“valor no conocido”

switch (B2);
case 0
disp('el color de la banda 2 es: negro ');
case 1
disp('el color de la banda 2 es: cafe ');
case 2
disp('el color de la banda 2 es: rojo ');
case 3
disp('el color de la banda 2 es: naranja ');
case 4
disp('el color de la banda 2 es: amarillo ');
case 5
disp('el color de la banda 2 es: verde ');
case 6
disp('el color de la banda 2 es: azul ');
case 7
disp('el color de la banda 2 es: violeta ');
case 8
disp('el color de la banda 2 es: gris ');
case 9
disp('el color de la banda 2 es: blanco ');
otherwise
disp('valor no reconocido');
end

% a continuación se establece el color de la tercera banda que es el


multiplicador, para ello nos basamos en la variable cc, cantidad de
ceros, la cual restamos 2 dígitos al ya haber obtenido los valores de las
bandas 1 y 2. En caso de obtener un resultado cargado en cc nos mostrara
con que caso coincide y arrojara el color de la tercera banda.

switch (cc);
case -2
disp('el color de la banda 3 es: plateado ');
case -1
disp('el color de la banda 3 es: dorado ');
case 0
disp('el color de la banda 3 es: negro ');
case 1
disp('el color de la banda 3 es: cafe ');
case 2
disp('el color de la banda 3 es: rojo ');
case 3
disp('el color de la banda 3 es: naranja ');
case 4
disp('el color de la banda 3 es: amarillo ');
case 5
disp('el color de la banda 3 es: verde ');
case 6
disp('el color de la banda 3 es: azul ');
case 7
disp('el color de la banda 3 es: violeta ');
case 8
disp('el color de la banda 3 es: gris ');
case 9
disp('el color de la banda 3 es: blanco ');
otherwise
disp('valor no reconocido');
end

% a continuación se establece el color de la cuarta banda que es la


tolerancia para ello nos basamos en la variable B4, dentro de las
opciones tenemos dorado y plateado, el cual será determinado por el valor
de B4 ya sea 5 o 10.

switch (B4);
case 5
disp('el color de la banda 4 es: dorado');
case 10
disp('el color de la banda 4 es: plateado');
otherwise
disp('valor no reconocido');

end %finaliza el código y el programa.

EVIDENCIAS DE LA EJECUCION DE LOS ALGORITMOS

PUNTO 1
CONCLUSIONES

Luego de haber concluido la práctica podemos conocer de primera mano las


herramientas y funciones que nos brindan los distintos softwares de programación
que existe, especialmente SCILAB/MATLAB el cual ha sido utilizado a lo largo del
curso. Software que fue concebido para análisis numérico, estadístico, diseño y
análisis de sistemas dinámicos con un lenguaje de programación de alto nivel;
podemos notar que sus aplicaciones van mucho más allá pues posee la capacidad
de procesar diferentes tipos de algoritmos que son utilizados en muchos campos
hoy en día.

La ventaja de este software de programación es la versatilidad que nos ofrecen


basando su sintaxis orientada en matrices y vectores. Gracias a las herramientas y
funciones de este software llegamos a desarrollar dos algoritmos que nos permitan
identificar código de colores y valor de una resistencia.

Luego de diferentes intentos por solucionar la problemática y de emplear las


diferentes funciones pudimos observar que nos ofrece cada una de ellas, puesto
que se pensó en primera instancia en usar IF, aunque SWITCH CASE nos ofrece
un mejor control de nuestro código y desarrollo más sencillo.

Durante el desarrollo del curso comprendimos que es una herramienta de gran


aplicación y nos ayudara mucho en el transcurso de nuestras carreras, inclusive
una vez hayan terminado, puesto es una herramienta que puede facilitar muchos
procesos en el ámbito laboral, desde elaboración de registros, bases de datos y
cálculo de ecuaciones empleadas hacia las finanzas y muchas opciones más.
BIBLIOGRAFIA

 Programación en MATLAB. MRA y JAAR 2010. DISA.


http://www.esi2.us.es/~jaar/Datos/FIA/T9.pdf
 MATLAB. Una introducción con ejemplos Prácticos. Amos Gilat.
EDITORIAL REVERTE. UNIVERSIDAD DE OHIO.
https://books.google.com.co/books?id=dAvjPaUFdAMC&lpg=PP1&dq=matl
ab%20amos%20gilat&pg=PP1#v=onepage&q&f=false
 Funciones y Scripts en Scilab. Julio Cesar, 21 de agosto de 2014. El blog
delingeniero.https://blogdelingeniero1.wordpress.com/2014/08/21/funciones
-y-scripts-en-scilab/

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