Scilab

Материал из ALT Linux Wiki
Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Установка:

apt-get install scilab

Общее

Если не описывается очистка экрана, значений, начало и конец цикла, в конце строки всегда ставится точка с запятой.

Ввод

x=input('Введите икс:');

Вывод

Числа:

disp(a);

Текста:

mprintf('Решений нет.')

Текста и числа:

mprintf('Текст%f\n',a)
Пример:

Код:

a=3;
mprintf('А а равно2:%f\n',a)

Вывод:

А а равно2:3.000000

Цикл

for k=1:3,
   <тело>
end

Условный оператор

if <усл> then
        <тело>
end

Очистка экрана, значений

Очистка переменных

clear

Очистка экрана

cls

Математика

Операции

   + — Плюс
   & — Логическое И
   : — Двоеточие
   .\ — Поэлементное левое деление
   .* — Поэлементное умножение
   .^ — Поэлементная экспонента
   ./ — Поэлементное правое деление
   .' — Поэлементное транспонирование
   == — Логическое равно
   > — Больше, чем
   >= — Больше или равно
   \ — Левое деление
   < — Меньше, чем
   <= — Меньше или равно
   * — Умножение
   ~ — Отрицание
   ~= — Не равно
   | — Логическое ИЛИ
   ^ — Экспонента
   / — Правое деление
   - — Минус
   ' — Транспонирование 

Переменная

a=3; b=0.2; c=0.563;

Матрица

a=[1 2 4]
b=[-2:5]

Использование элемента

Первая строка, второй столбец массива a:

a(1,2)

Сумма массива

sum_a=sum(a);

Длина массива

m=length(a)

Min значение

min=min(a);

Max значение

max=max(a);

Тригонометрия

sin

sin(a)

cos

cos(a)

tg

tan(a)

ctg

cotg(a)

arcsin

asin(a)

arccos

acos(a)

arctg

atan(a)

arcctg

acot(a)

Остаток

Остаток деления первого значения на второе.

pmodulo(a,b)

Разложение на простые числа

factor(a)

Степень

a в степени n:

a^n

Корень квадратный

sqrt(x)

Корень

nthroot(x,n)

Абсолютная величина

abs(x)

Описание функции

function name(a)

        <тело>

endfunction

Вывод графика

plot(x,y), xgrid

Случайное число

Генерируется матрица с размером указанным в скобках и из него берется случайное число.

r = rand(5,2)

Факториал

f = factorial ( n )

Логарифм

Натуральный

y=log(x)

Десятичный

y=log10(x)

Конвертирование чисел

Можно подставлять как числа, так и матрицы.

  • из двоичной в десятичную:
y=bin2dec(str)
  • из десятичной в двоичную:
y=dec2bin(x)
  • из десятичной в шестнадцатеричную:
h=dec2hex(d)
  • из десятичной в восьмеричную:
o=dec2oct(d)
  • из шестнадцатеричной в десятичную:
d=hex2dec(h)
  • из восьмеричной в десятичную:
d=oct2dec(o)

Строки

Обработка строк

ASCII в код:

code2A=ascii(str1)

Примеры программ

Построить график линейной функции

y=x+2 x∈[-2:5]

source code:
clear, clc
x=[-2:5];
y=x+2;
plot(x,y), xgrid

Построить график параболы

y=(x-2)^2 x∈[-2:5]

source code:
clear, clc
x=[-2:5];
y=(x-2)^2;
plot(x,y), xgrid

Решение квадратного уравнения

source code:
clear, clc
a=input('a=');
b=input('b=');
c=input('c=');
d=b^2-4*a*c;
if d>0 then
x1=(-b+sqrt(d))/2/a;
x2=(-b-sqrt(d))/2/a;
else
    if d==0
        x1=(-b+sqrt(d))/2/a;
    else
        mprintf('Решений нет.');
    end
end