gnuplot
Реализация языка программирования gnuplotЕдинственная реализация gnuplot, написанная на C.
gnuplot распространяется под специальной свободной лицензией, которая позволяет копирование и модификацию исходного кода, но ограничивает распространение измененного кода: все изменения должны быть возвращены в проект как патчи.
Ссылки:
Примеры:
Hello, World!:
Пример для версий gnuplot 4.2.2print 'Hello, World!'
Факториал:
Пример для версий gnuplot 4.2.2Этот пример состоит из двух файлов — factorial.gp
и run.gp
, и эмулирует цикл с помощью команд load
, reread
и if
. Используется встроенный оператор факториала. Этот оператор возвращает значение с плавающей точкой, поэтому для вывода используется функция gprintf, которая убирает нули после запятой и саму десятичную запятую.
### factorial.gp
print a, '! = ', gprintf("%.0f", a!)
a = a + 1
if (a <= 16) reread
### run.gp
#!/usr/bin/env gnuplot
a = 0
load "factorial.gp"
Числа Фибоначчи:
Пример для версий gnuplot 4.2.2Используется итеративное определение чисел Фибоначчи. В gnuplot этой версии нет циклов, поэтому цикл имитируется вызовом другого файла. Если печатать числа отдельными командами, они будут выводиться на отдельных строках, поэтому для накопления вычисленных чисел используется строка, которая выводит на печать все сразу после конца цикла.
### run.gp
#!/usr/bin/env gnuplot
i = 1
a = 1
b = 1
res = ''
load "fibonacci.gp"
print res, '...'
### fibonacci.gp
res = res . a . ', '
c = a
a = b
b = b+c
i = i+1
if (i <= 16) reread
Комментарии
]]>blog comments powered by Disqus
]]>