В любой науке очень много разнообразных задач. Их можно классифицировать до бесконечности, но есть одна интересная мне категория. Прямые задачи сводятся к простому выполнению базовых действий. Я бы сформулировал прямую задачу так: есть данные, есть алгоритм, надо выполнить алгоритм с этими данными и выяснить, что получится в результате выполнения алгоритма. В общем случае, обратную задачу можно сформулировать так: есть алгоритм, есть то, что получается после выполнения алгоритма, надо выяснить, какими могли быть данные, с которыми выполнялся алгоритм. Или так: есть данные, есть то, что получается после выполнения алгоритма, надо выяснить, каким мог быть алгоритм. Обратные задачи всегда гораздо сложнее, потому что в них нет чёткого способа решения, нет однозначной схемы, действуя по которой можно было бы выяснить, какими были исходные данные, и уж тем более - узнать утерянный алгоритм. Единственное, что может тут помочь - подбор. Именно единственное, я не зря так выразился (и даже по