Argomenti della funzione
Fa parte della sezione Fondamenti del percorso R di Coddy. Lezione 47 di 78.
Le funzioni diventano molto più potenti quando possono accettare input. Gli argomenti (chiamati anche parametri) ti permettono di passare valori a una funzione, rendendola flessibile e riutilizzabile in situazioni diverse.
Per aggiungere argomenti, inseriscili tra parentesi quando definisci la funzione:
greet <- function(name) {
print(paste("Hello,", name))
}
greet("Alice")
greet("Bob")Output:
[1] "Hello, Alice"
[1] "Hello, Bob"La funzione ora funziona con qualsiasi nome tu fornisca. Quando chiami greet("Alice"), il valore "Alice" viene assegnato al parametro name all'interno della funzione.
Puoi definire più argomenti separandoli con le virgole:
add <- function(a, b) {
print(a + b)
}
add(5, 3)
add(10, 20)Output:
[1] 8
[1] 30Quando chiami una funzione con più argomenti, i valori vengono associati ai parametri in ordine. Il primo valore va al primo parametro, il secondo valore al secondo parametro e così via.
Sfida
FacileCrea una funzione chiamata calculate_area che accetta due argomenti: length e width. La funzione dovrebbe stampare l’area (length moltiplicato per width) usando print().
Leggi due numeri dall’input, convertili in valori numerici e chiama la tua funzione con questi valori.
Ad esempio, se gli input sono 5 e 3, l’output dovrebbe essere:
[1] 15Se gli input sono 7 e 4, l’output dovrebbe essere:
[1] 28Provalo tu
# Leggi l'input
con <- file("stdin", "r")
length <- as.numeric(suppressWarnings(readLines(con, n = 1)))
width <- as.numeric(suppressWarnings(readLines(con, n = 1)))
close(con)
# TODO: Crea una funzione chiamata calculate_area che accetti length e width
# e stampi l'area (length * width)
# Chiama la tua funzione con i valori di inputQuesta 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