Array
  • In diretta da GamesVillage.it
    • News
    • -
    • In Evidenza
    • -
    • Recensioni
    • -
    • RetroGaming
    • -
    • Anteprime
    • -
    • Video
    • -
    • Cinema

Pag 1 di 3 123 UltimoUltimo
Visualizzazione risultati da 1 a 15 di 33

Discussione: Array

Cambio titolo
  1. #1

    Array

    Raga' sto iniziando ad imparare gli array in pascal, ma non riesco troppo a concepirli, non è che qualcuno ha qualche guida?? Inoltre ho un problema:

    Se voglio caricare un array, scriverlo e individuare il valore massimo e la relativa posizione occupata da esso... come caspita faccio?
    sono in ALTO MARE vi prego aiutatemi!
    La mia vita non è che un continuo sforzo per sfuggire alla banalità dell' esistenza.
    Mercatino: aiutate il povero amigo messiah

  2. #2
    :D L'avatar di Xboxman
    Registrato il
    09-03
    Località
    Napoli
    Messaggi
    7.867
    Io li ho capiti benissimo gli array, ma non sono bravo a spiegare!
    Ci proverò...

    Gli array (o vettori), sono un insieme di variabili dello stesso tipo.
    Mettiamo caso che volessimo usare un vettore da 10 variabili:
    Queste 10 variabili sono delle "scatole", ognuna di esse contiene un valore.
    Ogni scatola ha un indice che le identifica... questo indice è composto da un valore.

    Ad esempio, abbiamo un vettore di 10 variabili e lo chiamiamo V.
    Tutte e 10 le scatole sono individiabili con l'indice.
    Se scrivo V[2], mi riferisco alla scatola numero 2, che ha come indice, appunto 2. Se scrivo V[8], mi riferisco alla scatola numero 8 con indice 8, e così via...
    Quando lo dichiariamo nelle variabili, scriveremo: V:array[1..10] of integer (oppure real).
    Di cui 1 è il valore minimo e 10 è valore massimo... ovviamente valori che possono essere modificati.

    Per assegnare un valore ad ognuna delle 10 scatole, utilizziamo un FOR, ripetiamo per 10 volte un blocco del genere:

    for i:=1 to 10 do
    begin
    writeln('Inserisci un numero');
    readln(V[i])
    end;


    Al posto di un numero tra le parentesti quadre dopo V, ho inserito una bellissima i (V[i]). La variabile "i", come ben saprai, la utilizziamo come contatore. Quando il ciclo viene ripetuto la prima volta, la variabile i vale 1, quindi ci riferiamo alla scatola numero 1, ovviamente l'indice ha valore 1. Quando ripetiamo per la seconda volta, la i vale 2, quindi ci riferiamo alla scatola 2... e così via.
    Quindi, tra le parentesi quadre, possiamo specificare l'indice di ogni scatola attraverso un valore, sia esso un numero oppure una variabile, che automaticamente contiene un numero (obbligatoriamente intero).

    Ecco il programma che cerchi:

    program vettore;
    uses crt;
    var a:array[1..50] of real;
    n,i,imax:integer;
    max:real;
    begin
    clrscr;
    repeat
    writeln('Inserire quantit… valori');
    readln(n)
    until (n>=1) and (n<=50);
    writeln('Inserire valore per la cella 1');
    readln(max);
    a[1]:=max;
    imax:=1;
    for i:=2 to n do
    begin
    writeln('Inserire valore per la cella ',i);
    readln(a[i]);
    if a[i]>=max then
    begin
    max:=a[i];
    imax:=i
    end
    end;
    writeln('La cella ',imax,' contiene il valore massimo, cio&#232; ',max:1:2);
    readln
    end.



    Spero di esserti stato d'aiuto!
    Ultima modifica di Xboxman; 13-05-2007 alle 08:24:29

  3. #3
    Grandissimo! Grazie dell'eccellente spiegazione e soprattutto del programma inizio gi&#224; ad addentrarmi nella logica degli Array! thank iu!
    La mia vita non è che un continuo sforzo per sfuggire alla banalità dell' esistenza.
    Mercatino: aiutate il povero amigo messiah

  4. #4
    :D L'avatar di Xboxman
    Registrato il
    09-03
    Località
    Napoli
    Messaggi
    7.867
    Citazione Messiah of the Night
    Grandissimo! Grazie dell'eccellente spiegazione e soprattutto del programma inizio già ad addentrarmi nella logica degli Array! thank iu!
    Di niente! Per qualsiasi altro dubbio contattami...!

  5. #5
    Utente L'avatar di ndakota
    Registrato il
    07-06
    Località
    Milano
    Messaggi
    3.253
    Citazione Messiah of the Night
    Grandissimo! Grazie dell'eccellente spiegazione e soprattutto del programma inizio già ad addentrarmi nella logica degli Array! thank iu!
    gli elementi di un array sono contigui in memoria.. è per questo che li puoi scorrere con un indice..

  6. #6
    :D L'avatar di Xboxman
    Registrato il
    09-03
    Località
    Napoli
    Messaggi
    7.867
    Citazione ndakota
    gli elementi di un array sono contigui in memoria.. è per questo che li puoi scorrere con un indice..
    Ehm... e quindi?

  7. #7
    developing... L'avatar di Slimmy
    Registrato il
    07-03
    Località
    NSApplication
    Messaggi
    6.417
    Puoi farci un accesso casuale a differenza di altri contenitori aumentando le prestazioni..

  8. #8
    L'Onnipotente L'avatar di totem
    Registrato il
    08-04
    Località
    Global Assembly Cache
    Messaggi
    1.237
    Citazione Xboxman
    Di niente! Per qualsiasi altro dubbio contattami...!
    Vedo che hai acquisito confidenza con il linguaggio. L'ultima volta che sono stato in questa sezione eri tu a fare le domande

  9. #9
    :D L'avatar di Xboxman
    Registrato il
    09-03
    Località
    Napoli
    Messaggi
    7.867
    Citazione totem
    Vedo che hai acquisito confidenza con il linguaggio. L'ultima volta che sono stato in questa sezione eri tu a fare le domande
    LOL è vero, sono migliorato!

    Sto anche imparando il linguaggio C ora!

  10. #10
    Utente L'avatar di ndakota
    Registrato il
    07-06
    Località
    Milano
    Messaggi
    3.253
    Citazione Xboxman
    Ehm... e quindi?
    quindi? niente.. solo che era la cosa piu importante da dire e non l'hai detta..

  11. #11
    [Nesly_R]
    Ospite
    l'indice è semplicemente il valore da sommare all'indirizzo da cui inizia l'array stesso in modo da poter leggere un valore che si trova in una cella di memoria ad un certa distanza dall'inizio dell'array

  12. #12
    Raga' qualcuno puo' darmi un tutorial sulla ricerca di un elemento in un array?!?? Non ho capito come fare per ricercare un lemento in array dato... Grazie!
    La mia vita non è che un continuo sforzo per sfuggire alla banalità dell' esistenza.
    Mercatino: aiutate il povero amigo messiah

  13. #13
    Puppppppaaaaaaaaaaa L'avatar di Revan1985
    Registrato il
    01-06
    Località
    Solbiate Olona
    Messaggi
    1.655
    ehm...
    te lo scrivo in mezzo pseudo codice perch&#232; non ricordo il pascal

    Codice:
    (1)for i:= 0 to GRANDEZZA
         begin
          (2) if array[i] == VALORE_DA_CERCARE then
               begin
          (3) valore_trovato = array[i]
          (4) <qui andrebbe messo qualcosa per uscire dal for, ma non so come si fa i pascal>
               end
          end
    (5)println(valore_trovato)
    spero sia chiaro...

    1)scorro l'array di grandezza GRANDEZZA.
    2)cerco nell'indice array[i] il valore ricercato [in questo caso VALORE_DA_CERCARE].
    3)quando l'ho trovato, lo salver&#242; in una variabile del tipo richiesto [int, char, double ecc... ecc... ]
    4) uscire dal ciclo for
    5)stamperlo a video
    È stato detto che la democrazia è la peggior forma di governo, eccezion fatta per tutte quelle altre forme che si sono sperimentate finora.


  14. #14
    l' oscuro nemico L'avatar di morgoth90
    Registrato il
    05-06
    Località
    C LikeLandia
    Messaggi
    2.275
    ma non &#232; meglio che quando lo trova salva l'indice?
    perch&#232; cos&#236; quando lo trova salva lo stesso valore che st&#224; cercando



    ESISTE UN UNICO AMMINISTRATORE


  15. #15
    StorieDallaSalaMacchine L'avatar di miniBill '90
    Registrato il
    08-05
    Località
    Bergerac
    Messaggi
    4.204

    in effetti

    ESISTE UN UNICO AMMINISTRATORE
    Quoto-thisisgorman-
    (La mi ex-firma sta qua)

Pag 1 di 3 123 UltimoUltimo

Regole di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •