На CS50, слишком популярный и влиятельный Гарвардский курс программирования для самых элитных умов мира, что неудивительно, невероятно сложно продолжить. Вот почему Гарвард предоставляет вам доступ к многочисленным онлайн-ресурсам по CS50 бесплатно или в качестве платного курса, если вы хотите в конце получить официальный сертификат о ваших навыках.
Если вам интересно, как получить доступ к контенту CS50 в Интернете, есть четыре способа:
Возьмите CS50 онлайн: Гарвардская школа повышения квалификации
Собственное отделение дистанционного обучения Гарварда, Harvard Extension School, предлагает различные варианты CS50. Семестровый курс CSCI E-50 Intensive Introduction to Computer Science предлагает четыре кредита для получения степени и стоит 2400 долларов. Тем не менее, количество мест ограничено до 200 студентов, а количество участников на курсы слишком велико. Следить за extension.harvard.edu когда открывается регистрация на осенние и весенние курсы следующего года.
Возьмите CS50 онлайн: edX
Кроме того, курс предлагается через сайт онлайн-образования edX , где вы сможете справиться с ней в удобном для вас темпе. Согласно странице edX для CS50, студенты, набравшие удовлетворительные баллы по девяти комплексам задач (например, задания по программированию) и финальный проект, получат сертификат от HarvardX. Студенты могут пройти курс бесплатно, но должны заплатить 90 долларов, если они хотят получить подписанный инструктором сертификат с логотипом учебного заведения для подтверждения ваших достижений и повышения ваших перспектив трудоустройства.
Воспользуйтесь CS50 онлайн: iTunes U
Курс и все его материалы, как и многие другие курсы Гарварда, также доступны в Apple iTunes U. Вы можете бесплатно загрузить приложение из App Store (на iPhone, iPad или Mac) и выполнить поиск CS50 в каталоге. Все видеолекции, наборы задач, викторины и другие материалы находятся в пакете, хотя относительно недавний редизайн iTunes U значительно усложнил навигацию по этой массе материала, чем когда-то.
Взять CS50 онлайн: YouTube
Последний способ - просто посмотреть все лекции - что само по себе стоящее занятие - на YouTube. Все лекции курса Computer Science 50 2015 г. можно найти на Гарвардский канал . Надо проработать более 20 часов видеозаписи, хотя каждая отдельная лекция длится не более часа или около того.
ЧИТАЙТЕ СЛЕДУЮЩИЙ: научитесь программировать в Великобритании бесплатно
Можете ли вы модифицировать Windows 10 Minecraft?
Сможете ли вы пройти CS50?
Беспокоитесь, что у вас недостаточно мыслей, чтобы пройти элитный курс Гарварда? Вот несколько примеров вопросов прямо из курса Гарварда. Не волнуйтесь, они для меня тоже не имеют смысла.
1: Шифр Виженера
Ваша последняя задача на этой неделе - написать на vigenere.c программу, которая шифрует сообщения с помощью шифра Виженера. Эта программа должна принимать единственный аргумент командной строки: ключевое слово k, полностью состоящее из алфавитных символов.
Если ваша программа выполняется без каких-либо аргументов командной строки, с более чем одним аргументом командной строки или с одним аргументом командной строки, который содержит любой не алфавитный символ, ваша программа должна немедленно подать жалобу и немедленно выйти, при этом main вернет 1 (таким образом означает ошибку, которую могут обнаружить наши собственные тесты).
В противном случае ваша программа должна продолжить запрашивать у пользователя строку открытого текста,
p, который затем он должен зашифровать в соответствии с шифром Виженера с помощью k, в конечном итоге распечатав результат и завершив работу, с основным возвращением 0.
Что касается символов в k, вы должны рассматривать A и a как 0, B и b как 1,…, а Z и z как 25. Кроме того, ваша программа должна применять шифр Виженера только к символу в p, если этот символ письмо. Все остальные символы (числа, символы, пробелы, знаки препинания и т. Д.) Должны выводиться без изменений.
Более того, если ваш код собирается применить j-й символ k к i-му символу p, но последний оказывается небуквенным символом, вы должны подождать, чтобы применить этот j-й символ k к следующему алфавитному символу в p ; вы еще не должны переходить к следующему символу в k. Наконец, ваша программа должна сохранять регистр каждой буквы в p.
2. Игра пятнадцати
Игра пятнадцати - это головоломка, в которую играют на квадратной доске с пронумерованными плитками, которые скользят. Цель этой головоломки - расположить плитки на доске от наименьшего к наибольшему, слева направо, сверху вниз, с пустым пространством в правом нижнем углу доски.
Реализуйте режим Бога для этой игры.
Сначала реализуйте init таким образом, чтобы плата была инициализирована псевдослучайной, но разрешимой конфигурацией. Затем завершите реализацию розыгрыша, хода и выигрыша, чтобы человек действительно мог играть в игру.
См. Соответствующий курс CS50: Самый элитный в мире компьютерный курс Научитесь кодить бесплатно: лучшие британские курсы кодирования и разработки приложений на Национальной неделе кодирования Год как кодирующий кочевник
Но внедрите в игру чит, посредством которого вместо того, чтобы вводить целое число от 1 до d2 - 1, где d - высота и ширина доски, человек может также ввести БОГ, чтобы заставить `` компьютер '' взять под контроль игру и решить ее (используя любую стратегию, оптимальную или неоптимальную), сделав, скажем, всего четыре хода в секунду, чтобы человек мог наблюдать.
Предположительно, вам нужно будет заменить GetInt на что-то более универсальное. Ничего страшного, если ваша реализация God Mode работает (сносно быстро) только для d ≤ 4; вам не нужно беспокоиться о тестировании God Mode для d> 4. О, и вы не можете реализовать God Mode, помня, как init инициализировал доску (например, запомнив последовательность ходов, которые привели вашу программу к некоторому псевдослучайному, но разрешимому состоянию). Хорошая попытка.
Все проблемы принадлежат Гарвардскому университету. Полные наборы задач опубликованы по адресу: cs50.harvard.edu