[ Foro de C ]

Implementar funcion - máximo y mínimo

28-Jul-2020 05:49
Thiare guerrero mella
0 Respuestas

Hola! pasa que empecé hace poco en lenguaje C y necesito implementar una función que me permita encontrar el numero máximo y mínimo obtenido por postulante. Les dejo el código. Muchas gracias.


#include <stdio.h>
int main(void) {
int i=1, matricula=1,becados=0,ptj_minimo,ptj_max,alumnos;
 /*numero de postulantes debe ser asignado x consola¿?*/
int postulantes=3;
float NotaAnteriores,MeddiaAsistencia,MediaCalculo,MediaAlgebra,notas,asistencia;
float FondoBeca = 3000000;
 for (i=1;i < 3;++i)
{
printf("postulante n°: [%d] con matricula: %d\n",i,i);
  printf("Ingrese su promedio de notas del año anterior:\n");
  scanf("%f", &NotaAnteriores);
  float  puntaje=0;
 if ((NotaAnteriores >= 6.5))
    {
   puntaje = puntaje + 15;
    }
    else if ((NotaAnteriores <= 6.5) && (NotaAnteriores > 6.0))
    {
        puntaje = puntaje + 10;
    }
    else if ((NotaAnteriores <= 6.0) && (NotaAnteriores > 5.5))
    {
        puntaje = puntaje + 5;
    }
    else if (NotaAnteriores <= 5.5)
    {
        puntaje = puntaje + 0;
    }

    /*printf("puntaje: %0.1f\n", puntaje);*/

printf("Ingrese su promedio de notas de cálculo:\n");
   scanf("%f", &MediaCalculo);

    if ((MediaCalculo >= 6.5))
    {
        puntaje = puntaje + 15;
    }
    else if ((MediaCalculo <= 6.5) && (MediaCalculo > 6.0))
    {
        puntaje = puntaje + 10;
    }
    else if ((MediaCalculo <= 6.0) && (MediaCalculo > 5.5))
    {
        puntaje = puntaje + 5;
    }
    else if (MediaCalculo <= 5.5)
    {
        puntaje = puntaje + 0;
    }

    /*printf("puntaje: %0.1f\n", puntaje);*/

  printf("Ingrese su promedio de notas de álgebra:\n");
  scanf("%f", &MediaAlgebra);

    if ((MediaAlgebra >= 6.5))
    {
        puntaje = puntaje + 15;
    }
    else if ((MediaAlgebra <= 6.5) && (MediaAlgebra > 6.0))
    {
        puntaje = puntaje + 10;
    }
    else if ((MediaAlgebra <= 6.0) && (MediaAlgebra > 5.5))
    {
        puntaje = puntaje + 5;
    }
    else if (MediaAlgebra <= 5.5)
    {
        puntaje = puntaje + 0;
    }

    /*printf("puntaje: %0.1f\n", puntaje);*/

    printf("Ingrese su asistencia promedio (sin porcentaje):\n");
    scanf("%f", &asistencia);

    if ((asistencia >= 95))
    {
        puntaje = puntaje + 15;
    }
    else if ((asistencia <= 95) && (asistencia > 90))
    {
        puntaje = puntaje + 10;
    }
    else if ((asistencia <= 90) && (asistencia > 80))
    {
        puntaje = puntaje + 5;
    }
    else if (asistencia <= 80)
    {
        puntaje = puntaje + 0;
    }

    /*printf("puntaje: %0.1f\n", puntaje);*/


  printf("puntaje obtenido: %0.1f\n",puntaje);

    if (puntaje <= 60 && puntaje >= 55)
    {
        printf("Ganaste una beca de 300.000\n");
      FondoBeca= FondoBeca - 300000;
      becados = becados + 1;
      postulantes = postulantes + 1;
      printf("monto restante: $ %.1f\n",FondoBeca);
    }
    else if (puntaje <= 54 && puntaje >=50)
    {
        printf("Ganaste una beca de 270.000\n");
        FondoBeca= FondoBeca - 270000;
      becados = becados + 1;
      postulantes = postulantes + 1;
      printf("monto restante: $ %.1f\n",FondoBeca);
    }
    else if (puntaje <= 49 && puntaje >= 45)
    {
        printf("Ganaste una beca de 240.000\n");
          FondoBeca= FondoBeca - 240000;
          becados = becados + 1;
          postulantes = postulantes + 1;
          printf("monto restante: $ %.1f\n",FondoBeca);
    }
    else if (puntaje <= 44 && puntaje >= 40)
    {
        printf("Ganaste una beca de 210.000\n");
      FondoBeca= FondoBeca - 210000;
      becados = becados + 1;
      postulantes = postulantes + 1;
      printf("monto restante: $ %.1f\n",FondoBeca);
    }
    else if (puntaje <= 39 && puntaje >= 35)
        {
          printf("Ganaste una beca de $180.000\n");
         FondoBeca= FondoBeca - 180000;
         becados = becados + 1;
         postulantes = postulantes + 1;
         printf("monto restante: $ %.1f\n",FondoBeca);
        }
        else if (puntaje<=34)
        {
           FondoBeca= FondoBeca - 0;
           postulantes = postulantes + 1;
           printf("monto restante: $ %.1f\n",FondoBeca);
        }

int ptj_minimo=0,ptj_max=0;

if (puntaje >= ptj_max)
{
  ptj_max = puntaje;
}
if (puntaje <= ptj_minimo)
{
 ptj_minimo = puntaje;

}
alumnos = alumnos + 1;

}
printf("el puntaje máximo obtenido por los postulantes fue: %d\n\n",ptj_max);
printf("el puntaje mínimo obtenido por los postulantes fue: %d\n\n",ptj_minimo);
printf("el número de becados fue: %d\n\n",becados);
printf("el monto total entregado fue: %f en becas\n\n",FondoBeca);
return 0;
}


 




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)