作者jackdan (Sean)
看板NCU96Stat
標題R的練習
時間Fri Feb 22 12:59:28 2008
tmp<-function(m, n)
{
cat(" 方法1\n")
##m到n的總和 m到n的連乘 方法1##
S=0
P=1
for(i in m:n)
{
S=S+i
P=P*i
}
cat(m, "到", n, "的總和為", S, "\n")
cat(m, "到", n, "的連乘為", P, "\n")
cat(" 方法2\n")
##m到n的總和 m到n的連乘 方法2##
cat(m, "到", n, "的總和為", sum(m:n), "\n") #m:n 為(m, m+1, ..., n)的陣列
cat(m, "到", n, "的連乘為", prod(m:n), "\n") #prod(m:n)=m*(m+1)*...*n
cat(" 方法1\n")
##m到n的偶數和與積數和##
even=0
odd=0
for(i in m:n)
{
if(i%%2==0) even=even+i
else odd=odd+i
}
cat(m, "到", n, "的偶數和為", even, "\n")
cat(m, "到", n, "的積數和為", odd, "\n")
cat(" 方法2\n")
##m到n的偶數和與積數和 方法2##
if(m%%2==0)
{
cat(m, "到", n, "的偶數和為", sum(seq(m, n, 2)), "\n")
cat(m, "到", n, "的積數和為", sum(seq(m+1, n, 2)), "\n")
}
#seq(a, b, c)為 a, a+c, a+2c, ..., a+n*c 其中a+n*c<=b 的陣列
#例如 seq(1, 10, 2) 為 1, 3, 5, 7, 9
# seq(2, 10, 2) 為 2, 4, 6, 8, 10
else
{
cat(m, "到", n, "的偶數和為", sum(seq(m+1, n, 2)), "\n")
cat(m, "到", n, "的積數和為", sum(seq(m, n, 2)), "\n")
}
cat("\n")
##m到n中能被2或3整除的整數和 m到n中能被2與3整除的整數和##
a=0
b=0
for(i in m:n)
{
if(i%%2==0 || i%%3==0) a=a+i
if(i%%2==0 && i%%3==0) b=b+i
}
cat(m, "到", n, "中能被2或3整除的整數和為", a, "\n")
cat(m, "到", n, "中能被2與3整除的整數和為", b, "\n")
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.45.117
推 bluejaykal:感謝助教~~~ 02/22 22:34
推 choco:謝謝學長~ 02/23 00:33