[C con Clase] tarea persepcion inteligente con el for

iran antonio iran_enriquez en hotmail.com
Dom Abr 10 04:43:26 CEST 2011


el problema dise lo siguiente




Se pretende obtener un algoritmo para que éste perciba inteligentemente cuando el rango es ascendente y cuando descendente. Al ser ascendente, desplegará los datos en forma ascendente y viceversa, pero, con una modalidad especial "en letra", donde solamente imprimirá en letra los datos que se encuentren entre
 -10 y 10 (diez negativo y 10 positivo), el resto de los números simplemente en forma de arábigos. ejemplo:

Ejemplo 1:
dato inicial= 3, dato final= 8
tres
cuatro
cinco
seis
siete
ocho


Ejemplo 2:
dato inicial= 3, dato final= -2
tres
dos
uno
cero
menos uno
menos dos

Ejemplo 3:
dato inicial= -15, dato final= -7
-15
-14
-13
-12
-11
menos diez
menos nueve
menos ocho
menos siete


Como lograr para que dicho algoritmo logre tal objetivo?

realize esto pero creo q aun m falta y no se como planteralo... espero y me     puedan ayudar gracias... saludos.. 

#include <iostream>
using namespace std;
main() {
     int val_ini;
     
     cout <<"\1 ingresa el dato inicial: "; 
     

     for(cin >> val_ini; val_ini ; val_ini>0 ? val_ini-- : val_ini++)
    
       if (val_ini>=0 && val_ini<=0)
        switch(abs(val_ini))
        {   case 10 : cout << "Diez" << endl; break;
            case 9  : cout << "Nueve" << endl; break;
            case 8  : cout << "Ocho" << endl; break;
            case 7  : cout << "Siete" << endl; break;
            case 6  : cout << "Seis" << endl; break;
            case 5  : cout << "Cinco" << endl; break;
            case 4  : cout << "Cuatro" << endl; break;
            case 3  : cout << "Tres" << endl; break;
            case 2  : cout << "Dos" << endl; break;
            case 1  : cout << "Uno" << endl; break;
            case 0: cout <<val_ini<< endl;
            val_ini=1;
            
            else
            case 10 : cout << "Menos diez" << endl; break;
            case 9  : cout << "Menos nueve" << endl; break;
            case 8  : cout << "Menos ocho" << endl; break;
            case 7  : cout << "Menos siete" << endl; break;
            case 6  : cout << "Menos seis" << endl; break;
            case 5  : cout << "Menos cinco" << endl; break;
            case 4  : cout << "Menos cuatro" << endl; break;
            case 3  : cout << "Menos tres" << endl; break;
            case 2  : cout << "Menos dos" << endl; break;
            case 1  : cout << "Menos uno" << endl; break;
            case 0: cout << val_ini << endl;
                      val_ini=1;
        }
     system("pause");
}


Más información sobre la lista de distribución Cconclase