Concetti Chiave

  • La funzione C permette di verificare se una parola è palindroma confrontando i caratteri agli estremi.
  • Utilizza la ricorsione per controllare se la parte centrale della parola è anch'essa palindroma.
  • Il programma richiede all'utente di inserire una parola e fornisce un feedback sul risultato.
  • La funzione palindroma restituisce 1 se la parola è palindroma e 0 altrimenti.
  • Gestisce parole fino a 30 caratteri, utilizzando la funzione gets per la lettura dell'input.

Scrivere una funzione C che determini seuna parola è palindroma.

Esempi di parole palindrome

Una parola è palindroma se i caratteri più a sx e più a dx coincidono e se la parte tra loro compresa è palindroma.

Es.: radar, oro, anna, …

[/p]
[p]
[b]int main[/b]()
[/p]
[p]
{
[/p]
[p]
char parola[30];
[/p]
[p]
int risult;
[/p]
[p]
[b][b]printf[/b][/b]("Digita una parola\n");
[/p]
[p]
[b]gets[/b](parola);
[/p]
[p]
risult=palindroma(parola,0,[b]strlen[/b](parola)-1);
[/p]
[p]
if(risult)
[/p]
[p]
printf("La parola e' palindroma\n");
[/p]
[p]
else
[/p]
[p]
printf("La parola non e' palindroma\n");
[/p]
[p]
[b]getchar[/b]();
[/p]
[p]
return 0;
[/p]
[p]
}
[/p]
[p]
[b]int palindroma[/b](const char * str, int sx, int dx)
[/p]
[p]
{
[/p]
[p]
if(sx >= dx)
[/p]
[p]
return 1;
[/p]
[p]
else if(str[sx] == str[dx])
[/p]
[p]
return palindroma(str,sx+1,dx-1);
[/p]
[p]
else
[/p]
[p]
return 0;
[/p]
[p]
}
[/p]
[p]

Domande da interrogazione

  1. Come si determina se una parola è palindroma in C?
  2. Si utilizza una funzione ricorsiva che confronta i caratteri agli estremi della parola e verifica se la parte centrale è anch'essa palindroma. Se i caratteri coincidono, si continua a controllare la parte interna; altrimenti, la parola non è palindroma.

  3. Qual è la struttura principale del programma per verificare una parola palindroma?
  4. Il programma chiede all'utente di inserire una parola, quindi chiama la funzione `palindroma` passando la parola e gli indici degli estremi. In base al risultato, stampa se la parola è palindroma o meno.

  5. Qual è il ruolo della funzione `palindroma` nel codice?
  6. La funzione `palindroma` verifica ricorsivamente se i caratteri agli estremi della stringa sono uguali e continua a controllare la parte interna fino a quando non si raggiungono gli indici estremi, restituendo 1 se la parola è palindroma e 0 altrimenti.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community