Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМКД JP Инф_каз_2015.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
595.94 Кб
Скачать

Зертханалық жұмыс 4

Тақырыбы:Бір өлшемді массивтерді өңдеу. Символдық массив

Мақсаты: Бір өлшемді, символдық массивтерді құру, өңдеу.

Массив типін хабарлау үшін квадрат жақшалар қолданылады.

int month_days [];

month_days айнымалысы хабарланған жол берілген, типі - “int типті бүтін санды массив”.

Массив үшін жады резервін алу үшін арнайы new операторы қолданылады. Төмендегі мысалда month_days массивіне new операторының көмегімен 12 бүтін санды сақтау үшін жады бөлінеді.

month_days = new int [12];

Төмендегі мысалда элементтері жылдағы айлардың күн санынан тұратын массивті құрады (кәбиса жыл).

Мысал 1.

class Array {

public static void main (String args []) {

int month_days[];

month_days = new int[12];

month_days[0] = 31;

month_days[1] = 28;

month_days[2] = 31;

month_days[3] = 30;

month_days[4] = 31;

month_days[5] = 30;

month_days[6] = 31;

month_days[7] = 31;

month_days[8] = 30;

month_days[9] = 31;

month_days[10] = 30;

month_days[11] = 31;

System.out.println("April has " + month_days[3] + " days.");

}

}

Программаны жібергенде апрель айындағы күн санын басып шығарады. Java тілінде массив элементінің нөмірі нөлден басталатындықтан, апрелдегі күн саны-бұл month_days [3].

April has 30 days.

Сонымен қатар массивке автоматты инициализациялау тәсілін қолдануға болады. Массив инициализаторы фигуралық жақшаға алынған үтір арқылы ажыратылған тізім түрінде береді. Үтір массив элементтерін бір бірінен ажыратады.

Мысал 2.

class AutoArray {

public static void main(String args[]) {

int month_days[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };

System.out.println("April has " + month_days[3] + " days.")

}

}

Программа нәтижесі алдыңғы мысал нәтижесімен бірдей.

Символдық массив элементтері char типті болады. Мысал:

class CharArray{

public static void main(String[] args){

char[] words=new char[]

{'С','и','м','в','о','л','ь','н','ы','й',' ','м','а','с','с','и','в'};

System.out.println(words);

}

}

Мысал 3. Символдық массивті қолданып сөздерді кодтау мысалы:

class CharArray2{

public static void main(String[] args){

char[] words=new char[]{'С','л','о','в','о'};

char[] code=new char[words.length];

for(int i=0;i<words.length;i++)

code[i]=(char)(words[i]+i+1);

System.out.println(words);

System.out.println(code);

}

}

Мысал 4. Бір өлшемді массивтерді бір біріне меншіктеу

class MyArrayDemo{

public static void main(String[] args){

int i;

int[] nums=new int[10];

int[] data=new int[20];

for(i=0;i<10;i++){

nums[i]=2*i+1;

data[i]=2*i;

data[i+10]=2*(i+10);}

data=nums;

for(i=0;i<data.length;i++)

System.out.print(data[i]+" ");}

}

Мысал 5. Бір өлшемді массивтерді салыстыру

class MyArrayDemo2{

public static void main(String[] args){

// Массивтерді сипаттау:

int[] nums=new int[]{1,2,3,4,5};

int[] data=new int[]{1,2,3,4,5};

// Комментириді алып тастауға болады:

// data=nums;

// Сілтемелердің теңдігін тексеру:

if(data==nums){

System.out.println("Совпадающие массивы!");

return;}

// массив көлемін тексеру:

if(data.length!=nums.length){

System.out.println("Разные массивы!");

return;}

// массив элементтерінің теңдігін тексру:

for(int i=0;i<data.length;i++){

if(data[i]!=nums[i]){

System.out.println("Несовпадающие элементы!");

return;}}

System.out.println("Одинаковые массивы!");

}}

Мысал 6. Екі вектордың скаляр және векторлық көбейтіндісін есептеу

class VectProduct{

public static void main(String args[]){

double[] a,b,c;

a=new double[]{1,2,-1};

b=new double[]{3,-1,2};

c=new double[3];

int k;

double s=0;

System.out.print("Произведение векторов:\n[a.b]=<");

for(k=0;k<3;k++){

s+=a[k]*b[k];

c[k]=a[(k+1)%3]*b[(k+2)%3]-a[(k+2)%3]*b[(k+1)%3];

System.out.print(c[k]+(k!=2?";":">\n"));}

System.out.println("a.b="+s);}

}

Мысал 7. Бір өлшемді массивті сұрыптау

class Bubble{

public static void main(String args[]){

int m,k,s,n=15;

int[] nums=new int[n];

System.out.println("Исходный массив:");

for(k=0;k<n;k++){

nums[k]=(int)(5*n*Math.random());

System.out.print(nums[k]+" ");}

for(m=1;m<n;m++){

for(k=0;k<n-m;k++){

if(nums[k]>nums[k+1]){

s=nums[k];

nums[k]=nums[k+1];

nums[k+1]=s;}

}}

System.out.println("\nМассив после сортировки:");

for(k=0;k<n;k++){

System.out.print(nums[k]+" ");}

}}

Қолданылған әдебиеттер тізімі

  1. Васильев А.Н. Java. Объектно-ориентированное программирование: Учеб. пособ. – СПб.: Питер, 2011. – 400 с. [В]

  2. Казарин С.А., Клишин А.П. Среда разработки Java-приложений Eclipse: (ПО для объектно-ориентирован-ного программирования и разработки приложений на языке Java): Учеб. пособ., Москва, 2008. – 77 с. [К]

  3. Нұрбекова Ж.К., Сауханова М.С. Программалау практикумы / Java программалау тілі/: Оқу-әдістемелік құрал., Астана, 2013.-185 б.