Risultati da 1 a 3 di 3
  1. #1
    The Designer L'avatar di luck93
    Data Registrazione
    Mon Apr 2005
    Localitā
    Silent Hill
    Messaggi
    1,000

    Predefinito Semplice dubbio Turbo Pascal

    Ciao, oggi stavo osservando dei programmi fatti in turbo pascal. Ho notato che se io pongo una variabile uguale a un numero a (che io inserisco) la variabile quando viene stampata sullo schermo non č sempre uguale ad a. Per esempio:

    program esempio;
    uses crt;
    var a,prova:integer;
    begin
    clrscr;
    writeln('inserisci a');
    readln(a);
    prova:=a;
    writeln(prova);
    readln;
    end.

    Nella maggior parte dei numeri che inserisco me lo ritorna uguale...ma nella maggior parte dei numeri alti mi dā cose apparentemente senza senso.
    Tipo se inserisco 2, mi dā 2. Se inserisco 34354 mi dā -31182. Perchč???


    Live or die, make your choice.

  2. #2
    A morte i camperoni! L'avatar di Darkito
    Data Registrazione
    Sat May 2006
    Localitā
    Catania
    Messaggi
    4,083

    Predefinito

    Perchè una variabile di tipo integer in turbo pascal è codificata su 16 bit. Quindi può contenere 65536 valori tra numeri negativi e positivi. In poche parole una variabile integer assume valori tra -32768 e +32767. Ecco perchè se inserisci un valore più alto o più basso di quei due estremi il tuo programma ti ritorna un valore in apparenza senza senso. Per inserire valori più grandi devi definire la variabile a come REAL o come WORD tenendo presente che la Word assume solo valori positivi tra 0 e 65535


    Max Pezzali Mania
    ---> http://www.maxpezzalimania.it

  3. #3
    The Designer L'avatar di luck93
    Data Registrazione
    Mon Apr 2005
    Localitā
    Silent Hill
    Messaggi
    1,000

    Predefinito

    Ah capito tutto...grazie 1000!


    Live or die, make your choice.

Permessi 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
  •