C++
Завдання 1. Напишіть програму, яка створює двовимірний
масив і заповнює його за таким принципом: користувач
вводить число (наприклад, 3) перший елемент масиву
приймає значення цього числа, наступний елемент масиву приймає значення цього числа помноженого на 2
(тобто 6 для нашого прикладу), третій елемент масиву —
попередній елемент помножений на 2 (тобто 6*2=12 для
нашого прикладу). Створений масив вивести на екран.
Завдання 2. Напишіть програму, яка створює двовимірний
масив і заповнює його за таким принципом: користувач
вводить число (наприклад, 3) перший елемент масиву
приймає значення цього числа, наступний елемент масиву
приймає значення цього числа + 1 (тобто 4 для нашого
прикладу), третій елемент масиву — попередній елемент
+ 1 (тобто 5 для нашого прикладу). Створений масив
вивести на екран.
Завдання 3. Створіть двовимірний масив. Заповніть його
випадковими числами і покажіть на екран. Користувач
вибирає кількість зрушень і положення (вліво, вправо,
вгору, вниз). Виконати зрушення масиву і показати на
екран отриманий результат. Зрушення циклічне.
Тиждень 10
1
Наприклад, якщо ми маємо такий масив.
1 2 0 4 5 3
4 5 3 9 0 1
і користувач вибрав зрушення на 2 розряди вправо, то
ми отримаємо:
5 3 1 2 0 4
0 1 4 5 3 9.
Ответ:
#1
#include <iostream>
using namespace std;
int main()
{
int n;
cout << «Enter a number: «;
cin >> n;
int arr[3] = {n, n*2, n*4};
cout << «The array is: «;
for (int i = 0; i < 3; i++)
cout << arr[i] << » «;
return 0;
}
#2
#include <iostream>
using namespace std;
int main()
{
int n;
cout << «Enter number: «;
cin >> n;
int arr[n];
arr[0] = n;
for (int i = 1; i < n; i++) {
arr[i] = arr[i — 1] + 1;
}
for (int i = 0; i < n; i++) {
cout << arr[i] << » «;
}
cout << endl;
return 0;
}
#3
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int main() {
srand(time(0));
int n, m;
cin >> n >> m;
int a[n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
a[i][j] = rand() % 10;
cout << a[i][j] << » «;
}
cout << endl;
}
int steps, direction;
cin >> steps >> direction;
int b[n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
b[i][j] = a[i][j];
}
}
switch (direction) {
case 0:
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
b[i][j] = a[i][(j + steps) % m];
}
}
break;
case 1:
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
b[i][j] = a[i][(j — steps + m) % m];
}
}
break;
case 2:
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
b[i][j] = a[(i — steps + n) % n][j];
}
}
break;
case 3:
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
b[i][j] = a[(i + steps) % n][j];
}
}
break;
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
cout << b[i][j] << » «;
}
cout << endl;
}
return 0;
}