2012-06-19 2 views
6

quanto ho capito, gli europei (*) scrivere i numeri con una virgola per separatore decimale, così uno-e-un-quarto è scritta come 1,25Come fanno gli europei a scrivere un elenco di numeri con decimali?

europei utilizzano anche le virgole per separare le liste, così come si fa a scrivere una lista di numeri decimali? Io, come un inglese, vorrei scrivere uno-e-un-quarto, uno-e-un-metà, uno e tre quarti in questo modo:

1.25, 1.5, 1.75 

Come si fa a farlo in Europa?

(Perché è una questione di programmazione? Perché io sto scrivendo un programma che vi chiederà utenti europei per un elenco di numeri!)

* Ai fini di questa domanda, non ci sono di lingua inglese paesi in Europa. :-)

+0

Suggerisco di chiedere l'elenco di numeri dagli utenti in modo tale che una virgola non venga utilizzata come simbolo di separazione (ad esempio, indicare all'utente di separare i numeri solo dallo spazio) –

+0

";" è qualcosa che vedrai spesso. – Styxxy

+0

Penso che ti sbagli. La virgola è usata per raggruppare cifre in numeri più grandi, quindi 1000 è in realtà 1.000. – PTBG

risposta

3

Questo varia dalla cultura, e all'interno di una cultura. I dati CLDR contengono il t “list” elemen che specifica il carattere separatore di lista, ed è il punto e virgola per la maggior parte delle culture, vedere chart of number symbols (elemento "elenco"). Tuttavia, la definizione è molto implicita e vi è una variazione all'interno delle impostazioni locali. Alcune persone considerano accettabili 1,25, 1,5, 1,75, mentre altre preferiscono 1,25; 1,5; 1,75. Ci sono anche persone che pensano seriamente che in un contesto fortemente matematico o numerico, si dovrebbe deviare dalle pratiche locali e usare la notazione anglosassone con il punto decimale, quindi con la virgola come separatore.

Sul lato pratico, penso che non sarebbe molto sbagliato usare ";" come separatore di lista dei numeri quando si usa la virgola decimale, o anche quando si usa il punto decimale. Quindi potresti anche considerare di usare ";" in tutte le lingue.

Ma quando si tratta di input utente, è più complicato. In linea di principio, sii liberale in ciò che accetti, ma dal momento che la virgola può essere intesa come una virgola decimale, un separatore di migliaia o un separatore di elementi di lista, esiste qualcosa di troppo liberale.

Se possibile, richiedere separatamente ciascun numero, evitando il problema del separatore. Se ciò non è possibile, la cosa fondamentale è renderlo molto, molto chiaro all'uso che si aspetta il separatore. Direi che richiedere il punto e virgola ";" è la cosa più affidabile da fare.

1

Non penso che ci sia un modo per farlo. Lo spazio bianco che separa i numeri sarebbero funziona lo stesso, o si potrebbe utilizzare un punto e virgola (';') per separare i numeri

4

Sono europea (francese), e in quasi tutti i programmi qui dobbiamo usare virgola ';' come separatore, anche se i numeri sono solo numeri interi perché la virgola non sembra un separatore per noi. In matematica, i punti e virgola sono l'unico modo giusto per separare una lista di numeri.

L'esempio più comune è quando dobbiamo inserire i numeri di pagina che vogliamo stampare su un PDF, tutti i programmi richiedono un elenco separato da punto e virgola e l'ho trovato chiaramente intuitivo. Penso che lo avrebbero cambiato se fosse stato scomodo per alcuni.

3

Perché chiedere agli europei in generale? Non penso che ci sia un modo europeo per farlo, e se dovesse essere così, sarebbe pura fortuna. L'Europa è composta da diverse culture e ciascuna ha le sue regole.

Non si parla di quale piattaforma si sta utilizzando ma si potrebbe essere in grado di fare affidamento sulla propria plaform per ottenere queste informazioni. Nel caso di .NET, è possibile ottenere queste informazioni tramite Textinfo.ListSeparator. Per esempio, questo darebbe quello francese (risultato: un punto e virgola):

string listSeparator = new CultureInfo("fr-FR").TextInfo.ListSeparator; 
+0

+1. EUROPEAN è un termine molto stupido quando si tratta di una questione specifica della cultura. Germania, Regno Unito, Francia e si è già in acque piuttosto profonde con dettagli del genere. Anche tedesco PARLARE vi è una differenza, ad esempio, tra Germania e Svizzera per i numeri - e lo switherland è in Europa, geograficamente, anche se non nell'UE. Le date sono molto peggiori;) – TomTom