032-GeoGebra中级篇-列表与集合(list and set)及常用操作大全

news2024/9/21 3:32:18

列表在 GeoGebra 中扮演着重要角色,使用户能够处理和管理一组数值、点或对象。这些列表可以用于执行多种操作,如计算平均值、排序、查找最大或最小值、绘制点的集合等。通过使用列表,用户可以简化复杂的计算步骤,增强图形的动态性和互动性。本文将介绍如何在 GeoGebra 中创建和操作列表,展示列表在数学教学、数据分析和几何构建中的实际应用。通过掌握这些列表操作技巧,您可以进一步提升 GeoGebra 的使用效果,创造更加丰富和生动的数学模型。

在这里插入图片描述

目录

    • 一、关于列表与集合
      • 1. 列表与集合的对比
      • 2. 列表转集合
      • 3. 集合转列表
    • 二、列表的操作
      • 1. 列表-创建
      • 2. 列表-新增元素
      • 3. 列表-删除元素
      • 4. 列表-访问元素
      • 5. 列表-修改元素
      • 6. 列表-遍历列表
      • 7. 列表-合并列表
      • 7. 列表-获取列表长度
      • 8. 列表-查找元素索引:
      • 9. 列表-列表求和::
      • 10. 列表-列表排序:
      • 11. 列表-反转列表:
    • 三、集合的操作
      • 1. 集合-创建(与列表一致):
      • 2. 集合-新增元素:
      • 3. 集合-删除元素:
      • 4. 集合-访问元素:
      • 5. 集合的并集:
      • 6. 集合的交集:
      • 7. 集合的差集:
      • 8. 集合的补集:
      • 9. 集合的子集:
      • 10. 集合-判断元素是否在集合中:
      • 11. 集合-获取集合大小:
      • 12. 集合-求集合的幂集:
      • 13. 集合-判断集合是否为空:
    • 四、文章最后

一、关于列表与集合

1. 列表与集合的对比

老实说,我第一次接触到GeoGebra的列表时有些懵,我们先来看一下GeoGebra中列表与集合的对比:

特性列表 (List)集合 (Set)
创建方式使用 {} 创建使用 {} 创建并确保元素唯一
元素顺序有序无序
元素重复允许重复不允许重复
访问方式通过索引访问(从1开始)不能通过索引访问
示例{1, 2, 2, 3, 4, 5}{1, 2, 3}
并集运算不支持直接运算支持直接运算 ()
交集运算不支持直接运算支持直接运算 ()
差集运算不支持直接运算支持直接运算 (\)
使用场景数据分析、绘图、统计计算集合运算、逻辑判断
转换为集合Set[List]不需要转换,直接使用
示例操作Element[List, 2] 返回第2个元素Union = Set1 ∪ Set2 计算并集

如果说C语言是万剑之宗,那么衍生出来的GeoGebra这把剑一定是个另类,因为有几个奇怪的地方:

  1. GeoGebra列表有序、且可以重复,但从1开始索引;
  2. GeoGebra列表与集合的创建方式一样;
  3. {1,2,3}默认是列表,除非上文中有交、并、差运算,系统才确定它是集合;
  4. 列表可以转换为集合,用的是Set[List]

2. 列表转集合

因为集合是不重复的,所以可以利用这个原理进行列表的去重。

// 定义列表
L = {1, 2, 2, 3, 4, 5, 5}

// 将列表转换为集合
SetL = Set[L]

// 输出结果
SetL  // 结果为 {1, 2, 3, 4, 5}

3. 集合转列表

注意,集合是无需的,元素是不重复的,列表是有序的,元素可以重复(数学中的理论)

// 定义集合
Set1 = {5, 2, 8, 1}

// 将集合转换为列表
ListFromSet = Sequence(Element[Set1, i], i, 1, Length[Set1])

// 输出结果
ListFromSet  // 结果为 {5, 2, 8, 1}

// 对列表进行排序(可选)
SortedList = Sort[ListFromSet]

// 输出排序后的列表
SortedList  // 结果为 {1, 2, 5, 8}

二、列表的操作

1. 列表-创建

(1)直接创建法:直接在命令行输入下边命令,就可以创建列表(注意,花括号默认创建列表,列表进行交集、并集处理后会自动转成集合)。

L = {1, 2, 3, 4, 5}

(2)使用序列法:

这将创建一个名为L的列表,包含从1到10的平方数:{1, 4, 9, 16, 25, 36, 49, 64, 81, 100}

L = Sequence(n^2, n, 1, 10)

在这里插入图片描述

2. 列表-新增元素

可以使用GeoGebra的Append命令向列表中添加元素(和Python的关键字一样):

L = {1, 2, 3}
Append(L, 4)  // L现在变为{1, 2, 3, 4}

3. 列表-删除元素

使用Remove命令可以删除指定位置的元素:

L = {1, 2, 3, 4, 5}
Remove(L, 3)  // L现在变为{1, 2, 4, 5}

4. 列表-访问元素

可以使用方括号语法访问列表中的特定元素(程序员请注意,这里是从1开始):

L = {10, 20, 30, 40, 50}
L(3)  // 返回30

5. 列表-修改元素

通过重新定义列表中的特定位置元素,可以修改列表:

L = {10, 20, 30, 40, 50}
SetValue(L, 3, 35)  // 将第3个元素改为35,现在L为{10, 20, 35, 40, 50}

6. 列表-遍历列表

可以使用Sequence命令或循环来遍历列表中的元素。例如,计算列表中所有元素的平方并存储在新列表中:

L = {1, 2, 3, 4, 5}
SquaredList = Sequence(Element(L, i)^2, i, 1, Length(L))  // SquaredList为{1, 4, 9, 16, 25}

7. 列表-合并列表

你可以使用Join命令合并两个或多个列表:(注意,这个操作后仍是列表,元素可以重复)

L1 = {1, 2, 3}
L2 = {3, 4, 5}
L = Join(L1, L2)  // L为{1, 2, 3, 3, 4, 5}

7. 列表-获取列表长度

L = {1, 2, 3, 4, 5}
Length(L)  // 返回5

8. 列表-查找元素索引:

L = {10, 20, 30, 40, 50}
IndexOf(L, 30)  // 返回3

9. 列表-列表求和::

L = {1, 2, 3, 4, 5}
Sum(L)  // 返回15

10. 列表-列表排序:

L = {5, 2, 8, 1, 4}
Sort(L)  // 返回{1, 2, 4, 5, 8}

11. 列表-反转列表:

L = {1, 2, 3, 4, 5}
Reverse(L)  // 返回{5, 4, 3, 2, 1}

三、集合的操作

1. 集合-创建(与列表一致):

(1)直接创建法:直接在命令行输入下边命令,就可以创建集合(注意,虽说花括号默认创建列表,但后续我们一旦对列表进行集合的操作,就会自动转换成集合)。

L = {1, 2, 3, 4, 5}

(2)使用序列法:

这将创建一个名为L的集合,包含从1到10的平方数:{1, 4, 9, 16, 25, 36, 49, 64, 81, 100}

L = Sequence(n^2, n, 1, 10)

在这里插入图片描述

2. 集合-新增元素:

集合中的元素是唯一的,添加重复元素不会改变集合:

S = {1, 2, 3}
S = Union(S, {4})  // S现在变为{1, 2, 3, 4}
S = Union(S, {3})  // S仍然是{1, 2, 3, 4},因为3已经在集合中

3. 集合-删除元素:

使用Difference命令可以从集合中删除元素:

S = {1, 2, 3, 4, 5}
S = Difference(S, {3})  // S现在变为{1, 2, 4, 5}

4. 集合-访问元素:

集合没有固定的顺序,因此不能通过索引访问特定元素。但是可以使用Element命令访问集合中的元素:

S = {10, 20, 30, 40, 50}
Element(S, 3)  // 返回集合中的第三个元素

5. 集合的并集:

使用Union命令可以求两个集合的并集:

S1 = {1, 2, 3}
S2 = {3, 4, 5}
S = Union(S1, S2)  // S为{1, 2, 3, 4, 5}

6. 集合的交集:

使用Intersection命令可以求两个集合的交集:

S1 = {1, 2, 3}
S2 = {3, 4, 5}
S = Intersection(S1, S2)  // S为{3}

7. 集合的差集:

使用Intersection命令可以求两个集合的交集:

S1 = {1, 2, 3}
S2 = {3, 4, 5}
S = Difference(S1, S2)  // S为{1, 2}

8. 集合的补集:

假设有一个全集U,使用Complement命令可以求集合的补集:

U = {1, 2, 3, 4, 5}
S = {2, 4}
C = Complement(U, S)  // C为{1, 3, 5}

9. 集合的子集:

使用Subset命令可以获取集合的子集:

S = {1, 2, 3, 4, 5}
Subsets(S, 2)  // 返回{ {1, 2}, {1, 3}, {1, 4}, {1, 5}, {2, 3}, {2, 4}, {2, 5}, {3, 4}, {3, 5}, {4, 5} }

10. 集合-判断元素是否在集合中:

S = {1, 2, 3, 4, 5}
Contains(S, 3)  // 返回true

11. 集合-获取集合大小:

S = {1, 2, 3, 4, 5}
Size(S)  // 返回5

12. 集合-求集合的幂集:

S = {1, 2, 3}
PowerSet(S)  // 返回{ {}, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3} }

13. 集合-判断集合是否为空:

S = {}
IsEmpty(S)  // 返回true

四、文章最后

如有需要随时联系,当然,随时欢迎技术咨询。
请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1974478.html

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

相关文章

《计算机组成原理》(第3版)第1章 计算机系统概论 复习笔记

第1章 计算机系统概论 一、计算机系统简介 (一)计算机的软硬件概念 1.计算机系统由“硬件”和“软件”两大部分组成 (1)所谓“硬件”,是指计算机的实体部分,如主机、外部设备等。 &#xff0…

phpMyAdmin 漏洞

一、日志文件拿shell 在sql语句执行界面执行命令 将日志功能打开 再次查看 更改日志保存路径 擦看是否更改成功 植入一句话木马 访问木马 使用工具连接 二、导⼊导出拿WebShell 判断网站位置 判断在www在Extensions同级 写shell 访问shell,使用工具连接 三、可视化界面getshe…

C++11特性(二)

系列文章目录 C11特性(一) 文章目录 系列文章目录前言一、可变模板参数1.1 什么是可变参数模板1.2 如何打印可变模板参数的内容递归函数方式展开参数包逗号表达式展开参数包 1.3 emplace_back的实现1.4 可变模板参数为何高效 二、lambda表达式2.1 C98中的一个例子2.2 lambda表…

基于JAVA的商品供应管理系统-JavaEE

点击下载源码 基于JAVA的商品供应管理系统-JavaEE 摘 要 当今社会己进入信息社会时代,信息己经受到社会的广泛关注,被看作社会和科学技术发展的三大支柱(材料、能源、信息)之一。信息是管理的基础,是进行决策的基本依…

vue3使用svg(无废话版)

1.去阿里云矢量图标库&#xff0c;复制svg代码 2.新建一个phone.svg文件(存放在assets/icons/phone.svg)&#xff0c;内容是刚刚复制的svg代码 <svg t"1722592653925" class"icon" viewBox"0 0 1024 1024" version"1.1" xmlns&quo…

数据失踪?这四款U盘数据恢复利器教你如何避免错误操作与保障安全性

当U盘上的数据不见了&#xff0c;数据恢复软件就像是你的救命稻草。一些好的数据恢复软件还会提供安全的恢复选项&#xff0c;确保在恢复的过程中不会对原来的数据造成损害。接下来&#xff0c;我们就来看看这些顶级的U盘数据恢复软件是怎么帮我们恢复U盘数据的&#xff0c;同时…

红旗E-QM5起火,一汽红旗否认车辆质量问题

近日&#xff0c;据媒体报道&#xff0c;7月31日下午&#xff0c;长春一辆一汽红旗E-QM5发生起火事故。 一汽红旗方面则表示&#xff1a;“现场勘查和初步调查表明&#xff0c;该事件并非因车辆自身质量问题导致自燃。疑似车辆在行驶过程中与路面井盖发生碰撞导致动力电池受损&…

专业130+总分430+浙大浙江大学842考研信号系统与数字电路经验电子信息与通信工程真题,大纲,参考书。

通过接近一年的备考&#xff0c;专业842信号和数电总结130&#xff08;专业课比预期低&#xff09;&#xff0c;总分430如愿上岸浙大&#xff0c;这一路复习走过弯路&#xff0c;淋过雨&#xff0c;也走过大路&#xff0c;风和日丽&#xff0c;总结一些自己的心得&#xff0c;希…

C语言 ——— 学习、使用 strcmp函数 并模拟实现

目录 strcmp函数的功能 学习strcmp函数​编辑 使用strcmp函数 模拟实现strcmp函数 strcmp函数的功能 strcmp函数的功能是字符串比较&#xff0c;两个字符串的对应位置的字符进行比较&#xff0c;直到字符不同或达到终止的 \0 字符为止 举例说明&#xff1a; 字符串1&am…

法制史学习笔记(个人向) Part.7

法制史学习笔记(个人向) Part.7 11. 清朝法律制度 11.1 立法概述 11.1.1 立法指导思想 简单来说是&#xff1a;详译明律&#xff0c;参以国制&#xff1b; 努尔哈赤时期&#xff0c;后金政权处于由习惯法到成文法的过渡过程中&#xff1b;皇太极统治时期&#xff0c;奉行“参…

Linux中vim的基本介绍和使用

善为理者&#xff0c;举其纲&#xff0c;疏其网。 vim 1、vim介绍2、命令模式详情3、底行模式详情4、困难问题5、历史存疑问题6、vim配置问题6、1、配置的原理6、2、一键式配置 1、vim介绍 如果我面想要在Linux上编写代码的话&#xff0c;我就需要vim来帮助我们编写代码。但是…

基于JSP、java、Tomcat三者的项目实战--校园交易网(3)主页--实现修改商品的名字与价格功能(万字爆更)增查改删,三端交互样样齐全

技术支持&#xff1a;JAVA、JSP 服务器&#xff1a;TOMCAT 7.0.86 编程软件&#xff1a;IntelliJ IDEA 2021.1.3 x64 前文几个功能的实现的博客 基于JSP、java、Tomcat、mysql三层交互的项目实战--校园交易网&#xff08;1&#xff09;-项目搭建&#xff08;前期准备工作&am…

Pycharm2023.1安装及其破解(含安装包)

一、下载 安装包 pycharm-professional-2023.1.exe https://www.alipan.com/s/f9WgrwLRbVn 提取码: 0yow 二、安装 三、激活 激活码&#xff1a;pycharm专业版激活码,2025.1月结束_pycharm序列号-CSDN博客 四、汉化

2024年8月2日(安装MySQL,以及各种操作)

一、安装并配置MySQL 1、下载mysql软件包 [rootmysql ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.33-1.el7.x86_64.rpm-bundle.tar 2、解压 [rootmysql ~]# tar -xf mysql-8.0.33-1.el7.x86_64.rpm-bundle.tar 3、检查是否具有mariadb/mysql&…

技术成神之路:设计模式(十一)迭代器模式

前言 迭代器这个词听到并不陌生吧&#xff0c;我们再开发中遍历HashMap 和 HashSet的时候 用到的迭代器和这里的迭代器是一个概念&#xff0c;当然&#xff0c;这个模式不是教你如何去实现的&#xff0c;而是以了解为主。 介绍 迭代器模式&#xff08;Iterator Pattern&#…

携程实习生0506笔试-编程题

解题思路&#xff1a; 看坐标之和&#xff0c;奇数偶数不同字符即可。 解题思路&#xff1a; 题目应该是求连续的k长度最大值&#xff0c;遍历比较字符串&#xff0c;最后再取模。 import java.util.Scanner;public class Main {public static void main(String[] args) {Scann…

Keysight(原Agilent) E4980AL 精密 LCR 表特性与技术指标

Keysight(原Agilent) E4980AL 精密 LCR 表为基础 LCR 表树立了行业标准&#xff0c;可在多个频率范围内提供更佳的精度、速度和通用性。E4980AL 结合了种类繁多的附件&#xff0c;适用于一般研发和生产环境中的各种元件和材料测量。也可通过频率升级而提升投资回报率。 Keysig…

媲美Element Plus JuanTree终极实战:虚拟滚动

JuanTree组件功能迭代终于来到了终章——虚拟滚动实现。 有了前面学习的铺垫&#xff1a;vue大数据量列表渲染性能优化&#xff1a;虚拟滚动原理 把示例的实现用到JuanTree组件就变得非常的简单了。 功能视频演示&#xff1a; 自研Vue3 Tree组件 - 虚拟滚动功能演示 先来看效…

文档在线预览:keking/kkFileView踩坑记

文章目录 一、概述1、官方文档2、使用 二、部署服务1、传统部署方式&#xff08;1&#xff09;环境要求&#xff08;2&#xff09;生成部署包 2、docker部署方式 三、踩坑1、预览并发问题&预览首次打开慢2、字体问题乱码3、水印问题4、使用nginx代理5、docker部署指定配置 …

stm32 RAM for Algorithm问题,已解决

在此界面将 programming Algorithm内的flash remove&#xff0c;然后再重选就能解决