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

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Результаты опроса: Какие циклы Вам нужны?
С счетчиком (for) 14 77.78%
С постусловием 10 55.56%
С предусловием 15 83.33%
Перебор элементов (for-each) 13 72.22%
Опрос с выбором нескольких вариантов ответа. Голосовавшие: 18. Вы ещё не голосовали в этом опросе

Ответ
 
Опции темы Поиск в этой теме
Старый 25.04.2015, 18:33   #21
MihalNik
МегаМодератор
СуперМодератор
 
Регистрация: 27.11.2012
Сообщений: 5,657
По умолчанию

Цитата:
Сообщение от uberchel Посмотреть сообщение
MihalNik, мы про for, f while и так цикл с пред и постусловием.
for - с предусловием/со счетчиком/переборный, в зависимости от языка.
Потом, вопрос был ко мне, и если что не так, задающий его уточнит сам
Благими намерениями устлана дорога на programmersforum.ru
MihalNik вне форума Ответить с цитированием
Старый 25.04.2015, 18:35   #22
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Цитата:
Сообщение от uberchel Посмотреть сообщение
Насколько вижу там только про ассоциативный написано...
Вообще для каждой задачи удобнее тот или иной цикл, поэтому все нужны.

С предусловием вот:
Код:
for (i = 0; i < 10; ++i)
{
   if (i == num)  {
    // continue or break or ohter code;
 }
}
Это же цикл for, со счётчиком, не?
Вадим Мошев вне форума Ответить с цитированием
Старый 25.04.2015, 18:48   #23
Vapaamies
Ваш К. О.
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,770
По умолчанию

Цитата:
Сообщение от Вадим Мошев Посмотреть сообщение
Хм, а если стоит задача перебрать элементы ассоциативного массива, как вы поступите?
Технически это зависит от реализации ассоциативного массива, на практике обычно решается итераторами. В Канторе я ввел абстракцию итератора: реализация определяется классом ассоциативного массива, после чего его можно перебирать через итератор.
Vapaamies вне форума Ответить с цитированием
Старый 25.04.2015, 18:50   #24
uberchel
Участник клуба
 
Аватар для uberchel
 
Регистрация: 19.01.2009
Сообщений: 1,453
По умолчанию

Цитата:
Это же цикл for, со счётчиком, не?
Да, он также идет как в предусловием, а можно добавить условие в самом теле цикла, к переменной и i+=условие
uberchel вне форума Ответить с цитированием
Старый 25.04.2015, 19:23   #25
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Почему же сразу кривлянья - в Хаскеле, например, циклов нет. Одна только рекурсия - и ничего, живет припеваючи.
Рекурсия это тот же цикл (хвостовая - это постусловие) только под другим соусом. Пролог тоже самое - неявный перебор в базе знаний тот же цикл, только автоматизированный. И потом парадигмы явно не императивные. Но даже в функциональном Scheme честно признаются что в целях ускорения все эти хвостовые рекурсии автоматически во время выполнения преобразуются в циклы.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 25.04.2015, 19:57   #26
MihalNik
МегаМодератор
СуперМодератор
 
Регистрация: 27.11.2012
Сообщений: 5,657
По умолчанию

Цитата:
Сообщение от Utkin Посмотреть сообщение
Рекурсия это тот же цикл (хвостовая - это постусловие) только под другим соусом. Пролог тоже самое - неявный перебор в базе знаний тот же цикл, только автоматизированный. И потом парадигмы явно не императивные. Но даже в функциональном Scheme честно признаются что в целях ускорения все эти хвостовые рекурсии автоматически во время выполнения преобразуются в циклы.
Не скажите, в Прологе исполнение строго последовательное с точки зрения входных данных (но каждое действие может бросать исключение-ложь). Потом, математика большей частью, в т.ч. школьная, построена без циклов и на такой язык переводится проще всего.
Хаскел оптимизирует вычисление функции, а Пролог определет целое семейство функций, связывающих параметры. Так что рекурсия там явно более обобщенное решение, чем императивный цикл и не совпадает с императивной рекурсией.
Благими намерениями устлана дорога на programmersforum.ru

Последний раз редактировалось MihalNik; 25.04.2015 в 20:02.
MihalNik вне форума Ответить с цитированием
Старый 25.04.2015, 20:09   #27
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Рекурсия может имитироваться циклом. Этого достаточно чтобы считать их эквивалентными.
Цитата:
а Пролог определет целое семейство функций, связывающих параметры.
Пролог все равно обходит правила в цикле. Вопрос не в извращениях, а в обычной деятельности. 50 оттенков изврата мне не интересно, а вот разновидности цикла в статистике от практиков это любопытно.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 25.04.2015, 20:25   #28
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

На высоком уровне - 4.
На низком 2 и 3 (чтоб реализовать 4).
waleri вне форума Ответить с цитированием
Старый 25.04.2015, 20:46   #29
Vapaamies
Ваш К. О.
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,770
По умолчанию

Я нашел решение для голосования, а оно не работает: если попытаться проголосовать, не выбрав ни одного пункта (null), пишет, что нельзя, not null требует, то есть. Плохая голосовалка.
Vapaamies вне форума Ответить с цитированием
Старый 26.04.2015, 13:14   #30
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,365
По умолчанию

Я считаю, что циклы разные нужны, циклы разные важны))) По делу: в последние несколько лет пользуюсь исключительно for и foreach. Не помню, когда я в последний раз использовала while и do while
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Какие программы нужны для создания онлайн игры? :=) Помощь студентам 0 26.12.2011 20:35
В поиске... а какие книги нравятся вам? скидываем ссылки kikikiki Свободное общение 0 05.04.2011 08:32
Какие нужны сетевые драйверы ALAkey Компьютерное железо 8 20.11.2009 18:51