De antemano les aclaro nuevamente que soy un autodidacta y un
recién iniciado en C++ por lo tanto lo que expongo como teoría
sobre la RAM y los código ASCII puede estar errados, por ello
recurro a vuestro conocimiento para disipar mis dudas.-
El código que les dejo a continuación lo estoy haciendo para
ordenar de forma alfabética los 5 productos ingresados, por
supuesto qué le falta muchos complemento, pero a los efectos
de aclarar mi duda por el momento es suficiente.-
Yo tengo entendido qué al ingresar por ej. "sal",en la RAM quedara
escrito "11597108" y si luego ingreso "sol" en la RAM aparecerá
"115111108" de allí deduzco qué si pongo sal > sol el compilador
me dirá que no.-
dos preguntas:
1): estoy en lo cierto o estoy delirando.-
2): Si esto fuera así, como puedo hacer para imprimir en pantalla
el ASCII de los productos ingresados....?
Código:
Desde ya muchas gracias por el tiempo que deseen dedicarles a este post.-#include <iostream> #include <string> #include <cstdlib> using namespace std; int main(int argc, char *argv[]) { string ordenar[6]; cout << endl; cout << "------------- Alta de productos -------------" << endl; cout << endl; cout << " Ingrese producto.:"; getline(cin,ordenar[0]); cout << " Ingrese producto.:"; getline(cin,ordenar[1]); cout << " Ingrese producto.:"; getline(cin,ordenar[2]); cout << " Ingrese producto.:"; getline(cin,ordenar[3]); cout << " Ingrese producto.:"; getline(cin,ordenar[4]); int orden = 0,orduno = 0,orddos = 1; for (int salir=0; salir<11; salir++) { orden = ordenar[orduno].compare(ordenar[orddos]); if (orden > 0) ordenar[orduno].swap(ordenar[orddos]); orduno++,orddos++; if(salir == 4 || salir == 7 || salir == 9) orduno = 0, orddos = 1; } cout << endl; cout << " Productos ordenados" << endl; for (int fin=0; fin <6; fin++) cout << " " << ordenar[fin] << endl; system("pause"); return EXIT_SUCCESS; }
Un gran abrazo para todos
Daniel