PROGRAMMI CON I RECORD

di il
12 risposte

PROGRAMMI CON I RECORD

Ciao,in questa discussione vorrei parlare di uno strumento molto utile nella programmazione e cioè i record ki ne sa qualkosa e vorrei sapere come si gestisce..
ciao....

12 Risposte

  • Re: PROGRAMMI CON I RECORD

    Microsoft... abbi pazienza ragazzo mio... è inutile che per ogni tua lacuna/dubbio/ignoranza fai partire un topic diverso :)

    Perché una volta tanto non ci dici cosa è che sai veramente, cosa è che vorresti sapere, perché lo vuoi sapere (scuola? cacchi personali? lavoro?), quanto tempo hai a disposizione per studiare ecc...

    Chiedere come si fanno i programmi con i record equivale quasi a chiedere che qualcuno di insegni a programmare in generale.
    Vuoi sempre parlare di pascal o ti vanno bene discorsi generici? stai studiando anche su un libro oppure no? un tut da internet? a scuola?

    Chip
  • Re: PROGRAMMI CON I RECORD

    Vabe lo sto facendo a skuola,e poi mi interessa personalmente xke il computer e las programmazione mi interessano e in un futuro vorrei lavorare in questo campo sempre se ci riesco..........
  • Re: PROGRAMMI CON I RECORD

    (p.s. a che livello siete a scuola?)

    La NOSTRA ignoranza è il LORO potere­
  • Re: PROGRAMMI CON I RECORD

    Abbiamo visto il caricamento e poi abbiamo fatto un esempio in pascal
  • Re: PROGRAMMI CON I RECORD

    Allora non vedo che problema ci sia a chiedere al professore..a parer mio una spiegazione di persona da parte sua sarebbe il caso migliore per il bene del tuo apprendimento.. (a meno che questi non sia un deficiente)

    La NOSTRA ignoranza è il LORO potere­
  • Re: PROGRAMMI CON I RECORD

    Diciamo kosi,non e una maga nella spiegazione
  • Re: PROGRAMMI CON I RECORD

    Ah femmina!? comunque senza spiegazioni non riesci a studiare..?

    La NOSTRA ignoranza è il LORO potere­
  • Re: PROGRAMMI CON I RECORD

    Oh beh è una donna, bastava dirlo subito
    Vedi i record servono semplicmente a strutturare variabili "complesse" potendole vedere come fossero una cosa sola.
    Diciamo che gestisci in memoria ram una rubrica telefonica, fatta di nominativo, telefono, data di nascita.
    Grosso modo con quello che sai del pascal puoi decidere due metodi per gestirla.
    1. Usi 3 vettori(array) nome[] di stringa, tel[] di stringa, nasc[] una stringa ancora, tutti di 1000 elementi ad esempio, e stabilisci che a parità di indice ottieni le informazioni della persona. Quindi la persona 103ima si chiamerà nome[103], con telefono tel[103] nata il nasc[103]. Così però le e cose sono slegate tra loro, soltatno tu e il tuo programma sapete che con indice uguale tutti e 3 i vettori parlano dellos tesso individuo.

    2. Usi sempre i vettori ma uno solo sempre di 1000 elementi, stavolta però la singola riga sarà data da una nuova tipologia di variabile, il record. In questo record che chiami "rubr_pers" ci metti tutte e tre le informazioni.
    record rubr_pers
    nome string;
    tel string;
    nasc string;

    A sto punto le tre cose sono più legate tra loro per singolo individuo e il 103imo sarà accessibili chiamando rubr_pers.nome[103] nato il rubr_pers.nasc[103] con telofono rubr_pers.tel[103].


    Il bello è che puoi facilmente applicare questa cosa con i FILE scrivendo riga riga una erpsna della rubrica alla volta. Metre con i 3 vettori saresti stato obbligato a tenerli allineati.

    Nota la data di nascita, è una semplice stringa... sarebbe più bello se fosse ben "divisa" in anno, mese, giorno... magari in questo formato aaaammgg, vorresti avere un "tipo data" che ti possa servire allo scopo (magari anche per altre date). Ci sta bene un altro record.
    record tipo_data
    dt_anno string[4];
    dt_mese string[2];
    dt_giorno string[2];

    Non ho scritto pascal perché non me lo ricordo più ma spero di averti chiarito qualche dubbio. altrimenti fai domande più precise che vediamo di risponderti... io poi leggerei il libro che di sicuro hai... la prof. non sarà un granché ma un libro non mente mai.

    Chip
  • Re: PROGRAMMI CON I RECORD

    Grazie ora e piu kiaro,insomma per farla semplice i record li possiamo definire kome una specie di contenitore dove ci sono diversi elementi ke kompongonoi quel kontenitore,cioe i record;un esempio puo essere descrivere una partita,nel record ci potranno essere ad esempio i goal segnati dalle due squadre ,il nome delle due squadre,e...puo essere un esempio?naturalmente in ogni componente del record ci possono essere condizioni ecc...
    o no?
    ciao e grazie....
  • Re: PROGRAMMI CON I RECORD

    Bella spiegazione Chip in pascal son ancora fresco di queste cose per esempio una rubrica con nome, cognome, indirizzo, data di nascita e codice identificativo potrebbe essere così (nella zona dichiarazioni):

    TYPE Data = RECORD
       gg : 1..31;
    mm : 1..12;
    aa : 1800..2100
    END;

    TYPE Rubrica = RECORD
       CodiceId : integer;
    Nome : string[30];
    Cognome : string[30];
    Indirizzo : string[25];
    DataNascita : Data
    END;

    poi il resto l'ha spiegato Chip.. se vuoi accedere a un campo della rubrica lo fai separando il nome del record dal campo tramite un punto (Rubrica.CodiceId).

    di solito con le date capita di accedere a più campi dello stesso record e conviene utilizzare il costrutto WITH (che magari vedrai più avanti). buona fortuna

    La NOSTRA ignoranza è il LORO potere­
  • Re: PROGRAMMI CON I RECORD

    Esattom il "with" serve ad evitare (dentro un ambito ben preciso che mi pare stia fino ad un end) di postporre il nome del record; altrimenti uno deve sempre indicare il "dominio di appartenenza" di quel campo: "Rubrica.Nome" diventa semplicemnte "Nome". Ho vaghe rimembranze di scuola dove mi dissero di non abusare con i with altrimenti poi non si legge più bene.

    TYPE Rubrica = RECORD
    CodiceId : integer;
    Nome : string[30];
    Cognome : string[30];
    Indirizzo : string[25];
    DataNascita : Data
    END;

    Ottimo, tenete conto che il "nuovo tipo" Rubrica è proprio come una nuova variabile! Potete usarlo per ingrassarci un vettore, una matrice, usarlo da solo per un campo unico e lo dovrete esare dentro le liste puntate (quando ci arriverete).

    Per assurdo potete anche ridefinire un intero da solo...
    TYPE RecInt = RECORD
    MioInt : integer;
    END;
    che non serve a nulla ma di fatto avete rifatto un integer.


    Chip
  • Re: PROGRAMMI CON I RECORD

    Grazie...
Devi accedere o registrarti per scrivere nel forum
12 risposte