14 / 1 / 2
Регистрация: 18.11.2016
Сообщений: 112
|
|||||||||||
1 | |||||||||||
Разница цикла while и for (практика применения)05.05.2017, 11:24. Показов 3663. Ответов 26
Метки нет (Все метки)
Добрый день, ребята! Я только начал изучать php так что за глупый вопрос если что не пинайте, все мы когда-то и в чем-то были нубами. Хочу разобраться в работе и практическом применении циклов while и for. В принципе все понятно. Непонятно в чем разница если они могут решать одинаковые задачи. например таблица умножения. Пример конечно самый простой, но пока так.
0
|
05.05.2017, 11:24 | |
Ответы с готовыми решениями:
26
Знания 1С - Практика применения память FM25V05 практика применения... Разница применения array.length в одномерном и многомерном массивах Ищу книгу "Практика применения Perl, PHP, Apache, MySQL для активных Web-сайтов" |
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
05.05.2017, 11:42 | 2 |
Как правило for применяется когда заранее известно число итервций, while когда не известно
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
||||||
05.05.2017, 13:27 | 3 | |||||
for можно и с неизвестным количеством интераций использовать, например, подсчётом и сравнением с общим количеством строк массива.
0
|
35 / 35 / 11
Регистрация: 17.03.2017
Сообщений: 250
|
|||||||||||
05.05.2017, 16:37 | 4 | ||||||||||
Наверное, нет никакой разницы, все можно приспособить к этим условиям, просто удобнее иногда одно, а иногда другое
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
|
05.05.2017, 16:41 | 5 |
с версии php 5.4 массив можно писать сокращённо в квадратных скобках $array = [1, 2, 3];
0
|
35 / 35 / 11
Регистрация: 17.03.2017
Сообщений: 250
|
|||||||||||
05.05.2017, 16:56 | 6 | ||||||||||
еще можете так
или так
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
|
05.05.2017, 17:00 | 7 |
andykarm,
не хорошо списывать я написал с ошибкой условие <= а вы его засунули в свои примеры если отсчёт интераций начинать с нуля, то условие <= произведёт на одну интерацию в цикле больше, чем количество подсчитываемых строк в нём нужно либо отсчёт вести от 1 либо сравнение прописывать только <
0
|
35 / 35 / 11
Регистрация: 17.03.2017
Сообщений: 250
|
|
05.05.2017, 17:04 | 8 |
не понял! Вы написали условие с ошибкой, я вам написал!
Просто ваше условие за пример взял и подправил для себя, а не так как пример с намеком на то, чтобы подправить ваш код <= я не понял лично, но суть не в этом. У него вопрос стоит - какая разница. Я ответил. Можно и без = сделать
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
||||||
05.05.2017, 17:07 | 9 | |||||
Это не мой код
не списывайте никогда у других
0
|
35 / 35 / 11
Регистрация: 17.03.2017
Сообщений: 250
|
|
05.05.2017, 17:09 | 10 |
ну да, так и рассчитывал - чтобы показать 0
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
|
05.05.2017, 17:11 | 11 |
0
|
35 / 35 / 11
Регистрация: 17.03.2017
Сообщений: 250
|
||||||
05.05.2017, 17:15 | 12 | |||||
уф))
Если убрать =, выводиться просто массив Естественно вы правы, если нужен только подсчет массива, то тогда равно не нужно
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
|
05.05.2017, 17:18 | 13 |
Ошибка - цикл выполнится 4 раза вместо 3-х Отсчёт интераций с 0 даёт 4 интерации при условии <= 3 (3 - количество строк массива)
0
|
35 / 35 / 11
Регистрация: 17.03.2017
Сообщений: 250
|
|
05.05.2017, 17:22 | 14 |
правильно показывается что $i = 0 ))
можно просто $i =1; cделать тогда
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
|
05.05.2017, 17:26 | 15 |
0
|
35 / 35 / 11
Регистрация: 17.03.2017
Сообщений: 250
|
|
05.05.2017, 17:31 | 16 |
так тоже можно))
0
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
||||||
05.05.2017, 21:49 | 17 | |||||
Это классический пример заранее известного числа итераций. Примером заранее неизвестного:
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
|
06.05.2017, 00:04 | 18 |
При условии подсчёта общего количества строк массива нам заранее не известно их число, нам известно только, что нужно брать их общее число, так что классикой с заранее известным числом интераций это называть нельзя.
0
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
06.05.2017, 00:11 | 19 |
0
|
97 / 47 / 17
Регистрация: 25.04.2017
Сообщений: 471
|
|
06.05.2017, 00:19 | 20 |
то есть условие на подсчёт их общего число, но неизвестного
в случае с рандомом так же можно ответить, что число интераций нам известно и их будет случайное число
0
|
06.05.2017, 00:19 | |
06.05.2017, 00:19 | |
Помогаю со студенческими работами здесь
20
Где можно найти пример применения массивного цикла Как правильно вывести строку двухмерного массива без применения цикла ++i и i++ разница при выполнении цикла Разница между вариантами цикла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |