Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LabRab_3_4_ukr_KONETs_var7-2.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
1 Мб
Скачать
☆

5. Приклад

Дано одномірний масив. Всі його елементи, не рівні нулеві, переписати (зберігаючи їхній порядок) у початок масиву, а нульові елементи - у кінець масиву. Новий масив не створювати.

MENU: MOV_X_v_A

vvodKL

vvodSch Perest

Program p1;

uses crt;

const nn=100;

x:array[1..15] of byte =

{х – типізована константа }

0,0,1,10,2,20,0,0,3,0,30,4,0,0,40);

var i,j,n:integer;

a:array[1..nn] of byte;

b:boolean;

{-----------------------------------}

Основна програма:

function menu:char;

var ch:char;

begin

clrscr;

writeln ('1 Контрольний приклад ');

writeln ('2 Введення елементів масиву з клавіатури ');

writeln ('3 Елементи масиву -> випадкові числа');

writeln ('0 Вихід');

write('Ваш вибір --> '); readln(ch); menu:=ch;

end;

{-----------------------------------}

procedure MOV_X_v_A; { Перенос елементів масиву X у масив A }

begin for i:=1 to n do a[i]:=x[i]; end;

{-----------------------------------}

procedure vvodKL; { Уведення з клавіатури }

begin write('n='); readln(n);

for i:=1 to n do begin write('a[',i,']='); readln(a[i]); end;

end;

{-----------------------------------}

{-----------------------------------}

procedure vvodSch; { Уведення випадкових чисел }

begin

write('n='); readln(n);

randomize; { с таймера числа - початку генерації випадкових чисел }

for i:=1 to n do a[i]:=random(6);

end;

{-----------------------------------}

procedure Perest; {Перестановка нулів у кінець масиву і вивід результату}

begin

write('Исх. масив -> ');

for i:=1 to n do write(a[i],' '); writeln;

j:=0;

for i:=1 to n do

if a[i]<>0 then

begin

j:=j+1;

if i<>j then begin a[j]:=a[i]; a[i]:=0 end;

end;

write('Рез. масив -> ');

for i:=1 to n do write(a[i],' '); writeln;

readkey;

end;

Begin

clrscr;

b:=false;

repeat

case menu of

'1': begin n:=15; MOV_X_v_A; Perest; end;

'2': begin vvodKL; Perest; end;

'3': begin vvodSch; Perest; end;

'0': b:=true;

end;

until b;

End. Протокол роботи програми

1 Контрольний приклад

2 Введення елементів масиву з клавіатури

3 Елементи масиву -> випадкові числа

0 Вихід

Ваш вибір --> 1

Исх. масив -> 0 0 1 10 2 20 0 0 3 0 30 4 0 0 40

Рез. масив -> 1 10 2 20 3 30 4 40 0 0 0 0 0 0 0

Ваш вибір --> 3

n=15

Исх. масив -> 0 3 2 4 4 3 2 0 0 1 2 2 0 3 5

Рез. масив -> 3 2 4 4 3 2 1 2 2 3 5 0 0 0 0

Ваш вибір --> 2

n=7

a[1]=4

a[2]=0

a[3]=5

a[4]=0

a[5]=6

a[6]=0

a[7]=7

Исх. масив -> 4 0 5 0 6 0 7

Рез. масив -> 4 5 6 7 0 0 0

6. Варіанти індивідуальних завдань до лабораторної роботи

Завдання: Масив цілих чисел складається з N елементів. Обробити його відповідно до умови індивідуального варіанту.

№№

Умова

Знайти суму елементів, що мають непарні індекси

Знайти суму елементів, що мають непарні індекси

Знайти суму елементів, що мають непарні індекси

Підрахувати кількість елементів масиву, значення яких більше заданого числа а і кратні 5

Знайти суму позитивних елементів, значення яких менше 10

Вивести індекси тих елементів, значення елементів яких кратні 3 і 5

Подвоєну суму позитивних елементів

Вивести індекси тих елементів, значення яких більше значення попереднього елемента (починаючи з другим).

Знайти суму негативних елементів

Знайти кількість тих елементів, значення яких позитивні і не перевершують заданого числа а

Замінити максимальний по модулю негативний елемент нулем

Замінити перші до елементів на протилежні по знаку

Замінити мінімальний по модулю позитивний елемент нулем

Замінити елементи з kl-го по k2-й на зворотні

Замінити перший негативний елемент нулем

Помножити всі елементи, кратні 3, на третій елемент масиву

Замінити максимальний елемент на протилежний по знаку

Замінити перший елемент, кратний 5, нулем

Замінити нулями елементи між мінімальним і максимальним, окрім них самих

Замінити елементи з непарними номерами на квадрат їх номера

Замінити останній позитивний елемент на другий елемент масиву

Розділити всі елементи з парними номерами на перший елемент

Видалити з нього всі елементи, в яких є цифра 5

Вставити число k після всіх елементів, кратних своєму номеру (k вводити з клав- ри)

Поміняти місцями перший позитивний і останній негативний елементи

Вставити число k до та перед всіма елементами, в яких є цифра 1 (k вводити з клав- ри)

Переставити перші три і останні три елементи місцями, зберігаючи їх проходження

Видалити всі елементи, в яких остання цифра парна, а саме число ділиться на неї.

Вставити число k перед і після всіх елементів, що закінчуються на дану цифру

Видалити з нього всі елементи, перша цифра яких парна

Вставити число k1 після всіх елементів, великих заданого числа, а число k2 — перед всіма елементами, кратними 3 (kl і k2 вводити з клавіатури).

Видалити з нього всі елементи, кратні 7 і що належать проміжку [а, b] (а і b вводити з клавіатури)

Вставити число k між всіма сусідніми елементами, які утворюють пару елементів з однаковими знаками (k вводити з клавіатури)

Сформувати одновимірний масив, кожний елемент якого рівний найбільшому по модулю елементу відповідного стовпця

3

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]