Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 20 su 20
  1. #11
    Io una soluzione sono riuscito a farla.... Forse non rispetta proprio le consegne ma è l'unica, efficace, che mi venisse in mente...

    L'idea è:

    1) creo una stringa come variabile globale result di dimensione doppia delle altre due;
    2) creo anche un puntatore a carattere con lo stesso indirizzo della stringa result (puntano entrambi alla prima cella, così lavorerò su uno e ritornerò l'altro);
    3) copie le stringhe passate da input e passate a una funzione 'unione' in una stringa totale;
    4) utilizzo una funzione RICORSIVA per riempire la stringa result con i caratteri non ripetuti presenti nella stringa totale;
    5) ritorno la stringa result alla funzione 'unione';
    6) ritorno il risultato della funzione ricorsiva al main.

    Così funzia, so che la volevi ricorsiva del tutto, ma è la cosa più efficacie che mi è venuta in mente!
    Salute a voi, da Laikius!

    --> Faber est suae quisque fortunae <--

  2. #12
    Si è un'ottima idea, io ho abbozzato una soluzione mia e appena finisco di inserire gli ultimi commenti per renderla più leggibile la posto.

  3. #13
    Utente bannato
    Registrato dal
    Jan 2011
    Messaggi
    18

    GIUSTO

    MA CHE NE PENSATE DI QUESTA MEMORIA? no spam!

  4. #14

    Re: GIUSTO

    Originariamente inviato da Edaga
    MA CHE NE PENSATE DI QUESTA MEMORIA?
    Ne pensiamo che non c'entra una mazza con questa discussione. E che è spam.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #15
    Utente bannato
    Registrato dal
    Jan 2011
    Messaggi
    18
    io credo di no non è spam assolutamente era un consiglio o un coniglio ^_^

  6. #16
    Iscritto oggi, il nome di un e-shop come home e come nome di casella di posta, occupazione promoter, un tot di messaggi con link all'e-shop in questione in discussioni a caso per tutto il forum... più spam di così si muore...

    Altrimenti spiegami che cacchio c'entrano i link ad un negozio virtuale in discussioni di:
    • email html
    • siti di annunci
    • directory web
    • funzioni ricorsive
    • virtual host
    • uso della scanf
    • strutture di dati


    Comunque, ho già segnalato i tuoi interventi, vediamo se è un consiglio, un coniglio o un ban.
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #17
    Utente bannato
    Registrato dal
    Jan 2011
    Messaggi
    18
    bhe però sono contenta che ti sei andato a cercare informazioni su di me...^_^... mi sembra però che non ci sia scritto ladra oppure cose del genere...se volevo nasconderlo lo avrei nascosto ho detto la verità i miei messaggi sono informativi e non sono mai gli stessi...quindi non è spam...^_^ ma tu non hai mai postato un link?

  8. #18
    Originariamente inviato da Edaga
    bhe però sono contenta che ti sei andato a cercare informazioni su di me...^_^... mi sembra però che non ci sia scritto ladra oppure cose del genere...se volevo nasconderlo lo avrei nascosto ho detto la verità i miei messaggi sono informativi e non sono mai gli stessi...quindi non è spam...^_^
    Stai spaccando il capello inutilmente.
    http://en.wikipedia.org/wiki/Spam_%2...roup_and_forum
    Forum spam is the creating of messages that are advertisements or otherwise unwanted on Internet forums. [...] Most forum spam consists of links to external sites, with the dual goals of increasing search engine visibility [...] and generating more traffic for these commercial websites.
    Mi pare che i tuoi messaggi rientrino perfettamente in questa descrizione.
    Tra l'altro, avrai notato che i messaggi nelle altre sezioni ti sono stati censurati proprio per spam; e anche non fosse spam, sarebbero comunque link off-topic rispetto alle discussioni in cui hai postato.
    ma tu non hai mai postato un link?
    Posto link a risorse utili alla risoluzione dei problemi, e mai per pubblicizzare siti. Gli unici link "promozionali" concessi sono quelli nella firma e nel campo Home page del profilo (più eventualmente quelli nella sezione apposita sugli annunci di nuovi siti web).
    Amaro C++, il gusto pieno dell'undefined behavior.

  9. #19
    Utente bannato
    Registrato dal
    Oct 2010
    Messaggi
    1,219
    Ho visto sull' altro post cosa hai messo,mi sa che sei venuto/a qua solo per fare pubblicità.
    E questo è spam,perchè siamo gente seria che discute di cose serie, la pubblicità va anche bene al fine primo tempo di una partita,ma qua parliamo di cose serie e mi pare oltraggioso sporcare il forum in questo modo.

  10. #20
    Questa è la soluzione che ho trovato, in pratica le stringhe vengono trattate come vettori di caratteri, il problema è che così facendo mi replica le lettere, mentre nella traccia è richiesto che non c'è ne siano, come può essere migliorato?

    ps: scusate la brutta formattazione del codice

    codice:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    typedef char tstr[50];   //Definizione di un nuovo tipo "tstr", abbreviazione arbitraria di "tipo stringa"
    
    int unionSet(int x, int z,tstr alfa, tstr beta, tstr gamma, int numelementia, int numelementib, int s); //Prototipo di funzione unionset
    
    int
    main(void)
    {
      tstr a="aeiou";         //Dichiarazione delle variabili
      tstr b="arsue";
      tstr g;
      int numelementia;       //numero di elementi della prima stringa
      int numelementib;       //numero di elementi della prima stringa
      
      int z; //variabile nel richiamo alla funzione
      int x; //variabile nel richiamo alla funzione
      int s; //variabile ciclo for per la stampa del vettore gamma
      
      int y; //variabile con valore la somma degli elementi di a + gli elementi di b
      
      z = 0;
      x = 0;
      s = 0;
      
      numelementia=strlen(a);
      numelementib=strlen(b);
      
      
      unionSet(x, z, a, b, g, numelementia, numelementib, s);  //richiamo alla funzione unionset
      y = numelementia + numelementib;
      printf("\n\n");
      printf("Gli elementi di gamma sono: ");
      fflush(stdin);
      for(s=0; s <= y; s++)  //ciclo for per l'output dei dati del vettore gamma
      {
       printf("%c",g[s]);
      }
    
    
    printf("\n\n\n");
    system("PAUSE");
    return 0;
    }
    
    int 
    unionSet(int x, int z,tstr alfa, tstr beta, tstr gamma, int numelementia, int numelementib, int s) //funzione unionset per la fusione di alfa e beta in gamma
    {
      if((z <= numelementia) && (x <= numelementib))    //confronto tra gli elementi di alfa e gli elementi di beta
        if((alfa[z])<(beta[x]))
          {
           gamma[s]= alfa[z];
           z++;
           s++;       
           return unionSet(x, z, alfa, beta, gamma, numelementia, numelementib, s);  //ritorno alla funzione unionset
          }
           else
            {
             gamma[s] = beta[x];
             x++;
             s++;
             return unionSet(x, z, alfa, beta, gamma, numelementia, numelementib, s);
            }
           else
       {
        if (z <= numelementia)                  //caricamento degli elementi di alfa, finito il confronto con gli elementi beta,
           {                                    //nella stringa gamma
            gamma[s]= alfa[z];
            printf("%c",gamma[s]);
            z++;
            s++;       
            return unionSet(x, z, alfa, beta, gamma, numelementia, numelementib, s);
           }
           else 
            if (x <= numelementib)               //caricamento degli elementi di beta ne vettore gamma
              {
               gamma[s] = beta[x];
               x++;
               s++;
               return unionSet(x, z, alfa, beta, gamma, numelementia, numelementib, s);
             }
             else                  //condizione di uscita dalla ricorsione
             return 0;
       }  
    }

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.