Как написать команду на алголском пиджине?

Как мы можем написать команду: printf("%d->%d", X, Y); в ALGOL, где X и Y - аргументы рекурсивной функции.

Должны ли мы написать что-то вроде: write "X -> Y";?

Или мы можем написать: write "%d -> %d, X, Y";

1 ответ

Вопрос, возможно, более философский, чем вы предполагали, поскольку Algol (60) не содержал ввода / вывода1, поэтому нет эквивалента printf.

Вызовы функций в Algol (60) будут выглядеть так же, как в C: printf("%d->%d", X, Y);

Однако в Algol-68 была определена стандартная библиотека функций ввода / вывода, которая называется transput. Поскольку они полиморфны, список аргументов был бы передан как массив элементов, таким образом:

print((whole(X),"->",whole(Y));

(но тогда вы могли бы получить это от Википедии в любом случае)

[1]:(Хотя большинство реализаций добавили его как библиотечную функцию!)

Другие вопросы по тегам