64-bit BCPL Cintcode System (1 Nov 2006)
Версия реализации BCPL Cintcode System языка программирования BCPL64-битная версия BCPL Cincode System.
Заявлена автором как находящаяся в разработке.
Примеры:
Hello, World! - BCPL (341):
*n
служит для печати символа перевода строки
GET "libhdr"
LET start() = VALOF
$( writes("Hello, World!*n")
RESULTIS 0
$)
Факториал - BCPL (342):
Используется рекурсивное определение факториала.
*n
служит для печати символа перевода строки.
Вычисление факториала 15 и более вызывает арифметическое переполнение. В результате вывод программы имеет следующий вид:
0! = 1
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
6! = 720
7! = 5040
8! = 40320
9! = 362880
10! = 3628800
11! = 39916800
12! = 479001600
13! = 6227020800
14! = 87178291200
15! = 18000
16! = 000
GET "libhdr"
LET start() = VALOF
{ FOR i = 0 TO 16 DO writef("%n! = %n*n", i, factorial(i))
RESULTIS 0
}
AND factorial(n) = n=0 -> 1, n*factorial(n-1)
Числа Фибоначчи - BCPL (346):
Используется рекурсивный метод вычисления чисел Фибоначчи.
GET "libhdr"
LET start() = VALOF
{ FOR i = 0 TO 15 DO writef("%n, ", fibonacci(i))
writef("...*n")
RESULTIS 0
}
AND fibonacci(n) = n<2 -> 1, fibonacci(n-1)+fibonacci(n-2)
Комментарии
]]>blog comments powered by Disqus
]]>