Oppure

Loading
16/09/11 18:15
Loryea
Volevo farvi una domanda sulla funzione che ha il type:
Se io scrivo, ad esempio che il tipo "cifre" va da 0 a 9, e se l'utente scrive un numero maggiore di 9, cosa succede? mi riferisco anche a string[max], se l'utente supera il "max", cosa succede?

Sempre sul rapporto Type-Input, volevo chiedervi, usando la funzione record, per esempio carte francesi, sempre rispettando l'esempio scriviamo che "numeri" è da 2 a 10 di tipo integer e che "figure" è A, K, Q, J di tipo char, quando scriviamo una variabile del nuovo tipo "carte", l'utente cosa deve scrivere, sia un numero, sia una figura? perché dall'esempio della guida pascal di questo sito, sembrerebbe di sì, perché immagino che se una variabile di tipo persona, contenente, password, nome utente e altre cose mi pare, l'utente non può scrivere opzionalmente o l'una o l'altra, anche perché il computer non le distinguerebbe l'una dall'altra essendo tutte e due di tipo string. Come faccio a capire quali sono i tipi record opzionali da quelli tutto incluso?

Sempre parlando del tipo tutto incluso, come fa, l'utente a scriverli tutti e due, per separarli deve mettere segni di punteggiatura, spazi, a capo, o che altro?
aaa
17/09/11 8:46
Il Totem
Il fatto che alcuni campi siano necessari e altri opzionali è una decisione arbitraria del programmatore e non esiste alcun elemento di sintassi che possa specificarlo. La distinzione rimane, quindi, una questione di semplice logica e può essere al più chiarita nei commenti.
Inoltre, come è scritto nel'esempio della guida, ogni campo del record va letto singolarmente, dacché readln è capace di gestire solamente stringhe e tipi numerici di base.

Per quanto riguarda il range di valori, per quanto mi ricordi, viene generato un errore a runtime.
aaa