R语言练习题(统计软件实验) 下载本文

内容发布更新时间 : 2024/5/11 18:01:07星期一 下面是文章的全部内容请认真阅读。

4.69 1.8

统计软件实验4

1使用三种循环,输出向量1:100中所有数据。 ① for (I in 1:100) print(I) ②

while (i<=100) {

sum <- sum+i i <- i+1 }

print(sum) ③

repeat{

if(i%%2!=0)sum <- sum+i i <- i+1

if(i>100)break }

print(sum)

2使用while循环求1+2+3+…+100的和。 i <- 1 sum <- 0 while(i<=100){ sum<- sum+1 i <- i+1 }

print(sum)

3使用repeat循环求1至100之间的奇数和。 i <- 1 sum <- 0 while(i<=100){ sum<- sum+1 i <- i+1 }

print(sum)

4使用for循环输出1至100之间的能够被3或5整除的数,并求和。 sum <- 0 for(i in 1:100){

if(i%%3==0|i%%5==0){

print(i)

sum <- sum+i } }

print(sum)

5定义一个长度为100、mean=1,sd=1的正态分布随机向量,并找出该向量的最小值及其出现的位置。 rnorm(n,mean,sd),种子设为123 set.seed(123)

norm <- rnorm(100,1,1) min.norm <- 100 for(i in 1:100){

if(norm[i]<=min.norm){ min.norm=norm[i] min.count=i } }

cat(min.norm,min.count)

6找出100次产生的长度为100、mean=1,sd=1的正态分布随机向量的最小值与出现位置的关系。(用plot(min.count,min.norm)表示,其中min.count为位置向量,min.norm为最小值向量)

for(i in 1:100){

norm <- rnorm(100,1,1) min.norm[i] <- 100 for(i in 1:100){

if(norm[i]<=min.norm[i]){ min.norm[i]=norm[i] min.count[i]=i } } }

plot(min.count,min.norm) 7

Calculate the first 50 powers of 2, 2*2, 2*2*2, etc.

Calculate the squares of the integer numbers from 1 to 50.

Which pairs are equal, i.e. which integer numbers fulfill the condition 2n?n2. How many pairs are there?(Use R to solve all these questions!)

(思考使用循环和不使用循环两种方式解答) sum=0

for(i in 1:100) if(2^i==i^2){

sum=sum+1 print(i) }

cat(\

n=c(1:50) a=2^n b=n^2 x=a-b n[x==0] sum(x==0)

n=c(1:50) a=2^n b=n^2 x=a-b

n[!((x>0)|(x<0))] sum(!((x>0)|(x<0)))