Menu
Coddy logo textTech

関数の引数

CoddyのRジャーニー「基礎」セクションの一部。レッスン 47/78。

関数は入力を受け取れると、はるかに強力になります。引数(パラメーターとも呼ばれます)を使うと、値を関数に渡せるため、さまざまな状況で柔軟かつ再利用可能になります。

引数を追加するには、関数を定義するときに括弧の中に配置します。

greet <- function(name) {
  print(paste("Hello,", name))
}

greet("Alice")
greet("Bob")

出力:

[1] "Hello, Alice"
[1] "Hello, Bob"

この関数は、指定したどの名前でも動作するようになりました。greet("Alice")を呼び出すと、値"Alice"が関数内のnameパラメーターに代入されます。

複数の引数は、コンマで区切って定義できます。

add <- function(a, b) {
  print(a + b)
}

add(5, 3)
add(10, 20)

出力:

[1] 8
[1] 30

複数の引数を指定して function を呼び出すと、values はパラメーターに順番に対応付けられます。最初の値は最初のパラメーターに、2 番目の値は 2 番目のパラメーターに割り当てられ、以下同様です。

challenge icon

チャレンジ

簡単

lengthwidth という2つの引数を受け取る、calculate_area という名前の関数を作成してください。この関数は、print() を使用して面積(length と width を掛けた値)を出力する必要があります。

入力から2つの数値を読み取り、それらを数値に変換して、これらの値を使って関数を呼び出してください。

たとえば、入力が 53 の場合、出力は次のようになります:

[1] 15

入力が 74 の場合、出力は次のようになります:

[1] 28

自分で試してみよう

# 入力を読み取る
con <- file("stdin", "r")
length <- as.numeric(suppressWarnings(readLines(con, n = 1)))
width <- as.numeric(suppressWarnings(readLines(con, n = 1)))
close(con)

# TODO: length と width を受け取る calculate_area という関数を作成する
# そして面積 (length * width) を出力する


# 入力値で関数を呼び出す
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Rオンラインコンパイラ