Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1

    Gli array,mettere un elemento nel primo spazio libero

    Buonasera a tutti ragazzi,come faccio a far inserire un elemento in un array senza dichiarare la posizione ma automaticamente lo mette nel primo spazio libero?

    per esempio abbiamo un array

    x[2]
    quindi di tre spazi (0,1,2),io voglio che spunti un messaggio che chieda di inserire un qualcosa (esempio una lettera) e venga messo nell'array nel primo spazio libero disponibile senza dichiararlo,come si fa?

    mi avevano detto che si faceva:
    codice:
    cout<<"inserisci valore";
    cin>>x[];
    è il valore inserito veniva messo nel primo spazio libero,ma ahime il compilatore mi ha un errore.

    aspetto risposte,grazie!

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

    Anche perché non si capisce cosa si intenda con "libero" ...

    In un array non esiste una posizione "libera" perché non c'è un valore che indichi questa condizione.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Un array "stile C" non è altro che un blocco contiguo di memoria, devi essere tu a tenere traccia dell'ultimo elemento utilizzato.
    Se invece usi un std::vector puoi usare il metodo push_back.

    Per inciso, il linguaggio di riferimento va indicato nel titolo come "tag" e il codice va riportato tra tag [co­de] ... [/co­de], ora provvedo io, in futuro ricordatene.
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    Originariamente inviato da MItaly
    Un array "stile C" non è altro che un blocco contiguo di memoria, devi essere tu a tenere traccia dell'ultimo elemento utilizzato.
    Se invece usi un std::vector puoi usare il metodo push_back.

    Per inciso, il linguaggio di riferimento va indicato nel titolo come "tag" e il codice va riportato tra tag [co­de] ... [/co­de], ora provvedo io, in futuro ricordatene.
    Ok ricorderò,scusate!

    Ma è possibile fare quel che ho detto? mi spiego meglio,vorrei fare un array che contiene una parola (ogni posizione una lettera),e poi si faccia inserire delle lettere da chi esegue il programma e confrontarli con le lettere nell'array,se sono presenti spunterà un messaggio altrimenti un altro messaggio.
    Le cose che vorrei spiegate sono:
    avendo un array X[N],quando vado a inserire un qualcosa da inserire l'array devo perforza spiegare in quale locazione di memorira?
    esemp:
    cin<<x[2]
    così mettere per esempio,se digitiamo 2 da tastiera,il valore 2 nella posizione 2,me se io volessi che in automatico lui lo inserisca nella posizione successiva a quella inserita prima (intendo questo per "libera")?

    e poi,come si confronta un valore con tutto un array?

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Partiamo da due domande ... tu conosci gli elementi di base del linguaggio C o ti è praticamente sconosciuto ? Perché queste cose si studiano all'inizio ...

    Seconda domanda ... intendi forse scrivere un gioco tipo "l'impiccato" ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Originariamente inviato da oregon
    Partiamo da due domande ... tu conosci gli elementi di base del linguaggio C o ti è praticamente sconosciuto ? Perché queste cose si studiano all'inizio ...

    Seconda domanda ... intendi forse scrivere un gioco tipo "l'impiccato" ?
    Sto parlando di C++,comunque ho le basi,e so fare qualche cosa,sto iniziando da poco i vettori dopo aver fatto le funzioni (sono in un terzo industriale),si,lo scopo era quello di fare un gioco dell'impicatto,comunque,stavo pensando,se è impossibile far collocare in un array un oggetto in uno spazio automatico,potrei usare una variabile che incremento ad ogni ciclo,esempio
    x[i]=a
    in questo ciclo i=0 al prossimo i=1 così da mettere nelle varie posizioni in ordine la parola fino ad un valore N che è la lunghezza della frase!

  7. #7
    avendo un array X[N],quando vado a inserire un qualcosa da inserire l'array devo perforza spiegare in quale locazione di memorira?
    La risposta è si.
    Io di solito per tener conto delle celle da me utilizzate fin ora uso un contatore
    così mettere per esempio,se digitiamo 2 da tastiera,il valore 2 nella posizione 2,me se io volessi che in automatico lui lo inserisca nella posizione successiva a quella inserita prima (intendo questo per "libera")?
    basta che metti X[I+1] poi dipende da come vuoi fare.
    e poi,come si confronta un valore con tutto un array?
    Basta che fai un ciclo for e al suo interno un if con la condizione che vuoi tu
    Haters gonna hate

  8. #8
    Originariamente inviato da Automatik
    La risposta è si.
    Io di solito per tener conto delle celle da me utilizzate fin ora uso un contatore

    basta che metti X[I+1] poi dipende da come vuoi fare.

    Basta che fai un ciclo for e al suo interno un if con la condizione che vuoi tu
    Ok,perfetto,più chiaro di così si muore,grazie mille!

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    250
    Per inserire delle lettere all'interno di un array potresti utilizzare la funzione
    codice:
    gets()
    che accetta come parametro il vettore sul quale i dati vengono memorizzati.
    Ad esempio
    codice:
    char parola[20];
    cout << "Inserisci le lettere ";
    gets(parola);
    Se è questo il tuo obiettivo..

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Meglio la fgets ...
    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.