Рецензия на «Существует абсолютно ВСЁ, к этому ничего нельзя до» (Владимир Кулаков 2)
Если вообразить мир, в котором мы живём трёхмерной матрицей из безконечного числа одинаковых кубиков двух цветов, где каждый кубик может быть чёрным или белым, а его цвет означает доступность или недоступность материи этого кубика для восприятия, это будет очень упрощённая модель реальности. В каждый момент времени эти кубики меняют свой цвет на противоположный или не меняют по заданному алгоритму. Чтобы заполнить к примеру пикселями белого цвета экран размером 800 на 600 пикселей есть несколько путей программирования: 1) используя одномерный адресный массив длиной в 240000 элементов, в котором каждый элемент может принимать одно из двух значений и сопоставив порядковый номер элемента в массиве адресу пикселя, написать код программы из 240000 команд присваивающих каждому элементу массива значение, соответствующее белому цвету связанного с ним пикселя; 2) написать код программы из одного цикла с шагом один от 1 до 240000, в котором задать повторение той-же команды; 3) использовать двумерный массив содержащий те же 240000 элементов, но адреса каждого элемента будут соответствовать строке и столбцу пикселя на экране, тогда код программы примет вид двух циклов, вложенных один в другой, повторяющих выполнение команды присваивающей элементу массива M [i,j] , где i меняется от 1 до 800, j меняется от 1 до 600, значение, соответствующее белому цвету связанного с ним пикселя. Чтобы этот алгоритм закрашивал экран пикселями произвольного цвета в произвольном порядке нужно добавить генератор псевдослучайных чисел и каждому элементу массива присваивать псевдослучайно выбранное из двух доступных вариантов. Алгоритм, "раскрашивающий" мир может выглядеть сходным образом, но вместо двумерного массива используется трёхмерный, с неопределённо большим количеством элементов, три вложенных по принципу матрёшки цикла, повторяющиеся рекурсивно (то есть по окончанию выполнения первого цикла, он запускается снова), а вместо генератора псевдослучайных чисел используется какая-то другая, более сложная подпрограмма, присваивающая каждому элементу M [i,j,k] значение, зависящее от предыдущих значений каждого (а может ближайших) из элементов этого массива. Мавир 28.01.2022 16:33 Заявить о нарушении
Перейти на страницу произведения |