Ho riscontrato un errore "impossibile convertire Fixnum in String (TypeError)" e mentre sembra abbastanza semplice non sono sicuro su come spostarmi esso. Ho pensato che la mia logica fosse valida: converti la variabile di stringa immessa in un numero intero e poi esegui l'operazione di base, ma a quanto pare mi mancano alcune informazioni chiave.'+' non può convertire Fixnum in String (TypeError)
puts 'What is your favourite number?'
favenum = gets.chomp
better = favenum.to_i + 1
puts 'Yeah '+favenum+' is nice enough but '+better+' is bigger and better by far! Think on.'
hanno provato alla ricerca di una risposta, ma esempi dello stesso errore fuori ci sono ben oltre le mie capacità rubino rudimentali attualmente.
Quindi l'errore nel mio codice è nell'output delle variabili, non nella loro manipolazione nelle righe sopra? Sono corretto nel pensare che il favenum sia originariamente memorizzato come una stringa? Forse il tutorial che sto seguendo (http://pine.fm/LearnToProgram/?Chapter=04) non è tutto ciò che è rotto per essere ...? –
@DanSolo: Infatti, 'favenum' è effettivamente una stringa e non dovrebbe causare l'errore. È la variabile intero 'migliore' che la causa. –
Grande, grazie. Ora tu me ne parli, posso vedere logicamente perché usare '+ better +' quando meglio è un intero causerebbe un errore. Grazie per le opzioni alternative per aggirarlo. Il mio viaggio continua ... –