初步 Octave基本使用方法


提供在线使用Octave: Octave online

1 基本内容

1.1 基本计算

Octave中的 加、减、乘、除运算:

>> 2 + 2
ans =  4
>> 3 - 2
ans =  1
>> 5 * 8
ans =  40
>> 1 / 2
ans =  0.50000

同时也可以进行平方、立方等指数运算:

>> 2^2
ans =  4
>> 2^3
ans =  8
>> 2 + 3 % + 5
ans = 5

在Octave中,我们可以使用符号 % 来进行注解,其后面的同行语句都将不会得到执行。如果你熟悉java语言,可以类比为//,或者是Python中的 #

1.2 逻辑预算

常用的逻辑运算包括:等于(==)、不等于(~=)、并(&&)、或(||)四种,分别用不同的符号表示。

运算的结果用0、1表示,1表示成立,0表示不成立。

>> 1 == 2
ans = 0
>> 1 == 1
ans =  1
>> 1 ~= 2
ans =  1
>> 1 && 0
ans = 0
>> 1 || 0
ans =  1

在Octave中,同时还内置了一些函数来进行逻辑运算,比如异或运算就可以用xor这个函数来代替:

>> xor(3, 1)
ans = 0
>> xor(3, 3)
ans = 0
>> xor(1, 0)
ans = 1

在Octave中内置了很多的函数,有时,我们可能记不太清某个函数的具体用法,这个时候,Octave给我们提供了 help 命令,通过这个命令可以查看函数的定义以及示例。比如,我们想看下xor这个函数怎么用,可以输入:help xor

1.3 变量

同其他编程语言一样,我们也可以在Octave中定义变量,语法跟其他语言也比较类似:

>> a = 3
a =  3
>> a = 3;

上面的例子中,我们定义了变量a,并将它赋值为3。

有一个细节需要我们注意的是:在第一次执行a = 3的后面没有加;号,Octave在执行完赋值语句后又打印出了变量a的值。而在第二句中,我们在赋值语句的末尾添加了;号,这个时候,Octave只会执行赋值语句,将不再打印变量值。

除了将数值赋给一个变量,我们也可以将字符串、常量赋给变量:

>> b = 'hi'; % 因为加了;号,没有打印出b的值
>> b         % 直接输入变量名称,即可打印变量值
b = hi

>> c = (3 >= 1)
c =  1

>> a = pi;
>> a
a =  3.1416

在上面的第二行语句,直接输入了变量名称(没有分号),Octave直接打印出了变量的值。

除此以外,也可以使用disp函数来完成打印变量值的功能:

>> disp(a)
3.1416

结合printf函数,还能实现格式化打印。还是以上面的变量a为例:

>> disp(sprintf('2 decimals: %0.2f', a))
2 decimals: 3.14

>> disp(sprintf('6 decimals: %0.6f', a))
6 decimals: 3.141593

printf 函数沿用了C语言的语法格式,所以如果你有学习过C语言的话,对上面的写法应该会比较熟悉。

除了使用printf外,利用format longformat short也可以指定打印的精度,在Octave中,short是默认的精度:

octave:32> format long
octave:33> a
a =  3.14159265358979

octave:34> format short
octave:35> a
a =  3.1416

2 向量和矩阵

2.1 向量/矩阵的生成

在Octave中可以这样定义矩阵:将矩阵的元素按行依次排列,并用[]包裹,矩阵的每一行用;分割。

下面定义了一个3×2的矩阵A:

>> A = [1 2; 3 4; 5 6]
A =
   1   2
   3   4
   5   6

说明:; 号在这里的作用可以看做是换行符,也就是生成矩阵的下一行。

在命令行下,也可以将矩阵的每一行分开来写:

>> A = [1 2;
> 3 4;
> 5 6]
A =
   1   2
   3   4
   5   6

向量的创建与矩阵类似:

>> V1 = [1 2 3]
V1 =
   1   2   3

>> V2 = [1; 2; 3]
V2 =
   1
   2
   3

在上面的例子中,V1是一个行向量,V2是一个列向量。

其他一些写法向量 = 起点:间隔:终点

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值