aribas - Інтернет у хмарі

Це команда aribas, яку можна запустити у безкоштовного хостинг-провайдера OnWorks за допомогою однієї з наших безкоштовних онлайн-робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

ПРОГРАМА:

ІМ'Я


aribas — багатоточний арифметичний інтерпретатор

СИНТАКСИС


aribas [опції] [ari-файл> [arg1>arg2> ...]]

Ця довідкова сторінка була написана для Debian, оскільки оригінальне програмне забезпечення не містило людини
стр.

ОПИС


Арібас це інтерактивний інтерпретатор, придатний для арифметики великих цілих чисел і
багатоточна арифметика з плаваючою комою. Його синтаксис подібний до Pascal або Modula-2,
але також містить функції з інших мов програмування, таких як C, Lisp, Oberon.

ВИКОРИСТАННЯ


Найпростіший спосіб використання aribas є калькулятором для арифметики (великого цілого числа). після
aribas запускається, відображається підказка ==> і готовий прийняти введення. Просто введіть
вираз, який потрібно обчислити, після чого поставте крапку, а потім натисніть RETURN для
приклад

==> 123 + 456*789.

Арібас Відповіді

-: 359907

Символ -: представляє результат.
ВАЖЛИВО. Щоб позначити кінець введення, ви завжди повинні вводити крапку '.' і потім
натисніть RETURN.

Ви можете призначити результат обчислення змінній, як у

==> F6 := 2**64 + 1.
-: 18446_74407_37095_51617

Це обчислює 6-те число Ферма (** позначає піднесення до степеня) і присвоює його
змінна F6 (зауважте, що aribas чутливий до регістру, тому це не те саме, що f6). Пізніше
ви можете використовувати цю змінну, наприклад, у виразі

==> 123**(F6 - 1) mod F6.
-: 688_66214_58712_63971

який показує (за теоремою Ферма), що F6 не є простим числом.
Три найновіші результати зберігаються в псевдозмінних _, __ та ___. Форум
наприклад, ви можете зберегти останній результат у змінній x за допомогою команди

==> x := _.
-: 688_66214_58712_63971

Як ви можете бачити в наведених вище прикладах, aribas використовує підкреслення _ структурувати вихід
великих цілих чисел (>= 2**32). Також для введення цілих чисел ви можете використовувати підкреслення, the
єдиною умовою є те, що безпосередньо перед і після підкреслення є цифри,
приклад:

==> z := 123_4567_890.
-: 1234567890

Тут результат не містить підкреслення, яке показує, що z менше 2**32.

Арібас має кілька вбудованих функцій для факторизації, наприклад rho_факторизувати, Яка
використовує алгоритм rho Полларда.

==> rho_factorize(F6).

працює ..
фактор, знайдений після 512 ітерацій

-: 274177

Щоб знайти решту співмножника, дайте команду

==> x := F6 div _.
-: 6728_04213_10721

Щоб перевірити, чи є цей фактор простим, імовірнісний тест Рабіна rab_primetest може бути
застосовується:

==> rab_primetest(x).
-: правда

Функція rho_факторизувати добре підходить для пошуку невеликих множників (скажімо, до 10 десяткових знаків).
цифри); для більш складних завдань факторизації більш потужний алгоритм, як
квадратне сито qs_факторизувати слід використовувати

==> qs_factorize(2**128+1).

(Залежно від потужності комп’ютера це займе від кількох секунд до кількох хвилин
щоб отримати простий множник 7-го числа Ферма.)

Контроль структур
Команда та цінності петля і в той час як петля в aribas мають синтаксис, як у Modula-2. Наприклад,
наступна послідовність команд обчислює факториал 100.

==> x := 1;
for i := 2 до 100 do
x := x*i;
end;
x.

Як ви можете бачити в цьому прикладі, вхідні дані можуть розтягуватися на кілька рядків.

Вище та цінності цикл еквівалентний наступному в той час як петля

==> x := 1; i := 2;
тоді як я <= 100 роблю
x := x*i;
inc(i);
end;
x.

Розгалужена конструкція
if ... потім ... elsif ... ще ... кінець
також має той самий синтаксис, що й у Modula-2.

Багатоточність плаваючий точка арифметика
Арібас підтримує різні типи чисел з плаваючою комою, які представлені внутрішньо
з мантисами різної бітової довжини:

single_float 32 біти
double_float 64 біти
long_float 128 біт

і декілька вищих точок до межі, що залежить від реалізації, як правило, 1024 або
5120 біт, які можна визначити функцією max_floatprec(). За замовчуванням, коли
обчислення з числами типу даних реальний, використовуються single_floats. Це відповідає a
точністю від 9 до 10 знаків після коми. Точність 5120 біт відповідає понад 1500
десяткових знаків.

Точність можна змінити за допомогою функції set_floatprec. Функція приймає один
цілочисельний аргумент, який є бажаною точністю в бітах. Він автоматично округлюється до
наступне вище доступне значення. Наприклад, після

==> set_floatprec(100).
-: 128

точність числа з плаваючою комою становить 128 біт, і ви можете обчислити

==> арктан(кв(3)).
-: 1.04719_75511_96597_74615_42144_61093_16762_8

==> _/пі.
-: 0.33333_33333_33333_33333_33333_33333_33333_33

користувач певний Функції
Користувач може визначати власні функції. Типовий приклад виглядає так

==> функція fac(n: integer): integer;
було
x,i: ціле число;
починати
x := 1;
for i := 2 to n do
x := x*i;
end;
повернути х;
end.

Якщо ви ввели це правильно, aribas повторює назву функції

-: фак

і відтепер ви можете використовувати FAC так само, як вбудована функція, напр

==> FAC(32).
-: 2_63130_83693_36935_30167_21801_21600_00000

Зверніть увагу, що всередині визначення функції всі використовувані змінні мають бути явно оголошені,
тоді як на верхньому рівні aribas змінні інтерпретатора можна просто створити за допомогою
завдання. Ось ще один приклад, який показує деякі інші типи даних, які підтримуються
aribas:

==> функція sqrt_list(n: integer): масив дійсних;
було
vec: масив [n] дійсного;
i: ціле;
починати
for i := 1 to n do
vec[i-1] := sqrt(i);
end;
повернення vec;
end.

Ця функція повертає масив квадратних коренів із цілих чисел від 1 до n, для
приклад

==> sqrt_list(10).
-: (1.00000000, 1.41421356, 1.73205081, 2.00000000,
2.23606798, 2.44948974, 2.64575131, 2.82842712, 3.00000000,
3.16227766)

У великому проекті програмування, де вам потрібно кілька функцій, ви б не вводили їх
безпосередньо на aribas підказка, але підготуйте визначення функцій із зовнішнім текстом
і збережіть їх у файлі з розширенням .ari Наприклад abcd.ari . Цей файл
потім можна завантажити aribas за допомогою команди

==> load("abcd").

Якщо у файлі є синтаксична помилка, ви отримаєте повідомлення про помилку форми

помилка в рядку <= 23 завантаженого файлу
якщо: очікуваний кінець

який повідомляє вам (у цьому прикладі), що є помилка в if конструкція в рядку 23 або
раніше у файлі. (Зверніть увагу, що повідомлення про помилки іноді не дуже точні.) Ви
потім можна виправити помилку та завантажити файл знову.

Онлайн допомога
Команда

==> символи (aribas).

повертає список усіх ключових слів і назв вбудованих функцій aribas. У цьому списку є
близько 200 записів, і починається і закінчується так:

(ARGV, _, __, ___, abs, alloc і, arccos, arcsin, arctan, arctan2, aribas, масив, atof,
atoi, початок, двійковий, bit_and, bit_clear, bit_length, ...... , tolower, toupper,
стенограма, правда, trunc, тип, користувач, змінна, версія, поки, запис, write_block, write_byte,
написати)

Для більшості символів у цьому списку ви можете отримати коротку онлайн-довідку за допомогою цієї функції
допомога (). Наприклад, команда

==> довідка (ARGV).

надає інформацію про вбудовану змінну ARGV, тоді як

==> довідка (поки).

описує синтаксис в той час як петля. Якщо вам потрібно більше інформації, ніж міститься
в онлайн-довідці зверніться до документації, яку можна знайти в /usr/share/doc/aribas.

Як до вихід
Щоб закінчити aribas сесія, вид вихід в aribas підказка

==> вихід

а потім натисніть клавішу RETURN (ENTER).

Якщо ти не хочеш йти aribas, але хочете вийти з нескінченного циклу або a
обчислення, яке триває надто довго, наберіть CONTROL-C (якщо ви працюєте aribas зсередини
Emacs, ви повинні двічі натиснути CONTROL-C). Це (у більшості випадків) зупинить струм
розрахунок і повернення до aribas підкажіть.

Якщо ви використовуєте не інтерфейс Emacs, а версію командного рядка aribas, Ви
іноді потрапляють у таку ситуацію: якийсь попередній рядок містить помилку друку,
але ви не можете повернутися до цього рядка, щоб виправити його. У цьому випадку вам слід просто ввести a
повна зупинка '.' , а потім RETURN. Ви отримаєте повідомлення про помилку, яке ви можете безпечно
ігнорувати та нова підказка ==> з’являється, дозволяючи спробувати ще раз.

КОМАНДА ЛІНІЯ АРГУМЕНТИ


aribas [опції] [ari-файл> [arg1>arg2> ...]]

опції
Доступні такі опції:

-q (тихий режим) Приховує всі повідомлення на екрані (номер версії, повідомлення про авторські права,
тощо) коли aribas розпочато

-v (докладний режим, за замовчуванням) Не пригнічує повідомлення на екрані, коли aribas is
розпочато.

-c
aribas робить власний розрив рядка під час запису на екран. Зазвичай це припускає
що екран (або вікно, у якому aribas пробігів) має 80 стовпців. З -c
ви можете встановити інше число, яке має бути між 40 і 160 (у десятковому вигляді
представництво). Наприклад, якщо ви бігаєте aribas у вікні Xterm з 72
стовпців, використовуйте параметр -c72 (або -c 72, пробіл між -c і числом є
необов'язково).

-m
тут це число (у десятковому представленні) від 500 до 32000. Це
число вказує, скільки кілобайт оперативної пам'яті aribas слід використовувати для aribas купа
Значення за умовчанням залежить від параметрів, які використовуються aribas було складено. Як правило,
під UNIX або LINUX це 6 мегабайт, що відповідає -m6000

-h <шлях of допомога файл>
Онлайн довідка aribas залежить від файлу aribas.hlp, у якому має бути розміщено
діапазон змінної середовища PATH. Якщо це не так, ви можете вказати
точний шлях до файлу довідки з опцією -h. Якщо, наприклад, файл
aribas.hlp знаходиться в каталозі / usr / local / lib, використовуйте опцію -h / usr / local / lib
(пробіл після -h необов'язковий). Параметр -h також можна використовувати, якщо довідка
файл має іншу назву. Якщо файл довідки має назву help-aribas і знаходиться в
каталог /home/joe/ari, використовуйте -h/home/joe/ari/help-aribas.

З правильно встановленим пакетом Debian aribas це не повинно бути необхідним
скористайтеся цією опцією.

-p
За допомогою цього параметра ви можете вказати шлях пошуку для завантаження файлів aribas джерело
код. може бути (абсолютним) шляхом до одного каталогу або
кілька імен шляхів, розділених двокрапками. Припустимо, ви подзвонили aribas з
варіант

-p/usr/local/lib/aribas:~/ari/приклади

і що ваш домашній каталог /home/alice/. Потім команда

==> навантаження ("фактор").

шукатиме файл factor.ari спочатку в поточному каталозі, а потім у
каталог /usr/local/lib/aribas і, нарешті, у /home/alice/ari/examples.

-b Пакетний режим під час завантаження ан aribas файл вихідного коду з командного рядка див
нижче.

Варіанти однієї букви, які не потребують аргументів, можуть бути об’єднані, наприклад

aribas -q -b

еквівалентна

aribas -qb

далі команда лінія аргументація

Наступний аргумент командного рядка після параметрів інтерпретується як ім'я a
файл з aribas вихідний код. Якщо ім’я файлу має розширення .ari, це
розширення можна опустити. Файл завантажується як за командою навантаження(" ")
було надано після початку aribas в aribas підказка. Якщо файлу немає
знайдено в поточному каталозі, його шукають у каталогах, указаних у
-p варіант. Якщо вказано параметр -b, файл завантажується та виконується.
Потім aribas виходить, не показуючи підказку. Якщо не вдається завантажити файл
повністю через помилку, aribas виходить одразу після повідомлення про помилку.

...
Коли йдуть наступні аргументи командного рядка , їх збирають (як
рядки) разом з у векторі ARGV до якого можна отримати доступ
в aribas. Приклад: якщо ви телефонуєте aribas за допомогою командного рядка

стартап aribas 4536 eisenstein

і поточний каталог містить файл startup.ari, тоді aribas завантажує його і
вектор ARGV має форму

==> ARGV.
-: ("запуск", "4536", "ейзенштейн")

Якщо вам потрібні деякі аргументи як числа, а не як рядки, ви можете перетворити їх за допомогою
твій (Або atof); в нашому прикладі

==> x := atoi(ARGV[1]).
-: 4536

зробить це. Довжина вектора ARGV можна визначити за довжина (ARGV).

РУНІНГ АРИБАС ВНУТРІ EMACS


Можна бігати aribas зсередини Emacs, надавши команду (у мінібуфері Emacs)

Mx run-aribas

(Якщо у вас немає МЕТА-ключа, використовуйте ESC x замість Mx) Потім aribas буде завантажено в
вікно Emacs із назвою *aribas*, у якому ви можете редагувати введені дані aribas зі звичайним
Команди Emacs.

Якщо ваш введений текст закінчується крапкою '.' і ви натискаєте RETURN, його буде надіслано на aribas. Якщо
однак ваш повний введений текст не закінчується крапкою (наприклад, у відповідь на a
readln), вхідні дані надсилаються до aribas за допомогою Cj (Control-j) або Cc RETURN.

Якщо ви бажаєте повторити попередній введений текст, Mp (або ESC p) циклічно повертає введений текст назад
історія, а Mn (або ESC n) перемикається вперед.

Control-C надсилається до aribas Cc Cc (натисніть Cc двічі).

Починати теж можна aribas з Emacs з аргументами командного рядка. Для цього
мета команди

Cu Mx run-aribas

треба дати. Потім підказка

біг-aribas: aribas

з’являється у мінібуфері Emacs, і ви можете завершити, наприклад, командний рядок

run-aribas: запуск aribas 4536 eisenstein

(Дивись вище).

КОНФІГУРАЦІЯ Фото


Варіанти бігу aribas також можна вказати за допомогою файлу конфігурації з назвою
.arirc. Арібас шукає файл конфігурації в такому порядку:

1) поточний каталог
2) домашній каталог користувача

Існує третя можливість: ви можете визначити змінну середовища ARIRC що містить
ім'я конфігураційного файлу (який може відрізнятися від .arirc), включно з повним
шлях

У файлі конфігурації ви можете вказати всі описані вище параметри командного рядка
починаються зі знака -, однак для кожної окремої опції потрібно використовувати окремий рядок. Лінії
починаючи з символу # або порожні рядки ігноруються. На додаток до варіантів
описаний вище, файл конфігурації може містити aribas вихідний код. Для цієї мети
повинно бути рядкове читання

-у цьому

Тоді все після цього рядка розглядається як aribas вихідний код і коли виконується aribas
розпочато.

Наявність файлу конфігурації для aribas не виключає можливості подарувати
аргументи командного рядка. Якщо параметр (наприклад, параметр -m) вказано як у
файл конфігурації та командний рядок, але з іншими значеннями, а потім специфікація
у командному рядку дійсний. Аналогічно, параметр -v у командному рядку перевизначає параметр -q
у файлі конфігурації. Якщо у файлі конфігурації є код -init і an
у командному рядку, тоді спочатку виконується код -init і
згодом завантажується, а його код виконується.

Використовуйте aribas онлайн за допомогою сервісів onworks.net



Найновіші онлайн-програми для Linux і Windows