Языки программирования и программы.



  • Общая тема по разным ресурсам. Можно выкладывать ссылки на обучающие материалы. Или новое, полезное, занимательное.
    Также можно выкладывать результаты обучения ( промежуточные итоги и отчеты) - это полезно, пусть даже на шахматном сайте.



  • Начал смотреть по Питону Python. Самое начало.
    Столкнулся с задачей-

    current_hour = 12
    current_minute = 37
    current_section = "PM"
    due_hour = 9
    due_minute = 0
    due_section = "AM"

    #You may modify the lines of code above, but don't move them!
    #When you Submit your code, we'll change these lines to
    #assign different values to the variables.

    #Given the current time and deadline time represented by the
    #variables above, determine if an assignment is still eligible
    #for submission. An assignment is eligible if the time
    #represented by current_hour, current_minute, and
    #current_section is before the time represented by due_hour,
    #due_minute, and due_section.

    Тут трудность в том ( особенно тем, кто не знаком с их стандартом времени), что 12 афтермонинг и 12 пастмонинг не совсем поддается логическому описанию ( но тут как бы ни старались, получить логически непротиворечивую конструкцию из этих элементов не получится)- то есть 12 ам-это у низ 0 часов ночи , а 12 пм-это 12 дня.
    Я посмотрел, на сегодняшний момент эти конструкции с числом 12 рекомендуется избегать во избежание недоразумений.. Но пока я это выяснил( задача не сходилась никак), потратил более часа, ведь это вне обычной/прямой ( тупой) логики.
    Но задачка такая и ограничения- предположим, что мы пока не догадываемся об условиях и conditioning ( if, while) и т.п. Прямой перевод времени в какую-то одну переменную поначалу кажется трудным, можно строить логическими операторами, но мне показалось слишком громоздким.
    Я решил перевод времени в 1 переменную так-тут на примере переменной( время_ сейчас)

    current_time=((current_hour%12)+(12*(current_section == "PM")))*60+current_minute
    то есть тупо переводим все в минуты ☺ , но суть, что нужно было догадаться использовать оператор остаток ( модулус) для этого ( чтобы обнулить ам и пм при 12 часах)


  • T

    Остаток от деления - это интересная и в то же время очень известная и лёгкая фишка в задачах по информатике. Такие задачки щёлкал уже в детстве, благо в мат. классе учился и информатика была. Заняло 5 минут, чтобы повторить это решение.





  • По Питону начальные курсы и материалы.
    Бесплатно от Майкософт

    https://www.youtube.com/playlist?list=PLlrxD0HtieHhS8VzuMCfQD4uJ9yne1mE6

    Блоковый язык на основе Питона, упрощающий для новичков конструирование программы, легкий переход из блоков к коду позволяет обучаться и экспериментировать
    https://app.edublocks.org/