GNU Octave 3.2.3
Версия реализации GNU Octave языка программирования MATLABВерсия системы GNU Octave.
Примеры:
Hello, World! - MATLAB (411):
Первая функция аналогична printf
в C. Вторая — специфична для MATLAB.
printf("Hello, World!\n");
disp("Hello, World!");
Факториал - MATLAB (412):
Используется встроенная функция factorial
. Отметим, что на числах такого масштаба результат получается точный, но в общем случае Octave не предназначен для вычислений произвольной точности, и большие значения факториала будут вычисляться с ошибками.
for i = 0 : 16
printf("%d! = %d\n", i, factorial(i));
endfor
Факториал - MATLAB (413):
Используется рекурсивное вычисление факториала. Точка с запятой в конце строки подавляет автоматический вывод только что вычисленного значения (в данном случае fact
) в интерактивном режиме, чтобы не засорять отформатированный вывод.
fact = 1;
for i = 0 : 16
printf("%d! = %d\n", i, fact);
fact *= i+1;
endfor
Факториал - MATLAB (414):
Используется рекурсивное вычисление факториала.
function f = fact(n)
if (n <= 1)
f = 1;
else
f = n * fact(n - 1);
endif
endfunction
for i = 0 : 16
printf("%d! = %d\n", i, fact(i));
endfor
Числа Фибоначчи - MATLAB (415):
Используется рекурсивное определение чисел Фибоначчи.
function f = fib(n)
if (n <= 1)
f = n;
else
f = fib(n - 1) + fib(n - 2);
endif
endfunction
for i = 1 : 16
printf("%d, ", fib(i));
endfor
disp("...");
Квадратное уравнение - MATLAB (416):
За счет того, что Octave предназначен для работы с математическими задачами, в нем есть ряд встроенных численных методов решения стандартных задач, в том числе и нахождения корней полиномов. Чтобы найти корень полинома, достаточно вызвать функцию roots
для вектора-строки, составленного из коэффициентов полинома в порядке убывания степени (т.е. коэффициент при максимальной степени x идет первым).
roots([2 -3 1])
Комментарии
]]>blog comments powered by Disqus
]]>