Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258

    [java] dimensione di un array

    Un po' di tempo fa qualcuno non si accontentava della dimensione dei numeri a virgola mobile, ma che io sappia si può dichiarare un array di lunghezza arbitraria..sono arrivato senza nessun errore a un miliardo!! Ma sapete cosa vuol dire avere un miliardo di caselline?

    Nel tempo libero, voglio fare una classe per la gestione dell'array con operazioni matematiche elementari e poi una classe complessa con l'inserimento della virgola.

    Altrimenti numeri molto grandi..si potrebbe anke gestire con la scrittura su file e cosi non ci sarebbero piu limiti di alcun tipo!

  2. #2
    Come possiamo aiutarti? :master:
    SO: Debian Sarge kernel 2.6.11
    Lang: Java, C++, C

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    in nessun modo dovete aiutarmi Era un'idea...

  4. #4
    Capisco. Tempo fa ho fatto quello che dici con le stringhe. Può essere un'alternativa.
    Sarebbe interessante sviluppare il tutto in maniera indipendente dal modo di memorizzazione: così facendo si potrebbe scegliere ogni volta la coppia velocità/dimensione numeri gestiti...
    SO: Debian Sarge kernel 2.6.11
    Lang: Java, C++, C

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    Ma indipendente dal modo di memorizzare i numeri come faresti? :bubu:

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Re: [java] dimensione di un array

    Originariamente inviato da Lucked
    Un po' di tempo fa qualcuno non si accontentava della dimensione dei numeri a virgola mobile, ma che io sappia si può dichiarare un array di lunghezza arbitraria
    Mi spieghi cosa c'entra la dimensione massima di un numero in virgola mobile con la dimensione di un array? :master:

    Avendo, poi, un limite per la dimensione degli interi (4 byte = +/- 2x10e9) non è possibile avere un array di dimensione qualsiasi.

    Ripeto, comunque, che la dimensione dell'array non ha nulla a che vedere con il massimo valore in virgola mobile rappresentabile che è e rimane +/- 9x10e18 utilizzando il tipo double).



    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    perchè no Lele? Avendo un array anche piccolo puoi fare algoritmi che riempiono l'array con i numeri magari di una divisione o moltiplicazione(quindi a vigola mobile), oppure potresti direttamente scrivere tu un numero molto lungo che viene poi memorizzato in un array. ogni casella rappresenta un numero da 0 a 9, sarei propenso a fare in modo che ogni volta venga convertito lo 0/9 in un char e quindi fare un array di char

  8. #8
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Uhm... molto ambizioso come progetto... ma non ha nulla a che vedere con la "limitatezza" dei numeri in virgola mobile. Per fare quello che tenti di fare sono già state previste classi come BigInteger e BigDecimal che ti danno la possibilità di avere numeri con una dimensione arbitraria di bit per la loro rappresentazione, ma in questo caso si ha a che fare con Oggetti e non con tipi di dato primitivo.

    Comunque, buon lavoro! E' sicuramente un ottimo esercizio e un buon progetto!


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  9. #9
    Originariamente inviato da Lucked
    Ma indipendente dal modo di memorizzare i numeri come faresti? :bubu:
    Non saprei esattamente. Magari definendo una classe astratta AbstractBigNumber con i metodi astratti tipo getNumero(int posizione), setNumero(int posizione) estesa da diverse classi che memorizzano il numero in diversi modi (stringhe, array, file,...). In questo modo tutte le operazioni le implementi usando AbstractBigNumber e poi istanziando questa o quella classe concreta puoi decidere le prestazioni/dimensioni dei numeri...
    SO: Debian Sarge kernel 2.6.11
    Lang: Java, C++, C

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.