Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: salack01 en 13 Noviembre 2019, 08:31 am



Título: Por favor ayuda URGENTE invalid type float[const int] for arrays subscript
Publicado por: salack01 en 13 Noviembre 2019, 08:31 am
Necesito ayuda es super urgente, es un trabajo que me toca presentar en unas horas
el programa me tiene que decir el valor en dinero de la recaudacion de cada
sucursal de la empresa y el valor en total de la empresa
pero me tira un error y no he podido solucionarlo, alguien que me ayude rapido por favor.





#include <iostream>
#include <locale.h>

using namespace std;

//el programa tiene que decirme el valor recaudado de cada sucursal y el de la empresa en general

const int CANT_ARTICULOS=10;
const int CANT_SUCURSALES=5;
float recaudacionPorSucursal(float precios[CANT_ARTICULOS], float cantVendidas[CANT_SUCURSALES][CANT_ARTICULOS], int fila);
void calcularRecaudacionTotal(float precios[CANT_ARTICULOS], float cantVendidas[CANT_SUCURSALES][CANT_ARTICULOS]);

int main (){
   setlocale(LC_ALL,"");
   
   float precioArt[10];
   int cantSucursalesArticulos[CANT_SUCURSALES][CANT_ARTICULOS];
   
   for(int i = 1; i <= 10; i++){
      
      cout << "Ingrese el precio del articulo número "<<i<<" : ";
      cin >> precioArt;
   }
   
   for(int s = 0; s < CANT_SUCURSALES; s++){
      
      for (int a = 0; a < CANT_ARTICULOS; a++){
         cout << "Digite las cantidades vendidas del articulo # " << a+1 <<" en la sucursal "<<s+1<<": ";
         cin >>  cantSucursalesArticulos[a];
      }
   }
   
   float precios, cantVendidas;
   
   calcularRecaudacionTotal(precios[CANT_ARTICULOS],cantVendidas[CANT_SUCURSALES][CANT_ARTICULOS]);
   
   return 0;
}


void calcularRecaudacionTotal(float precios[CANT_ARTICULOS], float cantVendidas[CANT_SUCURSALES][CANT_ARTICULOS]){
   float rTotal = 0;
   
   for(int s = 0; s < CANT_SUCURSALES; s++){
      rTotal += recaudacionPorSucursal(precios,cantVendidas,s);
      
      cout << "Venta en la sucursal " << s + 1 << " es " << recaudacionPorSucursal(precios,cantVendidas,s) * 1000 << "$" << endl;   
   }
   
   cout << "La recaudacion total es " << rTotal * 1000 << "$";
}

float recaudacionPorSucursal(float precios[CANT_ARTICULOS], float cantVendidas[CANT_SUCURSALES][CANT_ARTICULOS], int fila){
   int rSucursal = 0;
   
   for(int c = 0; c < CANT_ARTICULOS; c++){
      rSucursal += cantVendidas[fila][c] * precios[c];
   }
   
   return rSucursal;
}


Título: Re: Por favor ayuda URGENTE invalid type float[const int] for arrays subscript
Publicado por: @XSStringManolo en 13 Noviembre 2019, 12:29 pm
En que línea te sale el error? Yo entiendo el error como que estás usando un float dentro del operador array.


Título: Re: Por favor ayuda URGENTE invalid type float[const int] for arrays subscript
Publicado por: K-YreX en 13 Noviembre 2019, 14:32 pm
Pretendes que te den la solución en un plazo de unas horas por no haber intentado solucionarlo antes y encima... te has parado a ver tu propio mensaje?? Un código donde faltan índices que no se ven, con la mitad del texto en cursiva, la otra mitad tachado, sin etiquetas de Código GeSHi y donde es casi imposible leer nada...

Yo diría que el fallo que se puede ver a priori es que están usando dos funciones que reciben un array y una matriz de <float> y en el <main> has creado dos variables de tipo <float> sin más que son las que estás pasando a la función.