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ú

Mensajes - marchiali

#11
muuchas gracias por la ayuda me solucionaron las dudas.
#12
Programación C/C++ / Ayuda con Algoritmo C++
23 Julio 2014, 22:17 PM
Hola a todos. soy estudiante de informatica y nuevo en esto de programar, y estoy necesitando ayuda con la resolucion de un ejercicio.

el ej. es el siguiente: utilice la definicion typedef struct{char ape_nom[40]; int edad; float altura,peso}paciente; para diseñar una funcion llamada masacorp55 que obtenga los datos del paciente mayor a 55 años de mayor valor de masa corporal. la funcion debe recibir entre sus parametros un arreglo con los datos de N pacientes. masa corporal= peso/altura^2. escriba un prog. cliente. que ingrese los datos de n pacientes y muestre los dtos de la persona de mayor masa corporal.

hasta ahora este es el algoritmo que pude programar:
Código (c++) [Seleccionar]
#include <iostream>
#include <string>
using namespace std;

typedef struct{ char ape_nom[40];
int edad; float altura, peso;} paciente;

paciente masacorp55(paciente x[], int n){
float masa; float maxmas=1;
for (int i=0; i<n; i++){
if (x[i].edad>55){
masa=x[i].peso/(x[i].altura*x[i].altura);
if(masa>maxmas){
maxmas=masa;
x[i]=maxmas;
}
}
}
return x[i];
}

int main(int argc, char *argv[]) {
paciente A[1000]; int n;
cout<<"ingrese num. de pacientes";
cin>>n; int i;
for (int i=0; i<n; i++){
cout<<"nombre del paciente";
cin.getline (A[i].ape_nom,40);
cout<<"edad";
cin>>A[i].edad;
cout<<"altura";
cin>>A[i].altura;
cout<<"peso";
cin>>A[i].peso;
}

masacorp55(A[i],n);
cout<<masacorp55;

return 0;
}


pero me tira un error. no puedo asignar a A, maxmas ya que uno es un struct y el otro tipo float.  Que sugerencias y correcciones pueden aportarme?. gracias por su tiempo