I need to make that when user introduces a number with ',' or '.' the number converts into decimal number. I have to do it with switch structure. For now I have the following code:
int main()
{
int p=0,n=0,k=0,signo=1;
float positivos[p] = {},negativos[n] = {};
float valor, SumaPositivos=0, SumaNegativos=0,prueba=0;
char caracter;
std::cout.setf(std::ios::fixed);
std::cout.setf(std::ios::showpoint);
std::cout.setf(std::ios::showpos); //ios está en el espacio de nombres std y por eso hay que ponerle std antes.
std::cout.precision(2);
cout << "Introduce your banking movement: " ;
while (valor!=0)
{
cin.get(caracter);
switch(caracter)
{
case '-':
signo=-1;
break;
case ',':
case '.':
break;
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
prueba=prueba*10+signo*(float (caracter-'0'));
valor=prueba;
break;
case '\n':
if(prueba>0){
positivos[p] = prueba;
SumaPositivos+=prueba;
p++;
std::cout << prueba << "\n";
}
else if(prueba<0){
negativos[n] = prueba;
SumaNegativos+=prueba;
n++;
std::cout << prueba << "\n";
}
else if(prueba==0){
}
prueba=0;
signo=1;
break;
default:
{
cout << "Invalid character, introduce numbers.";
prueba=0;
caracter=' ';
}
}
}