0% encontró este documento útil (0 votos)
78 vistas51 páginas

Pactica Informatica Nro2

El documento presenta 6 ejercicios de programación con estructuras condicionales en Visual Basic. Cada ejercicio describe un problema, su análisis, diseño y código fuente para resolverlo.

Cargado por

ROLFRED Bolivia
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
78 vistas51 páginas

Pactica Informatica Nro2

El documento presenta 6 ejercicios de programación con estructuras condicionales en Visual Basic. Cada ejercicio describe un problema, su análisis, diseño y código fuente para resolverlo.

Cargado por

ROLFRED Bolivia
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSITARIO : ROLANDO FREDDY QUISPE LLANQUE

CARRERA : CONTADURIA PÚBLICA

MATERIA : INFORMÁTICA

LICENCIADA : JULIE CARLA AGUIRRE MONTALVO

EJERCICIOS DE ESTRUCTURAS CONDICIONALES

1) Dado un número mayor a 100 convertir de centímetros a metros, caso contrario convertir a milímetros.

Ejercicio 1 ANALISIS
VARIABLES PROCESO SALIDA
N mm M Leer N mm m
5 0 0 SI N>100 50 milimetros 1,5 metros
150 FALSO VERDAD
mm<- N*10 m<- N/100
mm<- 5*10 m<- 150/100
mm<- 50 m<-1,50

DISEÑO
CODIGO FUENTE VISUAL BASIC

Private Sub btnCalcular1_Click(sender As Object, e As EventArgs) Handles btnCalcular1.Click


Dim N, mm As Integer
Dim m As Single
N = Val(txtNum.Text)
If txtNum.Text = "" Then
MsgBox("Porfavor ingrese un número", 64, "Multiplo de 3")
txtNum.Focus()
Else
If N > 100 Then
m = N / 100
lblResultado.Text = "Los " & N & " Centímetros es equivalente a: " & m & " Metros"
Else
mm = N * 10
lblResultado.Text = "Los " & N & " Centímetros es equivalente a: " & mm & " Milímetros"

End If
End If
End Sub

Private Sub btnLimpiar_Click(sender As Object, e As EventArgs) Handles btnLimpiar.Click


txtNum.Text = ""
txtNum.Focus()
lblResultado.Text = "Resultado"
End Sub

PRUEBA DE ESCRITORIO
2) Dado un número si es múltiplo de tres desplegar el último dígito caso contrario describir un mensaje “NO ES MÚLTIPLO DE 3”.

Ejercicio 2 ANALISIS
ENTRADA PROCESO SALIDA
N Si N Mod 3 = 0 UD
9 FALSO VERDADERO 9
18 "No es Multiplo UD<- N Mod 10 8
5 de 3" UD<- 9 Mod 10

DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnCalc_Click(sender As Object, e As EventArgs) Handles btnCalc.Click


Dim N, UD As Integer
N = Val(txtNumero.Text)
If txtNumero.Text = "" Then
MsgBox("Porfavor ingrese un número", 64, "Multiplo de 3")
txtNumero.Focus()
Else
If N Mod 3 = 0 Then
UD = N Mod 10
lblRes.Text = "El último Digito del Número ingresado es: " & UD
Else
MsgBox("El número ingresado no es Multiplo de 3", 64, "Multiplo de 3")
End If
End If
End Sub

Private Sub btnLimp_Click(sender As Object, e As EventArgs) Handles btnLimp.Click


txtNumero.Text = ""
txtNumero.Focus()
lblRes.Text = "Resultado"
End Sub

PRUEBA DE ESCRITORIO

3) Hacer un programa que lea 2 números y deducir si están en orden creciente o decreciente

Ejercicio 3 ANALISIS
ENTRADA PROCESO SALIDA
Num1 Num2 Si Num1 > Num2 "DECRECIENTE"
5 2 FALSO VERDADERO "CRECIENTE"
4 8 "CRECIENTE" "DECRECIENTE"
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnDeducir_Click(sender As Object, e As EventArgs) Handles btnDeducir.Click


Dim Num1, Num2 As Integer
If txtN1.Text = "" Then
MsgBox("Porfavor ingrese un número", 64, "Deducir")
txtN1.Focus()
Else
Num1 = Val(txtN1.Text)
Num2 = Val(txtN2.Text)
If Num1 > Num2 Then
MsgBox("Los numeros ingresados estan en orden Decreciente", 64, "Deducir")
btnLimpio.Focus()
Else
MsgBox("Los numeros ingresados estan en orden Creciente", 64, "Deducir")
btnLimpio.Focus()
End If
End If
End Sub

Private Sub btnLimpio_Click(sender As Object, e As EventArgs) Handles btnLimpio.Click


txtN1.Text = ""
txtN2.Text = ""
txtN1.Focus()
End Sub
PRUEBA DE ESCRITORIO
4) Dado un numero si el mismo tiene tres dígitos mostrar la suma de sus dígitos caso contrario mostrar el cuadrado del número.

Ejercicio 4 ANALISIS
ENTRADA PROCESO SALIDA
N1 N2 CD D2 Sum Cuad N2 = N1 SUM CUAD
234 234 0 0 0 0 PROCESO PARA CONTAR DIGITOS 9 144
23 23 1 4 4 HACER MIENTRAS N1<>0
2 2 2 3 7 CD<- CD +1
0 0 3 2 9 N1<-N1 \ 10

12 12 0 0 0 0
1 1 144 Si CD=3
0 2 FALSO VERDADERO
CUAD<-N2*N2 HACER MIENTRAS N2<>0
D2<-N2 MOD 10
SUM<- SUM + D2
N2<-N2\10
MOSTRAR CUAD MOSTRAR SUM

DISEÑO
CODIGO FUENTE VISUAL BASIC

Private Sub btnDigitos_Click(sender As Object, e As EventArgs) Handles btnDigitos.Click


Dim N1, N2, CD, Sum, D2, Cuad As Integer
Do
N1 = Val(InputBox("Porfavor Ingrese un número mayor a cero", "Digitos"))
Loop Until N1 > 0
N2 = N1
lblNIng.Text = "El numero ingresado es : " & N1
' Proceso para contar los dígitos
Do While N1 <> 0
CD = CD + 1
N1 = N1 \ 10
Loop
If CD = 3 Then
Do While N2 <> 0
D2 = N2 Mod 10
Sum = Sum + D2
N2 = N2 \ 10
Loop
lblRespuesta.Text = "La suma de los digitos es: " & Sum
Else
Cuad = N2 * N2
lblRespuesta.Text = "El cuadrado del numero ingresado es: " & Cuad
End If
End Sub
PRUEBA DE ESCRITORIO
5) Dado un numero verificar si el último dígito es menor, Mayor o igual o si es igual a tres.

Ejercicio N° 5 ANALISIS
ENTRADA PROCESO SALIDA
N UD UD = N MOD 10
125 5 Case > 3 Mayor a 3
253 3 "El ultimo digito es Mayor a 3"
211 1 Select Case Case = 3 Igual a 3
UD "El ultimo digito es Igual a 3"
Case < 3 Menor a 3
"El ultimo digito es Menor a 3"

DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnCalcular5_Click(sender As Object, e As EventArgs) Handles btnCalcular5.Click


Dim N, UD As Integer
Do
N = Val(InputBox("Porfavor Ingrese un número mayor a cero", "Digitos"))
Loop Until N > 0
UD = N Mod 10
Select Case UD
Case > 3
lblNum5.Text = "El numero ingresado es: " & N
lblRespuesta5.Text = "El ultimo digito del número ingresado es Mayor a 3"
Case < 3
lblNum5.Text = "El numero ingresado es: " & N
lblRespuesta5.Text = "El ultimo digito del número ingresado es Menor a 3"
Case = 3
lblNum5.Text = "El numero ingresado es: " & N
lblRespuesta5.Text = "El ultimo digito del número ingresado es Igual a 3"
End Select
End Sub

PRUEBA DE ESCRITORIO
6) Dado un número si el número tiene cuatro dígitos contar cuantos dígitos son pares y cuantos dígitos son impares caso contrario mostrar el doble del
número.

Ejercicio 6 ANALISIS
ENTRADA PROCESO SALIDA
N1 N2 CD D CP CI Dob N2 = N1 CP CI Dob
1234 1234 0 0 0 0 0 PROCESO PARA CONTAR DIGITOS 2 2 12
123 123 1 4 1 1 HACER MIENTRAS N1<>0
12 12 2 3 2 2 CD<- CD +1 24
1 1 3 2 N1<-N1 \ 10
0 0 4 1 Si CD = 4
FALSO VERDADERO
6 6 0 0 0 0 0 Dob <-N2*2 HACER MIENTRAS N2<>0
0 1 12 D <-N2 MOD 10
SI D MOD 2 = 0
12 12 0 0 0 0 0 FALSO VERDADERO
1 1 24 CI = CI +1 CP <- CP + 1
0 2 N2 = N2 \ 10 N2 = N2 \ 10
MOSTRAR Dob MOSTRAR CI MOSTRAR CP
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnCalcular6_Click(sender As Object, e As EventArgs) Handles btnCalcular6.Click


Dim N1, N2, CD, D, CP, CI, Dob As Integer
Do
N1 = Val(InputBox("Porfavor Ingrese un número mayor a cero", "Digitos"))
Loop Until N1 > 0
lblNumIngre.Text = "El número ingresado es: " & N1
N2 = N1
' Proceso para contar los dígitos
Do While N1 <> 0
CD = CD + 1
N1 = N1 \ 10
Loop
If CD = 4 Then
Do While N2 <> 0
D = N2 Mod 10
If D Mod 2 = 0 Then
' Cuenta los digitos pares
CP = CP + 1
N2 = N2 \ 10
Else
' Cuenta los dígitos Impares
CI = CI + 1
N2 = N2 \ 10
End If
Loop
lblResp6.Text = "En el número ingresado tenemos " & CP & " Par(es) y " & CI & " Impar(es)"
Else
Dob = N2 * 2
lblResp6.Text = "El DOBLE del numero ingresado es: " & Dob
End If
End Sub

PRUEBA DE ESCRITORIO
7) Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber cuantas calorías consume su cuerpo durante todo el tiempo que realice una
misma actividad. Las actividades que tiene permitido realizar son únicamente dormir o estar sentado en reposo. Los datos que tiene son que estando
dormido consume 1.08 calorías por minuto y estando sentado en reposo consume 1.66 calorías por minuto.

Ejercicio 7 ANALISIS
ACTIVIDAD Cal × Min Horas Min Total_Cal
Dormir 1,08 1 30 97,2
Estar Sentado 1,66 0 20 33,2

Entrada PROCESO SALIDA


Act Hrs Min Total_Cal=0 Total_Cal
Dormir 1 30 Case "Dormir" 92,2
Sentado 0 20 Total_Cal<-((Hrs*60)+Min)*1,08
Select Case Total_Cal<-((1*60)+30)*1,08
Act Case "Sentarse" 33,2
Total_Cal<-((Hrs*60)+Min)*1,08
Total_Cal<-((0*60)+20)*1,66

DISEÑO
CODIGO FUENTE VISUAL BASIC

Private Sub btnCalcular7_Click(sender As Object, e As EventArgs) Handles btnCalcular7.Click


Dim Act As String
Dim Total_Cal As Single
Dim Hrs, Min As Integer

Total_Cal = 0
Act = cboActividad.SelectedItem
Hrs = Val(InputBox("Cuantas Horas quiere realizar la actividad seleccionada?", "Calorias"))
Min = Val(InputBox("Cuantos Minutos?", "Calorias"))
Select Case Act
Case "Dormir"
Total_Cal = ((Hrs * 60) + Min) * 1.08
lblCalorias.Text = "Las Calorias Consumidas Durmiendo será de : " & Total_Cal
Case "Sentarse"
Total_Cal = ((Hrs * 60) + Min) * 1.66
lblCalorias.Text = "Las Calorias Consumidas estando Sentado será de : " & Total_Cal
End Select
btnCalcular7.Enabled = False
cboActividad.Text = ""
End Sub

PRUEBA DE ESCRITORIO
8) Emitir la factura correspondiente a una compra de un artículo determinado, del que se adquieren una o varias unidades. El IVA es del 13% y si el precio
bruto (precio venta más IVA) es mayor de 500 Bolivianos. se debe realizar un descuento del 5%.

Ejercicio 8 ANALISIS
Aritculo Cantidad Precio Unid Sub Total IVA 13% Total Desc P_Pagar
Pack Llaves dado 10 250 2500 325 2825 141,25 2683,75
Taladros 1 300 300 39 339 0 339
Motocierra 3 250 750 97,5 847,5 42,375 805,125
Tuberias 3 80 240 31,2 271,2 0 271,2

ENTRADA PROCESO SALIDA


ARTICULO CANT P_UNID IVA Total = 0 ; IVA = 0; Desc = 0 Total Desc P_Pagar
Pack Llaves Dado 10 250 325 IVA<- (Cant*P_Unid) * 0,13 2825 141,25 2683,75
Taladro 1 300 Total <- (Cant*P_Unid) + IVA 339 0 3339
Si Total > 500
FALSO VERDADERO
Mostrar: Total Desc<- Total * 0,05
P_Pagar<- Total - Desc
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnVender_Click(sender As Object, e As EventArgs) Handles btnVender.Click


Dim Artic As String
Dim Cant As Integer
Dim P_Unid, IVA, Desc, Total, P_Pag As Single
Total = 0
IVA = 0
Desc = 0
Artic = cboProductos.SelectedItem
Cant = Val(txtCant.Text)
P_Unid = Val(txtPUnid.Text)
IVA = ((Cant * P_Unid) * 0.13)
Total = ((Cant * P_Unid) + IVA)
If Total > 500 Then
Desc = Total * 0.05
P_Pag = Total - Desc
lblPElejido.Text = "Producto : " & Artic
lblCantU.Text = "Cantidad : " & Cant
lblPUnid.Text = "Precio por Unidad : " & P_Unid
lblDesc.Text = "Descuento : " & Desc
lblTPagar.Text = "EL Precio Total a Pagar es : " & P_Pag & " Bs."
Else
P_Pag = Cant * P_Unid
lblPElejido.Text = "Producto : " & Artic
lblCantU.Text = "Cantidad : " & Cant
lblPUnid.Text = "Precio por Unidad : " & P_Unid
lblDesc.Text = "Descuento : " & Desc
lblTPagar.Text = "EL Precio Total a Pagar es : " & P_Pag & " Bs."
End If
End Sub

Private Sub btnNuevo_Click(sender As Object, e As EventArgs) Handles btnNuevo.Click


cboProductos.Text = ""
cboProductos.DroppedDown = True
cboProductos.Focus()
txtCant.Text = ""
txtPUnid.Text = ""
lblPElejido.Text = "Producto : "
lblCantU.Text = "Cantidad : "
lblPUnid.Text = "Precio por Unidad : "
lblDesc.Text = "Descuento : "
lblTPagar.Text = "EL Precio Total a Pagar es : "
btnVender.Enabled = False
End Sub
PRUEBA DE ESCRITORIO

9) ¿Dada la duración en minutos de una llamada calcular el costo, considerando? -Hasta tres minutos el costo es 0.50 Por encima de tres minutos es 0.50
más 0.1*cada minuto adicional a los tres primero.

Ejercicio 9 ANALISIS
ENTRADA PROCESO SALIDA
Min Si Min>3 Costo
3 FALSO VERDADERO 1,5
5 Costo<-Min*0,50 Costo<-(Min*0,50)+((Min-3)*0,10) 2,7
Costo<- 3*0,50 Costo<-(5*0,50)+((5-3)*0,10)
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnCalcular9_Click(sender As Object, e As EventArgs) Handles btnCalcular9.Click


Dim Min As Integer
Dim Costo As Single
Min = Val(txtMinLlamada.Text)
Costo = 0
If txtMinLlamada.Text = "" Then
MsgBox("Porfavor Ingrese la duracion de la llamada", 64, "Llamada")
txtMinLlamada.Focus()
Else
If Min > 3 Then
Costo = (Min * 0.5) + ((Min - 3) * 0.1)
Else
Costo = Min * 0.5
End If
MsgBox("EL Costo de la llamada es de Bs. " & Costo, 64, "Llamada")
btnCalcular9.Enabled = False
End If
End Sub

Private Sub btnN_Llamada_Click(sender As Object, e As EventArgs) Handles btnN_Llamada.Click


txtMinLlamada.Text = ""
txtMinLlamada.Focus()
btnCalcular9.Enabled = True
End Sub
PRUEBA DE ESCRITORIO

10) Diseñar un algoritmo que me permita ingresar la hora, minutos y segundos y que me calcule la hora en el siguiente segundo

("0=< H =<23”, “0=<M=<59”, “0=<S=<59”).

Ejercicio 10 ANALISIS
ENTRADA PROCESO SALIDA
Hrs Min Seg Seg=Seg+1 Hrs Min Seg
10 59 59 Si Seg > 59 11 60 60
7 59 50 FALSO VERDADERO 7 0 0
23 59 59 Hrs; Min; Seg Seg=0 24 59 51
22 59 59 Min=Min+1 0 60 60
15 58 59 Si Min>59 23 0 0
FALSO VERDADERO 15 60 60
Hrs; Min,Seg Min=0 0 0
Hrs=Hrs+1 59 60
Si Hrs>23 0
FALSO VERDADERO
Hrs;Min;Seg Hrs=0
Hrs; Min,Seg
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnCalcular10_Click(sender As Object, e As EventArgs) Handles btnCalcular10.Click


Dim Hrs, Min, Seg As Integer
Hrs = Val(txtHORAS.Text)
Min = Val(txtMINUTOS.Text)
Seg = Val(txtSEGUNDOS.Text)
Seg = Seg + 1
If txtHORAS.Text = "" Then
MsgBox("Porfavor Ingrese los datos Solicitados", 64, "Calculo de Horas")
txtHORAS.Focus()
btnCalcular10.Enabled = True
Else

If Seg > 59 Then


Seg = 0
Min = Min + 1
If Min > 59 Then
Min = 0
Hrs = Hrs + 1
If Hrs > 23 Then
Hrs = 0
lblHoras.Text = Hrs & " Hrs : " & Min & " Min : " & Seg & " Seg"
Else
lblHoras.Text = Hrs & " Hrs : " & Min & " Min : " & Seg & " Seg"
End If
Else
lblHoras.Text = Hrs & " Hrs : " & Min & " Min : " & Seg & " Seg"
End If
Else
lblHoras.Text = Hrs & " Hrs : " & Min & " Min : " & Seg & " Seg"
End If
btnCalcular10.Enabled = False
End If

End Sub

Private Sub btnNuevo10_Click(sender As Object, e As EventArgs) Handles btnNuevo10.Click


txtHORAS.Text = ""
txtMINUTOS.Text = ""
txtSEGUNDOS.Text = ""
txtHORAS.Focus()
btnCalcular10.Enabled = True
End Sub

PRUEBA DE ESCRITORIO
EJERCICIOS DE ESTRUCTURAS REPETITIVAS
1. Que permita llamar por teléfono, a todos los amigos que tiene registrados en su agenda para saber si van a asistir a la fiesta de este sábado o no. Además
debe averiguar si asistirán acompañados, en cuyo caso, deberá determinar cuántos invitados llevarán. El algoritmo debe determinar el total de comensales
que estarán presentes en la fiesta y el costo de fiesta, considerando que cada asistente tiene un costo de 200Bs. y cada acompañante tiene un costo de
250Bs

Ejercicio 1 ANALISIS
ENTRADA PROCESO SALIDA
N NA CC TP C CF Desde C = 1 Hasta N de 1 en 1 CC TP
3 0 0 0 1 0 Amigo(a) asistitirá a la fiesta? 6 1350
2 3 700 2 700 FALSO VERDADERO
NA <- InputBox ("Con cuantos
0 4 900 3 200 ………………………..acompañantes?)
1 6 1350 450 CC <- CC + NA + 1
CF <- NA * 250 + 200
TP <- TP + CF
MOSTRAR CC ; TP
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnLlamada_Click(sender As Object, e As EventArgs) Handles btnLlamada.Click


Dim N, NA, CC, TP, C, CF As Integer
CC = 0
TP = 0
N = Val(InputBox("Ingrese la cantidad de amigos", "Llamada"))
For C = 1 To N Step 1
If MsgBox("Amig@ N° " & C & " Asistirá a la Fiesta?", vbYesNo + vbInformation, "Llamada") = vbYes Then
NA = Val(InputBox("Con cuantos acompañantes?", "Llamada"))
CC = CC + NA + 1
CF = NA * 250 + 200
TP = TP + CF
End If
Next
lblTotal_Com.Text = "El total de Asistentes es: " & CC
lblTotal_Costo.Text = "El Costo total es : " & TP
End Sub
PRUEBA DE ESCRITORIO

2. Que reciba como entrada un cierto valor n, y genere como salida n veces la palabra “hola".

Ejercicio 2 ANALISIS
ENTRADA PROCESO SALIDA
N i Desde i = 1 Hasta N de 1 en 1 Hola
5 1 Mostrar la palabra "Hola" Hola
2 Hola
3 Hola
4 Hola
5
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnGenerar2_Click(sender As Object, e As EventArgs) Handles btnGenerar2.Click


Dim N, i As Integer
lstLista.Items.Clear()
Do
N = Val(InputBox("Ingrese un número mayor a cero porfavor", "HOLA"))
Loop Until N > 0

For i = 1 To N Step 1
lstLista.Items.Add("HOLA")
Next i
End Sub
PRUEBA DE ESCRITORIO

3. Que reciba como entrada un cierto valor n y genere como salida el valor de la serie: 1 + 2 + 3 + 4 + : : : + n 7

Ejercicio 3 ANALISIS
ENTRADA PROCESO SALIDA
Num Sum Desde i = 1 Hasta N de 1 en 1 i Sum
4 0 mostrar el valor de "i" 1 1
Sum <- Sum + i 2 3
3 6
4 10
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnGenerar3_Click(sender As Object, e As EventArgs) Handles btnGenerar3.Click


Dim Num, Sum As Integer
lstSerie.Items.Clear()
lblSuma.Text = "El Valor de la Serie es : "
Do
Num = Val(InputBox("Ingrese un número mayor a cero porfavor", "SERIE y SUMATORIA"))
Loop Until Num > 0
For i = 1 To Num Step 1
lstSerie.Items.Add(i)
lstSerie.Items.Add("+")
Sum = Sum + i
Next
lblSuma.Text = "El Valor de la Serie es : " & Sum
End Sub
PRUEBA DE ESCRITORIO

4. Que reciba como entrada dos valores: a y b, donde a < b. Este algoritmo debe generar como salida los múltiplos de a que son menores que b.

Ejercicio N° 4 ANALISIS
ENTRADA PROCESO SALIDA
a b a1 a1 <- a a
2 8 2 HACER 2
4 Mostramos "a" 4
6 a <- a + a1 6

8 HASTA QUE a >= b


DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnGenerar4_Click(sender As Object, e As EventArgs) Handles btnGenerar4.Click


Dim a, a1, b As Integer
a = Val(txtNum1.Text)
b = Val(txtNum2.Text)
a1 = a
' Limpiamos el ListBox
lstSerie4.Items.Clear()
If txtNum1.Text = "" Then
MsgBox("Ingrese un número porfavor", 64, "Multiplos")
txtNum1.Focus()
Else
Do
lstSerie4.Items.Add(a)
a = a + a1
Loop Until a >= b
End If
End Sub

Private Sub btnLimpiar_Click(sender As Object, e As EventArgs) Handles btnLimpiar.Click


txtNum1.Text = ""
txtNum2.Text = ""
lstSerie4.Items.Clear()
txtNum1.Focus()
End Sub

PRUEBA DE ESCRITORIO

5. Que reciba como entrada las notas de un curso y las despliegue. Se sabe que la última nota es un 0, y no es una nota válida. UNIVERSIDAD SALESIANA DE
BOLIVIA Materia: Informática Carrera: Contaduría Pública Docente: Lic. Carla Aguirre M.

Ejercicio N° 5 ANALISIS
ENTRADA PROCESO SALIDA
Notas HACER Notas
50 Leemos la variable "Notas" 50
40 SI Notas <> 0 40
60 FASLO VERDADERO 60
Mostramos la Nota
0
No ingresa más Notas Ingresada
HASTA QUE Notas = 0
DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnNotas_Click(sender As Object, e As EventArgs) Handles btnNotas.Click


Dim Notas, Est As Integer
Est = 0 ' Esta variable se usará para mostrar el número de Estudiante
lstNotas.Items.Clear()
Do
Est = Est + 1
Notas = Val(InputBox("Ingrese las Nota del estudiante N° " & Est, "Notas"))
If Notas <> 0 Then
lstNotas.Items.Add(Notas)
End If
Loop Until Notas = 0
btnNotas.Enabled = False
End Sub

Private Sub btnNuevo5_Click(sender As Object, e As EventArgs) Handles btnNuevo5.Click


btnNotas.Enabled = True
lstNotas.Items.Clear()
btnNotas.Focus()
End Sub
PRUEBA DE ESCRITORIO
6. Que reciba como entrada varios montos de depósito y despliegue la suma de ellos. Considere que un valor negativo significa que no hay más datos y no
debe ser considerado como dato válido.

Ejercicio N° 6 ANALISIS
ENTRADA PROCESO SALIDA
Monto Suma HACER Monto Suma
25 25 Leemos la variable "Monto" 25 70
30 55 SI Monto < 0 30
15 70 FASLO VERDADERO 15
-1 Mostrar Monto Deja de ingresar
Suma <- Suma +Monto más montos
HASTA QUE Monto < 0
Mostrar Suma

DISEÑO
CODIGO FUENTE VISUAL BASIC

Private Sub btnMontos_Click(sender As Object, e As EventArgs) Handles btnMontos.Click


Dim Monto, n, Suma As Integer
n = 0
Suma = 0
Do
n = n + 1
Monto = Val(InputBox("Porfavor Ingrese el Monto N° " & n, "Montos"))
If Monto < 0 Then
Else
lstMontos.Items.Add(Monto)
Suma = Suma + Monto
End If
Loop Until Monto < 0
lblSumaMontos.Text = "La Suma de los Montos Ingresados es: " & Suma
btnMontos.Enabled = False
End Sub

Private Sub btnNuevoMonto_Click(sender As Object, e As EventArgs) Handles btnNuevoMonto.Click


btnMontos.Enabled = True
lstMontos.Items.Clear()
lblSumaMontos.Text = "La Suma de los Montos Ingresados es:"
btnMontos.Focus()
End Sub
PRUEBA DE ESCRITORIO
7. Que reciba como entrada una secuencia de valores numéricos y genere como salida la suma de los valores pares y la multiplicación de los impares.
Considere que un valor negativo significa que no hay más datos y no debe ser considerado como dato válido.

Ejercicio N° 7 ANALISIS
ENTRADA PROCESO SALIDA
Valor Suma Mult HACER Suma Mult Valor
2 0 1 Leemos la variable VALOR 6 15 2
3 2 3 SI Valor < 0 3
5 6 15 FALSO VERDADERO 5
Mostramos el valor numerico de la variable Deja de
4 Valor ingresar Datos
-1 SI Valor MOD 2 = 0
FALSO VERDADERO
Mult <- Mult * Valor Suma <- Suma + Valor
HASTA QUE Valor < 0
Mostramos Suma ; Mult

DISEÑO
CODIGO FUENTE VISUAL BASIC

Private Sub btnValores_Click(sender As Object, e As EventArgs) Handles btnValores.Click


Dim n, Suma, Mult, Valor As Integer
n = 0
Suma = 0
Mult = 1
lstValores.Items.Clear()
lblSumaPares.Text = "La Suma de los valores Pares es: "
lblMultImpares.Text = "La Multiplicación de los valores Impares es: "
Do
N = N + 1
Valor = Val(InputBox("Porfavor Ingrese el Valor N° " & n, "Montos"))
If Valor < 0 Then
Else
lstValores.Items.Add(Valor)
If Valor Mod 2 = 0 Then
Suma = Suma + Valor
Else
Mult = Mult * Valor
End If
End If
Loop Until Valor < 0
lblSumaPares.Text = "La Suma de los valores Pares es: " & Suma
lblMultImpares.Text = "La Multiplicación de los valores Impares es: " & Mult
End Sub
PRUEBA DE ESCRITORIO
8. Que genere como salida los términos de la siguiente serie: 2; 5; 7; 10; 12; 15; 17; : : : ; 1800

Ejercicio N° 8 ANALISIS
ENTRADA PROCESO SALIDA
A B i HACER SERIE
2 5 1 SI i MOD 2 = 0 2 A
7 10 2 FALSO VERDADERO 5 B
… … 3 Mostramos A Mostramos B 7 A
1802 1800 … A <- A + 5 B <- B + 5 … …
1805 721 i <- i + 1 i <- i + 1 1800
HASTA QUE B > 1800

DISEÑO
CODIGO FUENTE VISUAL BASIC

Private Sub btnSerie8_Click(sender As Object, e As EventArgs) Handles btnSerie8.Click


Dim A, B, i As Integer
A = 2
B = 5
i = 1
lstSerie8.Items.Clear()
Do
If i Mod 2 = 0 Then
lstSerie8.Items.Add(B)
B = B + 5
i = i + 1
Else
lstSerie8.Items.Add(A)
A = A + 5
i = i + 1
End If
Loop Until (B > 1800)
End Sub

PRUEBA DE ESCRITORIO
9. La serie de Fibonacci permite aproximar la forma en que se reproducen los conejos. Se sabe que una pareja de conejos puede tener dos crías al mes, y
esto se da a partir del tercer mes de nacidos, en el cual los conejos alcanzan su edad madura. La forma en que aumenta la población de conejos mes a mes
se puede ver en la siguiente tabla, si consideramos que no se mueren conejos y que inicialmente se cuenta con una pareja de conejos recién nacida: Que
dado un valor n, correspondiente a un mes cualquiera, determine la cantidad de conejos en ese mes. Indicación: observe que en cada mes, la cantidad de
conejos corresponde a la suma de los conejos de los dos meses anteriores a ese mes. mes 1 2 3 4 5 6 . . parejas de conejos 1 1 2 3 5 8 13

DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnFibonacci_Click(sender As Object, e As EventArgs) Handles btnFibonacci.Click

Dim N, a, b, c As Integer
' Iniciamos nuestras variables
a = 0
b = 1
' Almacenamos en la variable "N" el número Ingresado por el Usuario
N = Val(InputBox("Ingrese un numero de mes porfavor" & vbNewLine & "SECUENCIA FIBONACI", "Cantidad de Conejos"))
' Generamos la secuencia Fibonaci
For i = 1 To N Step 1
c = a + b
a = b
b = c
Next i
lblFibonacci.Text = "En el Mes N°" & N & " la cantidad de conejos seran : " & a
End Sub

PRUEBA DE ESCRITORIO
10. Los n trabajadores de la empresa “Paga Poco" lograron obtener un aumento de sueldo en el último mes. Este aumento de sueldo se determinó por
tramos, de acuerdo a la siguiente tabla: Que reciba como entrada el sueldo actual de cada uno de los trabajadores y calcule el nuevo sueldo. Además, el
algoritmo debería indicar cuánto más gasta la empresa por concepto de sueldos, después del aumento. tramo sueldo % aumento A 0 - 1000 7 B 1001 – 2000
5 C 2001 – 3300 3 D >3300 1

DISEÑO

CODIGO FUENTE VISUAL BASIC

Private Sub btnCalcular10_Click(sender As Object, e As EventArgs) Handles btnCalcular10.Click


Dim N, C As Integer
Dim SA, A, SUA, SIN, SCI As Single
N = Val(InputBox("Ingrese la Cantidad de Empleados", "EMPRESA"))
SUA = 0 ' Sueldo Aumento
SIN = 0 ' Sueldo sin Incremento
SCI = 0 ' Sueldo Con Incremento
For C = 1 To N Step 1
SA = Val(InputBox("Ingrese el Sueldo Actual del Empleado N° " & C, "EMPRESA"))
SIN = SIN + SA
If SA <= 1000 Then
A = SA * 0.07
Else
If SA <= 2000 Then
A = SA * 0.05
Else
If SA <= 3000 Then
A = SA * 0.03
Else
A = SA * 0.01
End If
End If
End If
SUA = SUA + A ' Sumamos el incremento del sueldo en Sueldo Aumento
Next C
SCI = SIN + SUA ' Sumamos el Sueldo + el Incremento
lblSueldoSin10.Text = "El monto de Sueldo Total sin el Incremento es Bs : " & SIN
lblSueldoMasInc10.Text = "El monto de Sueldo Total más el Incremento es Bs : " & SCI
lblRespuesta10.Text = "La Empresa pierde un total de Bs : " & SUA
End Sub

PRUEBA DE ESCRITORIO
11. Se tiene una tabla con los datos de matrícula, peso, estatura y sexo de los alumnos de la Universidad de Salesiana Cochabamba: Que reciba los datos de
la tabla antes mencionada, calcule y genere como salida el promedio de los pesos y de las estaturas. Su algoritmo debe entregar estos valores considerando
todos los individuos y también diferenciando por sexo. Considere fin de datos la matrícula en cero (0).

DISEÑO
CODIGO FUENTE VISUAL BASIC

Private Sub btnCalcular11_Click(sender As Object, e As EventArgs) Handles btnCalcular11.Click


Dim N, Matricula, i, T_Est_H, T_Peso_H, T_Est_M, T_Peso_M, H, M As Integer
Dim Estatura, Peso, PEH, PEM, PPH, PPM As Single
Dim Sexo As String
H = 0
M = 0
Matricula = 0
Estatura = 0
Peso = 0
Sexo = ""
'Limpiamos los ListBox
lstEstHom.Items.Clear()
lstEstMujer.Items.Clear()
lstPesoHom.Items.Clear()
lstPesoMujer.Items.Clear()
lstMatriculaH.Items.Clear()
lstMatriculaM.Items.Clear()

Do
N = Val(InputBox("Ingrese la cantidad de estudiantes porfavor", "Universidad Salesiana de Cochamabmba"))
Loop Until N <> 0
For i = 1 To N Step 1
Matricula = InputBox("Ingrese el número de MATRICULA del estudiante N° " & i, "Universidad Salesiana de Cochamabmba")
Peso = Val(InputBox("Ingrese el PESO del estudiante porfavor", "Universidad Salesiana de Cochabamba"))
Estatura = Val(InputBox("Ingrese la ESTATURA del estudiante en Centímetros porfavor", "Universidad Salesiana de
Cochamabmba"))
Sexo = InputBox("Ingrese el SEXO del estudiante porfavor" & vbNewLine & " Hombre = H" & vbNewLine & " Mujer =
M", "Universidad Salesiana de Cochamabmba")
If Sexo = "H" Or Sexo = "h" Then
lstEstHom.Items.Add(Estatura)
lstPesoHom.Items.Add(Peso)
lstMatriculaH.Items.Add(Matricula)
T_Est_H = T_Est_H + Estatura
T_Peso_H = T_Peso_H + Peso
H = H + 1
Else
lstEstMujer.Items.Add(Estatura)
lstPesoMujer.Items.Add(Peso)
lstMatriculaM.Items.Add(Matricula)
T_Est_M = T_Est_M + Estatura
T_Peso_M = T_Peso_M + Peso
M = M + 1
End If
Next
PEH = T_Est_H / H
PPH = T_Peso_H / H
PEM = T_Est_M / M
PPM = T_Peso_M / M
lblPPesoVaron.Text = "El Promedio: Peso Varones es : " & PPH
lblPPesoMujer.Text = "El Promedio: Peso Mujeres es :" & PPM
lblEstaturaVaron.Text = "El Promedio : Estatura Varones es : " & PEH
lblEstaturaMujer.Text = "El Promedio : Estatura Mujeres es : " & PEM
End Sub

PRUEBA DE ESCRITORIO

También podría gustarte