R语言——R语言基础

news2024/11/29 12:45:15

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 <- 0

i <- 1

repeat {
  
  total <- total + i^2
  
  i <- i + 1
  
  if (i > 10) {
    
    break
    
  }
  
}

print(paste("从1到10的所有整数的平方和为:", total))



# 使用 for 循环计算

total <- 0

for (i in 1:10) {
  
  total <- total + i^2
  
}

print(paste("从1到10的所有整数的平方和为:", total))



# 使用 while 循环计算

total <- 0

i <- 1

while (i <= 10) {
  
  total <- total + i^2
  
  i <- 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 + 1

  print(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 <- 20

print(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.coloradmin.cn/o/1847929.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

域内攻击手法——域内用户枚举和密码喷洒

一、域内用户枚举 1、域内用户枚举原理 域内用户枚举可以在无域内有效凭据的情况下&#xff0c;枚举出域内存在的用户名&#xff0c;并对其进行密码喷洒攻击&#xff0c;以此获得域内的有效凭据&#xff0c;在 Kerberos 协议认证的 AS-REQ 阶段&#xff0c;客户端向 AS 发送的…

windows本地运行LLama3中文版

先到官网下载LM Studio 网址&#xff1a;LM Studio - Discover, download, and run local LLMs 下载完成后&#xff0c;直接点击运行。在页面搜索栏输入&#xff1a;llama3 chines 然后收获了如下错误信息&#xff1a;network error&#xff0c;怎么办&#xff1f;请转如下链接…

AI绘画-Stable Diffusion三次元人物模型训练(炼丹)教程,你也可以定制你的三上youya老师!

大家好&#xff0c;我是设计师阿威 &#xff08;Stable diffusion生成的三上youya老师&#xff09; 用AI进行画出不同人物&#xff0c;我们需要训练自己Lora模型。除了训练二次元人物之外&#xff0c;也常常要训练三次元人物。 比如福利姬老师可以训练自己然后穿上各种美美的…

The Sandbox 购入几大迷因币!

The Sandbox 是一个致力于支持虚拟艺术家和创作者的全球性社区。我们相信创意文化是开放式元宇宙的基石&#xff0c;我们会花时间参与并帮助 Web3 生态系统的发展&#xff0c;使其中的参与者受益。 为了进一步实现这一目标&#xff0c;我们购买了几种流行的 迷因币&#xff0c;…

【大模型驯化-Prompt】企业级大模型Prompt调试技巧与batch批量调用方法

【大模型驯化-Prompt】企业级大模型Prompt调试技巧 本次修炼方法请往下查看 &#x1f308; 欢迎莅临我的博客个人主页 &#x1f448;这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合&#xff0c;智慧小天地&#xff01; &#x1f387; 免费获取相关内容文档关注&#x…

『FPGA通信接口』LVDS接口(4)LVDS接收端设计

文章目录 1.LVDS接收端概述2逻辑框图3.xapp855训练代码解读4.接收端发送端联调5.传送门 1.LVDS接收端概述 接收端的传输模型各个属性应该与LVDS发送端各属性一致&#xff0c;例如&#xff0c;如果用于接收CMOS图像传感器的图像数据&#xff0c;则接收端程序的串化因子、通道个…

批量推送邮件如何高效实现?邮件推送技巧?

批量推送邮件有哪些注意事项&#xff1f;如何优化邮件推送效果&#xff1f; 无论是市场营销、客户服务还是内部沟通&#xff0c;批量推送邮件都发挥着关键作用。然而&#xff0c;如何高效实现批量推送邮件却是一个需要深思的问题。AokSend将探讨一些提高批量推送邮件效率的方法…

C++ GPU编程(英伟达CUDA)

安装编译环境 https://developer.download.nvidia.com/compute/cuda/12.5.0/local_installers/cuda_12.5.0_555.85_windows.exe CMakeLists.txt cmake_minimum_required(VERSION 3.10)set(CMAKE_CXX_STANDARD 17) set(CMAKE_BUILD_TYPE Release) #set(CMAKE_CUDA_ARCHITECTUR…

手写方法实现字符串例如:“123“与整型例如:123相互转化(面试必会)

目录 二、字符串类型转化为整型 1. 初始化变量 2.定义字符串索引值 3.思考如何将字符1转化为数字1 4. 转化思路 5.考虑字符串转化负数例&#xff1a;-123456 6.完整代码 四、最后 一、前言 在c语言和c中&#xff0c;有许许多多的数据类型相互转化的方法&#xff0c;这里…

CARIS HIPS and SIPSv12 是专业的多波束水深数据和声呐图像处理软件

CARIS HIPS and SIPS是专业的多波束水深数据和声呐图像处理软件。CARIS HIPS and SIPS适用于海洋应用需求。其可靠性和可用性对多波束水深数据处理和声呐图像都是很重要的。CARIS HIPS用于处理多波束水深数据&#xff0c;CARIS SIPS用于处理侧扫声呐图像和多波束背向散射回波数…

卫星智慧停车导航系统有哪些优势

卫星智慧停车导航系统凭借其先进的技术和创新的理念&#xff0c;为现代城市停车问题提供了有效的解决方案。以下是卫星智慧停车导航系统的主要优势&#xff1a; 一、实时性与准确性 卫星智慧停车导航系统通过集成全球卫星定位系统(GPS)和地理信息系统(GIS)&#xff0c;能够实时…

Redis 持久化策略

Redis 提供了多种持久化机制&#xff0c;用于将数据保存到磁盘中&#xff0c;以防止因服务器重启或故障而导致的数据丢失。主要的持久化策略有两种&#xff1a;RDB (Redis Database) 和 AOF (Append Only File)&#xff0c;即当 Redis 服务器重新启动时&#xff0c;会读取相应的…

自研地面站!自主开源无人飞行系统 Prometheus V2 版重大升级详解

自主开源无人飞行系统 Prometheus V2 相对于 Prometheus V1 在多方面做了重大的升级&#xff0c;今天我们将聊聊 Prometheus V2 的地面站升级。 地面站的重大提升 熟悉 Prometheus 的小伙伴们可能知道&#xff0c;V1 版本是没有专门的地面站的。而在 Prometheus V2 中&#x…

【MAVEN学习 | 第2篇】Maven工程创建及核心功能

文章目录 一. 基于IDEA的Maven工程创建1.1 Maven工程GAVP属性&#xff08;1&#xff09;GroupID 格式&#xff08;2&#xff09;ArtifactID 格式&#xff08;3&#xff09;Version版本号格式&#xff08;4&#xff09;Packaging定义规则 1.2 IDEA构建Maven JavaSE工程1.3 IDEA构…

大模型培训 AUTOWEBGLM:自动网页导航智能体

大语言模型&#xff08;LLMs&#xff09;在智能代理任务中发挥着重要作用&#xff0c;尤其是在网络导航方面。然而&#xff0c;现有的代理在真实世界的网页上表现不佳&#xff0c;主要原因网络导航代理面临着三大挑战&#xff1a;网页上行动的多样性、HTML文本的处理限制以及开…

数据结构6---树

一、定义 树(Tree)是n(n>0)个结点的有限集。当n0时成为空树,在任意一棵非空树中: 1、有且仅有一个特定的称为根(Root)的结点; 2、当n>1时,其余结点可分为m(m>日)个互不相交的有限集T1、T2、...、 Tm&#xff0c;其中每一个集合本身又是一棵树&#xff0c;并且称为根的…

模块化沙箱

模块化沙箱是什么&#xff1f;模块化沙箱有什么作用&#xff1f; 模块化沙箱是一种高灵活性和高扩展性的数据安全产品&#xff0c;通过选择不同的沙箱模块&#xff0c;满足不同的安全需求。 同时&#xff0c;模块化沙箱也是零信任的重要一环&#xff0c;根据企事业单位各类国…

11、鸿蒙学习—UDID获取方法

一、手机的UDID获取方法如下&#xff1a; 1、打开“设置 > 关于手机”&#xff0c;多次点击版本号&#xff0c;打开开发者模式。 2、打开“设置 > 系统和更新”&#xff0c;在最下方找到“开发人员选项”&#xff0c;打开“USB调试”开关。 3、使用PC连接手机后&#…

网红和主播们是用的什么美颜工具?深入剖析美颜sdk与美颜Api

在现代社交媒体和直播平台的兴起中&#xff0c;网红和主播们依靠精美的外表吸引大量观众&#xff0c;获得高人气和收益已成为常态。这其中&#xff0c;美颜工具起到了至关重要的作用。这篇文章将深入剖析网红和主播们常用的美颜工具&#xff0c;特别是美颜SDK和美颜API的原理和…

想要成为程序员,首先你需要掌握这这三种编程语言!

作为程序员&#xff0c;掌握多种编程语言是非常有价值的&#xff0c;因为不同的编程语言有不同的优势和适用场景。然而&#xff0c;要指定“必须掌握”的三种编程语言是相当主观的&#xff0c;因为这取决于个人的职业目标、所在行业的需求以及技术趋势。不过&#xff0c;以下三…