Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problema de arrays y funciones

Estas en el tema de Problema de arrays y funciones en el foro de C/C++ en Foros del Web. Este es el codigo para un caso especifico @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código C++: Ver original void stadium ( float [ ] )     {   ...
  #1 (permalink)  
Antiguo 23/11/2012, 14:22
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 12 años, 6 meses
Puntos: 1
Problema de arrays y funciones

Este es el codigo para un caso especifico
Código C++:
Ver original
  1. void stadium(float [])
  2.     {
  3.         cout << "Plays in his stadium the team" << "not important" << "?" << endl;
  4.         cin >> result;
  5.  
  6.                 if (result == true){
  7.              team1[0] = {2};
  8.         }else{
  9.              team1[0] = {0};
  10.         }  
  11.  
  12.     }
  13.  
  14. int main ()
  15. {
  16.    
  17.     stadium(team1);
  18.     cout << team1[0];
  19.         system("pause");
  20.         return 0;
  21.  
  22. }

Pero necesito que la funcion sea aplicable a 30 variables mas...:

Código C++:
Ver original
  1. void stadium (float [])
  2.     {
  3.         cout << "Plays in his stadium the team" << "NAME OF THE ARGUMENT 1 ( array that is in the argument )" << "?" << endl;
  4.         cin >> result;
  5.  
  6.                 if (result == true){
  7.              teamWrittedInTheArgument[0] = {2};
  8.         }else{
  9.              teamWrittedInTheArgument[0] = {0};
  10.         }  
  11.  
  12.     }
  13.  
  14. int main ()
  15. {
  16.    
  17.     stadium(teamX);
  18.         system("pause");
  19.         return 0;
  20.  
  21. }

#######################

Explicado con solo texto:

Necesito una funcion que pregunte al usuario si el equipo del argumento juega en su estadio, escribes 1 o 0 y dependiendo de la respuestas guarda en la posicion 0 de la array el 0 o 0.2..

espero haberme explicado..gracias :)
  #2 (permalink)  
Antiguo 23/11/2012, 17:15
Avatar de ZeKi  
Fecha de Ingreso: noviembre-2012
Ubicación: Jaén
Mensajes: 61
Antigüedad: 12 años
Puntos: 6
Respuesta: Problema de arrays y funciones

Lo que tienes que hacer, siemplemente, es hacer un bucle en el main que recorra todos los teamX que tengas. Para ello deberás declarar un array de esta estructura de datos. Por ejemplo:

Código C++:
Ver original
  1. int main (){
  2.     team teams[X]; // X representa el número de equipos que vas a tener
  3.  
  4.     for(int i = 0; i < X; i++){
  5.         stadium(teams[i]);
  6.     }
  7.     system("pause");
  8.     return 0;
  9. }
  #3 (permalink)  
Antiguo 23/11/2012, 17:16
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 12 años, 6 meses
Puntos: 1
Respuesta: Problema de arrays y funciones

pero esque cada team tiene que tener una array ya que tiene que guardar diversos valores separados.. y ya no se puede hacer, no?
  #4 (permalink)  
Antiguo 23/11/2012, 17:23
Avatar de ZeKi  
Fecha de Ingreso: noviembre-2012
Ubicación: Jaén
Mensajes: 61
Antigüedad: 12 años
Puntos: 6
Respuesta: Problema de arrays y funciones

Claro que se puede hacer, simplemente tienes que crear una estructura que represente el concepto "team", con un array de flotantes dentro, y luego creas un array cuyos elementos tienen la estructura "team", no sé si me explico. Te dejo un ejemplo:

Código C++:
Ver original
  1. struct team{
  2.    float v[2];
  3. };
  4.  
  5. int main (){
  6.       struct team teams[X]; // X representa el número de equipos que vas a tener
  7.  
  8.       for(int i = 0; i < X; i++){
  9.           stadium(teams[i].v); // Le pasamos a la función el vector que hay dentro de la estructura
  10.       }
  11.       system("pause");
  12.       return 0;
  13. }
  #5 (permalink)  
Antiguo 23/11/2012, 17:39
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 12 años, 6 meses
Puntos: 1
Respuesta: Problema de arrays y funciones

Creo que ya te he cogido, de todas maneras leere sobre las estructuras, que no sabia que existian , si tengo alguna duda la posteare por aqui muchas gracias Zeki :)
  #6 (permalink)  
Antiguo 23/11/2012, 18:21
 
Fecha de Ingreso: mayo-2012
Mensajes: 76
Antigüedad: 12 años, 6 meses
Puntos: 1
Respuesta: Problema de arrays y funciones

Cita:
stadium(teams[i].v);
La V se supone que es el nombre de las variables dentro de la estructura, pero como hago que cambie segun los nombres de las otras 30 variables que he puesto en la estructura? porque es ahi donde no se seguir...

Código C++:
Ver original
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. //******* EQUIPOS *****************************************************************************************************************************************************************************************************************************
  6.     string n_equipos [30] = { "Espanol", "Getafe", "Atletico de Madrid", "Sevilla","Betis" ,"Real Madrid" ,"Athletic" ,"Deportivo" ,"Levante" ,"Barcelona" ,"Rayo Vallecano" ,"Mallorca" ,"Las Palmas" ,"Cordoba" ,"Hercules" ,
  7.                           "Sporting" ,"Ponferradina" ,"Huesca" ,"Sabadell" ,"Mirandes" ,"Almeria" ,"Murcia" ,"Girona" ,"Elche" ,"Xerez" ,"Alcorcon" ,"Malaga" ,"Valencia" ,"Valladolid" ,"Granada" };
  8. //*********************************************************************************************************************************************************************************************************************************************
  9.  
  10. int result;
  11. struct total{
  12.     float espanol[5];
  13.     float getafe[5];
  14.     float atmadrid[5];
  15.     float sevilla[5];
  16.     float betis[5];
  17.     float rmadrid[5];
  18.     float athletic[5];
  19.     float deportivo[5];
  20.     float levante[5];
  21.     float barcelona[5];
  22.     float rvallecano[5];
  23.     float mallorca[5];
  24.     float laspalmas[5];
  25.     float cordoba[5];
  26.     float hercules[5];
  27.     float sporting[5];
  28.     float ponferradina[5];
  29.     float huesca[5];
  30.     float sabadell[5];
  31.     float mirandes[5];
  32.     float almeria[5];
  33.     float murcia[5];
  34.     float girona[5];
  35.     float elche[5];
  36.     float xerez[5];
  37.     float alcorcon[5];
  38.     float malaga[5];
  39.     float valencia[5];
  40.     float valladolid[5];
  41.     float granada[5];;
  42. };
  43.  
  44. void estadio (float [])
  45.     {
  46.         cout << "Juega en casa el" << "NombreDelEquipo" << "?" << endl;
  47.         cin >> result;
  48.  
  49.                 if (result == true){
  50.              Aqui no se que poner para referirme al equipo del argumento[0] = {2};
  51.         }else{
  52.              Aqui no se que poner para referirme al equipo del argumento[0] = {0};
  53.         }  
  54.  
  55.     }
  56.  
  57. int main (){
  58. struct total equipos[30];
  59. for(int i = 0; i < 30; i++){
  60. estadio(equipos[i].v);
  61. }
  62. system("pause");
  63. return 0;
  64. }
  #7 (permalink)  
Antiguo 23/11/2012, 19:17
Avatar de ZeKi  
Fecha de Ingreso: noviembre-2012
Ubicación: Jaén
Mensajes: 61
Antigüedad: 12 años
Puntos: 6
Respuesta: Problema de arrays y funciones

Si lo haces de esa manera no puedes hacer un bucle y tienes escribir una llamada por cada ciudad que tengas. En el ejemplo que yo te he puesto, cada posición de teams correspondería a cada una de las ciudades, y dentro de estas, ya estaría el vector con las dos posiciones.

Etiquetas: arrays, funcion, funciones, int, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:51.