ALGORITMOS CÓDIGO CURSO: 301303 Presentado a: Fredy Alexander Castellanos Entregado por: Yiseth Paola Villamizar Duart
Views 84 Downloads 3 File size 408KB
ALGORITMOS CÓDIGO CURSO: 301303
Presentado a: Fredy Alexander Castellanos
Entregado por: Yiseth Paola Villamizar Duarte
Grupo: 301303_122
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA - UNAD ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA BUCARAMANGA
INTRODUCCION
Este trabajo, muestra el análisis y estructura de cada uno de los problemas. Donde se relacionan los diferentes tipos de datos, operaciones que deben seguirse para poder resolver el problema. Un algoritmo es el medio por el cual se realiza el análisis previo del problema a resolver. Es un método para resolver un problema mediante una serie de datos preciso y definidos
TALLER ESTUDIANTE 1 En este taller Usted encontrará 9 problemas los cuales los debe analizar de forma individual Este taller pretende que usted realice un análisis de los problemas presentados y Una de las formas es haciéndose algunas preguntas que no le han quedado claras después de leer el planteamiento del problema, por ejemplo, saber cuáles son los datos que no se conocen, identificar los datos que son posibles de calcular, determinar con claridad las variables que se pueden utilizar e indagar sobre las fórmulas que se deben utilizar en los problemas que así lo requieran. Con tal propósito usted debe leer y re-leer el ejercicio para comprender lo que se requiere y proceder a realizar su análisis en el cuadro contiguo al planteamiento.
1. Planteamiento del problema a resolver: Se desea realizar el análisis de un problema que permita calcular el Área de un Cilindro. Que datos no conozco y se deben solicitar Altura del cilindro Diámetro del circulo
Que datos no conozco, pero los puedo calcular
Tipo Variables requeridas
Formulas a aplicar si se requieren
Requiere e condicional (si / no)
Requiere ciclos (si / no)
Tipo
Variable
Int
H_cilindro
No
No
No
Int
D_circulo
No
No
No
R_circulo=D_circulo/2
No
No
Pi=3,1416 A_cilindro=2*Pi*r_circulo* h
No No
No No
Radio de Int r_circulo circunferencia Pi Doublé Pi Área del Doublé A_cilindro cilindro
¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza? R/No requiere de ningún condicional.
¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ No requiere de algún tipo de repetición.
¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos? R/ Si se conoce el radio de circunferencia, entonces la variable de diámetro de circulo es innecesaria. 2. Planteamiento del problema a resolver: realizar el análisis para solucionar el problema que permita ingresar un valor expresado en centímetros, y entregar la respuesta tanto en yardas como en pies.
Que Que datos no datos conozco, pero los no puedo calcular conozco y se deben solicitar Dato en cm Pie Yarda Valor en yardas Valor en pies
Tipo Variables requeridas
Formulas a aplicar si se requieren
Requiere e condicio nal (si / no)
Requiere ciclos (si / no) _ cuales
Tipo
Variable
int
Ingreso
No
No
No
Doublé Doublé Doublé Doublé
Ft Yrd V_yrd V_ft
Ft=30,48 Yrd=91,44 V_yrd=ingreso/yrd V_ft=ingreso/pie
No No No No
No No No No
¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza? R/ no requiere de condicional ya que se muestran los resultados tanto en yrd como en ft
¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ no requiere de ciclos.
¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos? R/ se puede remplazar las variables ft y yrd con sus respectivos valores en cm en las variables V_yrd y V_ft. V_yrd= ingreso/yrd o V_yrd=ingreso/91,44 V_ft= ingreso/ft ó V_ft=ingreso/30,48
3. Planteamiento del problema a resolver: Uno de sus amigos ha “montado” una fábrica de confecciones de ropa, por lo pronto está en producción de Pantalones, Camisas y bufandas y cuenta con 2 trabajadores, los cuales deben en un día tener producción de los 3 artículos y el pago que se hace al final del día es por cantidad realizada, así: • Pantalón = $5000 • Camisas = $2500 • Bufandas =$ 800 Su amigo le ha el análisis para la solución del problema que al final del día pida el ingreso de cada una de las cantidades producidas, para determinar el valor que debe pagarle a cada empleado.
Que datos no conozco y se deben solicitar
Que datos no conozco, pero los puedo calcular
Pantalones trabajador 1 Camisas trabajador 1 Bufandas trabajador 1 Pantalones trabajador 2 Camisas trabajador 2 Bufandas trabajador 2 Precio
Tipo Variables requeridas
Formulas a aplicar si Requier e se requieren condicio nal (si / no)
Requiere ciclos (si / no) _ cuales
Tipo
Variable
Int
P_1
No
No
No
Int
C_1
No
No
No
Int
B_1
No
No
No
Int
P_2
No
No
No
Int
C_2
No
No
No
Int
B_2
No
No
No
Int
Pp_1
Pp_1=P_1*5000
No
No
Pantalones trabajador 1 Precio Camisas trabajador 1 Precio Bufandas trabajador 1 Precio Pantalones trabajador 2 Precio Camisas trabajador 2 Precio Bufandas trabajador 2 Pago trabajador1 Pago trabajador 2
Int
Pc_1
Pc_1=P_1*2500
No
No
Int
Pb_1
Pb_1=P_1*800
No
No
Int
Pp_2
Pp_2=P_1*5000
No
No
Int
Pc_2
Pc_2=P_1*2500
No
No
Int
Pb_2
Pb_2=P_1*800
No
No
Int
PT_1
Pp_1+Pc_1+Pb_1
No
No
Int
PT_2
Pp_2+Pc_2+Pb_2
No
No
¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza? R/ no se requiere de condicionales. ¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ no se requiere de ciclos. ¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos? R/ Este ejercicio se puede desarrollar por medio de dos arreglos (uno para cada trabajador) si se realiza de esa forma no hay necesidad de utilizar tantas variables. 4. Planteamiento del problema a resolver: Usted va a adquirir un disco duro para su computador y el vendedor le ofrece tamaños de disco duro expresados en Terabit. Para lo cual usted realiza análisis del problema que le permite convertir ese valor en Megabyte y en Gigabyte.
Que datos no conozco y se deben solicitar) Tamaño de disco en
Que datos no conozco, pero los puedo calcular
Tipo Variables requeridas Tipo
Requier e condicio nal (si / no)
Requiere ciclos (si / no) _ cuales
No
No
No
Variable
T_Disco Doublé
Formulas a aplicar si se requieren
Tbytes 1_Gbytes 1_Megabyte Tamaño en Gbytes
Int Int
1_GB 1_MB T_GB
1_GB=1024 1_MB=1024
No No No
double T_GB=T_disco*1_GB Tamaño en Mbytes double T_MB T_MB=T_GB*1MB No ¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza?
No No No No
R/ no se requiere de condicionales. ¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ no se requiere de ciclos. ¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos? R/ Las variables 1_GB y 1_MG prácticamente son innecesarias ya que se pueden suplantar directamente en la fórmula de las variables resultante. 5. Planteamiento del problema a resolver: Le han solicitado que analice el problema que permita determinar si una persona ya puede tener su cedula de ciudanía o si aún no tiene la edad necesaria.
Que datos no conozco y se deben solicitar Dia de nacimiento Mes de nacimiento Año de nacimiento Dia actual Mes actual Año actual
Que datos no conozco, pero los puedo calcular
Tipo Variables requeridas
Formulas a aplicar Requier e si se requieren condicio nal (si / no)
Requiere ciclos (si / no) _ cuales
Tipo
Variable
Int
Dia_n
No
no
no
Int
Mes_n
No
no
No
Int
A_n
No
no
No
Int Int Int Diferencia de día Int
Dia_Act Mes_act A_act Dif_dia
No no No Si
No No No No
Diferencia de mes Diferencia de año
Int
Dif_mes
Si
No
Int
Dif_a
No No No Dif_dia=dia_actdia_n Mes_dia=mes_act -mes_n Dif_a=A_act-A_n
Si
No
¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza? R/ requiere varios condicionales para poder realizar bien las operaciones en forma de numero enteros positivos. ¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ no requiere de ciclos porque solo hay un procedimiento que se realiza ¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos?
R/ no hay datos innecesarios. 6. Planteamiento del problema a resolver: Se debe analizar el problema para determinar si una persona es apta para prestar el servicio militar, bajo las condiciones: debe ser de nacionalidad colombiana, mayor de edad, de género masculino, soltero y además debe tener hermanos.
Que datos no conozco y se deben solicitar (si se requiere más filas por favor anexarlas) Edad Nacionalidad Genero Estado civil Cantidad de hermanos
Que datos no conozco, pero los puedo calcular
Tipo Variables requeridas Tipo
Variable
Int Char Char Char int
Edad Nacionalidad Genero Estado civil Hermanos
Formulas a aplicar si se requieren
Requier e condicio nal (si / no)
Requiere ciclos (si / no) _ cuales
No No No No No
No No No No No
No No No No No
Revisión de Bool R_nacionalidad No Si nacionalidad Revisión de Bool R_genero No Si genero Revisión de Bool R_estado_civ No Si estado civil Revisión de Bool R_edad No Si edad Requisito Bool Requisito No si ¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza?
No No No No No
R/ si requiere de varios condicionales para confirmar cada uno de los requisitos. ¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ no requiere de ciclos ¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos? Por medio de una función se puede reducir la cantidad de variables booleanas. 7. Planteamiento del problema a resolver: Se les han pedido que realice el análisis de un problema le dé una proyección positiva de su futuro inmediato de acuerdo con su signo zodiacal.
Que datos no Que datos no conozco y se conozco, pero los deben puedo calcular solicitar (si se requiere más filas por favor anexarlas) Dia de nacimiento Mes de nacimiento Signo zodiacal
Tipo Variables requeridas
Formulas a aplicar si se requieren
Requier e condicio nal (si / no)
Requiere ciclos (si / no) _ cuales
Tipo
Variable
Int
Dia_n
No
Si
no
Int
Mes_n
No
si
No
string
zodiaco
No
Si
No
¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza? R/ En el caso del mes utilizamos un Switch para definir los signos pertenecientes a ellos. En el de día la sentencia if es suficiente, en el caso de zodiaco es para mostrar los mensajes previamente guardados. ¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ no requiere de ciclos de repetición. ¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos? R/ todos los datos son requeridos.
8. Planteamiento del problema a resolver: Se ha solicitado que analice un problema que permita determinar el promedio de las edades de 50 personas, solo si estas son mayores de edad, en caso de no ser mayor de edad, se debe indicar cuantos no cumplen con esa condición, además del promedio de peso de todo el grupo.
Que datos no conozco y se deben solicitar (si se requiere más filas por favor anexarlas) Datos de ingreso
Que datos no conozco, pero los puedo calcular
Promedio de edad mayores de edad Promedio de peso Cuantos no cumplen
Tipo Variables requeridas
Formulas a aplicar si se requieren
Requier e condicio nal (si / no)
Requiere ciclos (si / no) _ cuales
No
no
Si
Si
Si
Si
Int
Promedio_eda Sum+dato[1]/cant d Promedio peso no Sum+Dato[2]/cant No_cumple No si
Double Int
Sum Cant
No No
Tipo
Variable
Int
Datos[50][2]
Int
Double
No No
No No
Si
¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza? R/ si requiere de varios condicionales, como para calcular la cantidad de personas que no cumplen el requisito.
¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ si requiere del uso de ciclos como el for ya que al ser bastante la cantidad de datos que se deben ingresar, la mejor opción es con el uso de una matriz 50x3. También es necesario calcular los promedios asignados a este espacio de memoria. ¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos? R/ todos los datos son requeridos.
9. Planteamiento del problema a resolver: Se debe desarrollar el análisis de un problema que permita realizar una encuesta a N personas, de los cuales se pretende identificar lo siguiente: a- Estrato social al que pertenece (1 a 6), no se deben permitir otro b- Salario mensual, no se aceptan salarios negativos c- Tipo de trabajo (1- sin trabajo, 2- independiente, 3empleado público, 4 – empleo privado), no se admite otra opción El programa garantiza que los datos ingresados sean correctos y al final debe reportar lo siguiente:
1. 2. 3. 4.
Cantidad de persona encuestadas Cantidad de persona por estrato Promedio del salario de las personas encuestadas Cuál es el tipo de trabajo predominante.
Que datos no conozco y se deben solicitar (si se requiere más filas por favor anexarlas) Finalizar encuesta Solicitud datos
Que datos no conozco, pero los puedo calcular
Tipo Variables requeridas
Formulas a aplicar si se requieren
Requier e condicio nal (si / no)
Tipo
Variable
Bool
F_encuesta
No
Si
Double
S_datos[n][3]
No
No
Requi ere ciclos (si / no) _ cuale s Si – while Si- for
Numero personas estratos Promedio de salario
Int
N
no
No
No
Int Double
Estrato[5][n] Promedio_sal
No No
Si-for Si-for
Trabajo predominante
Int
Trabajo_P[1]
No Requiere el cálculo de media aritmética Requiere el cálculo de moda
No
Si-for
¿Si el ejercicio requiere la utilización de uno o más condicionales, puede indicar para que se utiliza? R/ La condición que se utiliza está ligado a una función booleana la cual cierra el ingreso de datos cuando esta se cumple. ¿Si el ejercicio requiere la utilización de uno o más ciclos o repeticiones, puede indicar para que se utiliza? R/ el while para el llenado de datos y el for para la realización de operaciones como promedios, moda e identificación de estratos.
¿Podría indicar si en el problema existen datos innecesarios y de ser así cuales pueden ser esos datos? R/ todos los datos son requeridos.
CONCLUSIONES
1. un algoritmo es de carácter general y puede aplicarse a cualquier problema y/o cualquier operación matemática. 2. los algoritmos son una manera de expresar una secuencia de pasos ordenados y lógicos que buscan identificar la necesidad del problema buscando las alternativas para una posible solución. 3. este trabajo me permitió identificar las diferentes situaciones que me llevaban a procedimientos para dar las diferentes soluciones. 4. luego de analizar y realizar este trabajo me doy cuenta la importancia de los algoritmos ya que son una herramienta fundamental y aplicable a cualquier situación para dar una posible solución.
BIBLIOGRAFIA
https://bibliotecavirtual.unad.edu.co:2538/lib/unadsp/reader.action? ppg=7&docID=3195276&tm=1529615328492 https://es.wikiversity.org/wiki/Fundamentos_de_programaci%C3%B3n/Algoritmos https://es.wikibooks.org/wiki/Fundamentos_de_programaci %C3%B3n/Algoritmos_y_programas