George Boole [buː l] (2 de noviembre de 1815 - 8 de diciembre de 1864) fue un matemático y filósofo británico. Como inventor del álgebra de Boole, que marca los fundamentos de la aritmética computacional moderna, Boole es considerado como uno de los fundadores del campo de las Ciencias de la Computación. En 1854 publicó "An Investigation of the Laws of Thought" en el que desarrollaba un sistema de reglas que le permitían expresar, manipular y simplificar problemas lógicos y filosóficos cuyos argumentos admiten dos estados (verdadero o
falso) por procedimientos matemáticos. Se podría decir que es el padre de las operaciones lógicas y gracias a su álgebra hoy en día es posible manipular operaciones lógicas.
Estructuración de Algoritmos. Objetivo
Que el estudiante aprenda el correcto uso de las distintas sentencias con sus respectivas notaciones y sintaxis que ofrece la teoría algorítmica para el desarrollo de problemas además de mostrar de manera práctica como es el desarrollo de la misma aplicación en Visual Basic. En esta unidad Estructuración de Algoritmos. Algoritmos de Estructura Secuencial. Algoritmos de Estructura Condicional. Algoritmos de Estructura Repetitiva
Página 50
Fundamentos de programación
Estructuración de Algoritmos Los algoritmos se estructuran de diversas formas, en algunos casos simplemente su
desarrollo es consecutivo, a este tipo de algoritmos se denomina de estructura secuencial, en otros casos durante el desarrollo secuencial se generan preguntas a este tipo de algoritmos se denomina de estructura condicional y en otros casos generan bucles es decir repetición de ciertas líneas de programas, a estos algoritmos se denominan de estructura repetitiva.
Para poder estructurar un algoritmo de manera correcta se deberá de aplicar los conceptos aprendidos en la unidad anterior de modo que desarrollen algoritmos adecuados, los términos usados son aplicables a los programas algorítmicos, de ahí que siempre se tendrá la siguiente estructura básica para cualquier algoritmo a desarrollar:
I. Algoritmos de Estructura Secuencial.
Este tipo de algoritmos se caracteriza por que entre sus instrucciones no existen estructuras condicionales ni repetitivas, se desarrollan línea a línea hasta culminar con su ejecución, gráficamente se observaría de la siguiente manera:
Declaración de Variables
Captura de Datos
Proceso de Datos
Salida de Información
Instrucción 1
Instrucción 2
Instrucción 3
Instrucción N
Fundamentos de Programación Página 51
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
A continuación se desarrollaran una serie de problemas del tema en dos ambientes: estructurado(Algoritmos) y orientado a objetos(Visual Basic).
Diseñar un Algoritmo que permita hallar el área de un triangulo rectángulo si se sabe:
Área_triángulo = (B * H) / 2
Donde B es base del triangulo y H es la altura.
Solución:
1. Análisis i. ¿Qué te piden que realices?
Hallar el área de un triangulo. ii. ¿Qué datos necesito conocer?
Según la formula que se muestra debería de conocer la base y la altura.
2. Planteamiento Lógico. El problema es de aplicación directa solamente abra que tener en cuenta la formula para hallar el área de un triangulo rectángulo, la cual es dato del problema.
3. Definición de variables de entrada
Las variables que se usaran para la captura de la base y la altura son: B y H.
4. Definición de variables de salida Finalmente la variable en donde se muestra el área del triangulo rectángulo es: AR
5. Diseño de la Solución.
5.1 Pseudocódigo
INICIO Declaración de variables B, H: entero AR: real Escribir(„Ingrese el valor de la base:‟) Capturar(B) Escribir(„Ingrese el valor de la altura:‟)
Ejercicio de aplicación No. 1
Página 52
Fundamentos de programación
Capturar(H) AR = (B * H) / 2
Mostrar(„El valor del área del triangulo es:‟, AR) FIN
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
Observación: Para el diseño y programación de las aplicaciones de este libro, usaremos el Visual Basic en esta parte observaremos los siguientes objetos:
INICIO
FIN
B, H
AR = (B * H) / 2
AR
Declaración de variables B, H: entero
AR: real
El formulario que es un contenedor de objetos, es la pantalla donde diseñaremos nuestros programas
Label1 lo usaremos para los títulos de los datos a usar y los resultados
obtenidos
TextBox1 captura los datos entrantes y mostrar resultados generados
Button1 es para procesar un programa
Fundamentos de Programación Página 53
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
La programación orientada a objetos se caracteriza porque se estudian dos cosas:
De este modo todo objeto que observamos posee dos divisiones marcadas:
Las propiedades nos servirán para Diseñar y las operaciones para Programar.
A continuación observaremos como es el diseño del formulario
5.4 Codificación del Programa
Private Sub Button1_Click Dim b as integer
Dim h as integer Dim ar as single b = val(textbox1.text) h = val(textbox2.text)
ar = (b*h) / 2 textbox3.text = ar End Sub
DATOS + COMPORTAMIENTO
PROPIEDADES + OPERACIONES
Títulos para ingresar datos (ESCRIBIR)
Objetos para el ingreso de datos (CAPTURAR)
Ejecución del programa realizado
Salida de información
generada (MOSTRAR)
Botones para nuevo ingreso y salir
Declaración de variables
Asignación de valores a las
variables
Desarrollo del Proceso
Salida de información generada
Página 54
Fundamentos de programación
Un docente demora demasiado al momento de hallar sus promedios ya que hace uso de una calculadora, ha planteado que un alumno le desarrolle un programita que le permita hacer los cálculos, si se sabe que estos se obtienen de tres notas: nota de prácticas, nota de trabajo y examen parcial. Desarrolle el Algoritmo.
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Diseñar un programa para ayudar al profesor a calcular sus promedios. ii. ¿Qué datos necesito conocer?
Según el texto, los promedios se obtienen a partir de tres notas: nota de prácticas, nota de trabajo y examen parcial.
2. Planteamiento Lógico.
Para la solución del problema, se deberá tener en cuenta como es que se obtiene un promedio, en general los promedios se obtienen sumando las notas involucradas y dividiendo entre el número de estas, ejemplo: Si tenemos 2 notas: promedio = (n1 + n2) / 2 Si tenemos 3 notas: promedio = (n1 + n2 + n3) / 3 ...
3. Definición de variables de entrada.
Las variables a utilizar para cada nota son: NP para las notas de prácticas, NT para las notas de trabajo y EP para el examen parcial.
4. Definición de variables de salida.
El promedio que se obtenga, se almacena en la variable PROM.
5. Diseño de la Solución.
5.1 Pseudocódigo
INICIO Declaración de variables NP, NT, EP: entero PROM: real Escribir(„Ingrese la nota de practicas:‟) Capturar(NP) Escribir(„Ingrese la nota de trabajo:‟) Capturar(NT) Escribir(„Ingrese la nota del examen parcial:‟) Capturar(EP)
PROM = (NP + NT + EP) / 3
Ejercicio de aplicación No. 2
Fundamentos de Programación Página 55
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
Mostrar(„El promedio obtenido es:‟, PROM) FIN
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
INICIO
FIN
NP, NT, EP
PROM = (NT + NP + EP) / 3
PROM
Declaración de variables NP, NT, EP: entero
PROM: real
ESCRIBIR
CAPTURAR
Ejecución del programa realizado
MOSTRAR
Página 56
Fundamentos de programación
5.4 Codificación del Programa
Private Sub Button1_Click Dim nt, np, ep As Integer Dim prom As Single nt = Val(TextBox1.Text) np = Val(TextBox2.Text) ep = Val(TextBox3.Text) prom = (nt + np + ep) / 3 TextBox4.Text = prom End Sub
Desarrollar un algoritmo que permita hallar el valor de X en la siguiente ecuación: X = 3 + 5B – 8C
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Hallar el valor de X en la ecuación planteada. ii. ¿Qué datos necesito conocer?
Si se observa la ecuación existen 2 variables cuyos valores no se conocen: B y C.
2. Planteamiento Lógico.
Este problema es de aplicación directa solamente habrá que tener en cuenta la ecuación que se esta dando como dato.
3. Definición de variables de entrada
Las variables para la captura de datos estarán representadas por las letras B y C.
4. Definición de variables de salida El valor final de la ecuación se almacenará en la variable X.
5. Diseño de la Solución.
Declaración de variables
Asignación de valores a las
variables Desarrollo del Proceso
Salida de información generada
Ejercicio de aplicación No. 3
Fundamentos de Programación Página 57
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.1 Pseudocódigo
INICIO Declaración de variables B, C, X: entero Escribir(„Ingrese el valor de B:‟) Capturar(B) Escribir(„Ingrese el valor de C:‟) Capturar(C) X = 3 + 5 * B – 8 * C Mostrar(„El valor de X en la ecuación es:‟, X)
FIN
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
INICIO
FIN
B, C
X = 3 + 5 * B – 8 * C
X
Declaración de variables B, C, X: entero
Página 58
Fundamentos de programación
5.4 Codificación del Programa
Private Sub Button1_Click Dim b, c, x As Integer b = Val(TextBox1.Text) c = Val(TextBox2.Text) x = 3 + 5 * b - 8 * c TextBox3.Text = x End Sub
Realizar un algoritmo que permita realizar lo siguiente:
Se ingresa un número de 2 cifras de la forma ab y la salida final deberá ser: ba (es decir la inversa del número ingresado):
Ejemplo: 43------- 34 81------- 18
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Invertir un número de 2 cifras. ii. ¿Qué datos necesito conocer?
El número que se desea invertir.
2. Planteamiento Lógico. Para invertir un número debemos tener en cuenta que en un primer instante se debe de descomponer el número (de 2 dígitos), para ello lo dividiremos entre 10, usaremos los operadores matemáticos “div” y “mod” que nos van a permitir obtener el resto y el cociente entero; una vez que tenemos el número descompuesto lo volveremos a generar solo que transformando las unidades en decenas(multiplicar por 10) y sumando las centenas. Observe: sea 54 el número a invertir.
4 * 10 + 5 = 45
DIV MOD
Ejercicio de aplicación No. 4
Fundamentos de Programación Página 59
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
3. Definición de variables de entrada. La variable que se usará para la captura del número de 2 cifras será NUM.
4. Definición de variables de salida.
El número invertido se almacenará en la variable INV.
5. Diseño de la Solución.
5.1 Pseudocódigo 5.2 Diagrama de Flujo
INICIO Declaración de variables A, B, NUM, INV: entero Escribir(„Ingrese el número de 2 cifras a invertir:‟) Capturar(NUM) A = NUM div 10 B = NUM mod 10 INV = B * 10 + A Mostrar(„El número invertido es:‟, X) FIN
5.3 Diseño del Formulario
5.4 Codificación del Programa Private Sub Button1_Click( Dim num, a, b, inv As Byte num = Val(TextBox1.Text) a = num \ 10 b = num Mod 10 inv = b * 10 + a TextBox2.Text = inv End Sub
INICIO
FIN
NUM
A = NUM div 10 B = NUM mod 10 INV = B * 10 + A
INV
Declaración de variables A, B, NUM, INV: entero
Página 60
Fundamentos de programación
Se ingresa un número expresado en kilómetros por teclado, diseñe un algoritmo que realice las operaciones (conversiones) correspondientes para transformarlo en milímetros.
Unidad Unidad_Equivalente
1 centímetro 10 milímetros 1 metro 100 centímetros
1 kilómetro 1000 metros
Solución: 1. Análisis.
i. ¿Qué te piden que realices? Me piden transformar un número que se ingresa en kilómetros a milímetros.
ii. ¿Qué datos necesito conocer? El número que se desea convertir.
2. Planteamiento Lógico.
Para poder llevar un número de un sistema a otro, se deberá de utilizar las conversiones de sistemas (para el caso: unidades de longitud), de modo que se pueda encontrar una formula de conversión, para ello nos proporcionan una tabla con los datos de equivalencias. Observe: voy convertir 10 kilómetros a milímetros.
El resultado sería entonces: 10 * 1000 * 100 * 10 = 10000000 Generalizando, la formula sería: N * 1000000
3. Definición de variables de entrada. El número a convertir en milímetros será capturado en la variable KM.
4. Definición de variables de salida. El número convertido en milímetros se guardará en la variable ML.
5. Diseño de la Solución.
5.1 Pseudocódigo
INICIO Declaración de variables KM, ML: entero
Ejercicio de aplicación No. 5
Fundamentos de Programación Página 61
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
Escribir(„Ingrese el número de kilómetros a transformar:‟) Capturar(KM)
ML = KM * 1000000 Mostrar(„El número expresado en milímetros es:‟, ML)
FIN
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
5.4 Codificación del Programa
Private Sub Button1_Click
Dim km, ml As Long km = Val(TextBox1.Text) ml = km * 1000000 TextBox2.Text = ml
End Sub
INICIO
FIN
KM
ML = KM * 1000000
ML
Declaración de variables KM, ML: entero
Página 62
Fundamentos de programación
Una herencia se tiene que repartir entre 3 hermanos, al primero le tocará el 20% de la herencia, al segundo le tocará el 35% de la herencia y al tercero el resto. Diseñe un algoritmo que nos permita calcular y visualizar cuanto le toca a cada hermano.
Solución:
1. Análisis. i. ¿Qué te piden que realices?
El problema me pide que muestre cuanto le toco de la herencia a cada hermano.
ii. ¿Qué datos necesito conocer? Deberé conocer cual es la herencia ya que la forma como se reparte esta expresada en el problema.
2. Planteamiento Lógico.
Si sabemos cual es la herencia que se pretende repartir, solo tendremos que tener en cuenta la forma en que esta se reparte para poder plantear las formulas, para ello debemos saber lo siguiente:
Los porcentajes se deben expresar en números, de la siguiente forma:
Por lo tanto 20% = 0.2 35% = 0.35
Las formulas serían: (la palabra de significa producto en matemáticas)
Herencia del 1er hermano = 0.2 * Herencia Herencia del 2do hermano = 0.35 * Herencia
Herencia del 3er hermano = Herencia – (herencias anteriores) OBS: Para hallar el monto que le toca al ultimo hermano se puede realizar de la forma como se muestra en la formula o aplicando porcentajes, si se observa el gráfico al tercer hermano le tocaría el 45%.
Ejercicio de aplicación No. 6
Fundamentos de Programación Página 63
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
3. Definición de variables de entrada. La variable de entrada que representa a la herencia es H.
4. Definición de variables de salida.
Las variables en donde se muestra la parte que le toca a cada hermano son: el monto del primer hermano en HR1, el monto del segundo hermano en HR2 y el monto del tercer hermano en HR3.
5. Diseño de la Solución.
5.1 Pseudocódigo 5.2 Diagrama de Flujo
INICIO Declaración de variables H: entero HR1, HR2, HR3: real Escribir(„Ingrese el monto de la herencia:‟) Capturar(H)
HR1 = 0.2 * H HR2 = 0.35 * H HR3 = H – (HR1 + HR2)
Mostrar(„Al primer hermano le toca:‟, HR1) Mostrar(„Al segundo hermano le toca:‟, HR2) Mostrar(„Al tercer hermano le toca:‟, HR3)
FIN
5.3 Diseño del Formulario
INICIO
FIN
H
HR1 = 0.2 * H HR2 = 0.35 * H
HR3 = H – (HR1 + HR2)
HR1, HR2, HR3
Declaración de variables H: entero
HR1, HR2, HR3: real
Página 64
Fundamentos de programación
5.4 Codificación del Programa Private Sub Button1_Click
Dim h As Integer Dim hr1, hr2, hr3 As Single h = Val(TextBox1.Text) hr1 = 0.2 * h hr2 = 0.35 * h hr3 = h - (hr1 + hr2)
TextBox2.Text = hr1 TextBox3.Text = hr2 TextBox4.Text = hr3
End Sub
Dos hermanos comparten los siguientes gastos de la casa: el hermano mayor contribuye con el 40% de su sueldo para los gastos de alimentación, el 21% en pagar el alquiler del departamento y el resto lo destina al banco; el hermano menor tiene un egreso del 35% de su sueldo en sus estudios, el 25% en apoyar pagar el alquiler del departamento y lo restante lo destina al banco. Diseñar un algoritmo que permita calcular y mostrar los gastos de los hermanos, adicionalmente deberá observarse cuanto destinan en total al banco los dos hermanos.
Solución:
1. Análisis. o ¿Qué te piden que realices?
Mostrar los gastos de los dos hermanos pero adicionalmente quiere que muestre cuanto destinan los dos juntos al banco
o ¿Qué datos necesito conocer? Los datos que se deben conocer son los sueldos de cada hermano, ya que los gastos y destinos de sus sueldos se describen en porcentajes en el problema.
2. Planteamiento Lógico.
Teniendo en cuenta el planteamiento del problema anterior y del concepto de cómo se manejan los porcentajes, ahora diremos que el sueldo del hermano mayor representa al 100% y muy a parte el sueldo del hermano menor representa también el otro100%; con los datos proporcionados se procede a generar las formulas directamente: Para el hermano mayor:
Alimentos = 0.4 * Sueldo_HMY Alquiler = 0.21 * Sueldo_HMY
Ejercicio de aplicación No. 7
Fundamentos de Programación Página 65
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
Banco_HMY = Sueldo_HMY – (Alimentos + Alquiler) Para el hermano menor: Estudios = 0.35 * Sueldo_HMN Alquiler = 0.25 * Sueldo_HMN Banco_HMN = Sueldo_HMN – (Estudios + Alquiler) Para el banco en total: Total Banco = Banco_HMY + Banco_HMN
3. Definición de variables de entrada.
Se requerirán dos variables, una para almacenar el sueldo del hermano mayor: SH1 y otra para el sueldo del hermano menor: SH2.
4. Definición de variables de salida.
Las variables de salida son varias cada una de ellas según al análisis representará la solicitud del problema:
ALM1(gasto de alimentación del hermano mayor) ALQ1(gasto de alquiler del hermano mayor) BCO1(destino al banco del hermano mayor) EST2(gasto de estudios del hermano menor) ALQ2(gasto de alquiler del hermano menor) BCO2(destino al banco del hermano menor) TBCO(total destinado al banco por los 2 hermanos)
5. Diseño de la Solución.
5.1 Pseudocódigo
INICIO Declaración de variables SH1, SH2: entero ALM1, ALQ1, BCO1, EST2, ALQ2, BCO2, TBCO: real Escribir(„Ingrese el sueldo del hermano mayor:‟) Capturar(SH1) Escribir(„Ingrese el sueldo del hermano menor:‟) Capturar(SH2)
ALM1 = 0.4 * SH1 ALQ1 = 0.21 * SH1 BCO1= SH1 – (ALM1 + ALQ1) EST2 = 0.35 * SH2 ALQ2 = 0.25 * SH2 BCO2 = SH2 – (EST2 + ALQ2) TBCO = BCO1 + BCO2
Mostrar(„Monto destinado para alimentos, Hermano mayor:‟,ALM1) Mostrar(„Monto destinado al alquiler, Hermano mayor:‟, ALQ1) Mostrar(„Monto destinado al banco, Hermano mayor:‟, BCO1) Mostrar(„Monto destinado para estudios, Hermano menor:‟, EST2)
Página 66
Fundamentos de programación
Mostrar(„Monto destinado al alquiler, Hermano menor:‟, ALQ2) Mostrar(„Monto destinado al banco, Hermano menor:‟, BCO2) Mostrar(„Monto destinado en total al banco:‟, TBCO)
FIN
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
INICIO
FIN
SH1, SH2
ALM1 = 0.4 * SH1 ALQ1 = 0.21 * SH1
BCO1= SH1 – (ALM1 + ALQ1) EST2 = 0.35 * SH2 ALQ2 = 0.25 * SH2
BCO2 = SH2 – (EST2 + ALQ2) TBCO = BCO1 + BCO2
ALM1, ALQ1, BCO1, EST2,
ALQ2,BCO2, TBCO
Declaración de variables SH1, SH2: entero
ALM1, ALQ1, BCO1, EST2, ALQ2, BCO2, TBCO: real
Fundamentos de Programación Página 67
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.4 Codificación del Programa
Private Sub Button1_Click Dim sh1, sh2 As Integer Dim alm1, alq1, bco1, est2, alq2, bc02, tbco As Single sh1 = Val(TextBox1.Text) sh2 = Val(TextBox2.Text) alm1 = 0.4 * sh1 alq1 = 0.21 * sh1 bco1 = sh1 - (alm1 + alq1) est2 = 0.35 * sh2 alq2 = 0.25 * sh2 bc02 = sh2 - (est2 + alq2) tbco = bco1 + bc02 TextBox3.Text = alm1 TextBox4.Text = alq1 TextBox5.Text = bco1 TextBox6.Text = est2 TextBox7.Text = alq2 TextBox8.Text = bc02 TextBox9.Text = tbco
End Sub
II. Algoritmos de Estructura Condicional.
Este tipo de algoritmos se caracteriza por que entre sus instrucciones no solo se muestran estructuras secuenciales comunes sino también estructuras selectivas, es decir condicionales pero aun no se muestran estructuras repetitivas.
Las estructuras selectivas son tres: la sentencia SI –ENTONCES – SINO, SI –
ENTONCES – SINO – SI, SELECCIÓN – CASO. La forma como se estructura una condición se puede realizar de dos formas: Condiciones Simples.
Son aquellas condiciones que utilizan operadores relacionales.
Expresión 1 Expresión 2 Operador Relacional
Página 68
Fundamentos de programación
Ejemplos:
- (A + 6) > (3 + P)
- (40 * P) < 500
- (E > 20)
- (3 + (6 + R) * 2) = 60
Condiciones Compuestas.
Son aquellas condiciones que están compuestas por operadores relacionales y agrupados a su vez por medio de operadores lógicos.
Ejemplos:
- ((A > C) and (4 > 0)) or (a > 5)
- ((E * 100) > 40) and (((4 * E) < 500) or (8 = B))
- ((E > R) and (W = 6) ) or (5 = F)
- ((20 + T) > (20 + R)) or ((40 > W) and (R > 100))
1) Sentencia SI – ENTONCES – SINO Esta sentencia se caracteriza porque posee una condición, la cual se evalúa y
en caso de ser verdadera se desarrollaran ciertas acciones en caso de no ser verdadera se desarrollará la parte falsa. Diagrama de Flujo
Expresión 1 Expresión 2 Operador
Lógico Operador
Lógico Expresión 3
Condición
Acciones _ B Acciones _ A
V F
Fundamentos de Programación Página 69
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
Pseudocódigo Si ¿Condición? entonces Acciones _ A
Sino Acciones _ B Fin si
Realizar un algoritmo que permita ingresar 2 números, luego determinar si el primer número ingresado fue el mayor (mostrar un mensaje).
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Evaluar 2 números para determinar si el primer número ingresado fue el mayor.
ii. ¿Qué datos necesito conocer? Los 2 números.
2. Planteamiento Lógico.
La forma directa de poder saber si un número es mayor a otro es creando una condición relacional. Ejemplo: A > B
3. Definición de variables de entrada.
Se requerirán dos variables, N1 y N2 que representen a los números que se evalúan.
4. Definición de variables de salida. Para este problema no existirán variables de salida debido a que se desea mostrar solo mensajes.
5. Diseño de la Solución.
5.1 Pseudocódigo
INICIO Declaración de variables N1, N2: entero
Ejercicio de aplicación No. 1
Página 70
Fundamentos de programación
Escribir(„Ingrese el primer número:‟) Capturar(N1) Escribir(„Ingrese el segundo número:‟) Capturar(N2) Si (N1 > N2) entonces Mostrar(„el primer número es mayor‟) Sino Mostrar(„el primer número no es mayor‟) Fin_Si
FIN
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
el primer número es
mayor
el primer número no es mayor
INICIO
N1, N2
Declaración de variables N1, N2: entero
FIN
A>B
F V
Fundamentos de Programación Página 71
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.4 Codificación del Programa
Public Class Form7 Dim n1, n2 As Integer Private Sub Button1_Click n1 = Val(TextBox1.Text) n2 = Val(TextBox2.Text) If n1 > n2 Then TextBox3.Text = "El primer número es mayor" Else TextBox3.Text = "El segundo número es mayor" End If End Sub End Class
Diseñar un algoritmo que permita calcular y mostrar el promedio de 2 notas, adicionalmente deberá mostrar mediante un mensaje si el promedio es aprobatorio o desaprobatorio.
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Hallar el promedio de 2 notas y mostrar un mensaje: aprobado o desaprobado.
ii. ¿Qué datos necesito conocer? Las 2 notas que se promediaran.
2. Planteamiento Lógico. Inicialmente se deberá hallar el promedio de las notas ingresadas, luego deberá evaluar el promedio para saber si fue aprobatorio o desaprobatorio, debe tener en cuenta que se considera aprobado aquel promedio que es mayor a 10.5 (medio punto a favor del alumno).
3. Definición de variables de entrada.
Se requerirán dos variables, NT1 y NT2 que representen a las notas que se promediaran.
Las variables serán declaradas a nivel de formulario
Ejercicio de aplicación No. 2
Página 72
Fundamentos de programación
4. Definición de variables de salida. La variable PROM será la que represente al promedio obtenido.
5. Diseño de la Solución.
5.1 Pseudocódigo 5.2 Diagrama de Flujo
INICIO Declaración de variables NT1, NT2: entero PROM: real Escribir(„Ingrese la nota1:‟) Capturar(NT1) Escribir(„Ingrese la nota2:‟) Capturar(NT2) PROM = (NT1 + NT2) / 2 Si (PROM > 10.5) entonces Mostrar(„Aprobado:‟, PROM) Sino Mostrar(„Desaprobado:‟, PROM) Fin_Si FIN
5.3 Diseño del Formulario
5.4 Codificación del Programa
Public Class Form8 Dim nt1, nt2 As Integer Dim prom As Single
Private Sub Button1_Click
INICIO
NT1, NT2
Declaración de variables NT1, NT2: entero
PROM: real
PROM = (NT1 + NT2) / 2
FIN
„Aprobado: „, PROM
„Desaprobado:‟, PROM
F V
PROM>10.5
Fundamentos de Programación Página 73
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
nt1 = Val(TextBox1.Text) nt2 = Val(TextBox2.Text) prom = (nt1 + nt2 =/2 If prom > 10.5 Then
TextBox3.Text = "Aprobado: " + Str(prom) Else TextBox3.Text = "Desprobado: " + Str(prom)
End If End Sub
End Class
Se ingresa un número por teclado, determinar si este es par (mostrar un mensaje).
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Determinar si el número que se ingresa es par. ii. ¿Qué datos necesito conocer?
El número a evaluar.
2. Planteamiento Lógico. Para poder saber si un número es par (múltiplo de 2), al dividir a esta entre 2 el resto deberá ser cero, si recordamos clases anteriores, el resto se obtiene mediante el operador MOD. Ejemplo:
10 mod 2 = 0 26 mod 2 = 0 4 mod 2 = 0
Todos los números evaluados son múltiplos de 2, devuelven un resto igual a cero, en general se dice que un número es múltiplo de otro si el resto de su dividirlo con el otro devuelve cero como resultado.
3. Definición de variables de entrada.
La variable NUM representa el número a evaluar.
4. Definición de variables de salida. Para este problema no existirán variables de salida debido a que se desea mostrar solo mensajes.
Ejercicio de aplicación No. 3
Página 74
Fundamentos de programación
5. Diseño de la Solución. 5.1 Pseudocódigo
INICIO Declaración de variables NUM: entero Escribir(„Ingrese el número a evaluar:‟) Capturar(NUM) Si (NUM mod 2 = 0) entonces Mostrar(„Es múltiplo de 2:‟, NUM) Sino Mostrar(„No es múltiplo de 2:‟, NUM) Fin_Si
FIN
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
INICIO
NUM
Declaración de variables NUM: entero
F V NUM mod 2 = 0
„Es múltiplo de 2:‟, NUM
„No es múltiplo de 2:‟, NUM
FIN
Fundamentos de Programación Página 75
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.4 Codificación del Programa
Public Class Form9 Dim num As Integer Private Sub Button1_Click num = Val(TextBox1.Text) If num Mod 2 = 0 Then TextBox2.Text = "El número: " + Str(num) + " es par" Else TextBox2.Text = "El número: " + Str(num) + " es impar" End If End Sub End Class
Se ingresan dos números por teclado, si la suma de ambos es mayor a 20 al primer número se le deberá de incrementar en 10 y al segundo se le quitará 5 en caso contrario al primer número se le quitará 18 y al segundo se le aumentará 15, finalmente deberá mostrar la suma los nuevos números que se formaron. Diseñar el algoritmo correspondiente.
Solución: 1. Análisis.
i. ¿Qué te piden que realices? Mostrar la suma de los números pero depuse de desarrollar una serie de procesos.
ii. ¿Qué datos necesito conocer? Los números a evaluar.
2. Planteamiento Lógico. Para el desarrollo de este problema solamente se deberá tener un orden lógico para asignar los valores correspondientes de acuerdo a la pregunta que se genera al inicio del problema.
3. Definición de variables de entrada.
La variable N1 y N2 representarán a los números que se ingresaran.
4. Definición de variables de salida. El resultado final se mostrará en la variable SUM.
5. Diseño de la Solución.
Ejercicio de aplicación No. 4
Página 76
Fundamentos de programación
5.1 Pseudocódigo INICIO Declaración de variables N1, N2, SUM: entero Escribir(„Ingrese el primer número a evaluar:‟) Capturar(N1) Escribir(„Ingrese el segundo número a evaluar:‟) Capturar(N2) SUM = N1 + N2 Si (SUM > 20) entonces
N1 = N1 + 10 N2= N2 – 5
Sino N1 = N1 – 18 N2= N2 + 15
Fin_Si SUM = N1 + N2 Mostrar(„La suma de los número que se generan es:‟, SUM)
FIN
5.2 Diagrama de Flujo
INICIO
N1, N2
Declaración de variables N1, N2, SUM: entero
F V SUM > 20
La suma de los número que se
generan es:‟, SUM
FIN
SUM = N1 + N2
N1 = N1 + 18 N2 = N2 – 15
N1 = N1 + 10 N2 = N2 – 5
SUM = N1 + N2
Fundamentos de Programación Página 77
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.3 Diseño del Formulario
5.4 Codificación del Programa
Public Class Form10 Dim n1, n2, sum As Integer Private Sub Button1_Click
n1 = Val(TextBox1.Text) n2 = Val(TextBox2.Text)
sum = n1 + n2 If sum > 20 Then
n1 = n1 + 10 n2 = n2 - 5 Else n1 = n1 + 18 n2 = n2 + 15 End If sum = n1 + n2 TextBox3.Text = sum End Sub End Class
Se ingresan tres números por teclado, realizar un algoritmo que permita hallar cual es el mayor de los tres números que se ingresaron.
Solución: 1. Análisis.
i. ¿Qué te piden que realices? Hallar el mayor de tres números.
ii. ¿Qué datos necesito conocer? Conocer los tres números a evaluar.
Ejercicio de aplicación No. 5
Página 78
Fundamentos de programación
2. Planteamiento Lógico. Para determinar el mayor de tres números existen diversas formas, en la que observaremos, se tiene en cuenta la asignación inicial de un valor inicial a una variable que al final representará al mayor número(que podrá ser cualquiera de los números ingresados), la cual después será evaluada paulatinamente con condiciones simples(sin formar bucles) con los números restantes.
3. Definición de variables de entrada.
Se requieren tres números que estarán representados por: N1, N2 y N3.
4. Definición de variables de salida. Será la variable MY en donde se observará el mayor de los tres números.
5. Diseño de la Solución.
5.1 Pseudocódigo 5.2 Diagrama de Flujo INICIO Declaración de variables N1, N2, N3, MY: entero Escribir(‘Ingrese el primer número a evaluar:’) Capturar(N1) Escribir(‘Ingrese el segundo número a evaluar:’) Capturar(N2) Escribir(‘Ingrese el tercer número a evaluar:’) Capturar(N3) MY = N1 Si (MY < N2) entonces MY = N2 Fin_Si Si (MY < N3) entonces MY = N3 Fin_Si Mostrar(‘El mayor de los tres números es:’, MY) FIN
F V
INICIO
N1, N2, N3
Declaración de variables N1, N2, N3, MY: entero
MY = N1
MY = N2
F V
MY = N3
MY<N2
MY<N3
MY
FIN
Fundamentos de Programación Página 79
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.3 Diseño del Formulario
5.4 Codificación del Programa
Public Class Form11 Dim n1, n2, n3, ny As Integer Private Sub Button1_Click n1 = Val(TextBox1.Text) n2 = Val(TextBox2.Text) n3 = Val(TextBox3.Text) ny = n1 If ny < n2 Then ny = n2 End If If ny < n3 Then ny = n3 End If TextBox4.Text = ny End Sub End Class
Observación_1: La sentencia SI, puede agruparse para ciertos casos de condicionales (condicionales compuestas), a estas agrupaciones que puede presentar la sentencia Si se las denomina “Sentencia SI Anidada”, y se expresa de la siguiente forma: Diagrama de Flujo
C3
C1
Acción 1
Acción 2
Acción 3 Acción 4
C2
Página 80
Fundamentos de programación
Pseudocódigo
Si (C1) entonces Acción 1 ... Si (C3) entonces Acción 2 ... Fin_si Sino Si (C2) entonces Acción 3 ... Sino Acción 4 ... Fin_si Fin_si
Diseñar un algoritmo que permita ingresar 3 notas, determinar el promedio de estas y luego mostrar un mensaje dependiendo el promedio obtenido, ver cuadro:
Promedio Mensaje
0 .. 7 Debes mejorar 8 .. 15 Regular 16 .. 20 Bueno
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Hallar el promedio de notas y mostrar un mensaje de acuerdo a cuadro.
ii. ¿Qué datos necesito conocer? Conocer las tres notas.
2. Planteamiento Lógico.
Inicialmente deberá de calcular el promedio de las notas ingresadas, luego haciendo uso de sentencias condicionales anidadas, deberá evaluar el promedio e ir mostrando los mensajes.
Ejercicio de aplicación No. 6
Fundamentos de Programación Página 81
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
Cuando se evalúan rangos se debe tener en cuenta:
Si se desea expresar si un número está dentro de un rango especificado se usará el operador lógico and.
Si se desea expresar si un número está fuera de rango debe usar el operador lógico or.
3. Definición de variables de entrada.
Se requieren tres notas que estarán representados por: NT1, NT2 y NT3.
4. Definición de variables de salida. Para el promedio la variable será PR, el resto solo son mensajes.
5. Diseño de la Solución.
5.1 Pseudocódigo
INICIO
Declaración de variables
NT1, NT2, NT3: entero
PR: real
Escribir(„Ingrese la primera nota:‟)
Capturar(NT1)
Escribir(„Ingrese la segunda nota:‟)
Capturar(NT2)
Escribir(„Ingrese la tercera nota:‟)
Capturar(NT3)
PR = (NT1 + NT2 + NT3) / 3
Si (PR >= 0) and (PR <= 7) entonces
Mostrar(„El promedio es pésimo:‟, PR)
Sino
Si (PR >= 8) and (PR <= 15) entonces
Mostrar(„El promedio es regular:‟, PR)
Sino
Mostrar(„El promedio es bueno:‟, PR)
Fin_Si
Fin_Si
FIN
Página 82
Fundamentos de programación
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
INICIO
NT1, NT2, NT3
Declaración de variables NT1, NT2, NT3: entero
PR: real
PR = (NT1+ NT2 + NT3) / 3
(PR>=0) and (PR<=7)
(PR>=0) and (PR<=7)
„El promedio es bueno:‟, PR
„El promedio es regular:‟, PR
„El promedio es pésimo:‟, PR
MY
FIN
Fundamentos de Programación Página 83
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.4 Codificación del Programa Public Class Form12 Dim nt1, nt2, nt3 As Integer Dim pr As Single Private Sub Button1_Click nt1 = Val(TextBox1.Text) nt2 = Val(TextBox2.Text) nt3 = Val(TextBox3.Text) pr = (nt1 + nt2 + nt3) / 3 If pr > 0 And pr < 7 Then TextBox4.Text = "Debes mejorar" Else If pr >= 8 And pr <= 15 Then TextBox4.Text = "Regular" Else TextBox4.Text = "Bueno" End If End If End Sub End Class
En una empresa el sueldo básico de los trabajadores es en base a la categoría que tienen:
Categoría Sueldo básico
A 800 B 1000 C 700
Todos los trabajadores tienen una bonificación de acuerdo a cantidad de hijos que tienen:
N_Hijos % Bonificación
0 .. 3 10% 4 .. 6 12%
7 .. mas 14%
Finalmente los trabajadores tienen un descuento de acuerdo a la AFP en que se encuentren inscritos:
AFP % Descuento
UNION 14%
Ejercicio de aplicación No. 7
Página 84
Fundamentos de programación
HORIZONTE 16% INTEGRA 15%
Tanto los porcentajes de las bonificaciones como de los descuentos se obtienen del sueldo básico; realice un algoritmo que calcule y muestre el sueldo Neto a pagar, si este se obtiene de:
SN = Sbasico + Bonificaciones – Descuentos
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Hallar el sueldo Neto, en base al básico, bonificación y descuento.
ii. ¿Qué datos necesito conocer? Se requiere conocer la categoría ya que en base a esta se obtiene el sueldo Básico; la bonificación y descuento se obtienen del sueldo básico.
2. Planteamiento Lógico.
Para obtener el sueldo básico se requiere conocer la categoría, el sueldo básico que corresponde se obtiene según el cuadro que se muestra en el enunciado. La bonificación es de acuerdo al número de hijos(ver cuadro), este porcentaje se aplica al sueldo básico. El descuento se obtiene de acuerdo a la AFP a que pertenece(ver cuadro), este porcentaje se aplica al sueldo básico. Para finalizar deberá aplicar la formula propuesta para hallar el sueldo neto.
3. Definición de variables de entrada. Se deberá ingresar la categoría(CT), el número de hijos(NH) y la AFP a la q ue está afiliado(AF).
4. Definición de variables de salida. El sueldo neto se mostrará en la variable SN.
5. Diseño de la Solución.
5.1 Pseudocódigo
INICIO Declaración de variables CT: carácter AF: cadena NH, SB: entero
Fundamentos de Programación Página 85
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
BON, DSC, SN: real Escribir(„Ingrese la categoría:‟) Capturar(CT) Escribir(„Ingrese el número de hijos:‟) Capturar(NH) Escribir(„Ingrese la AFP:‟) Capturar(AF) Si (CT = „A‟) entonces
SB = 800 Sino
Si (CT = „B‟) entonces SB = 1000
Sino SB = 700
Fin_Si Fin_Si Si (NH >= 0) and (NH <= 3) entonces
BON = 0.1 * SB Sino
Si (NH >= 4) and (NH <= 6) entonces BON = 0.12 * SB
Sino BON = 0.14 * SB
Fin_Si Fin_Si
Si (AF = „UNION‟) entonces DSC = 0.14 * SB
Sino Si (AF = „HORIZONTE‟) entonces
DSC = 0.16 * SB Sino
DSC = 0.15 * SB Fin_Si
Fin_Si SN = SB + BON – DSC Mostrar(„El sueldo neto es:‟, SN)
FIN
Página 86
Fundamentos de programación
5.2 Diagrama de Flujo
INICIO
CT, NH, AF
Declaración de variables CT: carácter AF: cadena
NH, SB: entero BON, DSC, SN: real
CT=„A‟
CT=„B‟ SB = 800
SB = 700 SB = 1000
x
(NH>=0) and (PR<=3)
(NH>=4) and (PR<=6) BON = 0.1 * SB
BON = 0.14 * SB BON = 0.12 * SB
AF= „UNION‟
AF= „HORIZONTE‟ DSC = 0.14 * SB
DSC = 0.15 * SB DSC = 0.16 * SB
SN = SB + BON - DSC
SN
FIN
Fundamentos de Programación Página 87
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.3 Diseño del Formulario
Observación: Para el diseño de este formulario usaremos nuevos objetos de modo que se cambie un poco el diseño y deberá observar como varía la programación, recuerde que debemos irnos adecuando a la programación por operaciones:
Permite agrupar botones
Permite elegir una opción de un grupo
Descripción del proceso: Cuando usted escoja una categoría en la caja de texto1, se mostrara el sueldo básico, deberá ingresar el número de hijos y finalmente escoger una AFP; cuando presione en el botón procesar se deberá generar el sueldo neto.
5.4 Codificación del Programa
Public Class Form13 Dim nh As Byte Dim sb As Integer Dim bon, dsc, sn As Single Private Sub RadioButton1_Click TextBox1.Text = 800 End Sub Private Sub RadioButton2_Click TextBox1.Text = 1000 End Sub Private Sub RadioButton3_Click TextBox1.Text = 700 End Sub Private Sub RadioButton4_Click dsc = 0.14 * Val(TextBox1.Text) End Sub
Se está asignando de manera inmediata el sueldo básico al objeto Text1 a medida que se escoge la categoría
Se está calculando y asignando el descuento a la variable DSC a medida que se va escogiendo una AFP
Página 88
Fundamentos de programación
Private Sub RadioButton5_Click dsc = 0.16 * Val(TextBox1.Text) End Sub Private Sub RadioButton6_Click dsc = 0.15 * Val(TextBox1.Text) End Sub Private Sub Button1_Click sb = Val(TextBox1.Text) nh = Val(TextBox2.Text) If nh >= 0 And nh <= 3 Then bon = 0.1 * sb Else If nh >= 4 And nh <= 6 Then bon = 0.12 * sb Else bon = 0.14 * sb End If End If sn = sb + bon - dsc TextBox3.Text = sn End Sub
End Class Como podrán haber observado la aplicación de los objetos en algunos casos disminuye la codificación, si observa el Pseudocódigo observará que para obtener el sueldo básico y el descuento se desarrollan cierta codificación (similar al que observamos en la ultima pantalla), pero utilizando los objetos “option” se evito ello, ya que la asignación o calculo se realiza en sus eventos de manera directa.
Se ingresa un número por teclado, si este es mayor a 20 entonces habrá que sumarle 40, si el nuevo número generado resulta mayor a 100 entonces se le multiplicará por 2 en caso contrario se le quitará 50; en caso de que no haya resultado mayor a 20 el número que se ingreso al inicio se le deberá quitar 10 para observar si el nuevo número que se genera es negativo, si esto se cumple se le adicionará 30. Finalmente se deberá observar el número que se generó después de todo el recorrido anterior. Desarrolle un algoritmo que permita observar lo descrito anteriormente.
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Evaluar un número que se ingresa por teclado. ii. ¿Qué datos necesito conocer?
Se está asignando los valores a las variables respectivas
Ejercicio de aplicación No. 8
Fundamentos de Programación Página 89
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
El número a evaluar.
2. Planteamiento Lógico. El desarrollo del problema planteado simplemente es de seguimiento, deberá de tener un orden de desarrollo y realizar las condiciones así como los procesos correspondientes a medida que se avanza con su solución.
3. Definición de variables de entrada.
El número a evaluar es el único que se valor que se ingresa (NUM)
4. Definición de variables de salida. La variable de salida estará representada por la misma variable NUM.
5. Diseño de la Solución.
5.1 Pseudocódigo
INICIO Declaración de variables NUM: entero Escribir(„Ingrese el número a evaluar:‟) Capturar(NUM)
Si (NUM > 20) entonces NUM = NUM + 40 Si (NUM > 100) entonces NUM = NUM * 2 Sino NUM = NUM – 50 Fin_Si
Sino NUM = NUM – 10
Si (NUM < 0) entonces NUM = NUM + 30
Fin_Si Fin_Si
Mostrar(„El valor final del número es:‟, NUM) FIN
Página 90
Fundamentos de programación
5.2 Diagrama de Flujo
5.3 Diseño del Formulario
INICIO
NUM
Declaración de variables NUM: entero
NUM>20
NUM = NUM – 10 NUM = NUM + 40
NUM>100
NUM = NUM – 50 NUM = NUM * 2
NUM<0
NUM = NUM + 30
NUM
FIN
Fundamentos de Programación Página 91
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
5.4 Codificación del Programa
Public Class Form14 Dim num As Integer Private Sub Button1_Click num = Val(TextBox1.Text) If num > 20 Then num = num + 40 If num > 100 Then num = num * 2 Else num = num - 50 End If Else num = num - 10 If num < 0 Then num = num + 30 End If End If TextBox2.Text = num End Sub End Class
Observación_2 : La sentencia SI tiene una variante: SI-ENTONCES-SINOSI Esta variación se caracteriza porque por el lado falso de la sentencia SI, no se llevan acabo operaciones sino que se genera una pregunta inmediatamente ocurrido el lado falso, la salida final ya sea que existan varias sentencias SI-ENTONCES-SINOSI es solo un FIN_SI. Diagrama de Flujo
C3
C1
Acción 1
Acción 3
C2
C4
Acción 4
Acción 2
Página 92
Fundamentos de programación
Pseudocódigo
Si (C1) entonces Acción 1 Si (C3) entonces Acción 2 Fin_si SinoSi (C2) entonces Acción 3 SinoSi (C4) entonces
Acción 4 Fin_Si
Cuando un cliente se acerca a comprar 1 kilo de arroz a una tienda se da cuenta de lo siguiente: el arroz se vendía en tres presentaciones: bolsa, lata y vidrio. El kilo de arroz en bolsa cuesta 10 soles, en lata cuesta 12 soles y el vidrio cuesta 16 soles. Desarrolle un algoritmo que permita calcular y mostrar cuanto pagará el cliente si se sabe que:
Total a pagar = Precio * Cantidad
Solución:
1. Análisis. i. ¿Qué te piden que realices?
Calcular el total a pagar por el cliente que comprará un kilo de arroz. ii. ¿Qué datos necesito conocer?
Según la formula se requiere conocer el precio y la cantidad, tenga en cuenta que el precio esta en base a la presentación por lo que en realidad se requiere conocer la presentación en la que llevará el kilo de arroz.
2. Planteamiento Lógico. Una vez que se ingrese la presentación se podrá obtener el precio del arroz, luego se deberá ingresar la cantidad para finalmente hallar el total a pagar (precio * cantidad).
3. Definición de variables de entrada. Se deberá ingresar la presentación en la que quiere llevar el arroz (PRE) y la cantidad a comprar (CN).
Ejercicio de aplicación No. 9
Fundamentos de Programación Página 93
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
4. Definición de variables de salida. La variable de salida que representa al total a pagar es TP.
5. Diseño de la Solución. 5.1 Pseudocódigo
INICIO Declaración de variables PRE: cadena CN, TP, PC: entero Escribir(„Ingrese la presentación de arroz a comprar:‟) Capturar(PRE) Escribir(„Ingrese la cantidad de arroz a comprar:‟) Capturar(CN) Si (PRE = „Bolsa‟)
entonces PC = 10 SinoSi (PRE > „Lata‟)
entonces PC = 12 SinoSi (PRE > „Vidrio‟)
entonces PC = 16 Fin_Si TP = PC * CN Escribir(„El total a pagar
es:‟ TP) FIN
Diagrama de Flujo
INICIO
CN, PRE
Declaración de variables PRE: cadena
CN, PC, TP: entero
TP
FIN
PRE=„Vidrio‟
TP = PC * CN
PRE=„Bolsa‟
PRE=„Lata‟
PC = 10
PC = 12
PC = 16
Página 94
Fundamentos de programación
Diseño del Formulario
Codificación del Programa
Public Class Form15 Dim pc, cn, tp As Integer Private Sub RadioButton1_Click pc = 10 End Sub Private Sub RadioButton2_Click pc = 12
Fundamentos de Programación Página 95
Estructuración de algoritmos
Instituto de Educación Superior Tecnológico Privado
End Sub Private Sub RadioButton3_Click pc = 16 End Sub Private Sub Button1_Click cn = Val(TextBox1.Text) tp = pc * cn TextBox2.Text = tp End Sub End Class
Nuevamente observamos que la aplicación de objetos como el “option” disminuyó la codificación, ya que la asignación o cálculo se realizó en sus eventos de manera directa.
Top Related