R • exercises
catalogue题目1变量赋值和基本运算题目2向量创建和元素访问题目3使用内置函数计算统计量题目4混合运算与优先级理解题目5模运算与整数除法题目6类型转换与比较运算题目7因子Factor的创建与理解题目8逻辑Logical向量与索引提取题目9列表List的创建与元素访问题目10基础if-else判断数字性质判断题目11嵌套if与逻辑运算符成绩等级评定题目12ifelse()向量化函数解惑题目13基础for循环数列求和题目14while循环与条件控制斐波那契数列题目15循环控制与next语句特定倍数查找题目1变量赋值和基本运算num-10square-num**2cube-num**3print(paste(平方为,square,立方为,cube))#用print()将字符串和变量值同时输出要结合paste()cat(平方为,square,立方为,cube,\n)题目2向量创建和元素访问vec-c(5,10,15,20,25)cat(第三个元素为,vec[3])cat(向量长度为,length(vec))题目3使用内置函数计算统计量data-c(12,15,18,21,24)cat(平均值为,mean(data),总和为,sum(data),标准差为,sd(data))题目4混合运算与优先级理解result1-34*5result2-(34)*5print(paste(3 4 * 5 ,result1, ,(3 4) * 5 ,result2))题目5模运算与整数除法days-365weeks-days%/%7remaining_days-days%%7cat(365天是,weeks,个星期零,remaining_days,天)题目6类型转换与比较运算num_var-123char_var-123converted_var-as.numeric(char_var)cat(num_var与converted_var的值是否相等,num_varconverted_var)#只比较值cat(num_var与char_var的值是否相等,num_varchar_var)cat(num_var的类型为,class(num_var))cat(char_var的类型为,class(char_var))cat(converted_var的类型为,class(converted_var))cat(num_var与converted_var是否相等,identical(num_var,converted_var))#identical()比较值、类型cat(num_var与char_var是否相等,identical(num_var,char_var))题目7因子Factor的创建与理解将unclass()的结果单独打印这样能更清晰地显示整数向量。对于向量结果使用print()比cat()更能保持原始格式。weather-c(Sunny,Cloudy,Rainy,Sunny,Rainy)weather_factor-factor(weather,levelsc(Rainy,Cloudy,Sunny))print(weather_factor)print(因子的内部数值表示)print(unclass(weahter_factor))print(因子的水平)print(levels(weahter_factor))#print(paste(因子的内部数值表示,unclass(weather_factor)))#cat(因子的水平,levels(weather_factor))题目8逻辑Logical向量与索引提取scores-c(85,92,78,60,95,53)pass_logical-scores60print(pass_logical)print(scores[pass_logical])题目9列表List的创建与元素访问my_list-list(c(1,2,3),Hello World,TRUE)print(my_list[[2]])#提取元素本身print(class(my_list[[2]]))print(my_list[2])#提取子列表print(class(my_list[2]))names(my_list)-c(numbers,greeting,flag)print(my_list$greeting)题目10基础if-else判断数字性质判断user_input-readline(请输入一个数字)#获取输入num-suppressWarnings(as.numeric(user_input))#使其不报错如果转换错误则num为NULLif(is.na(num)){#处理非数字输入的情况cat(错误您输入的不是有效的数字\n)}else{#处理正确输入的情况if(num0){cat(正数\n)}elseif(num0){cat(负数\n)}else{cat(零\n)}}题目11嵌套if与逻辑运算符成绩等级评定user_input-readline(请输入成绩)num-suppressWarnings(as.numeric(user_input))if(is.na(num)){cat(user_input,不是有效数字\n)}else{if(num100|num0)cat(Invalid Score)elseif(num90)cat(Excellent)elseif(num80)cat(Good)elseif(num70)cat(Average)elseif(num60)cat(Pass)elsecat(Fail)}题目12ifelse()向量化函数# 1. 创建数值向量x-c(-2,5,0,12,-5,9,100)# 2. 使用ifelse()函数进行向量化判断result_vec-ifelse(x0,Positive,Non-Positive)# 3. 打印结果print(result_vec)# 4. 使用传统的for循环和if-else语句实现同样功能result_loop-character(length(x))# 创建空字符向量存储结果for(iin1:length(x)){if(x[i]0){result_loop[i]-Positive}else{result_loop[i]-Non-Positive}}# 打印循环实现的结果print(result_loop)# 验证两种方法结果是否一致identical(result_vec,result_loop)解惑为什么空字符向量用result_loop - character(length(x))而不是result_loop - c()因为result_loop - character(length(x))提前分配好了存储结果的内存空间而result_loop - c()每次循环时都会重新分配内存当数据量大时会严重影响性能这就是为什么在传统for循环中通常需要预先初始化结果向量的原因。题目13基础for循环数列求和numbers-c(2,5,8,11,14)sum_of_squares-0for(iinnumbers){#i用num更好看sum_of_squares-sum_of_squaresi^2}cat(数列平方和为,sum_of_squares)#使用cat打印print应为print(paste())题目14while循环与条件控制斐波那契数列prev-1# 上一个curr-1# 当前fib_seq-c(prev,curr)while(TRUE){next_val-prevcurr# 下一个if(next_val100)breakfib_seq-c(fib_seq,next_val)# 符合要求的放这prev-curr# 把上一个更新为curr因为有了新的“下一个”curr-next_val# 把前“下一个”更新为curr因为有了新的“下一个”}cat(斐波那契数列为,fib_seq,\n)题目15循环控制与next语句特定倍数查找is_prime-function(n){if(n1){# 小于等于1的不是质数return(FALSE)}elseif(n2){# 2是最小的质数return(TRUE)}elseif(n3){# 3在下面循环里会被误判为非质数,不能用||把3和前面的2放一起因为这样只会打印2return(TRUE)}elseif(n%%20){return(FALSE)}# 偶数除了2不是质数for(iinseq(3,floor(sqrt(n)),by2)){# 检查从3到sqrt(n)的奇数避免重复检查因为2是唯一的偶质数且奇数的因数只能是奇数if(n%%i0){return(FALSE)# 质数不能被其它数整除}}return(TRUE)# 不能放在for (i in seq(3, floor(sqrt(n)), by2))的else里因为可能有很多不整除导致提前退出循环但只要有一个整除就不要了}for(iin1:50){if(i%%150){# 放前面扔掉不要的再对剩下的判断cat(跳过15的倍数,i,\n)next# 跳出这次循环进入下一次循环}if(i%%30i%%5!0){if(is_prime(i))# 2是质数但2根本进不了if所以不打印 is_prime是个判断质数的通用函数cat(i,*\n,sep)# 质数加星号sep避免星号和质数间的空格elsecat(i,\n)# 不是质数直接打}}

相关新闻

5个实战技巧:彻底掌握ES-Client的Elasticsearch管理方案

5个实战技巧:彻底掌握ES-Client的Elasticsearch管理方案

5个实战技巧:彻底掌握ES-Client的Elasticsearch管理方案 【免费下载链接】es-client elasticsearch客户端,issue请前往码云:https://gitee.com/qiaoshengda/es-client 项目地址: https://gitcode.com/gh_mirrors/es/es-client ES-Clie…

2026/7/26 19:29:20 阅读更多 →
Gemini API开发实战:从多模态架构到9.5亿月活的技术解析

Gemini API开发实战:从多模态架构到9.5亿月活的技术解析

如果你最近在关注AI大模型的发展,可能会注意到一个有趣的现象:当很多公司还在为AI商业化发愁时,Google母公司Alphabet刚刚交出了一份亮眼的财报——Q2营收增长24%,其中Gemini模型的月活跃用户达到了惊人的9.5亿。这个数字背后透露…

2026/7/26 19:29:20 阅读更多 →
PowerToys汉化终极指南:解锁Windows效率工具的完整中文体验

PowerToys汉化终极指南:解锁Windows效率工具的完整中文体验

PowerToys汉化终极指南:解锁Windows效率工具的完整中文体验 【免费下载链接】PowerToys-CN PowerToys Simplified Chinese Translation 微软增强工具箱 自制汉化 项目地址: https://gitcode.com/gh_mirrors/po/PowerToys-CN 还在为PowerToys的英文界面发愁吗…

2026/7/26 19:29:20 阅读更多 →

最新新闻

如何用RViz解决机器人调试难题:从传感器数据到运动规划的3D可视化实战

如何用RViz解决机器人调试难题:从传感器数据到运动规划的3D可视化实战

如何用RViz解决机器人调试难题:从传感器数据到运动规划的3D可视化实战 【免费下载链接】rviz ROS 3D Robot Visualizer 项目地址: https://gitcode.com/gh_mirrors/rv/rviz 在机器人开发中,你是否曾为调试复杂的传感器数据而头痛?当激…

2026/7/26 19:53:29 阅读更多 →
WaveTools鸣潮工具箱抽卡记录功能完整指南:从零开始掌握数据分析

WaveTools鸣潮工具箱抽卡记录功能完整指南:从零开始掌握数据分析

WaveTools鸣潮工具箱抽卡记录功能完整指南:从零开始掌握数据分析 【免费下载链接】WaveTools 🧰鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools WaveTools鸣潮工具箱是一款专为《鸣潮》游戏玩家设计的强大工具集,…

2026/7/26 19:53:29 阅读更多 →
大数据爬虫+hadoop的B站短视频热门趋势分析与创作者策略研究系统

大数据爬虫+hadoop的B站短视频热门趋势分析与创作者策略研究系统

大数据爬虫与Hadoop在B站短视频热门趋势分析与创作者策略研究中的应用背景随着短视频平台的迅猛发展,B站(哔哩哔哩)作为国内重要的UGC(用户生成内容)社区,其短视频板块已成为用户创作与消费的重要场景。平台…

2026/7/26 19:53:29 阅读更多 →
终极浏览器隐私保护指南:如何用uBlock Origin轻松屏蔽广告和追踪器

终极浏览器隐私保护指南:如何用uBlock Origin轻松屏蔽广告和追踪器

终极浏览器隐私保护指南:如何用uBlock Origin轻松屏蔽广告和追踪器 【免费下载链接】uBlock uBlock Origin - An efficient blocker for Chromium and Firefox. Fast and lean. 项目地址: https://gitcode.com/GitHub_Trending/ub/uBlock 你知道吗&#xff1…

2026/7/26 19:53:29 阅读更多 →
Unity游戏性能优化实战:从卡顿到丝滑的渲染与CPU/GPU瓶颈解决

Unity游戏性能优化实战:从卡顿到丝滑的渲染与CPU/GPU瓶颈解决

1. 项目概述:从“卡顿”到“丝滑”的视觉优化之路作为一名在游戏行业摸爬滚打了十多年的老兵,我见过太多项目因为视觉表现和性能之间的失衡而折戟沉沙。一个画面再精美的游戏,如果帧率不稳、操作迟滞,玩家在几分钟内就会失去耐心&…

2026/7/26 19:53:29 阅读更多 →
从兼容性困境到游戏复兴:用DxWrapper让经典游戏在现代Windows上重生

从兼容性困境到游戏复兴:用DxWrapper让经典游戏在现代Windows上重生

从兼容性困境到游戏复兴:用DxWrapper让经典游戏在现代Windows上重生 【免费下载链接】dxwrapper Fixes compatibility issues with older games running on Windows 10/11 by wrapping DirectX dlls. Also allows loading custom libraries with the file extension…

2026/7/26 19:52:28 阅读更多 →

日新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/26 0:00:31 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/26 0:00:31 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/26 0:00:31 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/26 0:00:31 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/26 0:00:31 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/26 0:00:31 阅读更多 →

月新闻