Ritorna alla pagina del corso.

Questa pagina contiene gli esercizi proposti in laboratorio e -alcune- delle soluzioni proposte.
Si suggerisce di provare a risolvere gli esercizi e solo in un secondo tempo di confrontare quanto fatto con le soluzioni proposte.

01: /*
02: 6. legga da tastiera una frase e la converta in l33t (basic)
03:    ovvero converta le seguenti lettere (maiuscole e minuscole) con i caratteri o sequenze di caratteri indicati
04:    A -> 4
05:    E -> 3
06:    G -> 6
07:    I -> 1
08:    O -> 0
09:    S -> 5
10:    T -> 7
11:  7. come il (6) in cui perĂ² si convertono anche:
12:    B -> |3
13:    D -> |)
14:    R -> |2
15:    U -> (_)
16: 
17: */
18: #include<stdio.h>
19: #include<stdlib.h>
20: #include<string.h>
21: 
22: int main(int argc, char **argv){
23:   char frase[2000];
24:   char l33t[2000];
25: 
26:   printf("Inserisci una frase da tradurre: ");
27:   scanf("%[^\n]", frase);
28: 
29:   int i, i2 = 0;
30:   for(i = 0; i < strlen(frase)  ; ++i)
31:   {
32: 
33:     switch( frase[i] )
34:     {
35:       case 'a':
36:       case 'A':
37:   l33t[i2++] = '4';
38:   break;
39:       case 'e':
40:       case 'E':
41:   l33t[i2++] = '3';
42:   break;
43:       case 'g':
44:       case 'G':
45:   l33t[i2++] = '6';
46:   break;
47:       case 'i':
48:       case 'I':
49:   l33t[i2++] = '1';
50:   break;
51:       case 'o':
52:       case 'O':
53:   l33t[i2++] = '0';
54:   break;
55:       case 's':
56:       case 'S':
57:   l33t[i2++] = '5';
58:   break;
59:       case 't':
60:       case 'T':
61:   l33t[i2++] = '7';
62:   break;
63:       case 'b':
64:       case 'B':
65:   //  B -> |3
66:   l33t[i2++] = '|';
67:   l33t[i2++] = '3';
68:   break;
69: 
70:       // TODO aggiungere gli altri casi
71:       default:
72:   l33t[i2++] = frase[i];
73:   break;
74:     }
75:   }
76: 
77:   l33t[i2] = '\0';
78: 
79:   printf("La frase tradotta in l33t e': %s\n", l33t);
80: 
81: 
82:   return 0;
83: }
84: 
85: