Задача по программированию. Тривиальная задача сравнения метода вычисления факториал с помощью цикла и метода вычисления факториала с помощью рекурсии. Берется некоторое число n, для которого вычисляем факториал разными способами. Вычисления засовываем в цикл с 1000 итераций, чтобы снизить погрешность. Засекаем время с помощью метода Milliseconds() (библиотека Utils). Выводим результаты. В большинстве случаев рекурсия выполняется быстрее. Предлагаю обсудить, почему так происходит?
[ Язык реализации: Pascal ]
Обсуждение задачи: vk.com/wall-51126445_30047
Полный код: https://pastebin.com/UzPkbXDa
#репетитор #mentor #программирование #физика #математика #it #информатика #pascal #задачи #профилирование
[ Язык реализации: Pascal ]
Обсуждение задачи: vk.com/wall-51126445_30047
Полный код: https://pastebin.com/UzPkbXDa
#репетитор #mentor #программирование #физика #математика #it #информатика #pascal #задачи #профилирование
Оптимизация и разбор на примере задачи:
Найдите все натуральные числа, принадлежащие отрезку 123456789; 223456789 и имеющие ровно три нетривиальных делителя. Для каждого найденного числа запишите в ответе его наибольший нетривиальный делитель. Ответы расположите в порядке возрастания.
📖 Читать заметку полностью
#article #информатика #алгоритмы
#егэ #программирование #pascal
Найдите все натуральные числа, принадлежащие отрезку 123456789; 223456789 и имеющие ровно три нетривиальных делителя. Для каждого найденного числа запишите в ответе его наибольший нетривиальный делитель. Ответы расположите в порядке возрастания.
📖 Читать заметку полностью
#article #информатика #алгоритмы
#егэ #программирование #pascal
💡 Интересная задачка попалась мне, когда перебирал свои старые черновики
Есть шахматное поле n на n. На поле m ладей. Нужно определить какое число клеток не заняты и не находятся под боем.
Мне стало интересно сделать визуализацию решения, чтобы можно было легко посчитать пальцем число свободных клеток, тем самым проверить правильность работы программы. На вход программы подается матрица
Остальная доска рисуется алгоритмом, который переключает цвета с помощью деления по модулю 2. ( 0 - белый цвет, 1 - серый ). Плюс для компактности я решил использовать сквозной индекс по двумерному массиву. Хотя, вложенных циклов в некоторых местах итак получилось по 4.
Думаю, что графических процедур в программе будет достаточно, чтобы написать какую-нибудь простенькую пиксельную игру типа "змейка" :) Если вам было бы интересно почитать про реализацию змейки или другой пиксельной игры, то напишите об этом в комментариях и проявите какую-то активность.
📝 В данном случае язык реализации был Pascal ( IDE: PascalABC ).
https://pastebin.com/yg5zKEu7
#математика #программирование #информатика #pascal #delphi
Есть шахматное поле n на n. На поле m ладей. Нужно определить какое число клеток не заняты и не находятся под боем.
Мне стало интересно сделать визуализацию решения, чтобы можно было легко посчитать пальцем число свободных клеток, тем самым проверить правильность работы программы. На вход программы подается матрица
[8][8]
, в которой цифрой "1" отмечены места, в которых стоят ладьи. По этой матрице строится другая матрица, в которой "0" отмечаются свободные поля, а клетки, которые находятся под ударом отмечаются FLAG_ATTACK = -1
. По матрице позиций под атакой рисуются красные клетки, иллюстрирующие запрещенные ходы.Остальная доска рисуется алгоритмом, который переключает цвета с помощью деления по модулю 2. ( 0 - белый цвет, 1 - серый ). Плюс для компактности я решил использовать сквозной индекс по двумерному массиву. Хотя, вложенных циклов в некоторых местах итак получилось по 4.
Думаю, что графических процедур в программе будет достаточно, чтобы написать какую-нибудь простенькую пиксельную игру типа "змейка" :) Если вам было бы интересно почитать про реализацию змейки или другой пиксельной игры, то напишите об этом в комментариях и проявите какую-то активность.
📝 В данном случае язык реализации был Pascal ( IDE: PascalABC ).
https://pastebin.com/yg5zKEu7
#математика #программирование #информатика #pascal #delphi
👨🏻💻 Задача по программированию
Тривиальная задача сравнения метода вычисления факториал с помощью цикла и метода вычисления факториала с помощью рекурсии. Берется некоторое число n, для которого вычисляем факториал разными способами. Вычисления засовываем в цикл с 1000 итераций, чтобы снизить погрешность. Засекаем время с помощью метода Milliseconds() (библиотека Utils). Выводим результаты. В большинстве случаев рекурсия выполняется быстрее. Предлагаю обсудить, почему так происходит?
[ Язык реализации: Pascal ]
Обсуждение задачи:
vk.com/wall-51126445_30047
📝 Полный код: https://pastebin.com/UzPkbXDa
Были еще на канале интересные статьи по этой теме:
▪️ Что работает быстрее: цикл или рекурсия? Измеряем производительность
▪️ 🐍 Разбираем циклы в Python на простых примерах. Какой цикл быстрее?
▪️ Как ускорить выполнение цикла? Алгоритм оптимизации циклов
#программирование #информатика #pascal #задачи #профилирование
Тривиальная задача сравнения метода вычисления факториал с помощью цикла и метода вычисления факториала с помощью рекурсии. Берется некоторое число n, для которого вычисляем факториал разными способами. Вычисления засовываем в цикл с 1000 итераций, чтобы снизить погрешность. Засекаем время с помощью метода Milliseconds() (библиотека Utils). Выводим результаты. В большинстве случаев рекурсия выполняется быстрее. Предлагаю обсудить, почему так происходит?
[ Язык реализации: Pascal ]
Обсуждение задачи:
vk.com/wall-51126445_30047
📝 Полный код: https://pastebin.com/UzPkbXDa
Были еще на канале интересные статьи по этой теме:
▪️ Что работает быстрее: цикл или рекурсия? Измеряем производительность
▪️ 🐍 Разбираем циклы в Python на простых примерах. Какой цикл быстрее?
▪️ Как ускорить выполнение цикла? Алгоритм оптимизации циклов
#программирование #информатика #pascal #задачи #профилирование
👨🏻💻 Задача по программированию
Тривиальная задача сравнения метода вычисления факториал с помощью цикла и метода вычисления факториала с помощью рекурсии. Берется некоторое число n, для которого вычисляем факториал разными способами. Вычисления засовываем в цикл с 1000 итераций, чтобы снизить погрешность. Засекаем время с помощью метода Milliseconds() (библиотека Utils). Выводим результаты. В большинстве случаев рекурсия выполняется быстрее. Предлагаю обсудить, почему так происходит?
[ Язык реализации: Pascal ]
Обсуждение задачи:
vk.com/wall-51126445_30047
📝 Полный код: https://pastebin.com/UzPkbXDa
Были еще на канале интересные статьи по этой теме:
▪️ Что работает быстрее: цикл или рекурсия? Измеряем производительность
▪️ 🐍 Разбираем циклы в Python на простых примерах. Какой цикл быстрее?
▪️ Как ускорить выполнение цикла? Алгоритм оптимизации циклов
#программирование #информатика #pascal #задачи #профилирование
Тривиальная задача сравнения метода вычисления факториал с помощью цикла и метода вычисления факториала с помощью рекурсии. Берется некоторое число n, для которого вычисляем факториал разными способами. Вычисления засовываем в цикл с 1000 итераций, чтобы снизить погрешность. Засекаем время с помощью метода Milliseconds() (библиотека Utils). Выводим результаты. В большинстве случаев рекурсия выполняется быстрее. Предлагаю обсудить, почему так происходит?
[ Язык реализации: Pascal ]
Обсуждение задачи:
vk.com/wall-51126445_30047
📝 Полный код: https://pastebin.com/UzPkbXDa
Были еще на канале интересные статьи по этой теме:
▪️ Что работает быстрее: цикл или рекурсия? Измеряем производительность
▪️ 🐍 Разбираем циклы в Python на простых примерах. Какой цикл быстрее?
▪️ Как ускорить выполнение цикла? Алгоритм оптимизации циклов
#программирование #информатика #pascal #задачи #профилирование
💡 Интересная задачка попалась мне, когда перебирал свои старые черновики
Есть шахматное поле n на n. На поле m ладей. Нужно определить какое число клеток не заняты и не находятся под боем.
Мне стало интересно сделать визуализацию решения, чтобы можно было легко посчитать пальцем число свободных клеток, тем самым проверить правильность работы программы. На вход программы подается матрица
Остальная доска рисуется алгоритмом, который переключает цвета с помощью деления по модулю 2. ( 0 - белый цвет, 1 - серый ). Плюс для компактности я решил использовать сквозной индекс по двумерному массиву. Хотя, вложенных циклов в некоторых местах итак получилось по 4.
Думаю, что графических процедур в программе будет достаточно, чтобы написать какую-нибудь простенькую пиксельную игру типа "змейка" :) Если вам было бы интересно почитать про реализацию змейки или другой пиксельной игры, то напишите об этом в комментариях и проявите какую-то активность.
📝 В данном случае язык реализации был Pascal ( IDE: PascalABC ).
https://pastebin.com/yg5zKEu7
#математика #программирование #информатика #pascal #delphi
Есть шахматное поле n на n. На поле m ладей. Нужно определить какое число клеток не заняты и не находятся под боем.
Мне стало интересно сделать визуализацию решения, чтобы можно было легко посчитать пальцем число свободных клеток, тем самым проверить правильность работы программы. На вход программы подается матрица
[8][8]
, в которой цифрой "1" отмечены места, в которых стоят ладьи. По этой матрице строится другая матрица, в которой "0" отмечаются свободные поля, а клетки, которые находятся под ударом отмечаются FLAG_ATTACK = -1
. По матрице позиций под атакой рисуются красные клетки, иллюстрирующие запрещенные ходы.Остальная доска рисуется алгоритмом, который переключает цвета с помощью деления по модулю 2. ( 0 - белый цвет, 1 - серый ). Плюс для компактности я решил использовать сквозной индекс по двумерному массиву. Хотя, вложенных циклов в некоторых местах итак получилось по 4.
Думаю, что графических процедур в программе будет достаточно, чтобы написать какую-нибудь простенькую пиксельную игру типа "змейка" :) Если вам было бы интересно почитать про реализацию змейки или другой пиксельной игры, то напишите об этом в комментариях и проявите какую-то активность.
📝 В данном случае язык реализации был Pascal ( IDE: PascalABC ).
https://pastebin.com/yg5zKEu7
#математика #программирование #информатика #pascal #delphi