русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

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

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Методы для работы с массивами


Дата добавления: 2013-12-23; просмотров: 1250; Нарушение авторских прав


1 -1 2 8 6 0 -9 9 -5 4

N=10

Do

I2=n-i1-1;

I1 /= 2;

I1=n-1;

System.out.println();

VectorMin, vectorMax, n);

JOptionPane.showMessageDialog(null, text);

N=Integer.parseInt(input);

String input, text;

Int i1, i2, i3, m, per;

Int n, vectorMin, vectorMax, temp;

Package javaapplication6_1;

10 -7 -1 3 -6 7 7 -1 9 -2

N=10

System.out.println();

System.out.println();

VectorMin, vectorMax, n);

JOptionPane.showMessageDialog(null, text);

N=Integer.parseInt(input);

String input, text;

Int n, vectorMin, vectorMax, temp;

Package javaapplication6_1;

3 10 -1 -6

10 8 2 6

M=4

N=3

JOptionPane.showMessageDialog(null, text);

System.out.println();

MatrMin, matrMax, n, m);

JOptionPane.showMessageDialog(null, text);

M=Integer.parseInt(input);

N=Integer.parseInt(input);

String input, text;

Int n, m, matrMin, matrMax;

Package javaapplication1;

9 8 7 6 5 4 3 2 1 0

Примеры:

1. задать с помощью генератора случайных чисел элементы целочисленного массива matr34, вывести его на экран и в диалоговое окно вывода построчно. Размеры массива ввести с помощью диалогового окна ввода:



// импорт библиотеки графических компонентов Swing

import javax.swing.*;

import java.util.*;

public class JavaApplication1 // задание главного класса программы

{

// описание главного метода main этого класса

public static void main(String[] args)

{

//описание переменных:

// вызов диалогового окна ввода исходных данных

input=JOptionPane.showInputDialog("Нижняя граница диапазона matrMin:");

// преобразование из строкового значения в целое

matrMin=Integer.parseInt(input);

input=JOptionPane.showInputDialog("Верхняя граница диапазона matrMax:");

matrMax=Integer.parseInt(input);

input=JOptionPane.showInputDialog("Количество строк n:");

input=JOptionPane.showInputDialog("Количество столбцов m:");

// формирование строки вывода

text="Значения входных переменных:\nmatrMin=" + matrMin + "\nmatrMax=" + matrMax + "\nn=" + n + "\nm=" + m;

// вызов диалогового окна эхо-печати

//консольный вывод

System.out.printf("matrMin=%d\nmatrMax=%d\nn=%d\nm=%d\n ",

// создание матрицы n x m элементов

int matr[][]=new int[n][m];

//консольный вывод

System.out.println("Исходная матрица:");

/*

создание объекта Rand класса Random - генератора случ. чисел

инициализация генератора случайных чисел,

привязка его к системному времени

*/

Random Rand=new Random();

// заполнение матрицы случайными числами

for (int i=0; i<n; i++)

{

for (int j=0; j<m; j++)

{

// получение очередного случайного числа в диапазоне

// от matrMin до matrMax

matr[i][j]=Rand.nextInt(matrMax-matrMin+1) + matrMin;

//консольный вывод элементов матрицы построчно

System.out.printf(" %5d", matr[i][j]);

}

//переход на новую строку

}

 

//вывод элементов матрицы в диалоговое окно

text="Исходная матрица:\n";

for (int i=0; i<n; i++)

{

for (int j=0; j<m; j++)

text+=matr[i][j] + " ";

text+=”\n”; //переход на новую строку

}

// вызов диалогового окна

}

}

В окне вывода появится:

matrMin=-10

matrMax=10

Исходная матрица:

-3 -6 -8 7

2. Рассортировать элементы заданного случайным образом целочисленного вектора vector[n] методом обменной сортировки (пузырька):

// импорт библиотеки графических компонентов Swing

import javax.swing.*;

import java.util.*;

public class JavaApplication6_1 // задание главного класса

{

// описание главного метода main этого класса

public static void main(String[] args)

{

//описание переменных:

// вызов диалогового окна ввода исходных данных

input=JOptionPane.showInputDialog("Нижняя граница диапазона vectorMin:");

// преобразование из строкового значения в целое

vectorMin=Integer.parseInt(input);

input=JOptionPane.showInputDialog("Верхняя граница диапазона vectoMax:");

vectorMax=Integer.parseInt(input);

input=JOptionPane.showInputDialog("Размер вектора n:");

// формирование строки вывода

text="Значения входных переменных:\nvectorMin=" + vectorMin +

"\nvectorMax=" + vectorMax + "\nn=" + n;

// вызов диалогового окна эхо-печати

//консольный вывод

System.out.printf("vectorMin=%d\nvectorMax=%d\nn=%d\n",

// создание вектора длиной n элементов

int vector[]=new int[n];

//консольный вывод

System.out.println("Исходный вектор:");

/*

создание объекта Rand класса Random - генератора случ.чисел

инициализация генератора случайных чисел,

привязка его к системному времени

*/

Random Rand=new Random();

// создание вектора случайных чисел

for (int i=0; i<n; i++)

{

// получение очередного случайного числа в диапазоне

// от vectorMin до vectorMax

vector[i]=Rand.nextInt(vectorMax-vectorMin+1) + vectorMin;

//консольный вывод элемента вектора

System.out.printf(" %5d", vector[i]);

}

// сортировка вектора методом "пузырька"

for (int j=n-2; j>=0; j--)

for (int i=0; i<=j; i++)

if (vector[i] > vector[i+1])

{

temp=vector[i];

vector[i]=vector[i+1];

vector[i+1]=temp;

}

System.out.println("Отсортированный вектор:");

//консольный вывод вектора

for (int i=0; i<n; i++)

System.out.printf(" %5d", vector[i]);

}

}

В окне вывода появится:

 

vectorMin=-10

vectorMax=10

Исходный вектор:

Отсортированный вектор:

-7 -6 -2 -1 -1 3 7 7 9 10

3. Рассортировать элементы заданного случайным образом целочисленного вектора vector[n] методом Шелла (обменная сортировка с убывающим шагом). В этом случае массив делится на группы по два элемента и производится сортировка в каждой группе: максимальный элемент ставится на второе место. После этого массив делится на группы по четыре элемента, и они снова сортируются. Количество элементов в сортируемой группе удваивается до тех пор, пока не остается одна группа, включающая все элементы массива, которая и сортируется окончательно:

// импорт библиотеки графических компонентов Swing

import javax.swing.*;

import java.util.*;

public class JavaApplication6_1 // задание главного класса

{

// описание главного метода main этого класса

public static void main(String[] args)

{

//описание переменных:

// вызов диалогового окна ввода исходных данных

input=JOptionPane.showInputDialog("Нижняя граница диапазона vectorMin:");

// преобразование из строкового значения в целое

vectorMin=Integer.parseInt(input);

input=JOptionPane.showInputDialog("Верхняя граница диапазона vectoMax:");

vectorMax=Integer.parseInt(input);

input=JOptionPane.showInputDialog("Размер вектора n:");

// формирование строки вывода

text="Значения входных переменных:\nvectorMin=" + vectorMin +

"\nvectorMax=" + vectorMax + "\nn=" + n;

// вызов диалогового окна эхо-печати

//консольный вывод

System.out.printf("vectorMin=%d\nvectorMax=%d\nn=%d\n",

// создание вектора длиной n элементов

int vector[]=new int[n];

//консольный вывод

System.out.println("Исходный вектор:");

/*

создание объекта Rand класса Random - генератора случ.чисел

инициализация генератора случайных чисел,

привязка его к системному времени

*/

Random Rand=new Random();

// формирование вектора

for (int i=0; i<n; i++)

{

// получение очередного случайного числа в диапазоне

// от vectorMin до vectorMax

vector[i]=Rand.nextInt(vectorMax-vectorMin+1) + vectorMin

//консольный вывод элемента вектора

System.out.printf(" %5d", vector[i]);

}

// сортировка вектора методом Шелла

while (i1>=1)

{

{

per=1;

for (int i=0; i<=i2; i++)

{

i3=i+i1;

if (vector[i] > vector[i3])

{

temp=vector[i];

vector[i]=vector[i3];

vector[i3]=temp;

per=0;

} // if (vector[i] > vector[i3])

} // for (i=0; i<=i2; i++)

}while (per==0); // do

} // while (i1>=1)

System.out.println("Отсортированный вектор:");

//консольный вывод вектора

for (int i=0; i<n; i++)

System.out.printf(" %5d", vector[i]);

System.out.println();

}

}

В окне вывода появится:

vectorMin=-10

vectorMax=10

Исходный вектор:

Отсортированный вектор:

-9 -5 -1 0 1 2 4 6 8 9

В классе Arrays из пакета java.util собрано много методов, облегчающих работу с массивами. Эти методы можно разделить на следующие группы:

1. заполнение всего массива nameMassiv[] или его части (from…to) указанным значением value:

static void fill(type nameMassiv[], type value);

static void fill(type nameMassiv[], int from, int to, type value);

где type – один из восьми типов byte, short, int, long, char, float, double, Object.

Пример:

int myVector[]=new int[10];

System.out.println(“Исходный вектор:”);

Arrays.fill(myVector, 5);// вызов метода заполнения массива

for (int value: myVector)

System.out.printf(“%5d”, value);

В окне вывода появится:

 

Исходный вектор:



<== предыдущая лекция | следующая лекция ==>
Операторы вывода | StringBuffer,


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.022 сек.