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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2016, 10:41   #1
Тырин Артем
Пользователь
 
Регистрация: 10.11.2015
Сообщений: 17
По умолчанию Паскаль выдает Ошибку "Нельзя изменять значение переменной цикла внутри этого цикла"

Здравствуйте, мне задали задание в колледже написать программу 3 разными способами While do,Repeat Until, и for. Если с While do, Repeat Until понятно, то с циклом for нет. Почему то когда я написал программу с циклом for то выдает ошибку "Нельзя изменять значение переменной цикла внутри этого цикла", я себе всю голову сломал, помогите мне пожалуйста.
Код:
var s,e,a:real; 
b,c,i:integer; 
Begin 
readln(e); 
b:=1; c:=1; s:=0; i:=1; a:=1; 
for i:=1 to 1 do 
begin 
if (Abs(A)<E) then break; 
S := S + A; 
B := B * (-2); 
C := C * i; 
A := B / c; 
i := i - 1; 
end; 
WriteLn(s); 
end.
Screenshot_9.jpg

Последний раз редактировалось Аватар; 17.01.2016 в 11:02.
Тырин Артем вне форума Ответить с цитированием
Старый 17.01.2016, 11:04   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Не меняй, в for изменение переменной цикла реализует компилятор без участия программиста
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 17.01.2016, 12:00   #3
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
for i:=1 to 1
интересный ход

p.s. что за IDE?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 17.01.2016, 14:42   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

а зачем ты хочешь менять значение параметра внутри цикла с параметром?!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 17.01.2016, 15:14   #5
Тырин Артем
Пользователь
 
Регистрация: 10.11.2015
Сообщений: 17
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
а зачем ты хочешь менять значение параметра внутри цикла с параметром?!
чтобы цикл был бесконечным
Тырин Артем вне форума Ответить с цитированием
Старый 17.01.2016, 15:22   #6
Вадим Мошев

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

Цитата:
Сообщение от Тырин Артем Посмотреть сообщение
чтобы цикл был бесконечным
Нельзя так делать. Так вы ничего не получите.
Если хотите бесконечный цикл, пишите так:

Код:
while TRUE do begin
	// Тут пишите ваш код...
end;
Вадим Мошев вне форума Ответить с цитированием
Старый 17.01.2016, 15:23   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
чтобы цикл был бесконечным
цикл с параметром бесконечным не бывает.
Как звучит оригинал задания?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 17.01.2016, 15:24   #8
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

в чем сложность While или repeat использовать? нельзя в паскале изменять переменную параметр цикла в это цикле - защита от дураков.
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Старый 17.01.2016, 15:30   #9
Тырин Артем
Пользователь
 
Регистрация: 10.11.2015
Сообщений: 17
По умолчанию

Цитата:
Сообщение от Вадим Мошев Посмотреть сообщение
Нельзя так делать. Так вы ничего не получите.
Если хотите бесконечный цикл, пишите так:

Код:
while TRUE do begin
	// Тут пишите ваш код...
end;
то, что в цикле while - do можно поставить вместо условия true и сделать его бесконечным - я знаю,Но нам - то нужен не while - do а For
Тырин Артем вне форума Ответить с цитированием
Старый 17.01.2016, 15:40   #10
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Но нам - то нужен не while - do а For
Кому это "нам"?
И, самое главное - НАХРЕНА?!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача по теме "Операторы цикла" нужно на Си и на Паскаль. Flamia Помощь студентам 4 08.11.2013 10:47
В каждом "шаге" цикла новая переменная. Troxid Общие вопросы C/C++ 1 16.10.2011 14:43
В каждом "шаге" цикла новая переменная. Troxid Общие вопросы C/C++ 2 16.10.2011 14:36
Задача "Операторы цикла" patisson74 Помощь студентам 1 18.11.2009 02:39