Точка входа в программирование
20.2K subscribers
1.26K photos
220 videos
2 files
2.79K links
Фундаментальные знания по основам программирования

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Полезные материалы по Data Science и машинному обучению

Автор данной статьи делится полезными материалами для абсолютных новичков и более уверенных специалистов, которые помогут найти и заполнить не только теоретические, но и практические провалы.

#ml #datascience
👍7🍌2
This media is not supported in your browser
VIEW IN TELEGRAM
Какой вы язык программирования?

Чтобы это узнать, достаточно сделать скриншот экрана.

В комментариях можете поделиться, какой язык вам попался и совпал ли он с тем, который вы изучаете или любите больше всего.
🔥9🦄2👍1🍌1
Понятие и основные типы структур данных

Структура данных — это контейнер, который хранит данные в определенном макете. Этот «макет» позволяет структуре данных быть эффективной в некоторых операциях и неэффективной в других.

Какие бывают?
Линейные, элементы образуют последовательность или линейный список, обход узлов линеен.
Например: массив, связанный список и очередь.

Нелинейные, если обход узлов нелинейный, а данные не последовательны.
Например: граф и дерево.

Основные структуры данных:
массив (array);
стек (stack);
очередь (queue);
связанный список (linked list);
граф (graph);
— дерево (tree);
— префиксное дерево (trie);
— хэш таблица (hash table);
— множество (set).

С каждой из них мы подробнее познакомимся в будущих постах.

#начинающим
👍6❤‍🔥3🍌2🔥1
Объектно-ориентированные, структурные, процедурные и функциональные ЯП

Ранее мы уже узнали, чем высокоуровневые ЯП отличаются от низкоуровневых. В этот же раз рассмотрим другие четыре типа, на которые делятся языки.

Объектно-ориентированные языки программирования (ООЯП) — это языки, организующие программу вокруг объектов, которые могут посылать и реагировать на сообщения, используя свои данные. Объекты являются экземплярами определённого класса, а классы образуют иерархию наследования.

Структурные языки программирования — это языки, в основе которых лежит представление программы в виде иерархической структуры блоков. Любая программа состоит из трёх базовых управляющих структур: последовательность, ветвление, цикл.

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

Функциональные языки программирования — это языки, которые позволяют использовать функции в качестве основной конструкции языка. При этом не предполагается хранение состояния программы: достаточно вычисления результатов функций от исходных данных. В функциональном программировании нет переменных, и если мы вызываем функции с одинаковыми аргументами, то мы получим один и тот же результат: выходные данные зависят только от входных.

#начинающим
👍73💘2🍌1
Рекурсия в SQL

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

Автор видео не только объясняет работу рекурсии, но и дает файл с данными, чтобы во время просмотра, вы могли повторить действия из видеоурока. Таким образом вы не только изучите теорию, но и закрепите материал на практике.

#sql
👍8🔥31🍌1
Словарик айтишника. Буква А

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

Понравилась ли вам новая рубрика про сленг?
❤️‍🔥 — да, узнал что-то новое, хочу больше!
👎 — нет, больше не хочу видеть такое.

#начинающим
❤‍🔥45👍7🍌2🤪2💘1
Устроим викторину. Как думаете, сможете ответить правильно?

#викторина #python
❤‍🔥2👍1🤔1
Какое значение будет выведено?
Anonymous Quiz
52%
Tproger
6%
Tprog
19%
Tpro
24%
fT, p, r, o, g,
❤‍🔥2
Компиляция и компоновка в C++

Создание исполняемого файла из исходного кода на C++ состоит из трех этапов:
1. обработка директив препроцессора;
2. компиляция;
3. компоновка (линковка).

Рассмотри их подробнее:
На первом этапе препроцессор выполняет включение файлов #include, определение макросов #define и условную компиляцию #ifdef, #ifndef, #if, #elif, #else, #endif.

На втором же этапе с помощью специальных программ происходит проверка кода на соответствие правилам языка C++, а исходный код переводится в файл машинного кода, называемый объектным файлом.

На заключительном, третьем этапе выполняются три важные задачи:
1. объектные файлы объединяются в единую исполняемую программу;
2. файлы библиотек связываются компоновщиком;
3. обеспечивается правильное разрешение всех межфайловых зависимостей.

На картинке мы может видеть процесс создания исполняемого файла в случае, когда исходный код находится в двух файлах .cpp

#c
👍6🍌1💘1
​​Метод pop() в Python

Вчера мы провели викторину, где участвовал метод pop() и многие из ответивших выбрали неверный ответ. Это нормально, мы проводим такие опросы как раз для того, чтобы понять пробелы в знаниях и ликвидировать их. Сегодня более подробно разберем этот метод.

pop() — это встроенный метод списка в Python, который из списка удаляет и возвращает элемент по индексу. Если оставить скобки пустыми, то по умолчанию удаляется и возвращается последний элемент в списке. Если же передать индекс, то метод выталкивает элемент, соответствующий ему.

Рассмотрим его работу на примерах (их можно увидеть на картинке):
1. в первом случае pop() передал в переменную del_value последний элемент из списка и удалил его оттуда;
2. во втором случае pop() передал в переменную del_value второй элемент в списке (с индексом 1 т.к. отсчет начинается с 0) и удалил его.

Надеюсь, мы помогли вам разобраться в этой теме. В ближайшее время проведем викторину на с участием метода pop(), чтобы закрепить материал.

#python
10👍3🔥1🍌1
Визуализация алгоритмов сортировки

Визуализатор, создан с использованием React для того, чтобы помочь понять работу основных алгоритмов сортировки.

Что он может:
— сортировать массив из любых трехзначных натуральных чисел;
— менять скорость выполнения;
— запускать, приостанавливать и сбрасывать выполнение;
— генерировать массив из случайных чисел.

Подробнее на GitHub

Опробовать визуализатор можно по этой ссылке.
4🤩4🍌2🦄2