Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: [C++] Array

  1. #1

    [C++] Array

    qualcuno m sa dire como si puo scrivere un prog ke inserisce(o elimina)elementi in un array(ordinato o non)?
    grazie!!

  2. #2
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    #include <algorithm>
    #include <vector>

    void main(){

    std::vector<int> vettore; //crei l'array
    vettore.push_back(10); //aggiungi 10
    vettore.push_back(3); //aggiungi 3
    vettore.push_back(85); //...
    std::sort(vettore.begin(), vettore.end()); //se serve lo ordini
    vettore.pop_back(); //elimini l'ultimo elemento
    }

    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  3. #3
    Utente di HTML.it L'avatar di DydBoy
    Registrato dal
    Jul 2005
    Messaggi
    165
    STL rulez

  4. #4
    senza librerie come potrei fare?

  5. #5
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Dovresti farlo tu a mano. Quasi tutti i libri di C++ fanno come esempio lo Stack (quindi trovi tutti i codici sorgente)
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  6. #6
    scusa se continuo a rompere..il problema è ke l'esercizio consiste proprio nel farlo a mano..solo ke io nn so come fare ad aggiornare tutti gli indici..

  7. #7
    Devi farti una pila, se non conosci i puntatori è complicata la faccenda, comunque se li conosci, cerca su google, che è pieno, sennò cerca su www.hyperbook.it -> Struttura Dati

    Lì spiega molto bene

  8. #8
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Originariamente inviato da paranoid85
    scusa se continuo a rompere..il problema è ke l'esercizio consiste proprio nel farlo a mano..solo ke io nn so come fare ad aggiornare tutti gli indici..
    Beh guarda, ti basta un intero che indica il numero di elementi nell'array. Volendo potresti simulare anche la STL creando due puntatori al tipo di oggetto che l'array contiene e che puntano al primo elemento ed a quello che è l'ultimo (una sorta di iteratori)

    Se ci posti un po di codice forse capiamo meglio la tua difficoltà
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  9. #9
    #include<iostream>
    using namespace std;

    int main()
    {
    int elemento,posizione=0,s=0;
    intv[6]={12,34,56,78,90};

    cout<<"inserisci elemento: "<<endl;
    cin>>elemento;

    if(v[s]>elemento)
    posizione=s;

    while( ((v[s]<elemento) && (v[s+1]<elemento)) || (v[s]>elemento) )
    {
    s++;
    posizione=s+1;
    }

    for(int i=0;i>posizione;i--)
    {
    v[i]=v[i-1];
    }
    v[posizione]=elemento;


    for(int i=0;i<6;i++)
    cout<<"l'ewlementgo di posto "<<i<<" e': "<<v[i]<<endl;

    system("pause");
    }


    manca il caso in cui il numero sia maggiore d 90..ma gia m da problemi csi..cosa c'è ke nn va?

  10. #10
    Tutto, ma cosa devi fare precisamente?
    Devi allocare memoria intanto.
    E' un pò tutto sballato.
    Il programma che vuoi fare è un pò più lunghetto e le conoscenze anche.

    codice:
    int elemento,posizione=0,s=0; 
    ...
    if(v[s]>elemento)
    posizione=s;
    Capisci?
    Con questo codice dici che se il numero della posizione 0 del vettore è maggiore del elemento, allora l'indice s = 0;
    Altrimenti sarebbe 0 lostesso, ma è come scrivere:

    codice:
    int i = 1;
    if (i == 1) i = 1;
    Che senso ha?
    Studiati meglio questo prima di passare a cosa come creare un vettore dinamico.

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.