Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the acf domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/user/web/mal.scrum360.ru/public_html/wp-includes/functions.php on line 6260
Notice: Функция _load_textdomain_just_in_time вызвана неправильно. Загрузка перевода для домена cyr2lat была запущена слишком рано. Обычно это индикатор того, что какой-то код в плагине или теме запускается слишком рано. Переводы должны загружаться при выполнении действия init или позже. Дополнительную информацию можно найти на странице «Отладка в WordPress». (Это сообщение было добавлено в версии 6.7.0.) in /home/user/web/mal.scrum360.ru/public_html/wp-includes/functions.php on line 6260
10. CS50 на русском: Лекция #10 [Гарвард, Основы программирования, осень 2015 год]
Ведутся технические работы. Это может временно повлиять на скорость работы сайта. Приносим извинения за неудобства и благодарим за ваше понимание!
10. CS50 на русском: Лекция #10 [Гарвард, Основы программирования, осень 2015 год]
Warning: Undefined array key 1 in /home/user/web/mal.scrum360.ru/public_html/wp-content/themes/malitikov/single.php on line 15
Доп. материалы и задачи к лекции — https://javarush.com/s/level_4
Весь курс CS50 — https://javarush.com/s/course_cs50
Гарвардский курс по основам программирования CS50, 10 лекция, конец 4 недели
В шпионских (или любых других) боевиках, вы, наверное, замечали такую штуку: хакер сидит в темной комнате, весь такой загадочный, подсвеченный монитором своего компьютера и всякими цветными диодами непонятного происхождения. На мониторе — не менее загадочные буковки, обычно зелёные с курсором-нижнее-подчеркивание и малюсенькая карта, на которой где-то в дебрях спрятан интересующий спецслужбы объект. Приходит команда «увеличь этот участок изображения», дабы обнаружить, скажем, номер автомобиля, отражённый в чьем-нибудь глазу… И специалист бесконечно масштабирует картинку, пока отражение не станет ясным и четким…
Вам нравятся такие сцены? Если да, спешим вас огорчить: после 10 лекции CS50 вы уже не будете смотреть их прежними глазами, понимая всю их несуразицу и преувеличение. Впрочем, будущему программисту это необходимо сделать. Это как рано или поздно все узнают правду о Санта Клаусе. С другой стороны, если в мире будет все больше и больше грамотных с точки зрения IT людей, Голливуду придется повысить качество подобных сцен, не лепя случайные наборы терминов куда ни попадя.
А всё дело в том, что фотографии состоят из пикселей (или точек), и когда мы увеличиваем фотографию, рано или поздно мы дойдем до одного пикселя и как бы мы дальше ни увеличивали изображение, дополнительной глубины не появится, перед нами — конечное количество битов. «Это цифра, детка!».
После четвертой лекции вы сможете приступить к задачнику CS50 для четвертой недели. Он позволит вам прикоснуться к миру графики и криминальной экспертизы: вы напишете коды для восстановления утраченных изображений и изменения масштаба картинок.
Итого, из лекции вы узнаете:
• Как кодируется изображение. Слово bitmap станет родным и понятным.
• Вы узнаете, как понять (с точки зрения компьютера), что перед вами именно JPEG-файл и какую роль в этом играет комбинация битов 244 216 255.
• Вспомните (или изучите) 16-ричные числа. Запись 0хff станет столь же очевидной, как 255 а десятичной системе.
• Что такое struct в Си? Собственные типы данных в Си.
• Сравнение содержимого строк в Си (strcmp) и другие средства работы со строками.
• Адресная арифметика.
• char* t = malloc((strlen(s) + 1) * sizeof(char)) — как вам такая строчка кода? После лекции вы будете понимать, что к чему, и сами сможете писать нечто подобное =)
• Немного синтаксического сахара =)
• Как писать swap с указателями и зачем
Ну и, чтобы расслабиться, напоследок вы посмотрите пластилиновый мультфильм. Не просто мультфильм, но мультфильм про указатели. А если после этого произведения искусства вы только напряжётесь, DJ к вашим услугам.
Warning: foreach() argument must be of type array|object, null given in /home/user/web/mal.scrum360.ru/public_html/wp-content/themes/malitikov/single.php on line 44