Trabajo Práctico 4


Leer un valor de Día, Mes y Año de una fecha (ej.: 10-5-2003). Mostrar la fecha con el respectivo nombre del mes (ej.: 10-mayo-2003).  Si el número leído para el mes no está entre 1 y 12 imprimir un mensaje de error. Comprobar que el día se encuentre entre 1 y 31 y el año sea mayor que 2000. Utilice la estructura de decisión generalizada.
Algoritmo TP4Ejerc1
[]
Const
Var
                Entero: dd, mm, aa
                Cadena: mes
Inicio
Escribir ‘INGRESE FECHA:  DD, MM y AA’
Leer dd,mm,aa
Si  dd > 0 Y dd <= 31 entonces
                Si mm > 0 Y mm <= 12 entonces
                               Si aa > 2000 entonces
                                               Según mm hacer
                                                                 1 : mes <- ‘ENERO’
  2 : mes <- ‘FEBRERO’
  3 : mes <- ‘MARZO’
  4 : mes <- ‘ABRIL’
  5 : mes <- ‘MAYO’
  6 : mes <- ‘JUNIO’
  7 : mes <- ‘JULIO’
  8 : mes <- ‘AGOSTO’
  9 : mes <- ‘SEPTIEMBRE’
10 : mes <- ‘OCTUBRE’
11 : mes <- ‘NOVIEMBRE’
12 : mes <- ‘DICIEMBRE’
                                               Fin según
                                               Escribir ‘LA FECHA ES: ‘ dd ‘-‘ mes ‘-‘ aa
                               Sino
                                               Escribir ‘AÑO INCORRECTO’
                               Finsi
                Sino
                               Escribir ‘MES INCORRECTO’
                Finsi
Sino
                Escribir ‘DIA INCORRECTO’
Finsi
FIn


Una institución de educación, con carreras tanto diurnas como vespertinas, considera lo siguiente en su proceso académico: si un alumno de carrera vespertina tiene una nota de presentación mayor o igual a 6,0,  se exime, y si no alcanza el 6 pero tiene una nota de presentación igual o mayor a 3,5, rinde examen. Si el alumno es de carrera diurna, si su nota de presentación es mayor o igual a 3,5, rinde examen (no hay posibilidad de eximirse). En ambos regímenes, si la nota de presentación es menor que 3,5, reprueba. Más abajo se proponen dos alternativas de tablas de decisión: Analícelas y describa las ventajas y desventajas de las propuestas. Escriba los algoritmos correspondientes.
Algoritmo ‘TP4Ejerc3’
[]
Const
Var
    Caracter : Carrera
     Real : Nota
    Cadena: Resultado    
Inicio
Repetir
Escribir ‘SELECCIONE TIPO DE CARRERA’
Escribir ‘========================’
Escribir ‘D_IURNA’
Escribir ‘V_ESPERTINA’
Leer Carrera
Hasta que Carrera = ‘D’ O Carrera = ‘V’
Escribir ‘INGRESE NOTA’
Leer Nota
Si Nota > 0  Y  Nota <= 10 entonces
Resultado <- ’REPRUEBA’
Según Carrera hacer
                ‘D’:         Si Nota >= 3,5 entonces
                                               Resultado <- ‘RINDE EXAMEN’
                               Finsi
                ‘V’:         Si Nota >= 6 entonces
                                               Resultado <- ‘SE EXIME’
                               Sino
                                               Si Nota >= 3,5 entonces
                                                               Resultado <- ‘RINDE EXAMEN’
                                               Finsi
                               Finsi
finSegun
escribir ‘ EL ALUMNO ‘ Resultado
sino
                escribir ‘NOTA INCORRECTA’
Fin

4 comentarios:

  1. Es necesario poner la palabra constante o variable si no se van a usar en el algoritmo?

    ResponderEliminar
  2. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  3. //ejer.. 4 del practico 6
    //var
    //cadena : nom, nommax , resp
    //real: promg, nota, cant, suma, suma1, prom, notmax, salon //

    Proceso eje4


    suma1<-0
    promg<-0
    band<-Verdadero



    Repetir
    suma <- 0
    prom <- 0
    Escribir "Nombre del alumno"
    Escribir " ==============="
    leer nom
    Escribir "cantidad de notas"
    leer cant


    Para i desde 1 Hasta cant Con Paso 1 Hacer
    Escribir " ingrese nota"
    leer nota
    si nota <= 10 Entonces

    suma<- suma+nota
    sino
    Escribir "erro de nota"
    FinSi


    FinPara


    prom<- suma/cant
    Escribir "nota final de " , nom , " es", prom
    suma1<-suma1+1
    promg<-promg+prom
    si band Entonces
    notmax<-prom
    nommax<-nom
    band<-Falso
    FinSi
    si prom > notmax Entonces
    notmax<- prom
    nommax<- nom
    FinSi
    Escribir "continuar ? si o no"
    leer resp
    Hasta Que resp = "no"
    salon<- promg/ suma1
    Escribir "promedio del salon" salon
    Escribir nommax,"con nota", notmax," es el mejor"

    FinProceso

    ResponderEliminar
  4. Buenos tus aportes, los ejemplos citados en clase son una alternativa de solución. En los casos en los que se les indicaba Const y Var luego de Algoritmo 'Nombre', es que frecuentemente en otros lenguajes de programaciòn se usan y declaran en ese orden. En PsInt no es necesario.

    ResponderEliminar