Воскресенье, 06.07.2025, 19:37
Информатика в школе
Приветствую Вас Гость | RSS
Главная Обработка нескольких массивов Регистрация Вход
Форма входа

Меню сайта

Мини-чат
300

Категории
Школа и сайт [4]
Software [18]
Hardware [14]

Календарь
Календари для ucoz

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Обработка нескольких массивов

  • Массивы А и В имеют одинаковую длину. Массив С необходимо заполнить суммами соответствующих элементов массивов А и В. n - длина массивов А и В (и С тоже).

Фрагмент программы:

for i :=1 to  do {проходим по всем элементам массивов}

C[ i ]:=A[ i ]+B[ i ]; {сумму i-ых элементов массивов A и B заносим в i-ый элемент C}

  • В конец массива А[n] приписать все элементы массива В[m].

Фрагмент программы:

for  i :=1 to  m  do {проходим в цикле по массиву B}

A[n+i]:=B[i]; {дописываем элементы в хвост A}

Inc(n,m); {увеличиваем значение n (длину массива A) на m (длину массива B)}

Замечание: Необходимо следить, чтобы n не превысило значение maxN. Например, так:

if n+m>maxN  then writeln('В массив А все элементы массива В не поместятся') else ... {а вот здесь выполняем добавление элементов}


  • Сформировать массив В из отрицательных элементов массива А. Массив А не изменять.

Фрагмент программы:

m:=0; {m - количество элементов в массиве В - вначале массив B пустой}

for i := 1 to n do {проходим по всем элементам массива A}

if  A[i]<0  then {если i-ый элемент массива A отрицательный}

begin {то копируем его в массив B}

Inc(m); {в B добавляется еще один элемент - увеличиваем m на 1}

B[m]:=A[i]; {копируем i-ый элемент массива A в m-ый элемент массива B}

end;

  • Подсчитать, сколько элементов массива А совпадают с элементами массива В.

Алгоритм программы:

1. Ввести массив А[n].

2. Ввести массив В[m] .

3. Счетчик совпадений cnt обнулить.

4. Пройти по всем элементам массива A.

5. Сравнить i-ый элемент массива А со всеми элементами массива В.

6. Если А[i] совпадает хотя бы с одним элементом массива B, то счетчик повторений увеличить на 1.

7. Вывести количество совпадений.

Текст программы:

Const maxN = 20; 

Type IndexEl = 1 .. maxN; 

arrInt = array[IndexEl] of integer;

a,b:arrInt; {массивы A и B}

n:integer;{количество элементов массива A}

m:integer;{количество элементов массива B}

i,j:IndexEl; {переменные для сканирования массивов}

cnt: integer; {количество совпадений элементов A с элементами B}

k: integer; {количество совпадений элемента A[i] с элементами B}

Begin { ввод массива A}

repeat

write('Введите n:');

readln(n); { ввод количества элементов}

until (n>=1) and (n<=maxN); {выйдем из цикла лишь тогда, когда n будет принадлежать интервалу [1..maxN]}

for i:=1 to n do

begin

write('a[', i ,']');

readln(a[i]); { ввод элементов массива A поодиночке}

end;

{2 - ввод массива B}

repeat

write('Введите m: ');

readln(m); { ввод количества элементов}

until (m>=1) and (m<=maxN);

for i :=1 to m do

begin

write('b[', i ,']');

readln(b[i]); { ввод элементов массива B поодиночке}

end;

cnt :=0; {счетчик повторений обнуляем}

for i :=1 to n do { проходим по всем элементам массива A}

begin

{сравниваем i-ый элемент массива А со всеми элементами массива В}

k:=0; {k - количество совпадений i-го элемента массива A с элементами массива В}

{считаем количество совпадений A[i] с элементами массива B}

for j :=1 to m do

if A[i]=B[j] then Inc(k); {если А[i] совпадает хотя бы с одним элементом массива B, счетчик повторений увеличить на 1}

if k>0 then Inc(cnt);

end;

writeln('Количество совпадений cnt = ',cnt); {выводим количество повторений}

End.


Демонстрация работы с массивами

<<Назад
                                                                                                                                                                                                                             
Часы

Праздники России

Праздники России



Uploader

Поиск

Полезные ссылки
  • Официальный блог
  • Сообщество uCoz
  • Программисту
  • Олимпиаднику
  • Как создать сайт с нуля
  • Сайт МОУ СОШ №81
  • 3DNews

  • Александр Михайлович Марченко © 2025 Конструктор сайтовuCoz