русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Розробка програм з використанням одновимірних масивів


Дата додавання: 2014-05-08; переглядів: 1087.


 

Приклад 1.Для заданого масиву з 10 дійсних значень знайти суму позитивних значень.

       
 
   
PROGRAM suma; {Знаходження суми позитивних значень в масиві з 10 дійсних чисел.} var M:array [1..10] of real; s:real; i:byte; {M – масив значеннь s - сума введених значень i - змінна циклу} begin s:=0; for i:=1 to 10 do begin write ('введи число'); readln(M[i]); end; for i:=1 to 10 do if M[i]>0 then s:=s+ M[i]; writeln ('S = ',s:10:2); end.  
 

 

 


Приклад 2.В заданому масиві з 10 дійсних значень кожне негативне значення зменшити в разів.


 
 

 


 


PROGRAM masiv;

{Заміна негативних позитивних значень в масиві з 10 дійсних чисел на значення в 5 разів збільшене.}

 

var

M:array [1..10] of real;

i:byte;

{M – масив значень

i - змінна циклу}

begin

for i:=1 to 10 do

begin

write ('введи число');

readln(M[i]);

end;

for i:=1 to 10 do

if M[i]< 0 then

M[i]:=5*M[i];

writeln ('Новий вміст масиву’);

for i:=1 to 10 do

write (M[i]);

writeln;

end.

 

Приклад 3.Маємо 2 масиви цілих елементів розміром по 5 елементів. Порахувати кількість пар відповідних елементів масивів, сума яких не більше 15. Індекс цих пар записати в третій масив.

 

 
 

 

 


Program masiv;

var

mas1,mas2,mas3:array [1..5] of integer;

i,k:word;

begin

for i:=1 to 10 do

begin

write ('Введи пару чисел');

readln(маі1[i], маі2[i]);

end;

k:=0;

for i:=1 to 5 do

if mas1[i]+mas2[i]<=15 then

begin

inc(k);

mas3[k]:=i;

end;

writeln ('Кількість пар ',k:4);

writeln ('Результуючий масив:');

for i:=1 to k do

write (mas3[i]:5);

writeln;

end.

 

 

Приклад 4.Вводиться послідовність символів. Необхідно підрахувати скільки разів введено кожну малу букву латинського алфавіту. Завершення вводу - введення символу *.

 

 
 

 

 


В цьому прикладі використаємо масив для зберігання кількості кожного введеного символу. Індексом цього масиву визначимо символи буков.

 

Program simbol;

var

K:array [‘a’..’z’] of integer; {Масив кількостей кожного символа}

c:char;

begin

{Очистка масиву кількостей, тобто кількість кожного символу встановлюється

рівною нулю}

for c:=’a’ to ’z’ do

K[c]:=0;

{Цикл по обробці введених символів}

repeat

write (‘Введи символ’);

readln (c);

if ( c>=’a’) and (c<=’z’) then

K[c]:= K[c]+1;

Until c=’*’;

writeln ('Кількість букв ‘);

{Цикл виведення результатів}

for c:=’a’ to ’z’ do

write (c,’=’,K[c]:2);

writeln;

readln;

end.

 

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

 

В таких задачах цикл може припинитись в двох випадках; якщо переглянуто всі елементи і якщо знайдено порушення. В такому разі не можна використовувати цикл з параметром, хоча кількість членів масиву відома. Невизначеність повторів вносить умова порушення порядку. В таких випадках доцільно ввести логічну змінну, яка змінює своє значення на протилежне при визначенні порушення порядку розташування членів масиву. Індекс масиву необхідно рахувати окремо.

По завершенні циклу по значенню цієї змінної можна визначити чи було порушення.

 

 
 

 

 


PROGRAM posled;

{Визначення, чи елементи масиву розташовані в зростаючому порядку.}

 

var

M:array [1..10] of real;

i:byte;

b:Boolean;

{M – масив значень

i - змінна циклу

b - =true, якщо елементи в зростаючому порядку, false - якщо ні }

begin

for i:=1 to 10 do

begin

write ('введи число');

readln(M[i]);

end;

b:=true;

i:=1;

while (i<10) and b do

begin

if M[i+1]< M[i] then

b:=false;

i:=i+1;

end;

if b then

writeln ('Елементи масиву зростають’)

else

write ('Елементи не масиву зростають’);

readln;

end.

 

 

Приклад 6.Визначити значення виразу:

 

 

В даному прикладі необхідно знайти суму, елементами якої є вираз, елементами якого є два масиви A і B. Розмір масивів можна визначити з знаку суми, де вказано, що треба скласти 15 елементів.

Щоб знайти значення цього виразу необхідно заповнити значеннями масиви і , крім того, ввести значення для змінної m.

 

       
 
   
 

 


PROGRAM suma;

{Визначення значення виразу з сумою.}

 

var

A,B:array [1..15] of real;

k:byte;

S:real;

{A,B – масиви значень

k - змінна циклу

S - сума}

begin

for k:=1 to 15 do

begin

write ('Введіть 2 числа');

readln(A[k],B[k]);

end;

write ('Введіть значення m');

readln(m);

S:=0;

for k:=1 to 15 do

S:=S+(A[k]+B[k])/(k+5);

S:=15*m+7*S;

writeln (‘S=’,S:8:3);

readln;

end.


<== попередня лекція | наступна лекція ==>
Організація даних в мові PASCAL | Багатовимірні масиви


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн