1/14
РАЗВИВАЕМ НАВЫК

Быстро о программировании

Ответив на вопрос "Что такое программирование?" можно понять, что в нем нет ничего сложного и ОНО доступно каждому.
Готовы узнать правду?
Страшную и немного шокирующую правду о программировании.
сарказм
Ага, вот так сразу и рассказал.
:-)
Займемся покупками
Давайте напряжем извилины и вспомним как покупаем продукты в магазине

Например, покупаем молоко и яйца

Список действий
1
Подошли к полке с молоком
2
Положили в корзину
3
Подошли к полке с яйцами
4
Положили в корзину
5
Подошли к кассе
6
Оплатили покупку
Чуть усложним
Список действий
Подошли к полке с молоком
Берем десяток
Посмотрели дату изготовления
ЕСЛИ сегодняшнее, ТО складываем в корзину, ИНАЧЕ берем следующее молоко
Смотрим яйцо
ЕСЛИ оно целое, ТО берем следующее яйцо ИНАЧЕ берем следующий десяток
Идем к полке с яйцами
Продолжаем предыдущий пункт
пока не проверим вся яйца в десятке
Зарисуем это
Ромб - это пример выбора или по научному "оператор условного ветвления"
Оператор условного ветвления
$milk = $shop.getMilk();
if ($milk.date == Today) {
    $basket.add ($milk);
} else {
    $milk = $shop.getMilk();
    if ($milk.date == Today) {
        $basket.add ($milk);
    }
}
А здесь уже конструкция "ЦИКЛ".
Перебираем все яйца, пока все не пересмотрим.
Цикл
Начинаем брать коробки с яйцами. Взяли одну, начинаем брать по одному яйцу. Если яйцо битое, то берем следующую коробку (помечает флаг - есть битые яйца, выходим из первого цикла, где перебирали яйца, берем следующую коробку. Если все яйца в коробке просмотрели то заканчиваем цикл, если есть все яйца не битые, то кладем коробку в корзину и выходим из цикла коробок, иначе берем следующую коробку)
foreach ($shop.getBoxEggs() as $box) {
    $isAllEggNotBroken = true;
    for ($position = 0; $position < 10; $position++) {
        $egg = $box.getEgg ($position);
        if ($egg.isBroken() == true) {
            isAllEggNotBroken = false;
            break;
        }
    }

    if ($isAllEggNotBroken == true) {
        $basket.add($box);
        break;
    }
}
Соединим и получим ...
Все вместе это
Пошаговая инструкция
Алгоритм это
пошаговая инструкция
ответ
Программирование это умение составлять алгоритмы
Вот так просто. Каждый из нас постоянно занимается программированием, только не осознает этого.
вроде все понятно
Вопросы?
Составим алгоритм для робота
Задачка
Робот знает только две команды:
1) ВПЕРЕД
2) ПОВОРОТ НАЛЕВО
вроде все понятно
А теперь вопросы :)
Михаил Акимов
michael@akimov.online
Made on
Tilda