Nozioni di base sulla conversione dei tipi
Fa parte della sezione Fondamenti del percorso R di Coddy. Lezione 30 di 78.
Come accennato nella lezione precedente, readline() restituisce sempre una stringa di caratteri. Se un utente digita "25", ottieni il testo "25", non il numero 25. Questo è importante perché non puoi fare calcoli con il testo.
Per convertire una stringa di caratteri in un numero, usa as.numeric():
input <- "42"
number <- as.numeric(input)
cat(number + 8, "\n") # Output: 50Questo è essenziale quando lavori con input dell’utente. Ecco uno schema comune che userai:
age_text <- readline()
age <- as.numeric(age_text)
cat("In 10 years, you will be", age + 10, "\n")Puoi anche convertire nella direzione opposta usando as.character():
number <- 100
text <- as.character(number)
cat("The value is:", text, "\n")La conversione dei numeri in caratteri è utile quando devi combinarli con altro testo o quando una funzione richiede specificamente un input di caratteri. Queste funzioni di conversione sono gli strumenti che ti permettono di passare da un tipo di dato all’altro ogni volta che il tuo programma ne ha bisogno.
Sfida
FacileLeggi due valori numerici come input, esegui un calcolo e visualizza il risultato con un'etichetta.
Riceverai due input:
- Un prezzo (come stringa)
- Una quantità (come stringa)
Converti entrambi gli input in valori numerici usando as.numeric(), quindi calcola il costo totale moltiplicando il prezzo per la quantità.
Visualizza l'output nel seguente formato:
Total: [result]Usa cat() per l'output e includi un carattere di nuova riga \n alla fine.
Ad esempio, se gli input sono 15.50 e 4, l'output dovrebbe essere:
Total: 62Provalo tu
# Leggi l'input
con <- file("stdin", "r")
price_str <- suppressWarnings(readLines(con, n = 1))
quantity_str <- suppressWarnings(readLines(con, n = 1))
close(con)
# TODO: Scrivi il tuo codice qui sotto
# 1. Converti price_str e quantity_str in valori numerici usando as.numeric()
# 2. Calcola il costo totale (price * quantity)
# 3. Mostra il risultato usando cat() con il formato "Total: [result]\n"Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 2
Operatori logici (AND, OR)Operatori logici Parte 2 (NOT)Ripasso - Logica sempliceLogica vettorializzata Parte 1Logica vettorializzata Parte 27Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire input dell'utente10FizzBuzz con una variante
Panoramica del giocoLa funzione FizzBuzz13Vettori: argomenti avanzati
Slicing e indicizzazione dei vettoriIndicizzazione logicaAritmetica dei vettori e ricicloL’operatore %in%2Variabili e tipi di dati
Tipo di dato numericoTipo di dato interoTipo di dato carattereTipo di dato logicoControllo dei tipi di datoConvenzioni di denominazioneValori mancanti: NARiepilogo - Creazione di variabili8Cicli
Ciclo forCiclo whilebreaknext (continue)Riepilogo - FattorialeGenerazione di sequenze (seq, :)Cicli annidatiRiepilogo - Input dinamico3Operatori Parte 1
Operatori aritmeticiDivisione intera e moduloOperatori di assegnazioneRiepilogo - Matematica sempliceOperatori di confronto6I/O di base
Stampare l'outputcat per l'outputOutput con variabiliLeggere l'input con readline()Nozioni di base sulla conversione dei tipiRiepilogo - Calcolatore dell'etàRiepilogo - Vero o falso9Funzioni
Dichiarare una funzioneArgomenti della funzioneValori di ritornoRiepilogo - Funzione SigmaRiepilogo - Funzione di validazioneValori predefiniti dei parametriEsercitati da solo: Compilatore R online