Clase 03
Transcript of Clase 03
-
5/20/2018 Clase 03
1/18
Metodologa para la solucin de problemas por medio de computadora
Definicin del Problema
Es importante que se conozca lo que se desea que realice la
computadora
Anlisis del Problema Es necesario definir:
Los datos de entrada.
Cual es la informacin que se desea producir (salida)
Los mtodos y frmulas que se necesitan para procesar los datos.
Diseo del Algoritmo Las caractersticas de un buen algoritmo son:
Debe tener un punto particular de inicio.
Debe ser definido, no debe permitir dobles interpretaciones o
secuencias lgicas inconclusas.
Debe ser general, es decir, servir para la mayora de posibilidades quese puedan presentar.
Debe ser finito en tamao y tiempo de ejecucin.
1ra Prueba y Depuracin
Es el proceso de identificar y modifica errores de secuencia lgica
-
5/20/2018 Clase 03
2/18
Metodologa para la solucin de problemas por medio de computadora
Codificacin
Es la operacin de escribir la solucin del problema en un lenguaje de
programacin adecuado de acuerdo a la lgica del diagrama de flujo o
Pseudocdigo. Esta operacin consta de una serie de instrucciones
detalladas, (cdigo fuente)
2da Prueba y Depuracin
Es el proceso de identificar y eliminar errores de codificacin
o complementacin al programa.
-
5/20/2018 Clase 03
3/18
Metodologa para la solucin de problemas por medio de computadora
Documentacin
Es una gua o manual escrito detalladamente por el Autor.
Sirve para ayudar a comprender o usar un programa o para facilitar futuras
modificaciones (mantenimiento).
Se divide en tres partes:
Documentacin Interna: Son los comentarios que se aaden al cdigo
fuente para hacer mas claro el entendimiento de un proceso.
Documentacin Externa: Documento que contiene los sgtes puntos:o Descripcin del Problema
o Algoritmo (diagrama de flujo o pseudocdigo)
o Descripcin de Identificadores
o Cdigo Fuente (programa)
Manual del Usuario: Documento que describe paso a paso la manera como
funciona el programa, a fin de que el usuario obtenga el resultado deseado.
Mantenimiento
Se lleva acabo despus de terminado el programa, cuando se detecta que esnecesario hacer algn cambio, ajuste o complementacin al programa.
-
5/20/2018 Clase 03
4/18
EJEMPLO
Problema:
Hoy en el rea de contabilidad de una empresa, Juan ha iniciado sus
labores, se apresta a dar pagos a los trabajadores quienes son un
aproximado de 200 trabajadores; el Director General ha solicitado por estanica vez que se haga un descuento al personal del 10% sobre su sueldo
base, solo a aquellos que tengan un sueldo neto mayor a 2000 soles, el
motivo es una donacin a nombre de la empresa a fin de contribuir con los
gastos de sepelio por el fallecimiento del padre de uno de los trabajadores.
Definicin del Problema
El problema quede definido en el siguiente enunciado:
Realizar un programa que obtenga el sueldo neto de un trabajador
cuyo sueldo base se obtiene por teclado y teniendo en cuenta que si
ese sueldo es mayor a 2000 nuevos soles tiene una retencin del 10%.
-
5/20/2018 Clase 03
5/18
Anlisis del Problema
Una vez que se ha comprendido lo que se desea definiremos:
Datos de Entrada.
Sueldo Base, obtenido por teclado
Datos de Salida
Sueldo Neto, obtenido despus de calculo en el programa
Mtodos y/o Frmulas que se necesitan para procesar los datos.
Retencin = Sueldo Base * 10 / 100
Sueldo Neto = Sueldo Base - Retencin
-
5/20/2018 Clase 03
6/18
Private Sub CmdProcesar_Click()
' PROGRAMA CREADO POR JORGE VARGAS
' FECHA: 12 de Septiembre de 2008
' OBJETIVO: Programa que Calcula
' Descuentos
Dim Reten, SBase, SNeto As Double
Reten = 0 : SBase = 0 : SNeto = 0
'leyendo el Sueldo Base desde una caja de Texto
SBase = Val(TxtSueldobase)
If SBase > 2000 Then
Reten = SBase * 10 / 100
End If
SNeto = SBase - Reten
'mostrando el Sueldo Neto en otra caja de Texto
TxtSueldoNeto.Text = SNetoEnd Sub
-
5/20/2018 Clase 03
7/18
-
5/20/2018 Clase 03
8/18
-
5/20/2018 Clase 03
9/18
-
5/20/2018 Clase 03
10/18
Private Sub CmdIniciaProceso_Click()
S = 0
C = 0
Do
Dato = InputBox("Ingrese Valor:", "Ingreso de Datos")Valor = Val(Dato)
C = C + 1
S = S + Valor
MsgBox "Nro de Ingresos:" & C
MsgBox "Suma Acumulada:" & S
Loop While S < 100
End Sub
-
5/20/2018 Clase 03
11/18
Private Sub CmdIniciaProceso_Click()
S = 0
For A = 1 To 10
Dato = InputBox("Ingrese Valor:", "Ingreso
de Datos")
Valor = Val(Dato)
S = S + Valor
MsgBox "Suma Acumulada:" & S
Next
End Sub
-
5/20/2018 Clase 03
12/18
Construya un algoritmo que sume los trminos de una serie, el
denominador ser ingresado por teclado
S = 1 + 1 + 1 + 1 + 1 + 1 + +1
1 2 3 4 5 6 N denominador a
ingresar
-
5/20/2018 Clase 03
13/18
-
5/20/2018 Clase 03
14/18
Private Sub CmdCalcula_Click()
Op = 0 : R = 0
Msg = "Respuesta
N1 = Val(TxtNro1)
N2 = Val(TxtNro2)
Op = Val(TxtOp)
Select Case Op
Case 1: R = N1 + N2
Case 2: R = N1 - N2
Case 3: R = N1 * N2
Case 4:If N2 > 0 Then
R = N1 / N2
Else
R = 0
Msg = "imposible DIVISION entre CERO"
End IfCase Else
Msg = "Opcin no implementada"
End Select
Label4.Caption = Msg & " " & R
End Sub
-
5/20/2018 Clase 03
15/18
Leer 2 nmeros; si son iguales que los multiplique, si
el primero es mayor que el segundo que los reste y si
no, que los sume
L 2 i i l l lti li i l i l d l t i
-
5/20/2018 Clase 03
16/18
Inicio
Nro01, Nro02
Nro01 = Nro02
Nro01>Nro02 Producto = Nro01 x Nro02
Producto = Nro01 - Nro02
Producto = Nro01 + Nro02
Proceso
Fin
SINO
SINO
Leer 2 nmeros; si son iguales que los multiplique, si el primero es mayor que el segundo que los reste y si
no, que los sume
Private Sub CmdProcesar_Click()' Asignar textos ingresados a las
variables
Nro01 = Val(Input(Valor1:,N1))
Nro02 = Val(Input(Valor2:,N2))
' Evaluando valores
If Nro01 = Nro02 Then
Resultado = Nro01 * Nro02
Else
If Nro01 > Nro02 Then
Resultado = Nro01 - Nro02Else
Resultado = Nro01 + Nro02
End If
End If
' Mostrando Resultados
LblResultado.Caption = Resultado
End Sub
-
5/20/2018 Clase 03
17/18
-
5/20/2018 Clase 03
18/18
Ejercicios para casa
1. Realizar un programa para calcular el rea de un rectngulo cuyos datos base y altura se leen del
teclado y el resultado se visualizara en la pantalla. Se deber realizar mediante diagramas de flujo.
2. Suponga que un individuo desea invertir su capital en un banco y desea saber cuanto dinero ganara
despus de un mes si el banco paga a razn de 2% mensual.
3. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuantodeber pagar finalmente por su compra.
4. Un alumno desea saber cual ser su calificacin final en la materia de Algoritmos. Dicha calificacin
se compone de los siguientes porcentajes:
55% del promedio de sus tres calificaciones parciales.
30% de la calificacin del examen final.
15% de la calificacin de un trabajo final.
5. Realizar un algoritmo que calcule la edad de una persona ingresando su ao, mes y dia denacimiento; y comparando con la fecha actual.
6. Un medico le pide le haga un programa para calcular el nmero de pulsaciones que una persona
debe tener por cada 10 segundos de ejercicio, si la formula es:
Nropulsaciones = (220 - edad)/10
7. Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre su salario anterior.
8. El dueo de una tienda compra un artculo a un precio determinado. Obtener el precio en que lo debe
vender para obtener una ganancia del 30%.9. Todos los lunes, mircoles y viernes, una persona corre la misma ruta y cronometra los tiempos
obtenidos. Determinar el tiempo promedio que la persona tarda en recorrer la ruta en una semana
cualquiera.
10. Tres personas deciden invertir su dinero para fundar una empresa. Cada una de ellas invierte una
cantidad distinta. Obtener el porcentaje que cada quien invierte con respecto a la cantidad total
invertida.