Учебные задачи PHP. Задача 3
Primary tabs
<?php $min = -21; // мин число заданного диапазона $max = 35; // макс число заданного диапазона $n = 7; // число итераций цикла $value = 0; $value_1 = 0; for ($i = 0; $i < 1; $i ++) // для вывода первой строчки без сравнения { $value = rand( $min , $max ); echo "$value <br>"; } for ($i = 1; $i < $n; $i ++) { $value = rand( $min , $max ); if ($value_1 == $value) // если два числа равны, то выйдет слово "равно" echo "$value_1 равно $value <br>"; else {{ if ($value_1 > $value) // условие для сравнения чисел echo "$value_1 больше $value <br>"; else echo "$value_1 меньше $value <br>"; } $value_1 = $value; } } ?>
- Log in to post comments
- 43249 reads
vedro-compota
Wed, 04/10/2019 - 19:14
Permalink
без лишнего
-- этого по условию задачи быть не должно
_____________
матфак вгу и остальная классика =)
Laven
Wed, 04/10/2019 - 19:31
Permalink
Другого способа я не нашел,
Другого способа я не нашел, чтобы в первой строчке не было сравнения.
vedro-compota
Wed, 04/10/2019 - 19:32
Permalink
первый ваш цикл вообще не
первый ваш цикл вообще не имеет никакого отношения к решению задачи
вы просто в нем выводите случайные значения.
_____________
матфак вгу и остальная классика =)
Laven
Wed, 04/10/2019 - 19:38
Permalink
Обратите внимание, циклы
Обратите внимание, циклы разные:
1-й:
2-й:
vedro-compota
Wed, 04/10/2019 - 19:36
Permalink
Обратите внимание, циклы
а, понял вас, если итерация всего одна - зачем тогда цикл? просто и выводите до основного цикла.
_____________
матфак вгу и остальная классика =)
vedro-compota
Wed, 04/10/2019 - 19:35
Permalink
{{
откуда двойные фигурные скобки? уберите их, используйте просто
_____________
матфак вгу и остальная классика =)
Laven
Wed, 04/10/2019 - 19:40
Permalink
Двойные скобки появились,
Двойные скобки появились, потому что нужно было это действие совершить в случае else:
vedro-compota
Wed, 04/10/2019 - 19:43
Permalink
никакой разницы
абсолютно ничем не отличается от:
-- почему не отличается мы уже говорили.
Также вы опять не следуете стандартам оформления - ветки if должны всегда окружаться фигурными скобками вне зависимости от числа операций в них.
_____________
матфак вгу и остальная классика =)
Laven
Wed, 04/10/2019 - 20:48
Permalink
Нужно ставить скобки только
Нужно ставить скобки только так?
Laven
Wed, 04/10/2019 - 20:09
Permalink
Откорректировал решение задачи
Laven
Thu, 04/11/2019 - 12:17
Permalink
Решение задачи в виде функции
Здравствуйте. Насколько целесообразно данную задачу выполнять в виде функции?
melisa
Fri, 04/12/2019 - 13:39
Permalink
замечения
эта строка лишняя. В php типы приводятся динамически. Прочитайте про это здесь.
Весь закомментированный код удаляёте, чтобы он не отвлекал от нужного. Он не запускается в программе = не нужен вообще.
Такого в условии задачи нет. Все значения должны быть случайными.
Вызывается дважды. Один раз лишний.
Перепешите задачу с учётом исправлений.
Laven
Fri, 04/12/2019 - 13:57
Permalink
Ваш код не выводит 2 число.
Не пойму, какое число не выводит? У меня выглядит так:
melisa
Fri, 04/12/2019 - 13:59
Permalink
что тут непонятного?
что тут непонятного?
-2 - первое число
а дальше? откуда 0?
но проблема оказалась интереснее, читайте пост выше.
Laven
Fri, 04/12/2019 - 14:06
Permalink
соглашусь, не увидел.
соглашусь, не увидел.
Laven
Fri, 04/12/2019 - 23:03
Permalink
Код задачи с оператором elseif
Переписал код задачи с оператором elseif. Первый раз использовал этот оператор. Что-то не учел и интерпретатор выдает ошибку:
Как я понял, такая ошибка выходит, в том числе, если забыл поставить ";", но все ";" проставлены.
В чем ошибка?
melisa
Sat, 04/13/2019 - 11:59
Permalink
для else условия в скобках не
для else условия в скобках не указывают. конструкция else сама по себе означает, что никакие из вышеуказанных условий не выполнены.
Laven
Sat, 04/13/2019 - 12:02
Permalink
Исправил код задачи
melisa
Sat, 04/13/2019 - 12:13
Permalink
} elseif ($value == $value_1)
здесь достаточно else без всяких условий. лучше использовать более простой вариант, если он достаточен для получения результата.
здесь лишние отступы
что делает эта строка? и для чего?
Laven
Sat, 04/13/2019 - 12:19
Permalink
$value_1 = NULL; В какой-то
В какой-то момент не шел код. Выводил ошибку, что не определена переменная. Поэтому, этой переменной я присвоил значение NULL.
Остальные замечания буду устранять.
melisa
Sat, 04/13/2019 - 12:24
Permalink
и всё-таки на это замечание
и всё-таки на это замечание придётся тоже обратить внимание, т.к. оно не просто так.
в данный момент данная строка лишняя, потому что значение $value_1 требуется только во второй итерации цикла, а присвоение производится в первой итерации. значит - объявлять переменную перед циклом не имеет смысла.
Laven
Sat, 04/13/2019 - 12:49
Permalink
Исправил код задачи
melisa
Sat, 04/13/2019 - 13:01
Permalink
Ваша функция оказывает
Ваша функция оказывает побочное действие в виде печати. Поэтому
эта строка лишняя
Laven
Sun, 04/14/2019 - 22:13
Permalink
Исправил код задачи
Вопросы:
1. Лишние отступы у меня в коде отсутствуют?
2. Наименование сущностей я сделал корректными?
melisa
Tue, 04/16/2019 - 15:13
Permalink
Лишние отступы у меня в коде
нет.
в 15 и 16 строках есть лишние
Да, это уже нормально по форме. А по сути, Вы со временем поёмёте, как удобнее именовать сущности. В целом правило такое: имя переменной отвечает на вопрос "Что лежит внутри", имя функции - на вопрос "Что делает эта функция".
Laven
Tue, 04/16/2019 - 17:14
Permalink
Исправил отступы
melisa
Tue, 04/16/2019 - 17:35
Permalink
принято
принято