Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [C] Aiuto esercizio verifica occorrenze e verifica palindromo

    Ciao a tutti,

    ho iniziato da poco a studiare programmazione e sto avendo dei problemi con degli esercizi.

    Il primo dei due dovrebbe verificare se due valori (x,y) hanno lo stesso numero di occorrenze in un array di caratteri.
    codice:
    main()
    {
       int i;
       char c1,c2,s1,s2;
       char a[100];
    
    
       cout<<"inserisci una stringa: ";
       cin>>a;
       cout<<"c1: ";
       cin>> c1;
       cout<<"c2: ";
       cin>>c2;
    
    
       for(i=0;i<='\0';++i)
       {
           if (c1==a[i])
            s1+=1;
    
    
       }
       for (i=0;i<='\0';++i)
       {
           if (c2==a[i])
               s2+=1;
       }
    
    
        if (s1==s2)
       {
           cout<<"vero";
       }
       else
       {
           cout<<"falso";
       }
    }
    il secondo invece deve verificare se un array di caratteri è palindromo. Qui non so molto dove mettermi le mani. La mia intenzione era di copiare l'array a[] nell'array b[] al contrario, per poi verificare i valori all'interno. Il problema è che non riesco a copiare l'array di caratteri. Vi riporto la porzione di codice:
    codice:
     int i,j;
        char a[5],b[5];
    
    
        cout<<"inserisci la stringa: ";
        cin>>a;
    
    
        i=0;
        for(j=5;j>0;++j)
        {
            b[j]=a[i];
            i++;
        }
        cout<<b;

    Scusate per la confusione ma ho cominciato da pochissimi giorni!

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    La prima causa di confusione è aprire una discussione per due programmi diversi.

    Comunque, sul primo programma non si capisce quale sia il problema.

    Per il secondo, basta confrontare metà dell'array dove c'è la parola con l'altra metà ... il primo carattere con l'ultimo, il secondo con il penultimo e così via. Se ne trovi almeno uno diverso allora non è palindroma.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Quote Originariamente inviata da oregon Visualizza il messaggio
    La prima causa di confusione è aprire una discussione per due programmi diversi.

    Comunque, sul primo programma non si capisce quale sia il problema.

    Per il secondo, basta confrontare metà dell'array dove c'è la parola con l'altra metà ... il primo carattere con l'ultimo, il secondo con il penultimo e così via. Se ne trovi almeno uno diverso allora non è palindroma.
    Intanto grazie per la risposta e scusa ancora per la confusione, volevo evitare di aprire due discussioni.

    Per quanto riguarda il primo, semplicemente non funziona. Se lo mando in esecuzione prende tutti i comandi ma al termine la riposta non sempre è quella corretta.

    per quanto riguarda il secondo proverò, anche se non mi è molto chiaro il ragionamento da fare.

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ok, per il primo, cose del genere

    for(i=0;i<='\0';++i)

    non hanno senso.

    Per il secondo ti consiglio di sviluppare il discorso su un altro thread.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Ok, per il primo, cose del genere

    for(i=0;i<='\0';++i)

    non hanno senso.
    ho riportato male, il codice corretto + for(i=0;a[i]!=0;++i)

    ciò nonostante il programma non funziona. Idee su quale potrebbe essere la causa?

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quote Originariamente inviata da BarryAllen7 Visualizza il messaggio
    ho riportato male, il codice corretto + for(i=0;a[i]!=0;++i)

    ciò nonostante il programma non funziona. Idee su quale potrebbe essere la causa?

    s1 e s2 sono usate ma non inizializzate
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.