русс | укр

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

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

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

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


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

For (тип_массива переменная: имя_массива)


Дата добавления: 2015-07-04; просмотров: 605; Нарушение авторских прав


{

Операторы вывода

}

Например, необходимо вывести на экран элементы следующего массива:

int myVector[]=new int[10]{9,8,7,6,5,4,3,2,1,0};

Используем специальную форму цикла for:

For (int value: myVector)

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

В этом случае не нужно указывать ни параметр цикла, ни длину вектора. Переменная value (имя может быть любым) по очереди перебирает элементы массива, принимая значения этих элементов.

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

9 8 7 6 5 4 3 2 1 0

Примеры:

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

package javaapplication1;

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

import javax.swing.*;

import java.util.*;

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

{

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

public static void main(String[] args)

{

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

int n, m, matrMin, matrMax;

String input, text;

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

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

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

matrMin=Integer.parseInt(input);

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

matrMax=Integer.parseInt(input);

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

n=Integer.parseInt(input);

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

m=Integer.parseInt(input);

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

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



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

JOptionPane.showMessageDialog(null, text);

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

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

matrMin, matrMax, n, m);

// создание матрицы 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]);

}

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

System.out.println();

}

 

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

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

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

{

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

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

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

}

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

JOptionPane.showMessageDialog(null, text);

}

}

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

matrMin=-10

matrMax=10

n=3

m=4

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

10 8 2 6

3 10 -1 -6

-3 -6 -8 7

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

package javaapplication6_1;

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

import javax.swing.*;

import java.util.*;

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

{

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

public static void main(String[] args)

{

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

int n, vectorMin, vectorMax, temp;

String input, text;

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

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

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

vectorMin=Integer.parseInt(input);

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

vectorMax=Integer.parseInt(input);

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

n=Integer.parseInt(input);

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

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

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

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

JOptionPane.showMessageDialog(null, text);

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

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

vectorMin, vectorMax, 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]);

}

System.out.println();

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

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]);

System.out.println();

}

}

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

 

vectorMin=-10

vectorMax=10

n=10

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

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

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

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

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

package javaapplication6_1;

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

import javax.swing.*;

import java.util.*;

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

{

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

public static void main(String[] args)

{

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

int n, vectorMin, vectorMax, temp;

int i1, i2, i3, m, per;

String input, text;

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

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

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

vectorMin=Integer.parseInt(input);

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

vectorMax=Integer.parseInt(input);

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

n=Integer.parseInt(input);

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

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

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

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

JOptionPane.showMessageDialog(null, text);

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

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

vectorMin, vectorMax, 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]);

}

System.out.println();

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

i1=n-1;

while (i1>=1)

{

i1 /= 2;

i2=n-i1-1;

do

{

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

n=10

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

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

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

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



<== предыдущая лекция | следующая лекция ==>
Массивы | Методы для работы с массивами


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


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

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

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


 


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

 
 

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

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