[C con Clase] switch no suma
Marcelo
marcefont en gmail.com
Mar Sep 18 03:00:44 CEST 2012
Ejercicio sencillo para lógica. Se trata de sumar bolillas de tres colores diferentes las cuales se extraen de a una por vez. Mi problema es que no me suma y me muestra al final todos los valores en cero :@. La variable vOpc está como char porque inicialmente la definí como int (leí que un caracter es un entero y se trataría en éste caso de la misma manera) pero solo me pedía el primer ingreso y luego el bucle se repetía hasta terminar sin pedir nada más.
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <conio.h>
#include <ctype.h>
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
int i , vConAm , vConRo , vConVe;
char vOpc;
vConAm = 0 ; vConRo = 0 ; vConVe = 0;
for(i = 0 ; i <= 10 ; i++){
clrscr();
cout << "Bolilla numero: " << i << "\n\n";
cout << "Ingrese color de bolilla: 'A' , 'R' , 'V' :\t\a";
cin >> vOpc;
toupper(vOpc);
switch(vOpc){
case 'A':
vConAm = vConAm++;
break;
case 'R':
vConRo = vConRo++;
break;
case 'V':
vConVe = vConVe++;
break;
//default:
//cout << "\n\n\tOpcion no valida.";
}
}
cout << "\n\nTotal de Amarillas: " << vConAm;
cout << "\nTotal de Rojas: " << vConRo;
cout << "\nTotal de Verdes: " << vConVe << "\n\n";
system("pause");
return 0;
}
Desde ya, muchísimas gracias. :-)
Más información sobre la lista de distribución Cconclase