Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Angellus Blood

#1
Programación C/C++ / ayuda!!! Funciones en C
11 Septiembre 2018, 09:02 AM
Me podrían ayudar a verificar mi código?  el error es que sólo me pide el primer dato, el número de gallinas y se cierra.Se los agradeceré infinitamente, el problema es el siguiente:
En una granja se requiere saber alguna información para determinar el precio de venta por cada kilo de huevo. Es importante determinar el promedio de calidad de las n gallinas que hay en la granja. La calidad de cada gallina se obtiene según la fórmula:

                         calidad = peso de la gallina * altura de la gallina
                                                número de huevos que pone

Finalmente, para fijar el precio del kilo de huevo, se toma como base la siguiente tabla:

PROMEDIO CALIDAD                      PRECIO POR KILO
mayor o igual que 15 ---------------  1.2 * promedio de calidad
mayor que 8 y menor que 15 --------1.00 * promedio de calidad   
menor o igual que 8 ----------------- 0.80 * promedio de calidad             
     
CODIGO:

Código (cpp) [Seleccionar]
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#include<locale.h>

struct Gallina {

float peso;
float altura;
   int numhuevos;
   float calidad;
   float precio;
};

Gallina gallinas[100];

float ObtenerPromedioCalidad(struct Gallina gallinas[100], int numGallinas)
{    
int i;
float sumatoriaCalidad = 0;
for(i=0; i<numGallinas; i++)
{

gallinas[i].calidad=(gallinas[i].peso*gallinas[i].altura)/gallinas[i].numhuevos;
sumatoriaCalidad = sumatoriaCalidad + gallinas[i].calidad;
return sumatoriaCalidad / numGallinas;
}
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
void definir_Precio(struct Gallina gallinas[100]){
int i;
   
    if(gallinas[i].calidad>=15) {
    gallinas[i].precio=(1.2*gallinas[i].calidad);
}
else if(gallinas[i].calidad>8){
  gallinas[i].precio=(1*gallinas[i].calidad);
    }
    else if(gallinas[i].calidad>=8 && gallinas[i].calidad<=15){
    gallinas[i].precio=(0.80*gallinas[i].calidad);
     }
   printf("\n\n\Costo del kilo de huevo de acuerdo a calidad: ", gallinas[i].precio);

}

int main()
{

setlocale(LC_CTYPE,"spanish");

   int numGallinas;
   int sumatoriaCalidad;
int i;      

       printf("Ingrese el número de gallinas a verificar: ");
       scanf("%d", numGallinas, "\n");
       
       for (int i=0; i<numGallinas; ++i){
       
       fflush(stdin);
       printf("Peso de la gallina: ");
       scanf("%f", gallinas[i].peso, "\n");

       printf("Altura de la gallina:");
       scanf("%f", gallinas[i].altura, "\n");

printf("Número de huevos que pone la gallina:");
       scanf("%d", gallinas[i].numhuevos, "\n");
       
}
        float ObtenerPromedioCalidad(Gallina gallinas[]);
       
        for(i=0;i<numGallinas;i++)
        {
        scanf("\n\nPromedio de calidad: ", sumatoriaCalidad);
}
       
       void definir_Precio(struct Gallina gallinas[100]);      
       
       return 0;
   }




Mod: Obligatorio el uso de etiquetas GeSHi para códigos.