Это очень просто:
Создайте программу без написания одной строки кода. Код может состоять только из существующих вопросов и ответов о переполнении стека.
Программа должна создать два случайных числа и вывести числа
- добавлен к,
- вычитается из,
- умножается на и
- деленное на
друг друга.
правила
Вы должны включить ссылки на вопросы / ответы, которые вы использовали в своем ответе. Вы не можете изменять код, который вы найдете, за следующими исключениями:
Вы можете переименовывать переменные, функции и методы. (Это не означает, что вы можете изменить вызов метода, изменив, скажем, scanner.nextInt () на scanner.nextLine () и заявив, что вы меняете имя метода. Это изменение должно быть в определении или ссылке на та же сущность.) Решение все еще должно работать, если переменные, функции или методы будут переименованы снова.
Вы можете отрегулировать отступ соответствующим образом.
Вы можете предположить, что для работы фрагментов кода загружены соответствующие модули. (например, операторы импорта для Java и Python, используя операторы для C # и C ++ и их эквиваленты на всех языках). Если фрагмент кода включает в себя импорт для вас, вы можете переместить их в начало кода.
Если язык требует, чтобы код был в каком-либо теле метода для выполнения (например,
public static void main(String[] args)
для Java,static int Main(string[] args)
для C # и т. Д.), Вы можете заключить код в соответствующий метод. Но содержание этого основного метода должно оставаться неизменным.Вы должны предоставить явный список всех выполненных переименований переменных / методов / функций / классов.
Вы не можете брать фрагменты фрагментов (то есть, если вы берете блок кода из сообщения, вы берете все это). Предоставьте краткое описание того, что код делает для людей, которые не знакомы с языком, который вы используете. Вы должны использовать фрагменты, опубликованные до начала этого испытания.
Конкурс популярности, так что большинство побед выигрывает!
Крайний срок
Я приму представление, которое получит большинство голосов в конце августа, 6.
Ответы:
J, 7 вопросов / ответов, ни один о J
Это чертовски дешевый способ сделать это, я не буду лгать. Вот SO ответы, которые я использовал:
echo
Этот ответ+
,-
,*
И%
этот вопрос?
Этот ответ[
Этот ответ=
и:
это сообщество вики вопрос2147483647
Этот ответfoo
Этот ответЯ переименовал переменную
foo
какa
иb
в коде.источник
Python 2,
76 ссылокСоздание этого решения было не так просто, как казалось. Поиск переполнения стека для конкретного кода затруднен, так как символы не включены в поиск.
Я нашел способ сделать это с помощью 2000-битных случайных чисел, используя другой ответ вместо ссылки № 1,
но я не смог протестировать его в онлайн-средах, которые я использую, поскольку он включает в себяЭто на самом деле может быть использовано сейчас, с TIO.getrandbits
, что вызываетos.urandom
, давая мнеNotImplementedError
, поэтому я пошел по этому пути вместо этого.Попробуйте онлайн
Ссылки
import random
предполагается, что загружен, так как вопрос говорит, что это разрешено.lst = []
иlst.append(random.randint(1, 100))
- здесьmap(sum, zip(r1, r2))
,map(lambda t: t[0] - t[1] ,zip(r1, r2))
,r1
, Иr2
- Здесьresult = float(a) / b
- Здесьab = [a[i]*b[i] for i in range(len(a))]
- Здесьfirst, last = some_list[0], some_list[-1]
- Здесьprint x
- Здесьпереименованный
lst
переименован вn1
иn2
(ссылка № 1: я использовал весь код дважды)r1
иr2
переименован вn1
иn2
(ссылка № 2: позже я использовал отдельные переменные, чтобы назначить карты и разделить в последнем отпечатке, так как ответ включал их.)result
иa
переименован вab
, иb
переименован вn2
(ссылка № 3)a
иb
переименован вn1
иn2
(ссылка № 4)first
иsome_list
как переименовано вr1
,r2
,ab
, илиn2
, в зависимости от того, какой линии. (Ссылка № 5: я использовал это четыре раза. Обратите внимание, что используется только первое назначение, поэтому я не переименовываюlast
)x
переименовывается вr1
,r2
илиab
, в зависимости от того, какая строка. (Ссылка № 6)источник
Десятичный , 2 ссылки
Используемые команды:
0
SET (индекс стека по умолчанию)1
ОТ СЕБЯ2
CHAR2
POP3
I / O00
дубликат стека01
из стека в STDOUT4
МАТЕМАТИКА1
ДОБАВЛЯТЬ2
SUBTRACT3
УМНОЖЬТЕ4
ДЕЛИТЬ8
BUILTIN2
вставить случайное целое число в стекРазъясненная версия:
Источники:
d
(с большой буквы)0
через9
Попробуйте онлайн! Вам нужно будет отключить кэш вывода, если он не отключен автоматически.
источник