Программирование : введение в профессию 3 тома.
1 том : просто программирование, взят простой язык Pascal
2 том: ассемблер
3 том : Если ты до сих пор хочешь программировать,то он уже подвел к c++
Эта книга лучшая наверное,если прям правильно ее изучать можно стать отличным программистом
Вообще учить сразу C++ это очень плохо, ты не будешь понимать как работать с памятью, как устроена система. Будет очень много проблемных мест.
Бред. Нет в паскале ничего такого, что там проще сделать, чем в С++. Разве что всякие дибильные Robot и Painter для которых в C++ надо найти что-то вроде Qt. (А вот ужасный недостаток фич из STL, который будет решать, если ты пишешь не домашку в школу...)
Про "плохо" учить сразу С++, нужно уметь работать с памятью - тоже бред. Начинать изучение программирование с ассемблера верный путь в дурку. Один фиг ассемблер это тот же ЯП, только куда более низкоуровневый и со встроенным самотыком для программиста.
Для начала программирования разве что надо понимать что делают компилятор и линкер (и в чем их разница), как представляются числа в памяти (ответ при помощи 0 и 1 хоть и верен, но далеко не очень хорош). Да для ассемблера надо понимать как конкретно работает стек, как реально устроена память... Но для НЕГО, а не для С+++. Плюс никаких классов и объявлений переменных, ебля с вызовами функций, вечный недостаток регистров, невозможность нормально читать код и т.д. - ужас не то что для новичка...
Вообще сейчас изучение С++ это все-таки больше сначала ты понял как сложить два числа и писать свои функции, а теперь вот тебе уже классы и мир ООП. Знать ассемблер для программиста уже давно роскошь (которая тем не менее дает некоторые преимущества), а не необходимость. Пока ты новичок - он тебе точно НЕ нужен. Да блин, уже даже при разработке вещей где важны наносекунды ассемблер максимум используется для сравнения крутости двух решений одной и той же подзадачи. Знаешь как? Пишут две реализации и через условный godbolt (noad) считают где меньше строк, ибо это очень хорошее приближение при условии одинаковой асимптотики обоих решений. Даже ассемблерные вставки, которые пока что еще актуальны, скоро канут в лету.
А вообще уже давно даже использование всяких int arr[100] это кощунство. За такое в приличных конторах тебе напишут в код ревью много неприятного. А в неприличных компаниях еще и пизды дадут. Почему? Уже давно время компутерщика стоит дороже времени компьютера. Теперь куда важнее безопасность, и всех пофиг на то, что arr[1] работает быстрее, чем vec.at(1). Потому что vec.at(1) куда безопаснее и им ты сэкономишь не только свои время и нервы, но и время и нервы других кодеров, которым посчастливиться читать твой код.
В общем не нужно для изучения С++ тратить время на паскали или питоны. А уж тем более на ассемблер.
А ТЕПЕРЬ ТАКИ ДЛЯ ТСа:
"Не люблю читать, дайте видеоуроки..." - любишь кататься люби и саночки возить. Все равно всего ты через видеоролики не изучишь. Пора учиться "читать". Плюс если что-то есть в видеоролике - это было актуально года 3 назад. Если ролик на русском - то все 5. Статья в интернете - год-два. Документация - ты идешь в ногу со временем (почти). Так что для изучения любого С++ (да и любого другого ЯП) актуальнее подучить английский, нежели лезть в паскаль/ассемблер.