Дан целочисленный вектор A(2n) - Pascal ABC
Формулировка задачи:
Дан целочисленный вектор A(2n). Если в векторе сумма S1=a1+ a2+...+an равна сумме
S2=an+1+ an+2+...+ a2n, то поменять местами первый и последний элементы вектора. На печать
выдавать исходный вектор, суммы S1, S2, преобразованный вектор.
Очень нужна помощь. Буду очень благодарна.
Решение задачи: «Дан целочисленный вектор A(2n)»
textual
Листинг программы
- var a:array[1..20] of integer;
- n,i,s1,s2,x:integer;
- begin
- write('Введите половину размера массива от 1 до 10 n=');
- readln(n);
- writeln('Введите ',2*n,' целых чисел');
- for i:=1 to 2*n do
- begin
- write('a[',i,']=');
- readln(a[i]);
- end;
- writeln('Исходный массив');
- s1:=0;
- s2:=0;
- for i:=1 to 2*n do
- begin
- write(a[i],' ');
- if i<=n then s1:=s1+a[i]
- else s2:=s2+a[i];
- end;
- writeln;
- writeln('s1=',s1,' s2=',s2);
- if s1=s2 then
- begin
- x:=a[1];
- a[1]:=a[2*n];
- a[2*n]:=x;
- writeln('Преобразованный массив');
- for i:=1 to 2*n do
- write(a[i],' ');
- end
- else write('s1<>s2');
- end.
Объяснение кода листинга программы
- Создается переменная
a
типаarray[1..20] of integer
. Это означает, чтоa
представляет собой массив из 20 целых чисел. - Затем объявляются следующие переменные:
n
,i
,s1
,s2
,x
- все они целого типа. - Выводится сообщение с просьбой ввести половину размера массива от 1 до 10, используя переменную
n
. - Выводится сообщение с просьбой ввести
2*n
целых чисел. - В цикле
for
сi
от 1 до2*n
происходит следующее:- Выводится сообщение с просьбой ввести элемент массива
a[i]
(предполагается, что пользователь вводит целое число). - Если
i
меньше или равноn
, то значениеa[i]
добавляется к переменнойs1
. - Если
i
большеn
, то значениеa[i]
добавляется к переменнойs2
.
- Выводится сообщение с просьбой ввести элемент массива
- Выводится сообщение с просьбой ввести еще один элемент массива
a[i]
(предполагается, что пользователь вводит целое число). - Выводится сообщение с просьбой ввести
2*n
целых чисел. - Выводится сообщение с просьбой ввести элемент массива
a[i]
(предполагается, что пользователь вводит целое число). - Если
s1
равноs2
, то присваивается значениеa[1]
переменнойx
. - Переменные
a[1]
иa[2*n]
меняются местами, то естьa[1]
становитсяa[2*n]
и наоборот. - Выводится сообщение с просьбой ввести элемент массива
a[i]
(предполагается, что пользователь вводит целое число). - Если
s1
равноs2
, то выводится сообщениеПреобразованный массив
. - Если
s1
не равноs2
, то выводится сообщениеs1<>s2
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д