对比python学julia(第一章)--(第三节)山巅一寺一壶酒
在小学阶段背过圆周率的同学对这节的标题应该不陌生。π(3.14159…)是大家熟悉的普通无理数,但也是非常神秘的一组数字,例如几个世纪以来,埃及考古学家和神秘主义追随者一直痴迷于胡夫金字塔暗藏的圆周率之谜。因为该金字塔的塔基周长和高的比例是 1760/280,离 2π 只有小于 0.05%的差距。另外,它在许多电影里面也出现过,作为推动剧情的重要元素,甚至有一部美国惊悚电影直接以《圆周率》命名,而且这部电影还获得了1998 年的圣丹斯国际电影节剧情片导演奖。每年的3月14日被定为“圆周率日”,在 2019 年联合国教科文组织第四十届大会上正式宣布每年的 3 月 14 日是“国际数学日”。
从古到今,数学家们都在对圆周率的计算孜孜以求。出现了众多计算方法。其中印度数学家尼拉坎特哈发现的一个可用于计算圆周率π近似值的无穷级数(尼拉坎特哈级数)算是比较简单的了。该级数的展开公式如下:
π
=
3
+
4
2
×
3
×
4
−
4
4
×
5
×
6
+
4
6
×
7
×
8
−
4
8
×
9
×
10
+
4
10
×
11
×
12
…
π = 3 + {4} over {2 × 3 × 4} − {4} over {4 × 5 × 6} + {4} over {6 × 7 × 8} − {4} over {8 × 9 × 10} + {4} over {10 × 11 × 12} …
这个级数的收敛比较快,按照规律迭代计算若干次,结果就与π值非常接近。在python的IDLE环境下输入是这样的:
>>> 3+4/(2*3*4)-4/(4*5*6)+4/(6*7*8)-4/(8*9*10)+4/(10*11*12)
3.1427128427128426
那么julia该怎样输入呢?这里首先要介绍一下数学表达式和运算符了。实际上,大多数编程语言中,表达式都是一项基础功能,而且基本由操作数、运算符和括号等组成,它的书写方式、运算符、运算顺序等与数学中的基本一致。
算术表达式是通过算术运算符来运算的,又称为数值表达式。这里列举了基本的算术运算符和使用示例,见表:
描述 |
Python |
julia |
说明 |
加法运算 |
+ |
+ |
|
减法运算 |
− |
− |
|
乘法运算 |
* |
* |
|
除法运算 |
/ |
/ |
|
取模运算,返回除法的余数 |
% |
% |
|
整除运算(截断除法) |
// |
div |
Python:12//10=1 Julia:div(12,10)=1 |
幂运算,返回x的y次幂 |
** |
^ |
Python:a**2=4 Julia:a^2=4 |
简单来说,julia和python大多数运算符是相同的。所以,上面的圆周率计算,用julia来计算也与python基本上没什么差别:
julia> 3+4/(2*3*4)-4/(4*5*6)+4/(6*7*8)-4/(8*9*10)+4/(10*11*12)
3.1427128427128426
不过使用手工输入算式计算圆周率,仍然比较麻烦。在学习了后面的课程循环结构的程序设计之后,就可以编写程序自动进行计算,充分发挥计算机的优势。
对比python学julia(第一章)--(第三节)山巅一寺一壶酒的更多相关文章
- 路飞学城-Python爬虫集训-第一章
自学Python的时候看了不少老男孩的视频,一直欠老男孩一个会员,现在99元爬虫集训果断参与. 非常喜欢Alex和武Sir的课,技术能力超强,当然讲着讲着就开起车来也说明他俩开车的技术也超级强! 以上 ...
- python全栈第一章
第一章 Python基础变量定义规则:1.变量名只能是字母数字或者下划线的任意组合2.变量名的第一个字符不能是数字3.关键字不能申明为变量名定义方式:1.驼峰体AgeOfSzp2.下划线隔开Age_o ...
- 《零压力学Python》 之 第一章知识点归纳
第一章(初识Python)知识点归纳 Python是从ABC语言衍生而来的 ABC语言是Guido参与设计的一种教学语言,为非专业编程人员所开发的. Python是荷兰程序员 Guido Van Ro ...
- 路飞学城Python爬虫课第一章笔记
前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 之前看阮一峰的博客文章,介绍到路飞学城爬虫课程限免,看了眼内容还不错,就兴冲冲报了名,99块钱满足以下条件会返还并送书送视频. 缴 ...
- 《python可以这样学》第一章
一.Python基础 查看Python版本 Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AM ...
- python学习心得第一章
初始python 1什么是程序 计算机程序是一组执行某种动作的的指令.和那些电路.芯片.显卡.硬盘等不同,它不是计算机本身可以触摸的部分,而是隐藏在背后运行在硬件上面的东西.程序就是一系列告诉没有知觉 ...
- Python基础教程-第一章-变量、函数、字符串
1.1变量 变量基本上就是代表(或者引用)某个值的名字,举例来说,如果希望用x代表3,只需要执行下面的语句即可: >>>x = 3 这样的操作称为赋值(assignment),值3赋 ...
- Python开发【第一章】:Python简介和入门
Python简介 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承. ...
- Python 学习系列----第一章:基础知识
1.1 常量-----不能改变它的值 1.2 数 在Python 中数可以分为整数.浮点数和复数. PS:在Python中不用区分'long int'类型.默认的整数类型可以任意长.(译者注:长度应该 ...
- python入门课程 第一章 课程介绍
1-1 Python入门课程介绍特点: 优雅.明确.简单适合领域: web网站和各种网络服务 系统工具和脚本 作为"胶水"语言把其他语言开发的模块包装起来方 ...
随机推荐
- 16位简单ASM题的记录——[HGAME 2022 week1]easyasm
第一次遇见16位,和纯看汇编的题目,记录一下 DIE 16位,IDA用32位或者64位都可以打开 IDA 主要汇编部分 seg003:0000 ; =============== S U B R O ...
- Typora编写博客并发布
(1)工具安装:下载博主xhznl开发的的工具,并按照说明进行正确的配置. EasyBlogImageForTypora使用说明:https://www.cnblogs.com/xhznl/p/132 ...
- css作用 文本属性 颜色属性
Css作用:美化页面 各种css属性 接触的 css属性 width: height: background: Color 选择符和声明 声明包括 属性:属性值 选择符:{ 属性:属性值 } 1:文本 ...
- React事件处理 事件绑定 事件对象
React 元素的事件处理和 DOM 元素的很相似,但是有一点语法上的不同: React 事件的命名采用小驼峰式,而不是纯小写. onClick onChange 使用 JSX 语法时你需要传入一个 ...
- 随机化 base64 加密
随机化 base64 加密 项目原址:Jeefy / jtim-enc · GitLab 技术 采用双重随机化技术. 第一重随机化是利用固定的随机种子改变 base64 解码的映射数组. 第二重随机化 ...
- Linux扩展篇-shell编程(五)-流程控制(三)-for语句
基本语法: 格式一 for(( 初始值; 循环控制条件; 变量变化)) do statements done 格式二 for 变量 in 值1 值2 值3 ... do statements done ...
- Easysearch压缩模式深度比较:ZSTD+source_reuse的优势分析
引言 在使用 Easysearch 时,如何在存储和查询性能之间找到平衡是一个常见的挑战.Easysearch 具备多种压缩模式,各有千秋.本文将重点探讨一种特别的压缩模式:zstd + source ...
- 何时/如何使用 std::enable_shared_from_this<T>?
要点回顾 继承自 std::enable_shared_from_this<T> 的类能够在其自身实例中通过 std::shared_from_this 方法创建一个指向自己的 std:: ...
- R语言求取大量遥感影像的平均值、标准差:raster库
本文介绍基于R语言中的raster包,批量读取多张栅格图像,对多个栅格图像计算平均值.标准差,并将所得新的栅格结果图像保存的方法. 在文章基于R语言的raster包读取遥感影像中,我们介绍了基 ...
- Linux/Unix-stty命令详解
文章目录 介绍 stty命令的使用方法 stty的参数 我常用的选项 所有选项 介绍 stty用于查询和设置当前终端的配置. 如果你的终端回车不换行.输入命令不显示等各种奇葩问题,那么stty命令可以 ...