BrainFuck: відмінності між версіями
Перейти до навігації
Перейти до пошуку
Немає опису редагування |
MiskoGe (обговорення | внесок) м (Відкинуто редагування Myrkit Stepan (обговорення) до зробленого Petrovych.php) Мітки: Замінено Відкіт |
||
| Рядок 1: | Рядок 1: | ||
{{Stub}} | |||
'''Brainfuck''' ''(англ. Мізкотрах)'' — найвідоміша езотерична мова програмування, відома тим, що хоч і має всього 8 команд, є повною по Тюрінгу, а це значить, що на ній можна написати [[Crysis]]. Також відома своєю назвою. Взагалі-то, 8 команд це навіть трохи забагато для забезпечення тюрінгової повноти. Але ж в нас все для зручності програміста! Одна з небагатьох езотеричних мов, яка має практичне застосування. Ні-ні, на ній не пишуть ні серверні аплікації, ні драйвери пристроїв. Brainfuck - дуже зручний для перевірки деяких математичних задач, чи можуть вони бути розв’язані машиною. | |||
== Команди == | |||
{| align="center" class="standard" border="2" cellpadding="2" | |||
|+ | |||
! |Команда | |||
! |Її значення | |||
|----- | |||
| '''<''' | |||
| Перейти до попередньої клітинки | |||
|----- | |||
| '''>''' | |||
| Перейти до наступної клітинки | |||
|----- | |||
| '''+''' | |||
| Інкрементувати значення у поточній клітинці | |||
|----- | |||
| '''-''' | |||
| Декрементувати значення у поточній клітинці | |||
|----- | |||
| '''.''' | |||
| Вивести значення поточної клітинки | |||
|----- | |||
| ''',''' | |||
| Отримати значення поточної клітинки з клавіатури | |||
|----- | |||
| '''[''' | |||
| Якщо значення поточної клітинки не 0, то виконати блок коду між '''[''' і ''']''' | |||
|----- | |||
| ''']''' | |||
| Якщо значення поточної клітинки не 0, то виконати блок коду між '''[''' і ''']''' | |||
|+ | |||
|} | |||
== Приклади коду == | |||
Hello, world: | |||
<pre> | |||
++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++ | |||
.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++. | |||
------.--------.>+.>. | |||
</pre> | |||
Деякі люди на Брейнфаках пишуть навіть [http://habrahabr.ru/blogs/crazydev/95126/ морський бій]. | |||
== Посилання == | |||
*{{ED|Brainfuck|Англомовна Драматика про сабж}} | |||
* [http://bf-fan.coolpage.biz/ Трохи більше про БрейнФак] | |||
* [https://copy.sh/brainfuck/ Онлайн інтерпретатор] | |||
* [http://www.gameru.net/tools/index.html Перекладач тексту на Brainfuck] | |||
{{Айті|що=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<-----------------.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<+++++++++++++++.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<-----------.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<++++++++++++++.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<-----------------------------------------------------------------------------------.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<----------.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<++++++.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<---.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<----------------------------------------------------------------------------------.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<++++++++++++++++.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<-----------------.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<++++++++.>[-]>[-]<<[->+>+<<]>>[-<<+>>]<+++++.>}} | |||
Поточна версія на 17:41, 22 листопада 2022
Brainfuck (англ. Мізкотрах) — найвідоміша езотерична мова програмування, відома тим, що хоч і має всього 8 команд, є повною по Тюрінгу, а це значить, що на ній можна написати Crysis. Також відома своєю назвою. Взагалі-то, 8 команд це навіть трохи забагато для забезпечення тюрінгової повноти. Але ж в нас все для зручності програміста! Одна з небагатьох езотеричних мов, яка має практичне застосування. Ні-ні, на ній не пишуть ні серверні аплікації, ні драйвери пристроїв. Brainfuck - дуже зручний для перевірки деяких математичних задач, чи можуть вони бути розв’язані машиною.
Команди
| Команда | Її значення |
|---|---|
| < | Перейти до попередньої клітинки |
| > | Перейти до наступної клітинки |
| + | Інкрементувати значення у поточній клітинці |
| - | Декрементувати значення у поточній клітинці |
| . | Вивести значення поточної клітинки |
| , | Отримати значення поточної клітинки з клавіатури |
| [ | Якщо значення поточної клітинки не 0, то виконати блок коду між [ і ] |
| ] | Якщо значення поточної клітинки не 0, то виконати блок коду між [ і ] |
Приклади коду
Hello, world:
++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++ .>+.+++++++..+++.>++.<<+++++++++++++++.>.+++. ------.--------.>+.>.
Деякі люди на Брейнфаках пишуть навіть морський бій.
Посилання
| |||||||||||||||||||