Написание программы на языке Java, может кто помочь?







+3 +/-

вот такое задание-----------"Задать в программе на языке Java массив размера NxN (значение N может быть выбрано произвольно) и заполнить его значениями в соответствии с законом по варианту. Сгенерированный массив сохранить во внешнем файле."18.

1 3 5 7

3 5 7 5

5 7 5 3

7 5 3 1

плиз, я в Jave не силен. помогите кому не лень

Профиль пользователя RUTHANN Спросил: RUTHANN  (рейтинг 20690) Категория: компьютеры и интернет

Ответов: 1

0 +/-

Нулевая строка массива - часть бесконечного ряда нечетных чисел: 1,3,5,7,9,... = 2n+1 (n є [0;N])

Первая строка - тот же ряд, только n є [1;N]U{N-1}

Вторая - n є [2;N]U{N-1...N-2}

Третья - n є [3;N]U{N-1...N-3}

N-1 -я - n є [N-1;N]U{N-1...1}

N -я - n є {N}U{N-1...0}

Т.е имеем формулу 2n+1 для получения числа содержащегося в массиве и закон по которому изменяется n: [row;N]U{N-1...N-row}, где row - индекс строки.

Т.е. это "непрерывные" подмножества множества чисел {1,3,5,7,...,2N-1,2N+1,2N-1,...,5,3,1}, начинающиеся с того элемента, номер которого совпадает с номером строки и длинной N.

Ну теперь распишем все это.

// тут вставить запрос на ввод размерности массива, допустим N=5

int N = 5;

int L = 2*N-1;

a = new int[L]; // - объявление множества чисел из которых выберем те, что нам нужны

for (int i = 0; i < N; i++) { // - записываем в массив от 1 до 2N+1

a[i] = 2*i+1;

}

for (int i = N-2; i > 0; i--) { // записываем в массив от 2N-1 до 1

a[i] = 2*i+1;

}

int[][] matrixA; // - объявление искомого массива.

matrixA = new int[N][N];

for (int i = 0; i < N; i++) {

for (int j = 0; j < N; j++) {

matrixA[i][j] = a[i+j]; // - заполнение массива.

}

}

// - ну и тут запись в файл

Не проверял, может где-то опечатался, но должно работать. Это только один из способов реализации, по идее есть еще. Но думаю принцип построения понятен и дальше разобраться самому не составит труда.

Ответил на вопрос: Eolian  

Похожие вопросы

Спросил
2 Отв.
Как решать подобные задачи по ИВТ(Паскаль, подготовка к ЕГЭ)(см.)?
Ответ: Данные задачи относятся к заданиям ЕГЭ по информатике, суть которых - анализ кода программы, содержащей циклы и ветвления. От решающего задачу требуется проанализировать ход выполнения программы, для ... Читать далее...
Автор вопроса: Iranian, в категории | | |
Спросил Iranian
1 Отв.
Как зашифровать свое имя в двоичном коде?
Ответ: Если вы любитель мозговых штурмов и у вас масса свободного времени, то можно, используя Коды символов ASCII выразить своё имя, к примеру, в десятеричном ... Читать далее...
Автор вопроса: Burnier, в категории | | |
Спросил Burnier
2 Отв.
Что такое «класс» в программировании?
Ответ: Классами программисты описывают некие абстрактные типы данных. В классе также определяются свойства, данные и методы обработки данных. Классы можно объявлять ... Читать далее...
Автор вопроса: Carita, в категории | |
Спросил Carita
1 Отв.
Как получить оповещение о появлении на чужом сайте определенной фразы?
Ответ: Закажите у веб-программиста Парсер который будет постоянно проверять контентна сайте и проверять в нем наличие той самой ... Читать далее...
Автор вопроса: Crankpin, в категории | | | | |
Спросил Crankpin
3 Отв.
Как научиться писать компьютерные программы и зарабатывать на этом?
Ответ: Советую углубиться немного в другую отрасль - веб-программирования. Это очень выгодно и прибыльно. В среднем цена за сайт составляет от 3 до 5 тысяч рублей. ... Читать далее...
Автор вопроса: Contraction, в категории | |
Спросил Contraction
1 Отв.
Каково основное преимущество, получаемое при использовании функции?
Ответ: Функции позволяют делать одно и то же действие много раз подряд одинаково хорошо, в этом главное преимущество как функций, так и компьютеров в целом :) автор ... Читать далее...
Автор вопроса: Garboils, в категории |
Спросил Garboils
1 Отв.
Какой микроконтроллер выбрать новичку для начала?
Ответ: Хотел в начале предложить, что попроще, а потом подумал, что нет в этом смысла. Конечно если трудности пугают, то с простого легче начинать. Но как показывает ... Читать далее...
Автор вопроса: Reaping, в категории | | | | |
Спросил Reaping
1 Отв.
Как начинать самому учить язык программирования?
Ответ: Нет языка программирования - есть языки программирования! Какой именно язык вы хотите начать учить?! Дело в том, что все языки программирования отличаются ... Читать далее...
Автор вопроса: Sorcer, в категории