Курсы на программиста

Формула программиста

основатель — Волосатов Евгений Витольдович

Клуб формулистов - Ежемесячная подписка

Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.

После взноса  999  499 руб. вы получите подписку
в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.
Байты используются для открытия более одного урока в день, по 50 байт за урок.

Стоимость 1 дня за первый месяц: всего 16 рублей.

Первый взнос - 499 руб./30 дней.

Через 30 дней будет списано 3,000 2,400 руб.
за продление подписки в Клуб на 30 дней + подарок 512 байт.

Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.
Средства будет автоматически считываться с вашей карты.
Вы в любой момент сможете отказаться от продления Клуба.

Только ДО КОНЦА НЕДЕЛИ -
-50% скидка на первый взнос, всего 499 (вместо 999) рублей!
-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!
Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.


Стоимость 1 дня: 80 руб.

Хочу вступить!

Также есть другие варианты оплаты участия в КФ:

Билет в клуб формулистов на ...
30+ дней | 60 дней | 150 дней | 380 дней | 1000 дней

Внимание!
Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.
При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.







Первый взнос - 499 руб./30 дней + 500 байт.
Последующие взносы - 3,000 2400 руб./месяц + 512 байт.



Список уроков | фото | видео

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 LOOP - Мужской / женский цикл 00:11:51
3 теста
46 чел. ★ 5 Done
  На этой видеолекции я расскажу о двух циклах в языке Java - while () и do - while(),
чем они отличаются друг от друга, почему один называется мужским, а другой женским,
а также об особенностях их использования.
Отчёт отправил: 13417. Chip Выполнено за 38 мин. [Показать отчёт]
Научился: Вывел числа от 0 до 4 и от 4 до 0 с помощью циклов while и do-while. 
2 LOOP - Пока четыре цикла без видео
2 теста
58 чел. ★ 5 Done
  На этом уроке мы познакомимся с циклом while.
Напишем программу, которая выводит числа от 1 до 10.
И сделаем это четырьмя разными способами.

На картинке в одном из примеров есть ошибка. Найдите её!
Отчёт отправил: 13417. Chip Выполнено за 51 мин. [Показать отчёт]
Научился: Вывел четырьмя разными способами числа от 1 до 10. Когда вводил второй вариант мне показалось странным, что number = 0, вместо 1. Набрал программу на Си как по заданию, программа вывела список от 0 до 10. 0 лишний. Заменил на 1, сработало как надо. Вообще говоря, в Си нежелательно передавать в функции в качестве аргументов значения с side-effects (например number++ или вызов других функций), мало ли, вдруг эта функция на самом деле является макросом, жди причудливых результатов. Потом решил-таки проверить Java-вариант на предмет какой-нибудь неведомой мне магии :) Он тоже сработал как Си-вариант, выводит от 0 до 10. Вывод - ошибка в коде задания. Спокойно выдохнул, никакой магии тут нет :) Мой вариант: цикл 5 представляет собой вариацию цикла 4, отличие в том, что я сначала увеличиваю число, проверяю, а потом печатаю. 
3 LOOP - Блок-схема цикла FOR 00:06:48
2 теста
41 чел. ★ 5 Done
  На этом уроке мы поговорим о составном цикле for.
Этот цикл используют, когда заранее известно, сколько раз должен выполиться цикл.
Заголовок цикла состоит из трёх частей каждая из которых отвечает за свой этап.
Не размещайте в заголовке действия, которые должны быть в теле цикла.
В заголовке цикла находятся только те действия, которые отвечают за организацию цикла.
Отчёт отправил: 13417. Chip Выполнено за 29 мин. [Показать отчёт]
Научился: Попрактиковался в цикле for. Создал цикл, который не выполнится ни разу. Организовал бесконечный цикл, пустой цикл. 
4 LOOP - Три части Forа без видео
3 теста
43 чел. ★ 5 Done
  На этом уроке мы выясним, из каких частей состоит заголовок цикла for,
Каждую часть можно вынести из заголовка указанным способом.
Написать все четыре функции и поочерёдно вызвать их.
Отчёт отправил: 13417. Chip Выполнено за 37 мин. [Показать отчёт]
Научился: Хороший урок, наглядно показывается за что отвечает каждая часть цикла for. Я немного изменил вывод циклов, чтобы числа выводились в строчку, так как в столбик получаются вытянутые скриншоты. Думаю формулистами неудобно листать вниз страничку, чтобы оценить работу или прочитать комментарии. Как обычно, добавил тест после пройдённого урока, надеюсь формулировка не запутанная :) 
5 LOOP - Сумма и Произведение 00:07:50
2 теста
42 чел. ★ 5 Done
  Как найти сумму?
Как найти произведение?
В чём сходство и отличие этих алгоритмов?
Отчёт отправил: 13417. Chip Выполнено за 28 мин. [Показать отчёт]
Научился: Повторил как находить сумму и произведение последовательностей чисел с помощью цикла for. Добавил по третьему заданию цикл для подсчета чисел от 1 до 10 кратных 3. Все три цикла разместил в одной программе вместо трёх отдельных для экономии места на скриншотах. 
6 LOOP - Вся коллекция циклов 00:06:35
3 теста
52 чел. ★ 5 Done
  На этом уроке мы вспомним, какие бываю циклы в языке Java.
Какие из них хорошие, какие плохие, какие несуществующие.
Ваше задание - вспомнить и записать любой интересный факт
о циклах в программировании, не обязательно по языку Java.
Отчёт отправил: 13417. Chip Выполнено за 1 час. 31 мин. [Показать отчёт]
Научился: Так как прохожу уроки на языках C/C++, то напишу факт про циклы в этих языках. Условие проверки, как обычно, может быть истиной или ложью. Если условие истинно, то цикл выполняется, если ложь - нет. Но в отличие от Java, в этих языках истиной является любое выражение, которое не равно 0. Например, 123, -987, 3.14, 'a', "Hello World" - всё это является истиной, в том смысле, что оно не равно 0. 123 != 0 -987 != 0 3.14 != 0 'a' != 0, так как если на машине где запущена программа базовой кодировкой является ASCII, то 'a' == 97 ==> 97 != 0. "Hello World!" != 0, так как строка "Hello World" по сути это обычный статичный массив, который скорее всего хранится где-то в сегменте кода программы, у этого массива есть адрес, он точно не равен нулю, так как любой объект имеет адрес не равный нулю. Пусть его адрес 0xfe. Значит в этом выражении мы сравниваем некое значение 0xfe != 0, что является истиной, значит цикл выполнится :) 
7 LOOP - Цикл for 00:13:22
12 тестов
43 чел. ★ 5 Done
  На этом уроке мы поэкспериментируем
с различными вариациями обычного цикла for.
Отчёт отправил: 13417. Chip Выполнено за 37 мин. [Показать отчёт]
Научился: Больше всего понравился последний пример, где сначала выводятся числа от 1 до 9 включительно, а потом от 10 до 1 включительно. В C++ предпочтительнее использовать != вместо < > <= >=, в случае сравнения итераторов. Итераторы бывают разных типов, например ввода, вывода, однонаправленные, двунаправленные или произвольного доступа. Если в цикле использовать < вместо !=, то цикл можно использовать только с итераторами произвольного доступа, например обычный указатель. С другими итераторами код не скомпилируется, так как у них не определен оператор <. Код получается негибкий, необобщённый. Ещё одна причина использования != или == в том, что они якобы быстрее, особенно если сравнивать с 0, но это не точно, могу ошибаться :) В остальных случаях, конечно, использовать < вместо != безопаснее, не проскочешь пороговое значение по нелепости :) 
8 LOOP - Счастливые билеты без видео
3 теста
52 чел. ★ 5 Done
  Написать программу, которая вывведет список
всех 6-значных счастливых билетов
и подсчитает их количество.
Отчёт отправил: 13417. Chip Выполнено за 15 мин. [Показать отчёт]
Научился: Написал программу подсчёта 6-значных счастливых билетов, вывел их список и количество. 
9 LOOP - Цикл for/each 00:10:43
3 теста
41 чел. ★ 5 Done
  На этом уроке мы поработаем с новой возможностью цикла for,
которую удобно использовать для перебора элементов массива.
Отчёт отправил: 13417. Chip Выполнено за 34 мин. [Показать отчёт]
Научился: Создал массив, список, множество. Заполнил их данными и вывел на экран с помощью нового синтаксиса цикла for. Добавил вывод аргументов командной строки. 
10 LOOP - Развёртка цикла 00:16:36
3 теста
40 чел. ★ 5 Done
  На этом уроке мы поэкспериментируем с оптимизацией развёртки цикла.
Вычислим, сколько времени выполняется схожий код с циклом и без него.
Отчёт отправил: 13417. Chip Выполнено за 45 мин. [Показать отчёт]
Научился: Написал код по уроку, в первом случае ведётся подсчёт суммы с помощью цикла, во-втором - без него. Обернул каждый вариант в цикл из 1 000 000 000 итераций. Замерил время выполнения. В первом случае время выполнения составило 3585 мс, во-втором 1889 мс. В итоге, развёртка сократила время выполнения в два раза. 
  Итого:   10 видеоуроков 1 час. 13 мин.
36 тестов
36 чел. ★ 5  
  Финалисты:   vdimae,   Jevgenij Kariagin,   Алексей В.,   Tekashnik,   Новопашин Владимир,   Zulchumor Kurbonova,   Vladimir Falejev,   Michail Ostryj,   Vladimir Fedotov,   Елена,   Александр Заскотченко,   Максим Лапшинов,   Сергей,   Reinis Stacevič,   Сергей Соколов,   Иван Воронин,   Auksė Cycarienė,   Dmitrij Starikovič,   Станислав,   Алексей|BrisK|Кривицкий,   Sergej Šugajev,   Andrej Petrunev,   Andrej Gladkov,   Kiril Krutiajev,   Povilas Abramovicius,   Kapitanov Dmitrij,   Павел,   Andrew,   Chip,   Dmitry Sinitsin,   Слава,   крем сода,   grom518,   Anatoli,   Yefim,   Tom .

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: С циклами пришлось встретиться раньше до этого урока. Но понравилась схема (КАРТИНКА) ветвления алгоритма мужского и женского циклов. Хотелось бы увидеть такие картинки к остальным циклам.



Научился: Замерять время работы циклов
Трудности: Придумывать, что было самым сложным
Циклы в комбинаторике чаще всего удлинняют время работы программы