Основы программирования на С++
228 subscribers
51 photos
30 links
Канал курса «Основы программирования на C++» на платформе Stepik.

Группа поддержки: @incredible_cpp
Создатель курса: @souceguy

Ссылка на курс:
https://stepik.org/course/182643
Download Telegram
На самом деле уроки 3.1 (про оператор if-else) и 3.2 (тот, который новый), получается, имеют почти самые длинные сегменты с теорией.

Все уроки до 6 модуля (за исключением буквально пары уроков) имеют такие, среднего размера, сегменты с теорией. Поэтому уроки 3.1 и 3.2 теперь немного выделяются на их фоне.

Вообще на меня снизошло какое-то излишнее вдохновение, пока я делал урок 3.2. Кажется, там очень много текста. Да и это задание про треугольники...

В общем, как вам новый урок?

Новичкам может быть довольно тяжело читать такие длинные тексты, хотя я и постарался писать достаточно понятно. Напишите, если вам кажется так же.
👍4
Мы внесли пару изменений в урок 3.3 про switch-case

В начало урока мы добавили конспект про вложенные и каскадные конструкции if-else и пару заданий по ним. Также мы обновили все старые задания из урока и конспект по switch-case. Теперь эта тема будет чуть-чуть понятнее.

Быстрая ссылка на урок: *тык*.

#изменения
🆒42
А вы знали? В C++ не обязательно ставить фигурные скобки!

Когда мы пишем код, нам часто приходится ставить фигурные скобки у конструкций if-else или циклов. Иногда мы пишем всего одну строчку кода, а всё равно нам приходится заключать её в фигурные скобки. Это может сильно надоедать, тем более что в таком популярном языке, как Python, этого делать не надо.

На самом деле C++ ожидает после if (и других конструкций) всего одно выражение - один кусочек кода. В действительности можно написать что-то типа:
if (a == b)
cout << "Гип-гип..." << endl; // Внутри if

cout << "Ура!!!" << endl; // Снаружи if


Этот код будет работать так же, как если бы мы поставили фигурные скобки вокруг первого cout.

Фигурные скобки в С++ используются для того, чтобы группировать несколько строчек кода в один блок. Если не ставить фигурные скобки, то if будет считать внутри себя только одну строчку кода, следующие строки уже не будут внутри if. Поэтому, чтобы писать внутри if и циклов сложный код, нужно ставить фигурные скобки.

Эта логика применима ко всему, что мы заключаем внутрь кода функций. Функцию main нельзя лишить фигурных скобок, но то, что внутри неё уже можно.

Как можно увидеть из примера выше, строчка, которая находится внутри if, и которая находится снаружи, ничем не отличаются. Они отличаются отступом, но отступ можно не соблюдать - это дело стиля кода. Если не ставить фигурные скобки, может быть сложнее понимать, что принадлежит конструкциям, а что нет. Поэтому как правило рекомендуется всегда ставить фигурные скобки.

Больше примеров кода будет в комментарии к посту.

#интересные_факты
👍3🔥1
Мы опубликовали новый урок про язык C++

В новом уроке вы сможете узнать историю языков C и C++, а также немного прочитать про особенности языка C++.

Быстрая ссылка на урок: *тык*.

#изменения
👍61
Мы внесли изменения в урок про среды разработки

Теперь вы сможете прочитать про компиляцию и интерпретацию, а также выбрать для себя среду разработки. После этого вы сможете найти 2 текстовых шага, в которых описан процесс установки, а также особенности пользования Dev-C++ и Visual Studio.

Ещё в опросе в последнем шаге этого урока появились результаты. Теперь вы сможете узнать, какие IDE чаще выбирают студенты этого курса.

Быстрая ссылка на урок: *тык*.

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

На самом деле только треть курса (примерно 10 уроков) точно имеют конечный вид, в котором мы бы их и оставили. Вроде ещё работать и работать, а вроде уже и значительная цифра.

#изменения
1👍1🔥1
Мы внесли изменения в урок про цикл for!

Теория урока стала намного понятней, сложные задания были удалены, а интересные задания были добавлены. Теперь этот урок намного приятней проходить.

Мы также добавили аннотацию урока (его краткое содержание) и блок "частые ошибки", который обращает внимание на места, в которых можно допустить ошибку.

Как вам изменения? Я надеюсь добавить эти 2 новых блока во все остальные уроки.

Быстрая ссылка на урок: *тык*.

#изменения
👍3
А тем временем мы нашли шутку дня:
God is real (unless declared integer)


Примерный перевод:
Бог реален (если не объявлен как целое число)


Если кто плохо знает английский, то здесь есть игра слов. Real - это числа с плавающей точкой в математике (действительные числа, float в C++). То есть по другому:
Бог - число с плавающей точкой (если не объявлен как целое число)


#humor
😁5👍2
Мы обновили урок про циклы while и do-while!

Набор изменений примерно такой же, как и в прошлый раз. Обновлена теория, добавлены блоки: аннотация урока и частые ошибки. Также текста заданий были переработаны, добавлено одно новое.

Если всё так и пойдёт, то мы сможем обновлять (старые) или создавать (новые) по 2 урока в неделю. Хотя у меня такое чувство, будто до конца этой недели мы выпустим 1 новый урок и обновим ещё 1 старый.

Быстрая ссылка на урок: *тык*.

#изменения
👍2🆒2
Мы опубликовали новый урок про вложенные циклы!

В новом уроке вы узнаете, что такое вложенные циклы, а также поймёте принцип их работы на примере работы часов. За теорией последуют интересные и немного сложные задачи.

Мы посчитали, что этот урок буквально необходим курсу, ведь в уроке 5.3 можно встретить 2 сложных задачи, которые используют логику вложенных циклов. Это достаточно интересные и необычные задачи. Новый урок упростит моделирование проблемы и написание решения для этих задач.

Быстрая ссылка на урок: *тык*.

#изменения
2🔥2
Мы обновили урок "Задания к циклам"!

Теперь всех, дошедших до этого серединного урока, встретит гифка с костром и 5 интересных задач.

Быстрая ссылка на урок: *тык*.

То, что мы публикуем изменения этого урока, означает, что мы можем приступать к работе над 5-м модулем (который про массивы). Курс существует уже почти год, однако до сих пор "зелёным" горят лишь 30%. Остальное - то, что нужно переделать или создать.

#изменения
👍2🆒2
Мы обновили урок про массивы

Это значит, что теория этого урока стала намного понятнее и чуть-чуть объёмнее, а задания урока стали интереснее. Мы также добавили блок "частые ошибки" в урок.

Быстрая ссылка на урок: *тык*.

У нас также уже готовы костяки для новых версий ещё трёх уроков 5-го модуля. Раньше он был самым объёмным и при этом довольно сложным; теперь он будет разбит на 2 модуля.

#изменения
👍4
Лето подходит к концу, а это значит, что самое время нам поделиться с вами нашими планами.
Планы на этот курс

В последнее время мы работаем над улучшением уже существующего курса: перерабатываем теорию, улучшаем задания и добавляем упущенные уроки.

Мы собираемся довести этот процесс до конца. Если продолжить работать в таком же размеренном режиме, то через ~10 недель (2.5 месяца) весь курс будет полностью переделан на новый, более качественный лад.

Судя по таблице со структурой курса, осталось поработать ещё над 64% курса.

#опланах
👍3
Планы на будущие курсы

Многие прошедшие этот курс ждут тему ООП в C++. Мы решили добавить её в продвинутый курс, который станет продолжением этого курса.

В продвинутом курсе появятся следующие темы:

* Работа с памятью - указатели и динамическая память
* ООП (аж 2 модуля)
* Проекты в C++
* Многопоточность
* Классы и типы данных из стандартной библиотеки C++

По количеству уроков новый курс будет примерно таким же, как и текущий, но по длительности прохождения он может стать сильно бóльшим.

Так как он будет достаточно объёмным, его было принято сделать платным. Это означает, что мы постараемся сделать его качественным, а также, что за его прохождение будут выдаваться сертификаты.

Цена курса будет составлять около 250 р., что для большинства является почти незначительной суммой.

#опланах
👍52🔥2
Кстати, так как курсов в какой-то момент будет 2, они должны будут иметь какие-то похожие названия. Предлагаю переименовать этот курс, тем более его название и так не блещет оригинальностью.

Лучшее, что пока удалось придумать - «Невероятный C++». Это пока не окончательный вариант: наверняка найдётся что-то получше.

Предлагайте свои варианты в комментариях. Если наберутся хорошие варианты, устроим голосование.
Мы удалили урок про типы данных

Мы удалили старый урок 5.1 про типы данных. Он повествовал про:

* Типы данных double, short, long и long long. Эти типы никак не задействованы в заданиях курса.
* Тип данных bool и логические операции. Теперь про это повествует отдельный урок 3.2.
* Указатели (буквально пару слов).

Удаление этого урока никак не помешает проходить этот курс, поскольку на данный момент в нём нет ни одного задания, использующего теперь уже удалённые темы.

О новых числовых типах данных мы собираемся рассказать в уроке "Больше по числам" в будущем продвинутом курсе. Указателям вовсе будут посвящены 2 или даже 3 отдельных урока.

Если вам захочется почитать про числа и вспомнить то, что теперь не рассказывается в курсе, то вот 2 ссылки:

* Статья с таблицей размеров диапазонов значений целочисленных типов данных: *тык*
* (Очень-очень) подробная статья на cppreference: *тык*

#изменения
1🔥1
Мы обновили урок "Массивы в циклах"!

До сих пор это был самый сложный урок на курсе (согласно статистике Stepik). Длительность его прохождения составляет 1 ч. 26 мин. (это очень много). Всё дело было в двух последних заданиях.

Мы обновили теорию (теперь вы точно поймёте, как итерировать по массивам), а также изменили задания. Последние 2 задания мы всё же оставили, но их текста стали понятней. К тому же до этого мы добавили урок 4.4 "Задания к циклам", который неплохо помогает с логикой решения этих сложных задач.

Быстрая ссылка на урок: *тык*.

#изменения
👍8
Вот и начинается осень!

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

Уже с понедельника актив новичков на курсе почти буквально взорвался. 5 сентября на курс записалось вовсе 50 человек (не рекорд, но очень много).

Многие перед началом осени как следует отдыхают, чтобы затем продолжить продуктивно работать (автор курса не стал исключением). Уже на следующей неделе работа над курсом вернётся в "штатный" режим.

Это значит, что уже скоро вновь начнут обновляться старые уроки (и появляться новые)!
🔥1
А между тем на странице курса уже можно увидеть цифру в 7000 учащихся!

❤️ Спасибо всем вам, что проходите курс! ❤️
4👍1
Теперь мы выдаём сертификаты!

Отныне за прохождение нашего курса выдаётся красивенький сертификат, как это делается и на других курсах.

Все, кто уже прошёл или ещё только пройдёт в ближайшее время получит сертификат: либо обычный, либо сертификат с отличием в зависимости от полученных баллов.

Быстрая ссылка для тех, кто хочет его допройти: *тык*.

#изменения
🔥4👍1