lunes, 20 de junio de 2011

3º Punto 2º Parcial

3º Hacer un algoritmo modular que encuentre el mínimo valor de una matriz B de números enteros que tiene F filas y C columnas. Luego ese valor mínimo encontrado de la matriz pasarlo como parámetro a un módulo recursivo, que tiene un parámetro único de tipo entero, la tarea del módulos es transformar  y mostrar ese parámetro en un número visto al revés (ej. mínimo: 768, visto al revés 867). Suponga que los módulos CargarMatriz(B,F,C) y el módulo MostrarMatriz(B,F,C) ya están escritos, no es necesario hacerlos.

2º Punto de 2º Parcial

2º Hacer un Módulo llamado Signo, qu tiene un parámetro de tipo real, la función devuelve un valor entero uno positivo (+1) si el parámetro real es mayor que cero o devuelve un valor entero uno negativo (-1) si el parámetro real es menor que cero o bien devuelve el valor entero cero (0) si el parámetro real es igual a cero.

1º Punto de 2º Parcial

1º Hacer un algoritmo modular con un menú de opciones. Una de las opciones es eliminar todos los valores unos (1) de un vector X que tiene Y números enteros. Suponga que los módulos CargarVector(X,Y) y el módulo MostrarVector(X,Y) ya estén escritos, no es necesario hacerlos.

domingo, 24 de abril de 2011

Trabajo Pràctico Nº 4

1. Calcular y mostrar el máximo común divisor de dos números naturales.

Algoritmo 'Ejerc1'
[con el mètodo de restas sucesivas]
var
    Entero: a, b
 Inicio
    escribir 'INGRESE DOS Nº NATURALES'
    leer a, b
    mientras a <> b
            si a > b entonces
                        a < --  a – b
            sino
                       b < --  b - a
            finsi
    fin mientras.
    Escribir ‘EL MCD ES: ‘ a
fin

2. Calcular y mostrar la división entera de dos números enteros mediante restas sucesivas.
Algoritmo 'Ejerc02'
[                              ]
var
     Entero: a, b, Res

Inicio
    escribi 'INGRESE DIVIDENDO Y DIVISOR'

    leer a, b

    Si a > b entonces
            Res = 0           
            Mientras a >= b
                        Res < -- Res + 1
                        a < -- a - b
            fin mientras      
            escribir ‘ EL REsulTADO ES: ‘ Res
     sino
            escribir 'LA DIVISiON NO ES POSIBLE coN EsTE METODO'
     fin si
Fin 

6. Se tienen registros con los datos de los estudiantes de una universidad: código del estudiante, nombre y apellido, valor por materia, número de materias a matricular, valor del recargo por matrícula Se requiere leer los registros (suponga un código de 0 como condición de terminación) e imprimir un listado con la siguiente información por estudiante: código, nombre y apellido, valor por materia, número de materias, valor del recargo, total matricula; al final se debe mostrar el total a recibir por matrículas y el número total de estudiantes matriculados.

Algoritmo 'Ejerc06'
[                                ]
var 
     Entero: TotalAlumnos, Cantidad, Codigo
     Real: TotalMatriculas, Valor, Recargo
     Cadena: ApeYNom
Inicio
   TotalAlumnos = 0
   TotalMatriculas = 0
   Escribir ‘BIENVENIDO AL REGISTRO DE ESTUDIANTES’
   Escribir ‘Configuraciòn: - Ingrese Valor por materia: $ ‘, leer Valor
   Escribir ‘                         - Recargo $ ‘, leer Recargo

   Repetir
Escribir ‘Ingrese còdigo: ‘, Leer Codigo
si  Codigo <> 0 entonces
            Escribir ‘Apellido y Nombre: ‘, Leer ApeYNom
Escribir ‘Cantidad de materias: ‘, Leer Cantidad

Escribir ‘ALUMNO: ‘ ApeYNom , ‘CODIGO: ‘ Codigo
Escribir ‘Cantidad de Materias: ' Cantidad
Escribir ‘Total de matrìcula del alumno: ‘ Cantidad * Valor
Escribir ‘Total Recargos:’ Cantidad * Valor + Recargo

TotalAlumnos = TotalAlumnos + 1
TotalMatriculas = TotalMatriculas + Cantidad * Valor
            Finsi
   Hasta que Codigo = 0
   Escribir ‘TOTAL DE ALUMNOS MATRICuLADOS: ‘ TotalAlumnos
   Escribir ‘MONTO TOTAL DE MATRICULAS: ‘ TotalMatriculas
Finsi

Trabajo Pràctico Nº 3

1. Diseñe un algoritmo que calcule la superficie de un triángulo dado sus tres lados a, b y c. Utilice la fórmula de Herón: ��= (��* (��−��)* (��−��)*( ��−��))^(1/ 2.) donde (��=��+��+��)/2.
Algoritmo 'Ejerc01'
[breve comentario]
const
var
  Real: a, b, c, p, S

Inicio
  escribir 'INGRESE LOS TRES LADOS DEL TRIANGULO: '
  leer a, b, c
  [a continuaciòn valido los datos leìdos]
  si (a > 0) Y (b>0) Y (c>0) entonces
      p <-- (a+b+c) / 2
      S <-- (p*(p-a)*(p-b)*p-c)) ^ (1/2.)
      Si (S <> 0) entonces
          escribir 'LA SUPERFICIE DEL TRIANGULO ES: ' S
      sino
          escribir 'LOS LADOS INGRESADOS NO CORRESPONDEN AL TRIANGULO'
      finsi
   sino
      escribir 'LADOS INGRESADOS INCoRRECTOS'
   finsi
fin