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

Робота з одновимірними масивами чисел

Завдання 4

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

1. Яке призначення операторів циклу?

2. Вкажіть особливість оператора циклу з параметром.

3. Чи можна змінювати програмним шляхом параметр циклу циклічної частини оператора FOR?

4. Чому дорівнює крок зміни параметра циклу в операторі for?

5. Складіть програму обчислення f=n, використовуючи оператор циклу for, у якому параметр циклу змінюється на -1.

6. Знайти помилки в такому фрагменті програми:

а) y:=0; for x:=0.1 to 0.9 do y:= y+sin(x);

б) k:=81; y:=1; for i:=1 to sqrt(k) do k:=k*i;

Література: [1-4].

Масив − це структурований тип даних, що складається з фіксованого числа елементів, що мають один і той самий тип. Елементами масиву можуть бути дані будь-якого типу, включаючи структуровані. Тип елементів масиву називається базовим. Число елементів масиву фіксується при описі та в процесі виконання програми не міняється.

Масив − це пронумерована сукупність елементів одного типу.

Масив називається одновимірним (вектором), якщо кожному елементу масиву відповідає один порядковий номер: форма запису: А[i],

де А − ім’я масиву, i − номер (індекс) елемента у рядку.

Якщо кількість елементів масиву дорівнює n, тоді масив має вигляд:

A[1] A[2] A[3] … A[n],

де i змінюється від 1 до n, n − ціле.

Доступ до кожного окремого елемента масиву здійснюється шляхом індексування елементів масиву. Індекси являють собою вирази будь-якого скалярного типу, окрім речового. Тип індексу визначає межі зміни значень індексу. Для опису масиву призначене словосполучення ARRAY OF… (масив з…).

Масив може бути описаний такими способами:

· із зазначенням типу в розділі описів:

TYPE <ім'я типу>=ARRAY [тип індексу] OF <тип компонент>;

VAR <ім'я масиву, ...> : <ім'я типу>;

· без зазначення типу в розділі опису типів даних:

VAR <ім'я масиву, ...> : ARRAY[тип індексу] OF <тип компонент>;

тут ARRAY (масив), OF (з) − службові слова; [тип індексу] − будь-який простий тип, окрім речового; <тип компонент> − тип елементів масиву допустимий у Pascal [1].

Приклади опису одновимірних масивів:

TYPE

klass=1..10;

znak=ARRAY [l..255] OF Char;

VAR

Ml: znak; {тип Znak заздалегідь описаний}

M2: ARRAY[1..60] OF integer; {прямий опис масиву}

M3: ARRAY[1..4] OF klass;

MASS: ARRAY [l..4] OF integer;

Розглянемо приклади програм.

Приклад 4.1. Обчислити суму п'ятнадцяти цілих чисел.

Для позначення чисел введемо змінну x типу масив, елементи якого мають індекс i. Для позначення суми введемо змінну Sum.

program prim4l;

var x: array[1..15] of integer;

i: integer; Sum: integer;

begin

Sum:=0;

for i:=l to 15 do begin

write('Введіть x[', i']='); readln(x[i]);

Sum:=Sum+x[i] end

writeln('Сума рівна ', Sum)

end.

Приклад 4.2. Знайти мінімальний і максимальний елементи одновимірного масиву, а також підрахувати кількість нулів.

program prim42;

type Mass = array[1..13] of real; {опис типу Mass як масиву з 13 елементів }

{дійсного типу }

var а: Mass; {опис змінної а типу Mass }

min, max : real; i, summa0: integer;

begin

writeln('Введіть елементи масиву :');

for i:=l to 13 do { Введення елементів масиву }

read(a[i]);

min:=a[1l; max:=a[1]:

summa0:=0;

for i:=2 to 13 do begin

if a[i]>max then max:=a[i];

if a[i]<min then min:=a[i];

if a[i]=0 then summa0:=summa0+l;

end;

writeln('max=', max :5:2', min=', min :5:2, ' summa0=', summa0);

end.

Варіанти задач

Задано одновимірний масив з n дійсних чисел. Скласти програму згідно із заданим варіантом та вивести на екран результати. Введення даних здійснити будь-яким з можливих способів. Програма повинна коректно працювати для усіх допустимих вхідних параметрів.

00. Підрахувати кількість елементів, не більших - 5.

01. Підрахувати кількість елементів, не менших - 5 .

02. Знайти номер елемента з максимальним значенням.

03. Знайти номер елемента з мінімальним значенням.

04. Знайти мінімальне число.

05. Знайти максимальне число.

06. Обчислити суму всіх елементів.

07. Обчислити добуток усіх елементів, відмінних від нуля.

08. Обчислити суму елементів з парними номерами.

09. Обчислити добуток елементів з парними номерами.

10. Обчислити добуток елементів з непарними номерами.

11. Обчислити суму елементів з непарними номерами.

12. Підрахувати кількість від’ємних елементів.

13. Підрахувати кількість додатних елементів.

14. Підрахувати кількість елементів, рівних нулю.

15. Підрахувати кількість елементів, не рівних нулю.

16. Обчислити суму від’ємних елементів.

17. Обчислити добуток від’ємних елементів.

18. Обчислити суму додатних елементів.

19. Обчислити добуток елементів, не рівних нулю.

20. Обчислити суму перших п'яти елементів.

21. Обчислити суму останніх п'яти елементів.

22. Обчислити добуток перших п'яти елемент.

23. Обчислити добуток останніх п'яти елементів.

24. Обчислити суму елементів, менших -10.

25. Обчислити добуток елементів, менших -25.

26. Обчислити суму елементів, більших -10.

27. Обчислити добуток елементів, більших -5.

28. Знайти номер елементу, рівного числу -15.

29. Знайти номери елементів, рівних нулю.

30. Знайти середнє арифметичне додатних елементів.

31. Знайти середнє арифметичне від’ємних елементів.

32. Обчислити суму елементів з парними номерами та суму елементів з непарними номерами.

33. Обчислити суму квадратів усіх елементів.

34. Обчислити суму квадратів усіх елементів, що перевищують за модулем число 10.

35. Підрахувати кількість елементів, що перевищують за модулем число 10.

36. Обчислити кількість усіх додатних елементів та їх кількість, а також добуток усіх від’ємних елементів і їх кількість.

37. Обчислити середнє арифметичне квадратів усіх елементів, що перевищують по модулю число 2,5.

38. Обчислити середнє арифметичне квадратів усіх елементів, що не перевищують за модулем число 3,6.

39. Обчислити суму квадратів елементів, значення яких належать відрізку [-10; 12], і підрахувати їх кількість.

40. Обчислити середнє арифметичне елементів, що не перевершують за модулем 1,5, та підрахувати їх кількість.

41. Підрахувати кількість від’ємних, додатних і нульових елементів.

42. Знайти найбільше за модулем значення елемента та його номер.

43. Обчислити суму елементів першої половини масиву.

44. Обчислити добуток відмінних від нуля елементів і підрахувати кількість елементів рівних нулю.

45. Підрахувати кількість елементів, значення яких належать інтервалу [-5; 20].

46. Обчислити різницю максимального та мінімального елементів масиву.

47. Перетворити заданий масив X на масив Y, у якому елементи масиву X розділити на значення елемента, найбільшого за модулем.

48. Обчислити суму натуральних логарифмів додатних елементів з непарними номерами, підрахувати їх кількість.

49. Поміняти місцями максимальний і мінімальний елементи.

50. Обчислити добуток натуральних логарифмів додатних елементів з непарними номерами, підрахувати їх кількість.

51. Утворити масив Y, елементами якого є часткові суми елементів початкового масиву X.

52. Обчислити середнє арифметичне натуральних логарифмів додатних елементів з непарними номерами.

53. Обчислити середнє арифметичне натуральних логарифмів додатних елементів з парними номерами.

54. Поділити кожен елемент масиву на максимальний елемент цього масиву.

55. Поділити кожен елемент масиву на мінімальний елемент цього масиву.

56. Обчислити суму квадратів елементів, значення яких не належать відрізку [-10; 12], і підрахувати їх кількість.

57. Перетворити масив X на масив Y, у якому від’ємні елементи масиву X помножити на самих себе.

58. Помножити кожен елемент масиву X на 10.

59. Знайти номери елементів, значення яких належать інтервалу [-10; 12].

60. Знайти номери елементів, значення яких не належать інтервалу [-10; 12].

61. Перетворити заданий масив X на масив Y, у якому додатні елементи масиву X помножити на -10.

62. Перетворити заданий масив X на масив Y, у якому елементи масиву X, що рівні нулю, замінити на 20.

63. Елементи масиву з парними номерами замінити на 100.

64. Створити масив Y з елементів масиву X, у якому елементи масиву X з непарними номерами піднести до квадрата.

65. Обчислити добуток максимального та мінімального елементів.

66. Обчислити середнє арифметичне всіх елементів масиву.

67. Елементи масиву з непарними номерами замінити на 200.

68. Знайти найменше за модулем значення елементу масиву і його номер.

69. Обчислити суму елементів, починаючи з першого до мінімального.

70. Обчислити добуток елементів, відмінних від нуля, номери яких належать інтервалу номерів мінімального і максимального значень.

71. Знайти номери від’ємних елементів і підрахувати їх кількість.

72. Обчислити суму від’ємних елементів, узятих за модулем.

73. Обчислити добуток суми від’ємних і суми додатних елементів.

74. Знайти номери додатних елементів і підрахувати їх кількість.

75. Обчислити суму квадратів від’ємних елементів.

76. Обчислити додаток квадратів додатних елементів.

77. Обчислити різницю суми квадратів від’ємних і суми кубів додатних елементів.

78. Знайти мінімальне та максимальне значення за модулем.

79. Обчислити суму від’ємних елементів і поділити її на суму додатних елементів.

80. Збільшити додатні елементи на 10, а від’ємні елементи − у 5 разів.

81. Обчислити суму додатних елементів і замінити нею елементи рівні нулю.

82. Обчислити добуток від’ємних елементів і замінити ним додатні елементи.

83. Поділити кожен елемент масиву на максимальне за модулем значення.

84. Побудувати масив Y з елементів масиву X, які поділити на значення мінімального елемента за модулем.

85. Знайти мінімальні та максимальні значення та замінити їх відповідно на -1000 і 1000.

86. Знайти добуток номерів мінімального та максимального значень.

87. Знайти суму номерів від’ємних елементів.

88. Знайти добуток сум номерів від’ємних і додатних елементів.

89. Обчислити суму додатних елементів, добуток від’ємних елементів та суму номерів елементів рівних нулю.

90. Обчислити суму номерів елементів, рівних нулю.

91. Знайти номери мінімального і максимального елементів за модулем і обчислити їх суму.

92. Підрахувати кількість елементів, що перевищують значення Рi (3.14).

93. Знайти значення максимального елемента, значення максимального елемента за модулем та обчислити їх суму та добуток.

94. Обчислити суму елементів виразу X(i)-С, де С=-2.31.

95. Розташувати елементи масиву в порядку зростання їх значень.

96. Розташувати елементи масиву в порядку зменшення їх значень.

97. Побудувати новий масив Y, елементи якого обчислюються за формулою Y(i)=X(i)-S, де Х(i) − елементи масиву; X, S − середнє арифметичне елементів масиву X.

98. Обчислити середнє арифметичне додатних і від’ємних елементів; знайти їх добуток.

99. Обчислити суму елементів, що не перевищують значення Pi (3.14).