Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 April 21

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
😍
сложнааааааа
источник

Ms

Me sato in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Подскажите пожалуйста последовательность, как данная функция выполняет действия? Я прошу расписать. Я понимаю что числа до (n) перемножаются друг на друга
Предположим f(7) = 1*2*3*4*5*6*7 = 5040.
Но каким образом это проделывает функция с данными условиями? Передаем функции опять же (7) проверяем, оно больше 0, идём дальше, оно не == 0, идём дальше.  И тут вроде как (7-1)*7? Но тут я запутался. Как и что происходит дальше? Я не пойму сам процесс данного цикла(#вопрос
источник

😍

😍 in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
https://pep8.ru/doc/dive-into-python-3/ завтра на работе прочитаю) увлекательный день походу будет
источник

😍

😍 in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
блин надо еще его посмотреть) первое видео только глянул
источник

😍

😍 in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
и перед сном последний вопрос: что может быть в самом деле? логин пароль ссылку активировал
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Me sato
Подскажите пожалуйста последовательность, как данная функция выполняет действия? Я прошу расписать. Я понимаю что числа до (n) перемножаются друг на друга
Предположим f(7) = 1*2*3*4*5*6*7 = 5040.
Но каким образом это проделывает функция с данными условиями? Передаем функции опять же (7) проверяем, оно больше 0, идём дальше, оно не == 0, идём дальше.  И тут вроде как (7-1)*7? Но тут я запутался. Как и что происходит дальше? Я не пойму сам процесс данного цикла(#вопрос
f(7) = 7 * f(6)
где f(6) = 6 * f(5)
где f(5) = 5 * f(4)
где f(4) = 4 * f(3)
где f(3) = 3 * f(2)
где f(2) = 2 * f(1)
где f(1) = 1 (по определению)
а теперь возвращаемся обратно:
f(2) = 1 * 2 = 2
f(3) = 3 * 2 = 6
f(4) = 4 * 6 = 24
f(5) = 5 * 24 = 120
f(6) = 6 * 120 = 720
f(7) = 7 * 720
источник

Ms

Me sato in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Me sato
Подскажите пожалуйста последовательность, как данная функция выполняет действия? Я прошу расписать. Я понимаю что числа до (n) перемножаются друг на друга
Предположим f(7) = 1*2*3*4*5*6*7 = 5040.
Но каким образом это проделывает функция с данными условиями? Передаем функции опять же (7) проверяем, оно больше 0, идём дальше, оно не == 0, идём дальше.  И тут вроде как (7-1)*7? Но тут я запутался. Как и что происходит дальше? Я не пойму сам процесс данного цикла(#вопрос
Почему это становится именно рекурсией, последовательностью? А не просто выражениями
(7-1)*7;
(6-1)*6;
(5-1)*5;
(4-1)*4;
(3-1)*3;
(2-1)*2 и тп
источник

O

Oleksii in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Всем привет! Подскажите пожалуйста, кто не спит. Вопрос по лабораторной работе № 4
Картина (часть 2). Рефакторинг картины.  Лекция №4.
Я картину нарисовал, теперь посмотрел 4-ю лекцию про декомпозицию и делегирование подзадач и ответственности. Но чесно говоря не понимаю пока, как это мне поможет дублировать мишку на рыбалке, рыбок и т.д.
https://pastebin.com/5bN677GB
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
да, ради этого и всё затевалось)
источник

Ms

Me sato in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
да, ради этого и всё затевалось)
Это мне ответ?
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Me sato
Это мне ответ?
нет.
источник

Ms

Me sato in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
f(7) = 7 * f(6)
где f(6) = 6 * f(5)
где f(5) = 5 * f(4)
где f(4) = 4 * f(3)
где f(3) = 3 * f(2)
где f(2) = 2 * f(1)
где f(1) = 1 (по определению)
а теперь возвращаемся обратно:
f(2) = 1 * 2 = 2
f(3) = 3 * 2 = 6
f(4) = 4 * 6 = 24
f(5) = 5 * 24 = 120
f(6) = 6 * 120 = 720
f(7) = 7 * 720
Тогда здесь почему сначала мы идём как f(4) = 4 * f(3), а в обратном порядке 4 * 6
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleksii
Всем привет! Подскажите пожалуйста, кто не спит. Вопрос по лабораторной работе № 4
Картина (часть 2). Рефакторинг картины.  Лекция №4.
Я картину нарисовал, теперь посмотрел 4-ю лекцию про декомпозицию и делегирование подзадач и ответственности. Но чесно говоря не понимаю пока, как это мне поможет дублировать мишку на рыбалке, рыбок и т.д.
https://pastebin.com/5bN677GB
в принципе это: https://t.me/tkhirianov_python_2019/13734
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
только надо сперва построить фигуру, рыбу например,  которая бы  относительно какой-то точки x0, y0 рисовалась
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Me sato
Тогда здесь почему сначала мы идём как f(4) = 4 * f(3), а в обратном порядке 4 * 6
вызывая f(3) функция доходит до места где надо взять число 2 и умножить на результат f(2). сохраняет своё состояние и вызывает функцию f с аргументом 2.
на этом уровне доходит до места где нужно взять 2 и умножить его на f(1) но f(1) еще не знает и тоже сохраняется состояние и вызывает f(1)
и только при единице не вызывается еще раз, а возвращается результат, и возвращается в состояние при f(2). осматривается - вместо f(1) него значение =1. умножает получает число и возвращается в более ранее состояние внутри f(3).
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
сохранять состояние и увеличивать уровень вложенности дорого, надо много  памяти, поэтому его ограничивают каким-то небольшиым разумным числом(1000 в питоне), или размером стека
источник

O

Oleksii in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
да, ради этого и всё затевалось)
Я понимаю, что ради этого) Посоветуй пожалуйста как дальше действовать? Если как-то думаю сумею связать эллипсы в лунке и дублировать их, то как связать эллипсы(и круги) в мишке и совсем разные многоугольники в рыбке даже не представляю...😳 Плюс это все отзеркалить... это какой-то пиздец=/
источник

😍

😍 in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleksii
Я понимаю, что ради этого) Посоветуй пожалуйста как дальше действовать? Если как-то думаю сумею связать эллипсы в лунке и дублировать их, то как связать эллипсы(и круги) в мишке и совсем разные многоугольники в рыбке даже не представляю...😳 Плюс это все отзеркалить... это какой-то пиздец=/
а скажи что ты делаешь то есть какая глава практики?
источник

O

Oleksii in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
😍
а скажи что ты делаешь то есть какая глава практики?
Картина (часть 2). Рефакторинг картины
источник

Ms

Me sato in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
вызывая f(3) функция доходит до места где надо взять число 2 и умножить на результат f(2). сохраняет своё состояние и вызывает функцию f с аргументом 2.
на этом уровне доходит до места где нужно взять 2 и умножить его на f(1) но f(1) еще не знает и тоже сохраняется состояние и вызывает f(1)
и только при единице не вызывается еще раз, а возвращается результат, и возвращается в состояние при f(2). осматривается - вместо f(1) него значение =1. умножает получает число и возвращается в более ранее состояние внутри f(3).
Спасибо, буду разбираться. Не укладывается пока
источник