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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.11.2011, 08:09   #1
fredwriter
Форумчанин
 
Регистрация: 06.10.2009
Сообщений: 121
По умолчанию Глюки с циклами

Здравствуйте, возникла проблема с переменной цикла оператора For.
Пишу, например, в Concole Application:
Код:
for i := 1 to n do
  if Mass[i] = ...
....
,
навожу курсор на i на первом шаге, выдаёт, почему-то, i = n и элемент массива последний, и дальше работает по Downto.
Если написать:
Код:
for i := 1 to n do
  write(i);
readln;
,
то выдаёт всё как надо. Почему?
Ищущий да обрящет
fredwriter вне форума Ответить с цитированием
Старый 20.11.2011, 08:24   #2
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

хм... а покажите код программы целиком, может так будет понятнее
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 20.11.2011, 08:38   #3
fredwriter
Форумчанин
 
Регистрация: 06.10.2009
Сообщений: 121
По умолчанию

Например, вот такой бессмысленный код:
Код:
var
  Mass: Array[1..10] of integer;
  i: integer;
begin
  for i := 1 to 10 do
    Mass[i] := i;
  for i := 1 to 10 do
    if Mass[i] = 11 then
      exit;
end.
При инициализации массива, то есть в первом цикле, если на первом шаге навести курсор на на i, то выдаст i = 1, и дальше будет выдавать как надо. Во втором цикле, если навести курсор на первом шаге на i, то выдаст i = 10 и дальше будет выдавать почему-то по Downto.
Ищущий да обрящет
fredwriter вне форума Ответить с цитированием
Старый 20.11.2011, 09:15   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

и правильно выдает, это оптимизация... причем старая как мир
p51x вне форума Ответить с цитированием
Старый 20.11.2011, 09:52   #5
fredwriter
Форумчанин
 
Регистрация: 06.10.2009
Сообщений: 121
По умолчанию

Ну оптимизация, выражающаяся, например, в пропуске строк, содержащих переменные дальше не используемые - это я понимаю, а переделывать to в downto - это что за оптимизационный ход?
Ищущий да обрящет
fredwriter вне форума Ответить с цитированием
Старый 20.11.2011, 15:24   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

можно схалявить на инициализации
удобнее орагнизовать переход
удобнее орагнизовать паралельность
для конвееров точнее предсказания по переходам
в некоторых процах есть команда - вычесть счетчик и если он не 0 перейти на - это одна машинная косанда
....
p51x вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ задача с циклами Ефим Томилов Помощь студентам 0 29.10.2010 21:32
Проблема с циклами Guap Помощь студентам 12 14.10.2010 21:39
задача с циклами werturo Помощь студентам 4 14.10.2010 08:45
задачи с циклами bendr Паскаль, Turbo Pascal, PascalABC.NET 6 16.04.2009 20:12