Почему ответ 2,а не 4? В программе описан одномерный целочисленный массив A с индексами...

0 голосов
46 просмотров


Почему ответ 2,а не 4?

В программе описан одномерный целочисленный массив A с индексами от 1 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.

for j:=1 to 10 do
A[j]:=2*j;
for j:=1 to 10 do begin
k:=2*A[j]+3;
A[10-j+1]:=k;
end; Чему будут равны элементы этого массива?
1) 7 11 15 19 23 27 31 35 39 43
2) 17 25 33 41 49 23 19 15 11 7
3) 5 9 13 17 21 25 29 33 37 41
4) 43 39 35 31 27 23 19 15 11 7

Информатика (12 баллов) | 46 просмотров
Дан 1 ответ
0 голосов

А почему ответ должен быть 4? 
я запустила на Паскале, вот полный код:
var
  a: array[1..10] of integer;
  j,k: integer;
begin
  for j:=1 to 10 do
    A[j]:=2*j;
  for j:=1 to 10 do begin
    k:=2*A[j]+3;
    A[10-j+1]:=k
  end;
  for j:=1 to 10 do writeln(a[j])
end.

а вот ответ: 
■ Free Pascal IDE Version 1.0.12 ■ Compiler Version 2.6.2■ GDB Version GDB 7.2■
17 25 33 41 49 23 19 15 11 7 

(598 баллов)
0

ну в таком случае, напишите ваши размышления и мы вместе разберемся, где у вас затык

0

Первый цикл это значения: А[1]:=2 , A[2]:=4 и.т.д. В итоге: 2 4 6 8 10 12 14 16 18 20

0

да, но есть еще второй цикл

0

Секунду,не дописала,извините)

0

Затем второй: при i=1 выходит k:=2*2+3=7 A[10]=7 и так с каждым. До i=5 ответ получается т.к. при i=5 k:=23 A[6]=23.Также считаю с i=7 k=27 A[5]=27 , а в ответе уже 49.

0

* с i=6 ,а не 7

0

В итоге по расчетам таким у меня выходит ответ 4. Что с середины я делаю не так?

0

k=7, a[1]=2
k=11, a[2]=4
k=15, a[3]=6, k=19
a[4]=8
k=23
a[5]=10
k=49
a[6]=23
k=41
a[7]=19
k=33
a[8]=15
k=25
a[9]=11
k=17
a[10]=7

0

Нашла свою ошибку. Спасибо огромное!!

0

я не поняла почему с 6 идет так