Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 23.01.2020
Сообщений: 6

Паскаль не присваивает внутри цикла переменным глобальное значение

23.01.2020, 18:04. Показов 865. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте помогите пожалуйста:
Есть два цыкла один цыкл задаёт значения массива, другой должен их выводить. но почему то не работает, хотя все переменные по идеи записанны как глобальные


Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
program test1;
 
var
   a: array [1..1000] of integer;
   M,N,i,k: integer;
begin
     readln(N);
     writeln ('====Тело программы====');
     M:=N;
     i:=1;
     k:=0; {Свободная переменная может применятся несколько раз}
while k<>N do begin
      a[i]:=i;
      k:=k+1;
      if k = N then break;
      a[i+1]:=i+1;
      k:=k+1;
      if k = N then break;
      a[M]:=M;
      k:=k+1;
      if k = N then break;
      a[M-1]:=M-1;
      k:=k+1;
      if k = N then break;
      i:=i+2;
      M:=M-2;
end;
 
Writeln ( a [1],' ');
For k :=1 to N do
      Writeln ( a [k],' ');
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.01.2020, 18:04
Ответы с готовыми решениями:

Ошибка: Нельзя изменять значение переменной цикла внутри этого цикла
при запуске в цикле while в строке x:=x div 10; выдает ошибку &quot;Нельзя изменять значение переменной цикла внутри этого цикла&quot;,...

Ошибка: Нельзя изменять значение переменной цикла внутри этого цикла
при запуске в строке If i=k Then i:=i+1; выдает ошибку &quot;Нельзя изменять значение переменной цикла внутри этого цикла&quot;. Объясните...

Что означает "Нельзя изменять значение переменной цикла внутри этого цикла"?
Собственно, сама программа. {Дана целочисленная матрица Aij i=1..n,j=1..m (n,m&lt;=100). Найти наибольший и наименьший по абсолютной...

3
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
23.01.2020, 18:38
А в чем смысл программы?
1
0 / 0 / 0
Регистрация: 23.01.2020
Сообщений: 6
23.01.2020, 19:11  [ТС]
Условия:
Дан массив А равный N Вывести его значения в следующем порядке:
A1, A2, AN, AN-1, A3, A4, AN-2, An-3 ...

В общем такое дела я чуть-чуть переделал и всё заработало (спасибо большое что откликнулись):

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
program test1;
 
var
   a: array [0..1000] of integer;
   M,N,i,k: integer;
begin
     readln(N);
     M:=N;
     i:=1;
     k:=0;
     writeln ('===============');
while k<>N do begin
      a[k]:=i;
      k:=k+1;
      if k = N then break;
      a[k]:=i+1;
      k:=k+1;
      if k = N then break;
      a[k]:=m;
      k:=k+1;
      if k = N then break;
      a[k]:=m-1;
      k:=k+1;
      if k = N then break;
      i:=i+2;
      m:=m-2;
 
end;
for i := 0 to N-1 do
    write(a[i],' '); {вывод элементов массивапоправка не выводит зараза}
end.
]
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
23.01.2020, 19:25
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var a: array [1..100] of integer;
    n,i,k: integer;
begin
repeat
write('Введите размер массива число кратное 4 от 4 до 100 n=');
readln(n);
until n in [4..100];
randomize;
writeln('Исходный массив');
for i:=1 to n do
 begin
  a[i]:=10+random(90);
  write(a[i]:4);
 end;
writeln;
writeln('Перестановка по условию');
i:=1;
while i<=n div 2 do
 begin
  write(a[i]:4,a[i+1]:4,a[n-i+1]:4,a[n-i]:4);
  i:=i+2;
 end;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.01.2020, 19:25
Помогаю со студенческими работами здесь

Ошибка: "Нельзя изменять значение переменной цикла внутри этого цикла"
&quot;Нельзя изменять значение переменной цикла внутри этого цикла&quot;. Выдает вот такую ошибку в 37 строчке. Помогите исправить Program...

Ошибка "нельзя изменять значение переменной цикла внутри цикла"
пишет, что &quot;нельзя изменять значение переменной цикла внутри этого цикла&quot; var a,c:array of integer; i,j:integer; min:integer; begin ...

Паскаль выдает Ошибку "Нельзя изменять значение переменной цикла внутри этого цикла"
Здравствуйте, мне задали задание в колледже написать программу 3 разными способами While do,Repeat Until, и for. Если с While do, Repeat...

Нельзя изменять значение переменной цикла внутри этого цикла
function factorial(x:integer):integer; begin var i,var1:integer; for i:=1 to x do begin var1:=1; var1:=var1*i; i:=i+1; end; ...

"Нельзя изменять значение переменной цикла внутри этого цикла"
Задача программы - проверить знание слов-антонимов. A-массив в вопросами B-массив с ответами C-массив для счета k-счетчик...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru