Octave常用操作(三)

目录

    • if条件语句
    • for循环
    • while循环
    • Octave中的函数
      • 定义一个函数
      • 调用一个函数
      • 定义一个多返回值的函数
    • 修改Octave的搜索路径

if条件语句

>>i = 1;
>> if i == 1,	
disp('i is 1');
elseif i == 2,		%else if 语句
disp('i is 2');
else
disp('i is not 1 or 2');
end;		%别忘了有个结束语句,这句话末尾的标点写成 分号 也行, 不写 也行。
i is 1
>>

for循环

>> v = 1:10
v =

    1    2    3    4    5    6    7    8    9   10

>> for i = v,		%循环条件部份,这句话末尾的标点写成 分号 也行, 不写 也行。
disp(i),			%循环体部分,语句末尾 不加 或者加 逗号 就会自动把运行结果显示在交互式中,所以一般后面加 分号 。
end;				%循环结束语句
 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
>>

while循环

>> i = 1;			%变量 i 在之前我们用过了,所以我们需要再重新赋值。
>> while i <= 5		%循环条件
v(i) = 999;			%循环体
i = i + 1;
if i == 6,	%循环体内嵌套的 if 条件语句
break;		%break、continue功能与其他语言中的一样,不必多说
end;		%if 的结束语句
end;		%while 的结束语句
>> v
v =

 Columns 1 through 9:

   999   999   999   999   999     6     7     8     9

 Column 10:

    10

>>

Octave中的函数

定义一个函数

Octave环境中的函数定义和其它语言不一样,你需要创建一个文件,文件名是函数名.m,然后在里面写函数。
比如,我在桌面定义了一个文件:square.m,在里面写:

function y = square(x)	%函数头
y = x^2;	%函数体

保存即完成了一个函数的定义。

调用一个函数

然后我在Octave交互式中写:

>> cd '/home/jnchin/桌面'		%把目录切换到函数所在的目录
>> square(3)		%直接调用函数即可
ans =  9
>>

定义一个多返回值的函数

在桌面定义一个文件:squareAndCube.m,在里面写:

function [y1, y2] = squareAndCube(x)
y1 = x^2;
y2 = x^3;

保存,然后在交互式中这样调用:

>> [a,b] = squareAndCube(5);
>> a
a =  25
>> b
b =  125
>>

修改Octave的搜索路径

在调用函数的时候,Octave会在它的搜索路径和当前目录下搜索函数,所以如果你不想在调用函数的时候切换目录,可以把函数的路径添加到Octave的搜索路径中去。
在交互式中执行:

>> addpath('/home/jnchin/桌面')

即可。
这样一来,即使你跑到其他目录,照样可以调用桌面上的函数:

>> cd
>> square(2)
ans =  4
>>

参考课程:《吴恩达机器学习》

你可能感兴趣的:(机器学习学习笔记)