TheWWP ha scritto:Il problema è il seguente:
leggere un testo e convertire le cifre nel loro equivalente testuale. Es/
16 Settembre 03 --> Uno Sei Settembre Zero Treora dovendo farlo in awk avevo pensato ad usare
gensub. Farei un ciclo da 0 a 9 per i valori ma per la sostituzione letterale come potrei fare?
Non credo sia corretto scrivere 10 istruzioni uguali per avere Uno Due Tre... etc.
C\'è un modo di fare questo più rapidamente?
grazie

#include<iostream>
int main(int argc, char* argv[])
{
if(argc != 2)
exit(-1);
std::«»string input = argv[1];
std::«»string output = \"\";
for(int i = 0; i < input.size(); i++)
switch(input[i])
{
case 48: output += \"zero\"; break;
case 49: output += \"uno\"; break;
case 50: output += \"due\"; break;
case 51: output += \"tre\"; break;
case 52: output += \"quattro\"; break;
case 53: output += \"cinque\"; break;
case 54: output += \"sei\"; break;
case 55: output += \"sette\"; break;
case 56: output += \"otto\"; break;
case 57: output += \"nove\"; break;
default: output += input[i];
}
std::cout<<output<<std::endl;
}
Questo programma C++, fa quello che dici...