for文を使って,1から100までの合計を求めなさい。
ヒント:変数に合計値を保存し、for文で各数値をその変数に足して追加すること。
s <- 0
for (i in 1:100) {
s <- s + i
}
print(s)
## [1] 5050
#sum()関数を使えば1行求められる。
print(sum(1:100))
## [1] 5050
for文で1から20までの整数のうち、偶数だけを出力するプログラムを書きなさい。
ヒント:2で割り切れるかどうかを判定するために、%%(剰余演算子)を使用する。
#演習2
for (i in 1:20) {
if (i %% 2 == 0) {
print(i)
}
}
## [1] 2
## [1] 4
## [1] 6
## [1] 8
## [1] 10
## [1] 12
## [1] 14
## [1] 16
## [1] 18
## [1] 20
while文を用いて、10から1までのカウントダウンを出力するプログラムを書きなさい。最後に「発射!」と出力する。
ヒント:while文の条件を、変数が1以上である間とする。
#演習3
n <- 10
while (n > 0) {
print(n)
n <- n - 1
}
## [1] 10
## [1] 9
## [1] 8
## [1] 7
## [1] 6
## [1] 5
## [1] 4
## [1] 3
## [1] 2
## [1] 1
print("発射!")
## [1] "発射!"
1から100までの数のうち,3の倍数と5の倍数をそれぞれカウントし,結果を出力するプログラムを書きなさい。
ヒント:剰余演算 %% を使って、 3や5で割り切れる数を調べ、カウンタを増やしていく。
#演習4
#3の倍数と5の倍数をカウントする変数を初期化
count_3 <- 0
count_5 <- 0
# 1から100までの数をループ処理
for (i in 1:100) {
if (i %% 3 == 0) {
count_3 <- count_3 + 1 # 3の倍数ならカウント
}
if (i %% 5 == 0) {
count_5 <- count_5 + 1 # 5の倍数ならカウント
}
}
# 結果を表示
cat("3の倍数の個数:", count_3,"\n")
## 3の倍数の個数: 33
cat("5の倍数の個数:", count_5,"\n")
## 5の倍数の個数: 20
ベクトル x = c(23, 45, 12, 67, 34, 89, 10) の中で最大の値を見つけるプログラムを書きなさい。
ヒント:最初にベクトルの1つ目の要素を最大値maxとし、for ループで各要素を比較して,maxより大きい場合,入れ替える。
#演習5
# ベクトルを定義
x <- c(23, 45, 12, 67, 34, 89, 10)
# 仮の最大値をベクトルの最初の要素に設定
max_value <- x[1]
# 2番目の要素からループして最大値を探す
for (i in 2:length(x)) { #length(x)はxの長さを求める
if (x[i] > max_value) {
max_value <- x[i] # 現在の値が最大値より大きければ更新
}
}
# 最大値を出力
print(paste("最大の値は:", max_value))
## [1] "最大の値は: 89"
#max()関数を使えば,1行で求められる
cat("最大値は", max(c(23, 45, 12, 67, 34, 89, 10)),"\n")
## 最大値は 89
–end–