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:
Mod: Obligatorio el uso de etiquetas GeSHi para códigos.
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.