当前位置: 首页 > news >正文

R语言——R语言基础

1、用repeat、for、while计算从1-10的所有整数的平方和

2、编写一个函数,给出两个正整数,计算他们的最小公倍数

3、编写一个函数,让用户输入姓名、年龄,得出他明年的年龄。用paste打印出来。例如:"Hi xiaoming you will be 35 next year"

4、编写一个递归函数,实现根据元素索引,得到Fibonacci序列(1,1,2,3,5,8,13…)的值,即f(n)=f(n-1)+f(n-2),n>=3。其中f(1)=1,f(2)=1。

并计算f(20)的值。

5、编写一个函数,将c(2,3,5,8,9,13,21,34)中能被3整除的元素,替换为0,并输出替换后的向量。

  1. 用repeat、for、while计算从1-10的所有整数的平方和

代码:

# 使用 repeat 循环计算total <- 0i <- 1repeat {total <- total + i^2i <- i + 1if (i > 10) {break}}print(paste("从1到10的所有整数的平方和为:", total))# 使用 for 循环计算total <- 0for (i in 1:10) {total <- total + i^2}print(paste("从1到10的所有整数的平方和为:", total))# 使用 while 循环计算total <- 0i <- 1while (i <= 10) {total <- total + i^2i <- i + 1}print(paste("从1到10的所有整数的平方和为:", total))

        截图:

                

  1. 编写一个函数,给出两个正整数,计算他们的最小公倍数

代码:

        

# 定义gcd函数  
gcd <- function(a, b) {  while (b != 0) {  temp <- b  b <- a %% b  a <- temp  }  return(a)  
}  # 定义lcm函数  
lcm <- function(x, y) {  return((x * y) / gcd(x, y))  
}  # 读取用户输入  
num1 <- as.integer(readline("请输入第一个正整数:"))  
num2 <- as.integer(readline("请输入第二个正整数:"))  # 计算并打印LCM  
result <- lcm(num1, num2)  
print(paste("两个正整数的最小公倍数为:", result))

截图:

3、编写一个函数,让用户输入姓名、年龄,得出他明年的年龄。用paste打印出来。例如:"Hi xiaoming you will be 35 next year"

代码:

next_year_age <- function(name, age) {next_age <- age + 1print(paste("Hi", name, "you will be", next_age, "next year."))}name <- readline("请输入您的姓名:")age <- as.integer(readline("请输入您的年龄:"))next_year_age(name, age)

截图:

4、编写一个递归函数,实现根据元素索引,得到Fibonacci序列(1,1,2,3,5,8,13…)的值,即f(n)=f(n-1)+f(n-2),n>=3。其中f(1)=1,f(2)=1。

并计算f(20)的值。

代码:

fibonacci <- function(n) {if (n <= 1) {return(n)} else {return(fibonacci(n-1) + fibonacci(n-2))}}n <- 20print(paste("Fibonacci 序列第", n, "个元素的值为:", fibonacci(n)))

截图:

  1. 编写一个函数,将c(2,3,5,8,9,13,21,34)中能被3整除的元素,替换为0,并输出替换后的向量。

代码:

replace_divisible_by_3 <- function(lst) {for (i in 1:length(lst)) {if (lst[i] %% 3 == 0) {lst[i] <- 0}}return(lst)}c <- c(2, 3, 5, 8, 9, 13, 21, 34)new_c <- replace_divisible_by_3(c)print(paste("替换后的向量为:", new_c))

截图:

http://www.lryc.cn/news/379899.html

相关文章:

  • VFB电压反馈和CFB电流反馈运算放大器(运放)选择指南
  • elasticsearch安装(centos7)
  • Java高手的30k之路|面试宝典|精通JVM(二)
  • JVM专题六:JVM的内存模型
  • 学习java第一百零七天
  • k8s上尝试滚动更新和回滚
  • GitHub Copilot 登录账号激活,已经在IntellJ IDEA使用
  • 进程知识点(二)
  • 【线性代数】【一】1.6 矩阵的可逆性与线性方程组的解
  • 基于大型语言模型的全双工语音对话方案
  • Spring Boot集成Minio插件快速入门
  • 【C++新特性】右值引用
  • 信息安全基础知识(完整)
  • QT
  • 双例集合(三)——双例集合的实现类之TreeMap容器类
  • [SAP ABAP] 运算符
  • MSPM0G3507 ——GPIO例程讲解2——simultaneous_interrupts
  • 某程序员:30岁了,老婆管钱,背着我买了50万股票,亏了20w,强制她清仓后又买了36万
  • Docker常见面试题整理
  • 35 - 最后一个能进入巴士的人(高频 SQL 50 题基础版)
  • WPF将dll文件嵌入到exe文件中
  • 2024年AI+游戏赛道的公司和工具归类总结
  • svm和决策树基本知识以及模型评价以及模型保存
  • C++ 79 之 自己写异常类
  • 如何搭建一个成功的短剧制作平台
  • kotlin类
  • android | studio的UI布局和代码调试 | UI调试 (用于找到项目源码)
  • LangChain实战技巧之六:一起玩转config(上篇)——ConfigurableField
  • 扫码称重上位机
  • 操作系统入门 -- 进程的通信方式