Япозволил себе немного изменить ваш код и сделать его немного более читаемым. так же, мне не совсем было понятно, зачем вы сделали главную функцию, которая лишь вызывает еще одну. поэтому я убрал промежуточную и сделал вызов по кнопке самой главной функции. далее, принцип работы: вводим цифры/буквы в одно поле и в другое. нажимаем кнопку "вычислить". функции забивают эти данные в массивы и далее сверяют их. должен признать, мне понравилась ваша реализация. как работает вывод: объединение - выводит все неповторяющиеся элементы двух массивов. пересечение - выводит элементы, которые встречались в каждом массиве. независимо от того, сколько раз. эта ваша заслуга. пробел - равноценный участник работы. это символ. поэтому если вы введете в два поля сколько угодно пробелов, а потом некие цифры, то в поле пересечение будет пробел, запятая и остальные числа. если введете лишь в одном поле пробел, то он будет лишь в поле объединение. как я ни старался, достичь двух запятых после моей небольшой корректировки у меня не вышло. з.ы.: возможно при сохранении файл как html и последующем открывании у вас отобразятся "кракозябры". прошу меня простить за это, т.к. редактировал его в vs. просто измените кодировку на windows-1251 в браузере.
uvarovig
08.01.2023
Const n=2; var a: array[1..n,1..n]of integer; i,j,s,max,imax: integer; begin for i: =1 to n do begin s: =0; for j: =1 to n do begin readln(a[i,j]); s: =s+a[i,j]; end; if s> max then begin max: =s; imax: =i; end; end; writeln('i: ',imax,' s= ',max); end.