Está en la página 1de 29

INSTITUTO TECNOLOGICO SUPERIOR DEL

OCCIDENTE DEL ESTADO DE HIDALGO

ALGORITMOS Y LEGUAJE

SEMESTRE Y GRUPO:
4A

EVIDENCIA:
REPORTE DE PRACTICA

DOCENTE:
NORMA FLORICEL MIRANDA BARRETO

ALUNMO:
KEVIN CARLOS GUMECINDO MEJIA

07/ MARZO/2023
Introducción

El pensamiento algorítmico es la capacidad para realizar el proceso de abstracción,


modelización de un problema, deducciones lógicas y síntesis de la solución que
conduzca a escribir el algoritmo correcto es un nivel de entendimiento que el ser
humano debe de analizar para llegar a un resultado propuesto y elegido por el
mismo teniendo en cuenta todas las posibilidades que desencadena el problema a
estudiar. Es importante tener en claro que un algoritmo es una serie de pasos
organizados, que describe el proceso que se debe seguir, para dar solución a un
problema específico. Es muy concreto el comprender la composición de este tipo
de secuencias para ello se presenta un cuadro sinóptico que contiene el tema de
programación modular en donde explica la función de cada uno de los componentes
de estas estructuras.
Para eso en el presente documento se evidencian las practicas realizadas a lo largo
del tema “lógico- algorítmico” utilizando el equipo de cómputo y de la misma manera
un software llamado Visio, que ayudo en la realización de estos diagramas y en
donde se muestra la prioridad de los operadores y sobre todo las figuras
geométricas que se utilizan en los diagramas de flujo además de conocer el
concepto de pseudocódigo respectivamente y la elaboración del mismo a través de
los diagramas, en el programa se realizaron la mayoría de los diagramas, cada uno
de ellos contiene su respectivo problema y pseudocódigo elaborados en las
sesiones de la materia y a continuación se presentan.
1.- Construya un diagrama de flujo que al recibir datos con la clave del empleado y
los 6 primeros sueldos mensuales del año, Calcule el ingreso total semestral y el
promedio mensual e imprima la clave del empleado, el ingreso total, y el promedio
mensual

VARIABLES DE ENTRADA:
• Clave del empleado-----(C_empleado)
• 6/salarios mensuales ----(Sal1 1000, Sal2 10000, Sal3 5000, Sal4 15000,
Sal5 2000, Sal6 20000)
VARIABLES DE SALIDA:
• Ingreso total semestral---(Ing.T_S)
• Promedio Mensual------(Prom_M)
CONSTANTES:
• 6 (Total de salarios)

Pseudocodigo
1. Inicio
2. Feclarar variables
• Dim C_empleado As String
• Dim Sal1, Sal2, Sal3, Sal4,
Sal5, Sal6 As Integer
• Dim Ing_T_S, Prom_M AS
Double
3.- Solicitar variables de entrada
• C_empleado
• Sal1, Sal2, Sal3, Sal4, Sal5,
Sal6
4.- Procesamiento de datos
• Calcular el ingreso total
semestral
• Ing_T_S= Sal1+Sal2+ Sal3 +
Sal4 + Sal5 + Sal6
5.- Calcular el promedio mensual
• Prom_M= Ing.T_S/6
6.- Imprimir resultados
• C_empleado, Ing.T_S,
Prom_M
7.- Fin
2.- Calcular el área de un triangulo y representarlo a través de un diagrama de flujo
y un pseudocodigo.
A=(b*h)/2
Variables de entrada
Base--- b
Altura---- h
Variables de salida
Area---- A

Pseudocodigo
3. Inicio
Inicio
4. Declarar variables
• Dim b As Double,Dim h As Double,
• Dim A As Double
3.- Solicitar variables de entrada
b,h
b
h
4.- Procesamiento de datos
A=b*h/2 Calcular el ingreso total semestral
A=b*h/2
5.- Fin

Fin
3.- Construye un diagrama de flujo y un pseudocodigo que permita imprimir el
nombre de un trabajador y su salario considerando el número de horas trabajadas
y la cuota por horas.

Variables de entrada
Nombre del trabajador--- Nom_trabajador
Salario considerado---- Sal_consid
Numero de horas Trabajadas…… Num_H_T
Variables de salida
Cuota por horas…..Cuot_H

Pseudocódigo
Inicio 1.-Inicio
2.- Determinar variables
• Dim Num_H_T As
Integer
Nom_trabajador • Dim Num_H_T As
Sal_consid Double
• Dim Nom_trabajador
As integer
• Dim Cuot_H As Integer

Cuot_H= Num_H_T * 3.- Solicitar variables de


Sal_consid entrada
• Nom_trabajador
• Sal_consid
4.- Imprimir
• Nom_trabajador
Nom_trabajador
• Sal_consid
Sal_consid
6.-Fin

Fin
4.- Elabora Diagrama de flujo y Pseudocódigo para los siguientes ejercicios,
considera la jerarquía de operadores (el uso de paréntesis es imprescindible para
obtener el resultado correcto), recuerda que las operaciones deben realizarse en
renglón.
Encuentra el resultado correcto para las siguientes expresiones aritméticas.

Inicio
N=(X+Y)/(Y-1)
Variables de entrada:
• X X, Y
• Y
Variables de salida:
N=(X+Y)/(Y-1)
• N
Constantes:
• 1 N

Pseudocódigo
Fin
1. Inicio
2. Declarar variables
Dim X, Y, N As Double
3. Solicitar variables de entrada
• X
• Y
4. Procesamiento de datos
• Calcular N
• N=(X+Y)/(Y-1)
5. Imprimir resultados
• N
6. Fin
5.- Inicio

X=A+B-(Y/Z)
Variables de entrada: A, B, Y, Z
• A
• B
• Y X=A+B-(Y/Z)
• Z
Variables de salida:
X
• X

Pseudocódigo Fin
1. Inicio
2. Declarar variables
Dim A, B, Y, Z, X As Double
3. Solicitar variables de entrada
• A
• B
• Y
• Z
4. Procesamiento de datos
• Calcular X
• X=A+B-(Y/Z)
5. Imprimir resultados
• X
6. Fin
6.-
Inicio

W=((A*C)/D)+(B/C) A, B, C, D
Variables de entrada:
• A
• B W=((A*C)/D)+(B/C)
• C
• D
W
Variables de salida:
• W
Fin
Pseudocódigo
1. Inicio
2. Declarar variables
Dim A, B, C, D, W As Double
3. Solicitar variables de entrada
• A
• B
• C
• D
4. Procesamiento de datos
• Calcular W
• W=((A*C)/D)+(B/C)
5. Imprimir resultados
• W
6. Fin
7.-

Inicio
Z=((T(Y-2))+R)/S
Variables de entrada:
• T T, Y, R, S
• Y
• R
• S Z=((T(Y-2))+R)/S

Variables de salida:
• Z Z
Constantes:
• 2 Fin

Pseudocódigo
1. Inicio
2. Declarar variables
Dim T, Y, R, S, Z As Double
3. Solicitar variables de entrada
• T
• Y
• R
• S
4. Procesamiento de datos
Calcular Z
Z=((T(Y-2))+R)/S
5. Imprimir resultados
• Z
6. Fin
Estructuras algoritmos selectivas
Estructura simple IF
Las estructuras lógicas selectivas se utilizan cuando se debe de tomar una decisión
en el desarrollo de la solución de un problema. La toma de decisión se basa en la
evaluación de una o más condiciones que nos señalaran como consecuencias que
rama seguir.
La estructura simple IF permite que el flujo del diagrama siga por un camino
especifico si se cumple una condición determinada. S al evaluar la condición el
resultado es verdadero, entonces se sigue por el camino de abajo, y se ejecuta una
operación o acción o conjunto de ellas. Por otra parte, si el resultado de la
evaluación es falso entonces pasan por alto esas operaciones. En ambos casos se
continúan con la secuencia normal del diagrama.

No, falso
Condición

Si, verdadero

Operación
8.- Conociendo el nombre del alumno, la matricula y el promedio, imprimir cada uno
de ellos, así como también la leyenda “Aprobado” si es que el promedio es mayor a
70.

1.- Inicio
2.- Declarar variables
• Dim numero de la matricula As string
• Dim prom As double
3.- Solicitar variables de entrada
• Nombre del alumno
• Matricula
Promedio
4.-Leer variables de entrada
• Nom_alu
• Matricula
• Prom
5.-Comparar el promedio
• If Prom >70
• 5.1 Imprimir
• Nom_alu
• Matricula
• Prom
• “Aprobado”
• 5.2 End if
6.-Fin
9.- Teniendo como datos la edad y el nombre de una persona imprimir la leyenda
menor de edad, si es que la esta es menor a 18, también imprimir el nombre.

1.- Inicio
2.- Declarar variables
• Dim Edad As integer
• Dim Nom_per As string
3.- Solicitar variables de entrada
• Nombre de la persona
• Edad
4.- Leer variables d entrada
• Nom_per
5.-Comparar el promedio
• If Edad <18 Then
• 5.1Imprimir
• Nom_per
• Edad “Menor de edad”
• 5.2 End if
6.Fin
10.- Teniendo como dato el precio de 3 artículos en una papelería calcular el total a
pagar, si el monto es mayor a 1000 pesos hacer un descuento del 10%. Imprimir el
total a pagar y el descuento realizado

1.-Inicio
2.-Determinar variables
• Dim ;Art_x,Art_y,Art_z,Tot,Des,P_total As double
3.-Solicitar variables de entrada
• Art_x
• Art_y
• Art_z
4.- Leer variables de entrada
• P_total
• Desc.
5.- Comparar el promedio
• If Total>1000 Then
• 5.1 Imprimir
• P_total
• Desc
6.- Fin
Estructuras algorítmicas selectivas estructura doble if- Else
lógicos,alfanuméricos
Permite que el flujo del diagrama se bifurque por dos ramas diferentes en el punto
de la toma de decisiones. Si al evaluar la condición el resultado es verdadero
entonces se sigue por el camino de la izquierda y se ejecuta una acción determinada
o un conjunto de ellas. Por otra parte si el resultado de la evaluación es falso,
entonces se sigue por el otro camino, el de la derecha y se realizan otras acciones.
En ambos casos luego de ejecutar las acciones correspondientes se continua con
la secuencia normal del diagrama de flujo
11.- Conociendo el nombre de la materia y las calificaciones de cuatro parciales se
desea calcular el promedio e imprimir el nombre de la materia, promedio y la leyenda
“Aprobado” si es que el promedio es mayor a 70 y “Reprobado si es menor a 70
1.- Inicio
2.-Determinar variables
• Dim Nom_mat As string
• Dim C1,C2,C3,C4, Prom As Double
3.- Solicitar variables de entrada
• Calificaciones y nombre de la materia
4.- Leer variables
5.- Calcular el promedio
• Prom= C1+C2+C3+C4/4
6.- Comparar el promedio
• If>70 Then
• 6.1Imprimir
• Nom_mat,prom,”Aprobado”
• Else
o Imprimir
• Nom_mat,prom,”Reprobado”
• End if
7.- Fin
Estructuras secuenciales

12.- Teniendo como datos de entrada el nombre y el año de nacimiento


de una persona, calcula su edad e imprime: Nombre, Edad y el mensaje
"Ya eres un adulto" si es fuera mayor o igual 18 años e imprime Nombre,
Edad, y el mensaje "Menor de edad" si es que tuviera menos de 18
años.

1. Inicio
2. Declarar Variable
Dim Num As string
Dim A__ ra, A_ac As integer
3. Solicitar variables de entrada
Nombre, año de nacimiento, año actual
4. Leer variables de entrada
Num A
A_na
5. Calcular la edad
Edad= (A_ac) - (A_na)
6. Comparar
if Edad > 18 Then
6.1 Imprimir
Num, Edad, 'Ya eres adulto"
6.2 End if
Nom, edad “Menor de edad”

7. Fin
13.- Al recibir como dato el precio de un producto importado, incrementa 11% el
mismo si es inferior a $1500, y 8% si fuera mayor o igual a dicho precio,
además debe imprimir el nuevo precio del producto.

1. Inicio
2. Declarar variables
Dim P_PIM A Np As Double
3. Solicitar variables de entrada
Precio del producto importado
4. Leer variables de entrada
P_PIM
5. Calcular precio
if P_PIM<1500
6.
If VALT=1500 Then
6 .1 Imprimir
VALT "Nuevo precio"
6.2. Else
Imprimir
VALT, “Nuevo precio np ”
6.3. End if
7. Fin
Estructuras selectivas de cascada
En la solución de problemas se encuentran frecuentemente casos en los que, luego
de tomar una decisión y señalar el correspondiente camino a seguir es necesario
tomar otra decisión. Este proceso se puede repetir numerosas veces.
14.- Al recibir como datos las ventas de 3 vendedores en una agencia de autos
impriman las ventas en forma descendente. Considere que todas las ventas son
diferentes y no utilice operadores lógicos para agrupar condiciones

1.-Inicio
Ventas: (P,S,R) 2.-Declarar las variables
P=5000
• Dim P,S,R As integer
S=3000
3.- Solicitar ventas
R=3500
4.- Leer las ventas
• P,S,R
5.- Comparar y orenar de forma ascendente
• If P>S Then
• If P>R Then
• If S>R Then
• Imprimir P,S,R
• Else
• Imprimir P,R,S
• End if
• Else
• Imprimir R,P,S
• End if
• Else
• If S>R Then
• If P>R Then
• Imprimir S,P,R
• Else
• Imprimir S,R,P
• Else
• Imprimir R,S,P
• End if
• End if
• End if
6.- Fin
DIAGRAMA
15.- Se tiene como datos de entrada 3 números enteros diferentes, comparar los
números e imprimir el menor de ellos.
X=30
Y=20
Z=10

1.- Inicio
2.-Declarar las variables
• Dim X,Y,Z Integer
3.-Solicitar variables de entrada
4.-Leer variables de entrada
• X,Y,Z
5.-Comparar los números e imprimir el menor de
ellos
• If X<Y Then
• If X<Z Then
• Imprimir X
• Else
• Imprimir Z
• End if
• Else
• If Y<Z Then
• Imprimir Y
• Else
• Imprimir Z
• End if
• End if
6.-Fin
16.-Teniendo como datos de entrada el nombre, horas trabajadas, cuota por hora.
Calcular su sueldo considerando que si las horas trabajadas son mas de 40 pero no
mayor de 50 estas horas serán consideradas al doble, pero si hay un excedente de
50 horas estas serán pagadas al triple.
Nom_
HT
Cuo_h
1.- Inicio
2.-Declarar variables
• Dim Nom_,HT,Cuo_h Integer
3.-Solicitar variables de entrada
4.-Leer variables de entrada
• Nom_,HT,Cuo_h
5.- Calcular el sueldo considerado
• If HT<=40 Then
• If Suel=HT*Cuo_h Then
• End if
• Else
• If HT<=50 Then
• If Then
• Else
• If Then
• End if
• End if
6.- Fin
17.-Elabore un diagrama de flujo seudocódigo para calcular e imprimir el precio de
un terreno del cual se tienen los siguientes datos Largo, ancho y precio por metro
cuadrado. Si el terreno tiene mas de 400m se hace un descuento de 10%, pero si
el terreno tiene mas de 500m el descuento es de 17% y finalmente si tiene mas de
1000m el descuento es de 25%.
La
Ach
PM
1.-Inicio
2.- Determinar variables
• Dim La,Ach,PM As Double
3.- Solicitar La, Ach del terreno
4.- Leer La, Ach
5.- Calcular el área del terreno
6.- Comparar la extensión del terreno
• If Are<400 Then
• Calcular pr=(Are*Pm2)*0.9)
• Else
• If Are<500 Then
• Calcular
• Pr=(Are*Pm2)*0.83)
• If Are<1000 Then
• Calcular
• Pr=(Are*Pm2)*0.75)
• End if
• End if
• End if
7.- Imprimir
• Precio
8.- Fin
18.-Se necesita un sistema que le muestre su calificación en letra y su promedio, el
promedio se saca en base a 3 parciales donde el promedio es menor a 70 su letra
es NA, si es mayor a 70 y cuando mucho 80 le corresponde la S, si sobrepasa el 80
pero es menor o igual 90 debe tener B, todo lo demás es una E. Imprimir la letra y
su promedio.

1.-Inicio
2.- Determinar variables
• Dim ;C1,C2,C3, Prom As Integer
3.- Solicitar variables de entrada
4.-Leer variables de entrada
• C1,C2,C3
5.- Calcular el promedio
• Prom=(C1+C2+C3)/3
6.-Comprobar los promedios
• If Prom<70 Then
• Imprimir “NA” Prom
• Else
• If Pom <=80 Then
• Imprimir “S” Prom
• Else
• If Prom <=90 Then
• Imprimir “B” Prom
• Else
• Imprimir “E” Prom
• End if
• End if
• End if
7.- Fin
Estructura repetitiva FOR
Es utilizada para repetir un conjunto de instrucciones un numero definido de veces.
Es muy importante destacar ciertos tipos de variables que se utilizan
frecuentemente en los ciclos. Estos se conocen como contadores y acumuladores.
Los contadores como su nombre lo indica sirven para contar el número de pasadas
del ciclo, y los acumuladores para almacenar los valores de las variables de entrada.
Ambas variables deberán ser inicializadas con algún valor determinado
19.-Al recibir como datos los salarios de 15 profesores de una universidad, obtenga
e imprima el total de la nómina a pagar
Contador Ϊ

1.- Inicio
2.- Determinar variables
• Dim i AS Integer
• Dim Nomina,Salrios As Double
3.- Iniciar variables del ciclo
• I=1
• Nomina =0
4.- Ciclo For
• For i= 1 to 15
• 4.1 Solicitar salario
• 4.2 Leer salario
• 4.3 Almacenar salarios en nomina
• Nomina=Nomina + Salario
• 4.4 Incremento del contador
• Next (i=i+1)
• Salario y nomina
5.- Fin
20.- Se necesita un sistema para un supermercado, en el cual si el monto de la
compra del cliente es mayor de $5000 se le hará un descuento del 30%, si es menor
o igual a $5000 pero mayor que $3000 será del 20%, si no rebasa los $3000 pero
si los $1000 la rebaja efectiva es del 10% y en caso de que no rebase los $1000 no
tendrá beneficio.

1.- Inicio
2.- Determinar variables
• Dim Monto As Integer
3.-Solicitar variables de entrada
4.-Leer variables de entrada

Monto
5.-Calcular monto
• Monto>5000
6.-Comparar

if Tot=Monto *0.7 Then


• Else
• If tot=Monto>2000 Then
• If Tot=Monto*0.80 Then
• Else
• If Monto>100 Then
• If Tot=Monto*0.70 Then
• End if
• End if
• End if
7.- Fin
21.- Necesitamos saber si el usuario es alto o de baja estatura. Baja estatura es
aquel que mide cuando mucho 1.65 mts. Imprimir su altura y su status.

1.- Inicio
2.- Determinar variables
• Dim Est As Double
3.-Solicitar variables de entrada
4.-Leer variables de entrada

Estatura
5.-Calcular estatura
• IfEst<=1.65 Then

Imprimir Estatura “Persona baja”
• Else
• Imprimir Estatura “Persona alta”
• End if
7.- Fin
22.- Leer 2 números; si son iguales que los multiplique, si el primero es mayor que
el segundo que los reste y si no, que los sume.

1.- Inicio
2.- Determinar variables
• Dim AB As Integer
3.-Solicitar variables de entrada
• 4.-Leer variables de entrada
A,B
5.-Calcular 2 numeros
• If Est A=B Then
• If Tot=(A)(B) Then
• Else
• If A>B Then
• If Tot= A-B Then
• Else
• If Tot= A+B Then
• If end
• If end
6.- Fin
23.- Utilizando un ciclo For y si fuera necesario una condición, construir Diagrama
de flujo y Pseudocódigo que al recibir como datos N números enteros, obtenga
solamente la suma de los números positivos.

1.- Inicio
2.- Determinar variables
• Dim i, Suma, Positivo As Integer
3.-Solicitar variables de ciclo
• I=1
• 4.-Ciclo For
For i=1 to n
• 4.1 Solicitar pos
• 4.2 Leer pos
• 4.3Almacenar pos
• Suma=Suma + Pos
• 4.4 Incremento el contador
• Next
• Imprimir suma
5..-Fin
Conclusión
Yo creo que el tema de algoritmos es importante para nosotros como ingenieros
industriales ya que en la industria nos tendremos que enfrentar a algunos problemas
similares que requieran sobre todo de la toma de decisiones y que mejor para ello
que estudiar este tipo de secuencias lógicas por que más que nada nos enseña a
dominar el pensamiento y razonamiento lógico para resolver un problema, así
mismo este tema nos motiva cuando se ejecuta la verificación del problema a través
del Diagrama de Flujo y Pseudocódigo y su comprobación es correcta porque
creemos en la capacidad de seguir solucionando problemas cotidianos a través de
los algoritmos.
No obstante el uso de los algoritmos es importante en cualquier área debido a que
no solo se utiliza en el desarrollo y programación de software sino también en los
problemas de la vida cotidiana como en las matemáticas en alguna decisión que
tomemos sobre algún tema que sea muy relevante o que de plano no lo sea además
que ayuda a reforzar el razonamiento y análisis para comprender los conceptos y
ejercicios prácticos y poner en práctica cada uno de ellos, no solo en la vida laboral
sino aplicarla en la social.
Creo que fue un excelente trabajo para poner a pensar nuestra mente y asi conocer
una forma lógica de resolver los problemas que se nos plantearon para después
utilizar este tema como una herramienta de resolución de estos.

También podría gustarte