Clase 03

download Clase 03

of 18

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.