Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    7

    Esercizio in C

    Buongiorno a tutti,
    Mi presento sono telani vengo da Piacenza.
    Mi sono appena registrato al forum, anche se è tempo che lo seguo perchè molto utile, perchè non riesco a trovare la soluzione ad un esercizio che devo consegnare al mio professore entro venerdì mattina e volevo chiedere se qualcuno potrebbe postarmi la soluzione in linguaggio C...
    scusate la rottura ma sarebbe molto importante...

    vi riporto il testo completo...


    FUNZIONI SU STRINGHE

    Si scriva in C una funzione con il seguente prototipo:
    int crea_stringa (int V[], int Dim, char S[]);

    La funzione riceve in ingresso un vettore di interi V e la sua dimensione Dim. Si suppone che il vettore contenga solo valori compresi tra 1 e 26, inclusi. La funzione devi convertire questi Dim valori in caratteri minuscoli, con l'associazione 1='a', 2='b',....., 26='z' e mettere i corrispondenti caratteri nella stringa S. La funzione ritorna come valore la differenza tra il numero di consonanti e il numero di volai contenuti in S.

    Esempio:
    intV[7]={2, 5, 7, 4, 18, 13, 22}---->S="begdrmv"
    valore ritornato = 5 (6 consonanti - 1 vocale)

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480

    Re: Esercizio in C

    Originariamente inviato da telani
    ... è tempo che lo seguo ...

    ... volevo chiedere se qualcuno potrebbe postarmi la soluzione in linguaggio C...
    Se segui da tempo il forum, sai che qui non si fanno i compiti altrui ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    7
    E' tempo che utilizzo il forum come aiuto per programmare...
    è tempo che mi scervello con questo esercizio e non riesco proprio a saltarci fuori quindi, come molte persone fanno su questo forum, ho semplicemente chiesto un aiuto...
    Ma se è un grosso problema niente...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da telani
    , come molte persone fanno su questo forum, ho semplicemente chiesto un aiuto...
    No ... scusa ... tu hai chiesto

    "se qualcuno potrebbe postarmi la soluzione in linguaggio C..."

    e a parte l'italiano, il senso è "fatelo per me", non datemi un aiuto.

    Se vuoi un aiuto, proponi una tua soluzione, dicci perchè non funziona, discutiamone ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Ciao telani, diciamo che oregon indirettamente ti aveva invitato a postare il codice che avevi scritto o almeno provato a scrivere. Comunque, il tuo problema può essere risolto facendo uso della tabella ASCII. L' elemento 'a' della tabella ascii ha valore 97. Quindi questo valore deve corrispondere a 1... Tira tu le conclusioni e facci sapere

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Moderazione

    Come è già stato detto, un conto è ricevere aiuto, un conto è delegare ad altri la risoluzione del problema.

    Invito quindi a proporre, come richiesto, una soluzione da valutare ed eventualmente correggere.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    7
    avete pienamente ragione... e mi scuso se ho offeso qualcuno... domani posto il mio codice e i relativi bug...
    scusate ancora a domani...

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    7
    Vi posto il codice,
    ho fatto anche il main per vedere se girava, solo che mi blocco nella funzione, concettualmente penso che bisogna usare il codice ASCII dal 97 a 123 in cui si sono le lettere minuscole solo che non riesco a convertire il tutto in codice.


    #include <stdio.h>
    main () {

    int n;
    int I;
    int v[];
    char s[];
    int val_rit=0;

    do {
    printf("Dammi dimensione vettore:");
    scanf("%d", &n);
    } while !(n>0);

    for(I=0; I<n;I++)
    do{
    printf("Dammi valore:");
    scanf("%d", &v[I]);
    while !(v[I]>=1 && v[I]<=26);

    val_rit= crea_stringa(v[], n, s[]);
    printf("Il valore ritornato=%d", val_rit);

    for(I=0;I<n;I++)
    printf("%c", s[I]);

    };


    questo era il main...







    int crea_stringa(int v[], int dim, char s[]) {

    int j;
    int conta=0;

    for(j=0; j<dim; j++)




    qui mi blocco... ho provato molte soluzioni ma neanche una lontanamente corretta...
    voi cosa ne dite?

  9. #9
    Originariamente inviato da telani

    #include <stdio.h>
    main () {

    int n;
    int I;
    int v[];
    char s[];
    int val_rit=0;

    do {
    printf("Dammi dimensione vettore:");
    scanf("%d", &n);
    } while !(n>0);

    for(I=0; I<n;I++)
    do{
    printf("Dammi valore:");
    scanf("%d", &v[I]);
    }while !(v[I]>=1 && v[I]<=26);

    val_rit= crea_stringa(v[], n, s[]);
    printf("Il valore ritornato=%d", val_rit);

    for(I=0;I<n;I++)
    printf("%c", s[I]);

    };
    Allora cominciamo con il main:
    manca la parentesi che ti segnato in rosso;

    Passando poi alla funzione crea_stringa :
    codice:
    int crea_stringa(int v[], int dim, char s[]) {
    
    int j;
    int conta=0;
    
    for(j=0; j<dim; j++)
    allora intanto devi tenere un contatore per le vocali e uno per le consonanti;
    Una volta che trasfoermi il numero in lettera incrementi il contatore corrispondente;
    Per quanto riguarda la conversione:
    1 -> 97
    2 -> 98
    3 -> 99
    In generale
    i -> 96 +i ;
    Dopo questo aiuto prova a risolvere il problema altrimenti riposta gli eventuali cambiamenti ciao

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    7
    grazie mille!^_^
    ma per la conversione ci vuole una funzione di una libreria particolare oppure con un semplice assegnamento?

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.