Está en la página 1de 10

UNIVERSIDAD ANDINA DEL CUSCO

FACULTAD DE INGENIERÍA Y ARQUITECTURA


ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

GUIA DE APLICACIÓN Nº 01

I. DATOS INFORMATIVOS
1.1. Nombre de la asignatura : Taller de Algorítmica y Programación
1.2. Semestre Académico : 2023- I
1.3. Ciclo de estudios : III
1.4. Área curricular : EBE (Estudios básicos específicos)
1.5. Nombre del docente : Mgt. Ing. María del Pilar Venegas Vergara

II. COMPETENCIAS A CONSEGUIR :

➢ Conoce y analiza el diseño de algoritmos e implementa programas utilizando un lenguaje


de programación.

III. CAPACIDADES
➢ Conoce los conceptos básicos de programación y desarrolla algoritmos usando la
estructura de control secuencial.

IV. FUNDAMENTO TEÓRICO:

Estructura de control Secuencial


“Una estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las
tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta
el final del proceso. La estructura secuencial tiene una entrada y una salida”. Su representación gráfica se
muestra en las Figuras 1,2 y 3. [1]

Figura Nª 1: Estructura
Secuencial Figura Nª 2: Diagrama N-S de
Fuente: [1] una Estructura secuencial Figura Nª 3: Pseudocódigo de
Fuente: [1] una estructura secuencial
Fuente: [1]
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

METODOLOGIA DE DESARROLLO DE algoritmos


En el desarrollo de los algoritmos se consideran las siguientes etapas:
1.- Analizar
1.1.- Entender el problema
1.2.- Plantear un modelo
1.3.- Especificar los requerimientos
- Diccionario de variables
- Pre condición
- Acción que debe realizar el algoritmo
- Post Condición
2.- Diseñar
2.1.- Escribir el algoritmo
2.2.- Verificar manualmente
3.- Codificar en un lenguaje de programación
4.- Poner en funcionamiento.

Este tipo de estructura se basa en las 4 fases de que consta todo algoritmo:
• Definición (declaración) e inicialización de variables
• Lectura de datos
• Cálculo
• Salida

V. APLICACIÓN DE LA GUÍA
DESARROLLO DE LA GUIA DE APLICACIÓN
Ejercicio N° 1. Elaborar un algoritmo que permita calcular la suma y producto de dos números enteros
positivos.

Figura Nª 4: Diagrama de flujo


1. Análisis
1.1. Entender el Problema.
Entrada Proceso Salida
Suma= Numero1+ Numero2
Numero1 Numero2 Producto= Numero1 * Numero2 Suma Producto
3 9 Suma = 3+9 12 27
Producto = 3*9
5 3 Suma = 5+3 8 15
Producto = 5*3

1.2. Modelo
Suma  Numero1 + Numero2
Producto  Numero1 * Numero2
1.3. Especificación del algoritmo

Datos Resultados

Numero1, Numero2 Suma, Producto


UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

- Diccionario de variables

Variables de entrada
Numero1: representa el numero 1 ingresado por teclado: entero
Numero2: representa el numero 2 ingresado por teclado: entero
Variables de proceso
No existen en este caso
Variables de salida
Suma: Suma de dos números enteros positivos ingresados: entero
Producto: Producto de dos números enteros positivos ingresados: entero

- Pre condición
{[ 0>=Numero1y Numero2]}

- Acción que realiza el algoritmo


{[suma y producto de dos números enteros positivos]}

- Post condición
{[ Suma= Numero1 + Numero2]}
{[ Producto= Numero1 * Numero2]}

2. Diseño
2.1.- Escribir el algoritmo
Inicio {[hallar la suma y producto de dos números enteros positivos]}
Inicio
{Declarar e inicializar variables}
Numero1, Numero2, Suma, Producto entero // instrucción 0
{leer datos}
Leer Numero1 // instrucción 1
Leer Numero2 // instrucción 2

{Calcular la suma}
Suma ← Numero1 + Numero2 // instrucción 3

{Calcular la Producto}
Producto ← Numero1 * Numero2 // instrucción 4

{Escribir la suma}
Escribir “La suma de dos números:”, Suma // instrucción 5

{Escribir el producto}
Escribir “La suma de dos números:”, Producto // instrucción 6

fin

2.2.- Verificar Manualmente


Para ello se construye una tabla con los nombres de las variables y se procede a su ejecución manual.
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

N° Instrucciones Numero1 Numero2 Suma Producto Consola o pantalla

1 Leer Numero1 3
2 Leer Numero2 9
3 Suma  Numero1 + Numero2 12
4 Producto  Numero1 * Numero2 27
5 Escribir “La suma de dos números La suma de dos
es:”, Suma números es: 12
6 Escribir “El producto de dos El producto de dos
números es:”, Producto números es: 27

3. Codificación
static void Main(string[] args)
{
int Numero1, Numero2, Suma=0, Producto=0;
Console.WriteLine("ingrese en numero 1");
Numero1 = int.Parse(Console.ReadLine());
Console.WriteLine("ingrese en numero 2");
Numero2 = int.Parse(Console.ReadLine());
// calcular la suma y producto
Suma = Numero1 + Numero2;
Producto = Numero1 * Numero2;
// Escribir en pantalla
Console.WriteLine("La suma de los numeros es: {0}", Suma);
Console.WriteLine("El producto de los numeros es:{0}",Producto);
Console.ReadKey();

}
}
}

4. Poner en funcionamiento

Figura Nª 5: Pantalla de interfaz de codificación en C#


UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

Figura Nª 6: Pantalla de ejecución del código

Ejercicio N° 2. Elaborar un algoritmo que permita hallar el área de un triángulo conocida la base y la
altura.

1. ANÁLISIS
1.1. Entender el Problema.

altura
Si se tiene la base y altura, entonces podemos determinar el
área del triángulo rectángulo, que vendría a ser:
Base

Área del triángulo = (Base * altura)


2

Datos Resultado
Base Altura area_triangulo
5 3 7.5
7.2 5.3 19.08

1.2. Plantear el modelo


area_triangulo = (Base * altura) / 2

1.3. Especificación de los requerimientos.


Diccionario de variables
- Variables de entrada.-
Base {representa a la base del triángulo}: tipo Real
altura {representa la altura del triángulo}: tipo Real

- Variables de salida.-
area_triangulo {representa el área del triángulo}: tipo Real

Pre Condición {|Base, altura > 0| }

Acción que realiza el algoritmo:


Calcula el área de triangulo conocidos la base y la altura

Post Condición {| area_triangulo = (Base * altura) / 2| }


UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

2. DISEÑO
2.1. Escribir el Algoritmo.

Inicio {Calcular el área del triángulo}


{declarar e inicializar variables}
Declarar Base, altura, area_triangulo // INSTRUCCIÓN 0
{Leer datos}
Leer Base // INSTRUCCIÓN 1
Leer altura // INSTRUCCIÓN 2
{Calcular el área}
area_triangulo  (Base * altura) / 2 // INSTRUCCIÓN 3
{Escribir el área}
Escribir area_triangulo // INSTRUCCIÓN 4
fin

2.2. Verificación manual del Algoritmo.


N° Instrucciones Base altura Area_triangulo Consola
0 ? ? ?
1 Leer base 5
2 Leer altura 3
3 area_triangulo  (Base * altura) / 2 7.5

4 Escribir area_triangulo 7.5

3. Codificación en lenguaje de Programación C#


static void Main(string[] args)
{ // Acción : este programa calcula el área de un triángulo

//declarar e inicializar variables


float Base, altura,area_triangulo;

//Leer datos
Console.Write("Ingrese la Base :");
Base=float.Parse(Console.ReadLine());
Console.Write("Ingrese la altura :");
altura=float.Parse(Console.ReadLine());

//Calcular el área
area_triangulo = (Base * altura) / 2 ;

//Escribir el área
Console.Write("El área del triangulo es: {0} ", area_triangulo);
Console.ReadKey();
}
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

4. Poner en funcionamiento

Figura Nª 7: : Pantalla de interfaz de codificación en C#

Figura Nª 8: Pantalla de ejecución del código

Ejercicio 3. Realizar un algoritmo que calcule y muestre el sueldo neto de un trabajador. Se tienen como
datos de entrada el nombre, sueldo y horas extras. Por cada hora extra se paga S/. 12.00.

1. ANÁLISIS
1.1. Entender el Problema.

Datos V. Aux. Resultado


Nombre Sueldo horasext Total_horasext sueldo_neto
Juan Rios 750.50 10 120 870.50
Luis Lopez 1250.0 3 36 1286.00

1.2. Modelo

total_horasext = horasext * 12
sueldo_neto = sueldo + total_horasext
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

1.3. Especificación del algoritmo.

Diccionario de variables
- Variables de entrada.-
nombre: Cadena
sueldo: Real
horasext: Entero

- Variables de proceso.-
total_horasext: Entero

- Variables de salida.-
sueldo_neto: Real
1.3.2 Pre Condición.- {|sueldo > 0, horasext>= 0 |}
1.3.3 Acción que realiza el algoritmo :
Calcula el sueldo de un trabajador

1.3.4. Post Condición {| sueldo_neto = horasext*12 + sueldo| }

2 DISEÑO
2.1 Especificación del Algoritmo.
Inicio {Calcular el sueldo neto}
{Declarar e inicializar variables}
Declarar nombre, sueldo, horasext, sueldo_neto

{Leer datos}
Escribir “ingrese nombre”
Leer nombre
Escribir “ingrese sueldo”
Leer sueldo
Escribir “ingrese hora extras trabajadas”
Leer horasext

{Calcular el sueldo neto}


total_horasexthorasext * 12
sueldo_neto sueldo + total_horasext

{Escribir el sueldo neto}


Escribir sueldo_neto
Fin
UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

2.2 Verificación del Algoritmo.


N° Instrucciones nombre Sueldo Horasext total_horasext sueldo_neto Consola
0 ? ? ? ? ?
1 Escribir “ingrese nombre”
2 Juan Rios
3 Leer nombre
4 Escribir “ingrese sueldo”
5 Leer sueldo 750.50
Escribir “ingrese hora extras
6 trabajadas”
Leer horasext 10
total_horasexthorasext * 120
12
sueldo_neto sueldo + 870.50
total_horasext 870.50
Escribir sueldo_neto

3. codificación en lenguaje de programación C#


static void Main(string[] args)
{
// Acción : este programa calcula y muestra el sueldo neto de un trabajador
//declarar e inicializar variables
string nombre;
float sueldo, sueldo_neto;
int horasext;
int total_horasext;
//Leer datos
Console.Write("Ingrese el nombre del trabajador :");
nombre=Console.ReadLine();
Console.Write("Ingrese el sueldo :");
sueldo = float.Parse(Console.ReadLine());
Console.Write("Ingrese la cantidad de horas extras realizadas :");
horasext = int.Parse(Console.ReadLine());
//Calcular el sueldo neto
total_horasext = horasext*12 ;
sueldo_neto = sueldo+total_horasext;
//Escribir el sueldo neto
Console.WriteLine("La ohoras extras pagadas son : {0} ”, total_horasext);
Console.WriteLine("El sueldo del trabajador {0} es de: S./{1} ", nombre,sueldo_neto);
Console.ReadKey();
}

4. Implementar en código y adjuntar la fase 4 con evidencia de su funcionamiento

VI. Ejercicios propuestos

6.1. Elaborar un algoritmo que permita convertir un monto ingresado en soles a su equivalente en dólares.

6.2. Elaborar un algoritmo que permita hallar el área y perímetro de un cuadrado.


UNIVERSIDAD ANDINA DEL CUSCO
FACULTAD DE INGENIERÍA Y ARQUITECTURA
ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

V. BIBLIOGRAFÍA
1. Juan Carlos López García (2009). Algoritmos y programación para guía para docentes. 2da Edición. Colombia:
Editorial Educteca.
2. Grupo Liebre. (2000). Algorítmica y programación, Primera edición. Cusco.
3. Joyanes Aguilar, L. (2008). Fundamentos de Programación. 4ta Edición. Madrid: Editorial McGraw Hill.

VI. FICHA DE CALIFICACIÓN


Ficha de calificación de la guía N° 01
Estructura de control secuencial

1. Nombre del estudiante…………………………………………………………


Código…………………………………
2. Nombre del estudiante…………………………………………………………
Código…………………………………

Criterio de Elabora Elabora el Elabora Elabora el Presenta Puntaje


calificación correctamente el algoritmo correctamente el código en fecha obtenido
algoritmo parcialmente código parcialmente
Ejercicio 2, 0 0 3 1 1
ejercicio 3 08/03/21

Actividad 6.1. 4 2 3 1 1
08/03/21
Actividad 6.2. 4 2 3 1 1
08/03/21
Total

Firma del docente …………………………………………

También podría gustarte