Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Лабораторна робота № 10 (12)






Тема: Створення та реалізація програм опрацювання табличних величин. Опрацювання масивів за умовою.

Мета: Уміти створювати та реалізовувати програми опрацювання табличних величин, опрацьовувати масиви за умовою.

Теоретичні відомості

Пошук значень табличних величин розглянемо на простому прикладі. Скажімо, заданий одновимірний масив А, складений з N цілих чисел:

Const

N = 10;

A: array [1..N] of byte=(3, 8, 7, 1.8, 1.4, 5, 8, 13);

Потрібно знайти перший елемент, який має задане значення, і вивести номер цього елемента на екран. Значення шуканого елемента позначимо Х, а його порядковий номер у масиві – Numx. Уведення значення шуканого елемента оформимо як запрошення:

Writeln (‘ Введите элемент для поиска ’);

Readln(X);

Пошук потрібного елемента виконуватимемо шляхом циклічного порівняння значень всіх елементів масиву зі значенням Х, уведеним із клавіатури. Вважатимемо, що номери елементів масиву починаються з 1. Перед початком пошуку значення Numx покладемо рівним нулю і введемо лічильник елементів С, що збігається з шуканим елементом. Блок пошуку запишемо у вигляді:

Numx: =0;

C: =0;

for I: =1 to N do

begin

if A[I]=X then

begin

Numx: =I;

WriteIn (‘Номер искомого елемента‘, Numx);

C: =C+1;

end;

end;

Пошук здійснюється за допомогою умовного оператора if A[I]=X then. Якщо умова A[I]=X виконується, змінній Numx надається номер знайденого елемента. Номер виводиться на екран, а значення лічильника С збільшується на одиницю. В цілому код програми матиме вигляд:

Program Poshuk;

const

N = 10;

A: array [1..N] of byte=(3, 8, 7, 1, 8, 1, 4, 5, 8, 13);

var

X, Numx, C: byte;

begin

WriteIn (‘ Исходный массив:);

for I: =1 to N do Write (A[I], ’ ‘); WriteIn;

WriteIn (‘Введите элемент для поиска’);

Readln(x);

Numx: =0;

C: =0;

for I: =1 to N do

begin

if A[I]=X then

begin

Numx: =I;

Writeln (‘Номер искомого элемента’, Numx);

C: =C+1;

end;

end;

If C=0 then Writeln (‘Данный элемент в массиве отсутствует’);

end.

Наберіть код цього прикладу і збережіть його у вигляді файла на диску. Натисніть клавіші Alt+F9 і після успішної компіляції запустіть програму на виконання (клавіші Ctrl+F9). Якщо в процесі виконання ви введете значення для пошуку1, програма назве вам номери елементів: 4 і 6. Якщо ж увести значення 8, то програма назве номери шуканих елементів: 2, 5, 9. Зрозуміло, що вихідний масив А[l] може формуватися різними способами: заданням значень в опису (як у наведеному прикладі), за допомогою будь-яких функцій, уведенням значень елементів із клавіатури. Потрібно лише в програмі передбачити той чи інший спосіб уведення.



 

Хід роботи

  1. Перевірити роботу програми-прикладу.
  2. Створити програму, яка в одномірному масиві символів міняє місцями два елементи.
  3. Створити програму, яка виводить одномірний масив, утворений з елементів даного при виборі чисел кратних трьом.
  4. Створити програму, яка виводить двомірний масив, утворений з елементів даного, заміняючи непарні нулями, а парні їх квадратами.

Контрольні питання

  1. Що ви розумієте під поняттям масив?
  2. Що ви розумієте під поняттям матриця?
  3. Що таке повний і неповний умовний оператор?
  4. Що значить поміняти місцями два елементи масива?
  5. Навіщо при зміні місцями двох елементів в масиві вводиться додаткова змінна?
  6. Якого типу може бути змінна, яка виступає в якості параметра в циклі For і чому?
  7. Що означає: створити масив з елементів даного за умовою?
  8. Які команди треба записати, щоб цикл виконував за один крок декілька операторів?





© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.