У минулому дев'ятому уроці ми говорили з вами про масивах, як про структуру даних. У цьому уроці я покажу вам способи роботи з масивами і обробки їх елементів.
Для обробки декількох елементів масиву, програмісти дуже часто використовують цикли. Цикли дозволяють здійснювати ряд однотипних дій чи операцій. У мові програмування Pascal / Delphi існує всього 3 види циклів: for, while, repeat. Їх роботу ми і розберемо в наступному прикладі:
[Cc lang = "delphi»] var a: array [0..99] of integer; [/ cc]
Потрібно порахувати кількість елементів масиву, значення яких більше 10.
Розглянемо реалізацію поставленого завдання, використовуючи існуючі види циклів.
[Cc lang = "delphi»] var i, n: integer;
begin
n: = 0;
for i: = 0 to 99 do
if a [i]> 10 then inc (n);
end; [/ cc]
Цикл for використовує для своєї роботи змінну i типу integer. «For i: = 0 to 99 do» означає, що в першій ітерації циклу (спочатку) i присвоїти «0», а потім i буде збільшуватися з кожним итерацией циклу на 1 і, коли досягне 99, після проходження останньої ітерації, цикл закінчиться . Вміст циклу йде або після ключового слова «do» і може вказуватися між ключовими словами «begin» і «end». Всередині циклу ми перевіряємо, є i-ий елемент в масиві a великим 10. Якщо так, то збільшуємо показник n на одиницю. Перед циклом n потрібно обнулити, тобто привласнити нулю, щоб рахунок починався з нуля. Якщо необхідно, щоб ітерації в циклі йшли в зворотному порядку (від 99 до 0), то цикл придбає такий вигляд:
[Cc lang = "delphi»]
for i: = 99 downto 0 do
if a [i]> 10 then inc (n);
end; [/ cc]
[Cc lang = "delphi»] n: = 0;
i: = 0;
while i 10 then inc (n);
inc (i);
end; [/ cc]
У цьому циклі ми вручну збільшуємо лічильник ітерацій i, і поки i 10 then inc (n);
inc (i);
until i = 99; [/ cc]
Цикл repeat вдає із себе цикл з умовою поста, тобто цикл закінчиться, коли виконатися постусловіем, вказане після until, після проходження останньої ітерації.
Тепер давайте напишемо невеликий приклад заповнення масиву цілочисельних елементів випадковими числами.
[Cc lang = "delphi»]
var a: array [0..99] of integer;
i: integer;
begin
randomize; // ініціалізація генератора чисел
for i: = 0 to 99 do begin
a [i]: = random (100); // присвоюємо елементу масиву випадкове целочисленное число (від 0 до 99)
end;
end;
[/ Cc]
[Note] Варто відзначити, що найбільш часто в коді використовують цикл for (особливо при обробці масивів), тому що його перевагою перед іншими циклами є те, що в нього вже вбудований лічильник ітерацій, що робить код більш зручним, звільняючи його від зайвих « inc (i) »,« i: = 0 "... Особливо це зручно при використанні подвійних циклів - так-так, бувають і потрійні і четвертні - цикли можуть вкладатися в інші цикли, коли потрібно обробити складні структури. [/ note]
У наступному уроці ми поговоримо про процедурах і функціях і способах роботи з ними. Підписуйтесь на розсилку уроків на ваш email, щоб завжди бути в курсі подій нашого сайту!
Цикли в Java
Цикли в С ++