Está en la página 1de 47

George Boole [bu l] (2 de noviembre de 1815 - 8 de diciembre de 1864) fue un matemtico y filsofo britnico.

Como inventor del lgebra de Boole, que marca los fundamentos de la aritmtica computacional moderna, Boole es considerado como uno de los fundadores del campo de las Ciencias de la Computacin. En 1854 public "An Investigation of the Laws of Thought" en el que desarrollaba un sistema de reglas que le permitan expresar, manipular y simplificar problemas lgicos y filosficos cuyos argumentos admiten dos estados (verdadero o falso) por procedimientos matemticos. Se podra decir que es el padre de las operaciones lgicas y gracias a su lgebra hoy en da es posible manipular operaciones lgicas.

Estructuracin de Algoritmos.
Objetivo
Que el estudiante aprenda el correcto uso de las distintas sentencias con sus respectivas notaciones y sintaxis que ofrece la teora algortmica para el desarrollo de problemas adems de mostrar de manera prctica como es el desarrollo de la misma aplicacin en Visual Basic.

En esta unidad Estructuracin de Algoritmos. Algoritmos de Estructura Secuencial. Algoritmos de Estructura Condicional. Algoritmos de Estructura Repetitiva

Fundamentos de programacin

Estructuracin 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 repeticin de ciertas lneas 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 trminos usados son aplicables a los programas algortmicos, de ah que siempre se tendr la siguiente estructura bsica para cualquier algoritmo a desarrollar: Salida de Informacin Proceso de Datos Captura de Datos Declaracin de Variables

I. Algoritmos de Estructura Secuencial.


Este tipo de algoritmos se caracteriza por que entre sus instrucciones no existen estructuras condicionales ni repetitivas, se desarrollan lnea a lnea hasta culminar con su ejecucin, grficamente se observara de la siguiente manera: Instruccin 1 Instruccin 2 Instruccin 3 Instruccin N

Pgina 50

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

A continuacin se desarrollaran una serie de problemas del tema en dos ambientes: estructurado(Algoritmos) y orientado a objetos(Visual Basic).

Ejercicio de aplicacin No. 1


Disear un Algoritmo que permita hallar el rea de un triangulo rectngulo si se sabe: rea_tringulo = (B * H) / 2 Donde B es base del triangulo y H es la altura.

Solucin:
1. Anlisis
i. Qu te piden que realices? Hallar el rea de un triangulo. ii. Qu datos necesito conocer? Segn la formula que se muestra debera de conocer la base y la altura.

2. Planteamiento Lgico.
El problema es de aplicacin directa solamente abra que tener en cuenta la formula para hallar el rea de un triangulo rectngulo, la cual es dato del problema.

3. Definicin de variables de entrada


Las variables que se usaran para la captura de la base y la altura son: B y H.

4. Definicin de variables de salida


Finalmente la variable en donde se muestra el rea del triangulo rectngulo es: AR

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin de variables B, H: entero AR: real Escribir(Ingrese el valor de la base:) Capturar(B) Escribir(Ingrese el valor de la altura:) Fundamentos de Programacin Pgina 51

Fundamentos de programacin
Capturar(H) AR = (B * H) / 2 Mostrar(El valor del rea del triangulo es:, AR) FIN

5.2 Diagrama de Flujo


INICIO Declaracin de variables B, H: entero AR: real

B, H AR = (B * H) / 2 AR
FIN

5.3 Diseo del Formulario


Observacin: Para el diseo y programacin de las aplicaciones de este libro, usaremos el Visual Basic en esta parte observaremos los siguientes objetos:

El formulario que es un contenedor de objetos, es la pantalla donde disearemos nuestros programas Label1 lo usaremos para los ttulos de los datos a usar y los resultados obtenidos TextBox1 captura los datos entrantes y mostrar resultados generados

Button1 es para procesar un programa

Pgina 52

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

La programacin orientada a objetos se caracteriza porque se estudian dos cosas:


DATOS + COMPORTAMIENTO

De este modo todo objeto que observamos posee dos divisiones marcadas:
PROPIEDADES + OPERACIONES

Las propiedades nos servirn para Disear y las operaciones para Programar. A continuacin observaremos como es el diseo del formulario

Ttulos para ingresar datos (ESCRIBIR)

Objetos para el ingreso de datos (CAPTURAR) Ejecucin del programa realizado Salida de informacin generada (MOSTRAR)

Botones para nuevo ingreso y salir

5.4 Codificacin 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

Declaracin de variables

Desarrollo del Proceso

Asignacin de valores a las variables Salida de informacin generada

Fundamentos de Programacin

Pgina 53

Fundamentos de programacin

Ejercicio de aplicacin No. 2


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 clculos, si se sabe que estos se obtienen de tres notas: nota de prcticas, nota de trabajo y examen parcial. Desarrolle el Algoritmo.

Solucin:
1. Anlisis.
i. Qu te piden que realices? Disear un programa para ayudar al profesor a calcular sus promedios. ii. Qu datos necesito conocer? Segn el texto, los promedios se obtienen a partir de tres notas: nota de prcticas, nota de trabajo y examen parcial.

2. Planteamiento Lgico.
Para la solucin 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 nmero de estas, ejemplo: Si tenemos 2 notas: promedio = (n1 + n2) / 2 Si tenemos 3 notas: promedio = (n1 + n2 + n3) / 3 ...

3. Definicin de variables de entrada.


Las variables a utilizar para cada nota son: NP para las notas de prcticas, NT para las notas de trabajo y EP para el examen parcial.

4. Definicin de variables de salida.


El promedio que se obtenga, se almacena en la variable PROM.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin 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 Pgina 54

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

Mostrar(El promedio obtenido es:, PROM) FIN

5.2 Diagrama de Flujo


INICIO Declaracin de variables NP, NT, EP: entero PROM: real

NP, NT, EP PROM = (NT + NP + EP) / 3 PROM


FIN

5.3 Diseo del Formulario

CAPTURAR ESCRIBIR Ejecucin del programa realizado

MOSTRAR

Fundamentos de Programacin

Pgina 55

Fundamentos de programacin
5.4 Codificacin del Programa
Private Sub Button1_Click Dim nt, np, ep As Integer Dim prom As Single nt = Val(TextBox1.Text) np = Val(TextBox2.Text) Desarrollo ep = Val(TextBox3.Text) del Proceso prom = (nt + np + ep) / 3 TextBox4.Text = prom End Sub Declaracin de variables

Asignacin de valores a las variables Salida de informacin generada

Ejercicio de aplicacin No. 3


Desarrollar un algoritmo que permita hallar el valor de X en la siguiente ecuacin: X = 3 + 5B 8C

Solucin:
1. Anlisis.
i. Qu te piden que realices? Hallar el valor de X en la ecuacin planteada. ii. Qu datos necesito conocer? Si se observa la ecuacin existen 2 variables cuyos valores no se conocen: B y C.

2. Planteamiento Lgico.
Este problema es de aplicacin directa solamente habr que tener en cuenta la ecuacin que se esta dando como dato.

3. Definicin de variables de entrada


Las variables para la captura de datos estarn representadas por las letras B y C.

4. Definicin de variables de salida


El valor final de la ecuacin se almacenar en la variable X.

5. Diseo de la Solucin.

Pgina 56

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.1 Pseudocdigo
INICIO Declaracin 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 ecuacin es:, X) FIN

5.2 Diagrama de Flujo


INICIO Declaracin de variables B, C, X: entero

B, C X= 3 + 5 * B 8 * C X
FIN

5.3 Diseo del Formulario

Fundamentos de Programacin

Pgina 57

Fundamentos de programacin
5.4 Codificacin 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

Ejercicio de aplicacin No. 4


Realizar un algoritmo que permita realizar lo siguiente: Se ingresa un nmero de 2 cifras de la forma ab y la salida final deber ser: ba (es decir la inversa del nmero ingresado): Ejemplo: 43------- 34 81------- 18

Solucin:
1. Anlisis.
i. Qu te piden que realices? Invertir un nmero de 2 cifras. ii. Qu datos necesito conocer? El nmero que se desea invertir.

2. Planteamiento Lgico.
Para invertir un nmero debemos tener en cuenta que en un primer instante se debe de descomponer el nmero (de 2 dgitos), para ello lo dividiremos entre 10, usaremos los operadores matemticos div y mod que nos van a permitir obtener el resto y el cociente entero; una vez que tenemos el nmero descompuesto lo volveremos a generar solo que transformando las unidades en decenas(multiplicar por 10) y sumando las centenas. Observe: sea 54 el nmero a invertir. DIV 4 * 10 + 5 = 45

MOD

Pgina 58

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

3. Definicin de variables de entrada.


La variable que se usar para la captura del nmero de 2 cifras ser NUM.

4. Definicin de variables de salida.


El nmero invertido se almacenar en la variable INV.

5. Diseo de la Solucin. 5.1 Pseudocdigo 5.2 Diagrama de Flujo


INICIO Declaracin de variables A, B, NUM, INV: entero

INICIO Declaracin de variables A, B, NUM, INV: entero Escribir(Ingrese el nmero de 2 cifras a invertir:) Capturar(NUM) A = NUM div 10 B = NUM mod 10 INV = B * 10 + A Mostrar(El nmero invertido es:, X) FIN

NUM A = NUM div 10 B = NUM mod 10 INV = B * 10 + A INV


FIN

5.3 Diseo del Formulario

5.4 Codificacin 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

Fundamentos de Programacin

Pgina 59

Fundamentos de programacin

Ejercicio de aplicacin No. 5


Se ingresa un nmero expresado en kilmetros por teclado, disee un algoritmo que realice las operaciones (conversiones) correspondientes para transformarlo en milmetros. Unidad 1 centmetro 1 metro 1 kilmetro Unidad_Equivalente 10 milmetros 100 centmetros 1000 metros

Solucin:
1. Anlisis.
i. Qu te piden que realices? Me piden transformar un nmero que se ingresa en kilmetros a milmetros. ii. Qu datos necesito conocer? El nmero que se desea convertir.

2. Planteamiento Lgico.
Para poder llevar un nmero 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 conversin, para ello nos proporcionan una tabla con los datos de equivalencias. Observe: voy convertir 10 kilmetros a milmetros.

El resultado sera entonces: 10 * 1000 * 100 * 10 = 10000000 Generalizando, la formula sera: N * 1000000

3. Definicin de variables de entrada.


El nmero a convertir en milmetros ser capturado en la variable KM.

4. Definicin de variables de salida.


El nmero convertido en milmetros se guardar en la variable ML.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin de variables KM, ML: entero Pgina 60

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

Escribir(Ingrese el nmero de kilmetros a transformar:) Capturar(KM) ML = KM * 1000000 Mostrar(El nmero expresado en milmetros es:, ML) FIN

5.2 Diagrama de Flujo


INICIO Declaracin de variables KM, ML: entero

KM ML = KM * 1000000 ML
FIN

5.3 Diseo del Formulario

5.4 Codificacin del Programa


Private Sub Button1_Click Dim km, ml As Long km = Val(TextBox1.Text) ml = km * 1000000 TextBox2.Text = ml End Sub

Fundamentos de Programacin

Pgina 61

Fundamentos de programacin

Ejercicio de aplicacin No. 6


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. Disee un algoritmo que nos permita calcular y visualizar cuanto le toca a cada hermano.

Solucin:
1. Anlisis.
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 Lgico.
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 nmeros, de la siguiente forma:

Por lo tanto 20% = 0.2 35% = 0.35 Las formulas seran: (la palabra de significa producto en matemticas) 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 grfico al tercer hermano le tocara el 45%.

Pgina 62

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

3. Definicin de variables de entrada.


La variable de entrada que representa a la herencia es H.

4. Definicin 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. Diseo de la Solucin. 5.1Pseudocdigo


INICIO Declaracin 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.2 Diagrama de Flujo


INICIO Declaracin de variables H: entero HR1, HR2, HR3: real

H HR1 = 0.2 * H HR2 = 0.35 * H HR3 = H (HR1 + HR2) HR1, HR2, HR3
FIN

5.3Diseo del Formulario

Fundamentos de Programacin

Pgina 63

Fundamentos de programacin
5.4Codificacin 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

Ejercicio de aplicacin No. 7


Dos hermanos comparten los siguientes gastos de la casa: el hermano mayor contribuye con el 40% de su sueldo para los gastos de alimentacin, 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. Disear un algoritmo que permita calcular y mostrar los gastos de los hermanos, adicionalmente deber observarse cuanto destinan en total al banco los dos hermanos.

Solucin:
1. Anlisis.
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 Lgico.
Teniendo en cuenta el planteamiento del problema anterior y del concepto de cmo 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 tambin 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 Pgina 64

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico 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. Definicin de variables de entrada.


Se requerirn dos variables, una para almacenar el sueldo del hermano mayor: SH1 y otra para el sueldo del hermano menor: SH2.

4. Definicin de variables de salida.


Las variables de salida son varias cada una de ellas segn al anlisis representar la solicitud del problema: ALM1(gasto de alimentacin 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. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin 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)

Fundamentos de Programacin

Pgina 65

Fundamentos de programacin
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


INICIO Declaracin de variables SH1, SH2: entero ALM1, ALQ1, BCO1, EST2, ALQ2, BCO2, TBCO: real 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

FIN

5.3 Diseo del Formulario

Pgina 66

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.4 Codificacin 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 alq2 bc02 tbco = = = = 0.35 * sh2 0.25 * sh2 sh2 - (est2 + alq2) bco1 + bc02 = = = = = = = alm1 alq1 bco1 est2 alq2 bc02 tbco

TextBox3.Text TextBox4.Text TextBox5.Text TextBox6.Text TextBox7.Text TextBox8.Text TextBox9.Text 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 tambin 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, SELECCIN CASO. La forma como se estructura una condicin se puede realizar de dos formas:

Condiciones Simples.
Son aquellas condiciones que utilizan operadores relacionales.

Expresin 1

Operador Relacional

Expresin 2

Fundamentos de Programacin

Pgina 67

Fundamentos de programacin
Ejemplos: - (A + 6) > (3 + P) - (40 * P) < 500 - (E > 20) - (3 + (6 + R) * 2) = 60

Condiciones Compuestas.
Son aquellas condiciones que estn compuestas por operadores relacionales y agrupados a su vez por medio de operadores lgicos.

Expresin 1

Operador Lgico

Expresin 2

Operador Lgico

Expresin 3

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 condicin, la cual se evala y en caso de ser verdadera se desarrollaran ciertas acciones en caso de no ser verdadera se desarrollar la parte falsa. Diagrama de Flujo

Condicin

Acciones _ B

Acciones _ A

Pgina 68

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

Pseudocdigo Si Condicin? entonces Acciones _ A Sino Acciones _ B Fin si

Ejercicio de aplicacin No. 1


Realizar un algoritmo que permita ingresar 2 nmeros, luego determinar si el primer nmero ingresado fue el mayor (mostrar un mensaje).

Solucin:
1. Anlisis.
i. Qu te piden que realices? Evaluar 2 nmeros para determinar si el primer nmero ingresado fue el mayor. ii. Qu datos necesito conocer? Los 2 nmeros.

2. Planteamiento Lgico.
La forma directa de poder saber si un nmero es mayor a otro es creando una condicin relacional. Ejemplo: A> B

3. Definicin de variables de entrada.


Se requerirn dos variables, N1 y N2 que representen a los nmeros que se evalan.

4. Definicin de variables de salida.


Para este problema no existirn variables de salida debido a que se desea mostrar solo mensajes.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin de variables N1, N2: entero Fundamentos de Programacin Pgina 69

Fundamentos de programacin
Escribir(Ingrese el primer nmero:) Capturar(N1) Escribir(Ingrese el segundo nmero:) Capturar(N2) Si (N1 > N2) entonces Mostrar(el primer nmero es mayor) Sino Mostrar(el primer nmero no es mayor) Fin_Si FIN

5.2 Diagrama de Flujo


INICIO Declaracin de variables N1, N2: entero N1, N2 F A>B el primer nmero no es mayor el primer nmero es mayor V

FIN

5.3 Diseo del Formulario

Pgina 70

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.4 Codificacin del Programa


Public Class Form7 Dim n1, n2 As Integer Las variables sern declaradas a nivel de formulario

Private Sub Button1_Click n1 = Val(TextBox1.Text) n2 = Val(TextBox2.Text) If n1 > n2 Then TextBox3.Text = "El primer nmero es mayor" Else TextBox3.Text = "El segundo nmero es mayor" End If End Sub End Class

Ejercicio de aplicacin No. 2


Disear 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.

Solucin:
1. Anlisis.
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 Lgico.
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. Definicin de variables de entrada.


Se requerirn dos variables, NT1 y NT2 que representen a las notas que se promediaran.

Fundamentos de Programacin

Pgina 71

Fundamentos de programacin
4. Definicin de variables de salida.
La variable PROM ser la que represente al promedio obtenido.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin 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.2 Diagrama de Flujo


INICIO Declaracin de variables NT1, NT2: entero PROM: real

NT1, NT2 PROM = (NT1 + NT2) / 2 F V PROM>10.5 Aprobado: , PROM

Desaprobado:, PROM

FIN

5.3 Diseo del Formulario

5.4 Codificacin del Programa


Public Class Form8 Dim nt1, nt2 As Integer Dim prom As Single Private Sub Button1_Click

Pgina 72

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico 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

Ejercicio de aplicacin No. 3


Se ingresa un nmero por teclado, determinar si este es par (mostrar un mensaje).

Solucin:
1. Anlisis.
i. Qu te piden que realices? Determinar si el nmero que se ingresa es par. ii. Qu datos necesito conocer? El nmero a evaluar.

2. Planteamiento Lgico.
Para poder saber si un nmero es par (mltiplo 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 nmeros evaluados son mltiplos de 2, devuelven un resto igual a cero, en general se dice que un nmero es mltiplo de otro si el resto de su dividirlo con el otro devuelve cero como resultado.

3. Definicin de variables de entrada.


La variable NUM representa el nmero a evaluar.

4. Definicin de variables de salida.


Para este problema no existirn variables de salida debido a que se desea mostrar solo mensajes.

Fundamentos de Programacin

Pgina 73

Fundamentos de programacin
5. Diseo de la Solucin. 5.1 Pseudocdigo
INICIO Declaracin de variables NUM: entero Escribir(Ingrese el nmero a evaluar:) Capturar(NUM) Si (NUM mod 2 = 0) entonces Mostrar(Es mltiplo de 2:, NUM) Sino Mostrar(No es mltiplo de 2:, NUM) Fin_Si FIN

5.2 Diagrama de Flujo


INICIO Declaracin de variables NUM: entero

NUM F NUM mod 2 = 0 No es mltiplo de 2:, NUM Es mltiplo de 2:, NUM V

FIN

5.3 Diseo del Formulario

Pgina 74

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.4 Codificacin 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 nmero: " + Str(num) + " es par" Else TextBox2.Text = "El nmero: " + Str(num) + " es impar" End If End Sub End Class

Ejercicio de aplicacin No. 4


Se ingresan dos nmeros por teclado, si la suma de ambos es mayor a 20 al primer nmero se le deber de incrementar en 10 y al segundo se le quitar 5 en caso contrario al primer nmero se le quitar 18 y al segundo se le aumentar 15, finalmente deber mostrar la suma los nuevos nmeros que se formaron. Disear el algoritmo correspondiente.

Solucin:
1. Anlisis.
i. Qu te piden que realices? Mostrar la suma de los nmeros pero depuse de desarrollar una serie de procesos. ii. Qu datos necesito conocer? Los nmeros a evaluar.

2. Planteamiento Lgico.
Para el desarrollo de este problema solamente se deber tener un orden lgico para asignar los valores correspondientes de acuerdo a la pregunta que se genera al inicio del problema.

3. Definicin de variables de entrada.


La variable N1 y N2 representarn a los nmeros que se ingresaran.

4. Definicin de variables de salida.


El resultado final se mostrar en la variable SUM.

5. Diseo de la Solucin.

Fundamentos de Programacin

Pgina 75

Fundamentos de programacin
5.1 Pseudocdigo
INICIO Declaracin de variables N1, N2, SUM: entero Escribir(Ingrese el primer nmero a evaluar:) Capturar(N1) Escribir(Ingrese el segundo nmero 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 nmero que se generan es:, SUM) FIN

5.2 Diagrama de Flujo


INICIO Declaracin de variables N1, N2, SUM: entero N1, N2

SUM = N1 + N2 F SUM > 20 N1 = N1 + 18 N2 = N2 15 N1 = N1 + 10 N2 = N2 5 V

SUM = N1 + N2 La suma de los nmero que se generan es:, SUM FIN

Pgina 76

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.3 Diseo del Formulario

5.4 Codificacin 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

Ejercicio de aplicacin No. 5


Se ingresan tres nmeros por teclado, realizar un algoritmo que permita hallar cual es el mayor de los tres nmeros que se ingresaron.

Solucin:
1. Anlisis.
i. Qu te piden que realices? Hallar el mayor de tres nmeros. ii. Qu datos necesito conocer? Conocer los tres nmeros a evaluar.

Fundamentos de Programacin

Pgina 77

Fundamentos de programacin
2. Planteamiento Lgico.
Para determinar el mayor de tres nmeros existen diversas formas, en la que observaremos, se tiene en cuenta la asignacin inicial de un valor inicial a una variable que al final representar al mayor nmero(que podr ser cualquiera de los nmeros ingresados), la cual despus ser evaluada paulatinamente con condiciones simples(sin formar bucles) con los nmeros restantes.

3. Definicin de variables de entrada.


Se requieren tres nmeros que estarn representados por: N1, N2 y N3.

4. Definicin de variables de salida.


Ser la variable MY en donde se observar el mayor de los tres nmeros.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin de variables N1, N2, N3, MY: entero Escribir(Ingrese el primer nmero a evaluar:) Capturar(N1) Escribir(Ingrese el segundo nmero a evaluar:) Capturar(N2) Escribir(Ingrese el tercer nmero 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 nmeros es:, MY) FIN

5.2 Diagrama de Flujo


INICIO

Declaracin de variables N1, N2, N3, MY: entero

N1, N2, N3

MY = N1 F MY<N2 V MY = N2

F MY<N3

V MY = N3

MY FIN

Pgina 78

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.3 Diseo del Formulario

5.4 Codificacin 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

Observacin_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
C1

C2

Accin 1

Accin 4

Accin 3

C3

Accin 2

Fundamentos de Programacin

Pgina 79

Fundamentos de programacin
Pseudocdigo
Si (C1) entonces Accin 1 ... Si (C3) entonces Accin 2 ... Fin_si Sino Si (C2) entonces Accin 3 ... Sino Accin 4 ... Fin_si Fin_si

Ejercicio de aplicacin No. 6


Disear un algoritmo que permita ingresar 3 notas, determinar el promedio de estas y luego mostrar un mensaje dependiendo el promedio obtenido, ver cuadro: Promedio 0 .. 7 8 .. 15 16 .. 20 Mensaje Debes mejorar Regular Bueno

Solucin:
1. Anlisis.
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 Lgico.
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. Pgina 80

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

Cuando se evalan rangos se debe tener en cuenta: Si se desea expresar si un nmero est dentro de un rango especificado se usar el operador lgico and. Si se desea expresar si un nmero est fuera de rango debe usar el operador lgico or.

3. Definicin de variables de entrada.


Se requieren tres notas que estarn representados por: NT1, NT2 y NT3.

4. Definicin de variables de salida.


Para el promedio la variable ser PR, el resto solo son mensajes.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin 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 psimo:, 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

Fundamentos de Programacin

Pgina 81

Fundamentos de programacin
5.2 Diagrama de Flujo
INICIO Declaracin de variables NT1, NT2, NT3: entero PR: real NT1, NT2, NT3 PR = (NT1+ NT2 + NT3) / 3

(PR>=0) and (PR<=7)

(PR>=0) and (PR<=7)

El promedio es psimo:, PR El promedio es regular:, PR

El promedio es bueno:, PR

MY FIN

5.3 Diseo del Formulario

Pgina 82

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.4 Codificacin 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

Ejercicio de aplicacin No. 7


En una empresa el sueldo bsico de los trabajadores es en base a la categora que tienen: Categora A B C Sueldo bsico 800 1000 700

Todos los trabajadores tienen una bonificacin de acuerdo a cantidad de hijos que tienen: N_Hijos 0 .. 3 4 .. 6 7 .. mas % Bonificacin 10% 12% 14%

Finalmente los trabajadores tienen un descuento de acuerdo a la AFP en que se encuentren inscritos: AFP UNION Fundamentos de Programacin % Descuento 14% Pgina 83

Fundamentos de programacin
HORIZONTE INTEGRA 16% 15%

Tanto los porcentajes de las bonificaciones como de los descuentos se obtienen del sueldo bsico; realice un algoritmo que calcule y muestre el sueldo Neto a pagar, si este se obtiene de: SN = Sbasico + Bonificaciones Descuentos

Solucin:
1. Anlisis.
i. Qu te piden que realices? Hallar el sueldo Neto, en base al bsico, bonificacin y descuento. ii. Qu datos necesito conocer? Se requiere conocer la categora ya que en base a esta se obtiene el sueldo Bsico; la bonificacin y descuento se obtienen del sueldo bsico.

2. Planteamiento Lgico.
Para obtener el sueldo bsico se requiere conocer la categora, el sueldo bsico que corresponde se obtiene segn el cuadro que se muestra en el enunciado. La bonificacin es de acuerdo al nmero de hijos(ver cuadro), este porcentaje se aplica al sueldo bsico. El descuento se obtiene de acuerdo a la AFP a que pertenece(ver cuadro), este porcentaje se aplica al sueldo bsico. Para finalizar deber aplicar la formula propuesta para hallar el sueldo neto.

3. Definicin de variables de entrada.


Se deber ingresar la categora(CT), el nmero de hijos(NH) y la AFP a la q ue est afiliado(AF).

4. Definicin de variables de salida.


El sueldo neto se mostrar en la variable SN.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin de variables CT: carcter AF: cadena NH, SB: entero Pgina 84

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

BON, DSC, SN: real Escribir(Ingrese la categora:) Capturar(CT) Escribir(Ingrese el nmero 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

Fundamentos de Programacin

Pgina 85

Fundamentos de programacin
5.2 Diagrama de Flujo
INICIO Declaracin de variables CT: carcter AF: cadena NH, SB: entero BON, DSC, SN: real

CT, NH, AF
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.16 * SB

DSC = 0.15 * SB

SN = SB + BON - DSC

SN
FIN

Pgina 86

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.3 Diseo del Formulario


Observacin: Para el diseo de este formulario usaremos nuevos objetos de modo que se cambie un poco el diseo y deber observar como vara la programacin, recuerde que debemos irnos adecuando a la programacin por operaciones: Permite agrupar botones Permite elegir una opcin de un grupo

Descripcin del proceso: Cuando usted escoja una categora en la caja de texto1, se mostrara el sueldo bsico, deber ingresar el nmero de hijos y finalmente escoger una AFP; cuando presione en el botn procesar se deber generar el sueldo neto.

5.4 Codificacin 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 bsico al objeto Text1 a medida que se escoge la categora

Se est calculando y asignando el descuento a la variable DSC a medida que se va escogiendo una AFP

Fundamentos de Programacin

Pgina 87

Fundamentos de programacin
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 Se est asignando los valores a sb = Val(TextBox1.Text) las variables respectivas 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 podrn haber observado la aplicacin de los objetos en algunos casos disminuye la codificacin, si observa el Pseudocdigo observar que para obtener el sueldo bsico y el descuento se desarrollan cierta codificacin (similar al que observamos en la ultima pantalla), pero utilizando los objetos option se evito ello, ya que la asignacin o calculo se realiza en sus eventos de manera directa.

Ejercicio de aplicacin No. 8


Se ingresa un nmero por teclado, si este es mayor a 20 entonces habr que sumarle 40, si el nuevo nmero 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 nmero que se ingreso al inicio se le deber quitar 10 para observar si el nuevo nmero que se genera es negativo, si esto se cumple se le adicionar 30. Finalmente se deber observar el nmero que se gener despus de todo el recorrido anterior. Desarrolle un algoritmo que permita observar lo descrito anteriormente.

Solucin:
1. Anlisis.
i. Qu te piden que realices? Evaluar un nmero que se ingresa por teclado. ii. Qu datos necesito conocer? Pgina 88

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

El nmero a evaluar.

2. Planteamiento Lgico.
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 solucin.

3. Definicin de variables de entrada.


El nmero a evaluar es el nico que se valor que se ingresa (NUM)

4. Definicin de variables de salida.


La variable de salida estar representada por la misma variable NUM.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin de variables NUM: entero Escribir(Ingrese el nmero 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 nmero es:, NUM) FIN

Fundamentos de Programacin

Pgina 89

Fundamentos de programacin
5.2 Diagrama de Flujo
INICIO Declaracin de variables NUM: entero

NUM

NUM>20

NUM = NUM 10

NUM = NUM + 40

NUM<0 NUM = NUM 50 NUM = NUM + 30

NUM>100

NUM = NUM * 2

NUM

FIN

5.3 Diseo del Formulario

Pgina 90

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

5.4 Codificacin 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

Observacin_2 :
La sentencia SI tiene una variante: SI-ENTONCES-SINOSI Esta variacin 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
C1

Accin 1 C2

C3 Accin 3

Accin 2

C4

Accin 4

Fundamentos de Programacin

Pgina 91

Fundamentos de programacin
Pseudocdigo Si (C1) entonces Accin 1 Si (C3) entonces Accin 2 Fin_si SinoSi (C2) entonces Accin 3 SinoSi (C4) entonces Accin 4 Fin_Si

Ejercicio de aplicacin No. 9


Cuando un cliente se acerca a comprar 1 kilo de arroz a una tienda se da cuenta de lo siguiente: el arroz se venda 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

Solucin:
1. Anlisis.
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? Segn la formula se requiere conocer el precio y la cantidad, tenga en cuenta que el precio esta en base a la presentacin por lo que en realidad se requiere conocer la presentacin en la que llevar el kilo de arroz.

2. Planteamiento Lgico.
Una vez que se ingrese la presentacin se podr obtener el precio del arroz, luego se deber ingresar la cantidad para finalmente hallar el total a pagar (precio * cantidad).

3. Definicin de variables de entrada.


Se deber ingresar la presentacin en la que quiere llevar el arroz (PRE) y la cantidad a comprar (CN). Pgina 92

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico Privado

4. Definicin de variables de salida.


La variable de salida que representa al total a pagar es TP.

5. Diseo de la Solucin. 5.1 Pseudocdigo


INICIO Declaracin de variables PRE: cadena CN, TP, PC: entero Escribir(Ingrese la presentacin de arroz a comprar:) Capturar(PRE) Escribir(Ingrese la cantidad de arroz a comprar:) Capturar(CN) Si (PRE = Bolsa) INICIO entonces PC = 10 SinoSi (PRE > Lata) Declaracin de variables entonces PRE: cadena CN, PC, TP: entero PC = 12 SinoSi (PRE > Vidrio) entonces CN, PRE PC = 16 Fin_Si TP = PC * CN PRE=Bolsa Escribir(El total a pagar es: TP) FIN

PC = 10

Diagrama de Flujo

PRE=Lata

PC = 12 PRE=Vidrio

PC = 16

TP = PC * CN
TP

FIN

Fundamentos de Programacin

Pgina 93

Fundamentos de programacin

Diseo del Formulario

Codificacin 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

Pgina 94

Estructuracin de algoritmos
Instituto de Educacin Superior Tecnolgico 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 aplicacin de objetos como el option disminuy la codificacin, ya que la asignacin o clculo se realiz en sus eventos de manera directa.

Fundamentos de Programacin

Pgina 95