Aiuto vorrei sapere una soluzione ricorsiva al problema di scrivere una stringa alla rovescio!!
Grazie!
Aiuto vorrei sapere una soluzione ricorsiva al problema di scrivere una stringa alla rovescio!!
Grazie!
Linguaggio?
se è c o c++ ti conviene immagazzinare una stringa in un array di char
la funzione ricorsiva scorrerà l'array (di cui sai le dimensioni) e inizierà a scivere solo quando è giunta al trermine
Prova una cosa del genere:
PS: Non ho testato il codice, cmq dovresti passargli la stringa e la ritorna alla rovesciacodice:char* Rovescia(char* str) { if (*str) { Rovescia(str+1); strncat(str, str, 1); } return str+(strlen(str)/2); }![]()
CrystalSoft | Software House & Web Agency di WinRefine, Mercante in Fiera e altro...
Annunci Zoo | Annunci gratuiti per il mondo degli Animali
ElettroMercatino | Annunci a tema Informatico ed Elettronico
codice:void inverti_stringa(char *stringa,int dimensione) { char scambia=stringa[0]; stringa[0]=stringa[dimensione-1]; stringa[dimensione-1]=scambia; if(dimensione-2>1) inverti_stringa(&stringa[1],dimensione-2); }
Puoi farlo in innumerevoli linguaggi di programmazione ed in innumerevoli modi.
Eccotene uno in PHP 5.2.9
che in output produce:Codice PHP:
<?php
function EchoReverseStringRecursive (&$theString, $theLength){
assert ('true == isset ($theString)');
assert ('true == isset ($theLength)');
if ($theLength > 0){
echo $theString [$theLength - 1];
EchoReverseStringRecursive ($theString, $theLength - 1);
}
}
function main (){
$aString = "Hello World!";
EchoReverseStringRecursive ($aString, strlen ($aString));
echo "\n";
}
main ();
?>
;-)codice:$ php -f main.php !dlroW olleH
Il linguaggio va sempre indicato anche nel titolo, come da Regolamento.
Qui l'ho aggiunto io, sperando che sia corretto.
MARCO BREVEGLIERI
Software and Web Developer, Teacher and Consultant
Home | Blog | Delphi Podcast | Twitch | Altro...