Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    11

    [c] programma calcola lunghezza frase

    Buon giorno a tutti , ho fatto questo programma per calcolare la lunghezza di una frase e funziona solo che da qualche problema ...

    vi posto il codice :

    codice:
    #include<stdio.h>
    #include<conio.h>
    int main(void)
    {
        char a[50];
        int i,j,cont=0,cont2=0;
        printf("inserisci la frase\n");
        gets(a);
          for(i=0;a[i]!='\0';i++)
          { 
            if((a[i]>='a')&&(a[i]<='z')||(a[i]==' '))                     
            cont++;                                          
            if(a[i]==' '){
              printf("%d\n",cont-1);
              cont=0;
              }
             
            
          }
         
          while(a[i]!=' '){
                    i--;
                   if((a[i]>='a')&&(a[i]<='z')||(a[i]==' '))    
                    cont2++;
                    
                    }
                    if(a[i]==' ')
                    printf("%d",cont2-1);
                    
        printf("\n\nPremere un pulsante per chiudere il programma");
        getch();
    }
    allora il problema è il seguente .. quando vado a eseguire il programma per la prima volta e inserisco qualsiasi frase o anche una parole mi dice alla fine il risultato esatto di quantè lunga quella frase o parola ... però certe volte mi succede che quando vado a inserire una parola sola magari "Ciao" mi dice che è lunga 5 lettere invece di 4 e lo stesso avviene quando nn inseirsco nessuna parola mi stampa o 0 o 1 o un numero a caso e volevo chiedervi come faccio a sistemarlo?

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Moderazione

    Come indicato al punto 6 del Regolamento interno, il codice va postato indentato all'interno degli sppositi tag CODE... c'è pure l'esempio pratico di come si fa.


    Correggo io.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    11
    scusa hehe

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Ma cosa dovrebbe fare il tuo codice?

    Calcolare la lunghezza della frase? O di ogni singola parola della frase?

    La prima parte (il primo for) calcola e visualizza le lunghezze delle singole parole ... e la seconda parte ?

    Se il programma l'hai scritto tu, indicaci cosa fa la seconda parte e come mai la prima fa un'altra cosa rispetto a quello che hai indicato nel titolo di questo thread ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    11
    allora il programma calcola la lunghezza delle singole paroli e ne deve stampare il numero se tolgo il secondo pezzo di ciclo lui nn mi calcola la parola finale della frase quindi ho agigunto il cilo while per stampare anche la parola finale

  6. #6
    Utente bannato
    Registrato dal
    Feb 2004
    Messaggi
    2,803


    eccolo il tuo programma
    codice:
    #include<stdio.h>
    #include<string.h>
    int main()
    {
        char a[50],*p;
        int i,j;
        printf("inserisci la frase\n");
        gets(a);
        p=strtok(a," ");
        while(p!=NULL){
                        printf("%d\n",strlen(p));
                        p=strtok(NULL," ");
                        }        
        printf("\n\nPremere un pulsante per chiudere il programma");
        getchar();
    }

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Originariamente inviato da topolus
    allora il programma calcola la lunghezza delle singole paroli e ne deve stampare il numero
    Cosa che e' diversa dal titolo del tuo thread ... "calcolo della lunghezza di una frase" ...

    Porre correttamente le questioni e' il primo passo per avere aiuto ...
    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 © 2024 vBulletin Solutions, Inc. All rights reserved.