С++
Напишите программу, которая создает двумерный
массив и заполняет его по следующему принципу: пользователь
вводит число (например, 3) первый элемент массива
принимает значение этого числа, следующий элемент массива
принимает значение этого числа + 1 (т.е. 4 для нашего
примера), третий элемент массива — предыдущий элемент
+1 (т.е. 5 для нашего примера). Созданный массив
вывести на экран.
Answers & Comments
#include <iostream>
using namespace std;
int main() {
setlocale(LC_ALL, "ru");
cout << "Введите ширину двумерного массива: ";
int width = 2;
do {
if (width < 1)
cout << "Неккоректный размер, введите ещё раз: ";
cin >> width;
} while (width < 1);
int height = 2;
cout << "Введите высоту двумерного массива: ";
do {
if (height < 1)
cout << "Неккоректный размер, введите ещё раз: ";
cin >> height;
} while (height < 1);
int** array = new int* [height];
for (size_t i = 0; i < height; i++)
array[i] = new int[width];
cout << "Введите первый элемент массива: ";
int firstEl;
cin >> firstEl;
array[0][0] = firstEl;
for (size_t y = 0; y < height; y++) {
for (size_t x = 0; x < width; x++) {
if (y == 0 && x == 0)
continue;
if (x == 0) {
array[y][x] = array[y - 1][width - 1] + 1;
}
else {
array[y][x] = array[y][x - 1] + 1;
}
}
}
for (size_t y = 0; y < height; y++) {
for (size_t x = 0; x < width; x++)
cout << "[" << array[y][x] << "]";
cout << endl;
}
delete[] array;
return 0;
}