Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
О
Факультет:
КН
Кафедра:
Не вказано

Інформація про роботу

Рік:
2018
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Кросплатформенні засоби програмування

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет “Львівська політехніка” / Звіт До Лабораторної роботи №2 З дисципліни: «Кросплатформені засоби програмування» Мета: ознайомитися з базовими конструкціями мови Java та оволодіти навиками написання й автоматичного документування простих консольних програм мовою Java. ТЕОРЕТИЧНІ ВІДОМОСТІ Основні типи мови Java Мова Java є строго типізованою. Це означає, що тип кожної змінної має бути оголошеним. Мова має 8 основних (простих) типів, які не є класами та однаково представляються на будь-якій машині, де виконується програма. Тип Розмір, байти Діапазон значень Приклад запису  boolean 1 true, false true  char 2 \u0000…\uFFFF \u0041 або 'А'  byte 1 -128...127 15  short 2 -32768…32767 15  int 4 -231...231-1 15  long 8 -263...263-1 15L  float 4 ±3.4E+38 15.0F  double 8 ±1.79E+308 15.0 або 15.0D   Змінні Синтаксис оголошення змінних: тип назваЗмінної[=значення] {, назваЗмінної [= значення]}; Наприклад, int i; double x, y; boolean isZero = false; Перед використанням змінну слід обов’язково ініціалізувати. Масиви Масив – структура даних, що зберігає набір значень однакового типу. Пам’ять під масив виділяється у керованій кучі. При завершенні життєвого циклу масиву пам’ять, яку він займав, вивільняється збирачем сміття. Доступ до елементів масиву здійснюється за допомогою індексів. Індексація масивів у Java починається з 0. Для створення масиву у Java необхідно оголосити змінну-масив та ініціалізувати її. При створенні за допомогою оператора new масиву чисел всі його елементи ініціалізуються нулями (масиви типу boolean ініціалізуються значеннями false, масиви об’єктів ініціалізуються значеннями null). Після створення масиву змінити його розмір неможливо. Одновимірні масиви Синтаксиси оголошення неініціалізованого одновимірного масиву: тип[] змінна; тип змінна[]; Приклади оголошення неініціалізованого одновимірного масиву типу int: int[] arr; int arr[]; Синтаксиси оголошення та ініціалізації одновимірного масиву: тип[] змінна = new тип[кількість_елементів_масиву]; тип[] змінна = {значення1, значення2,..., значенняN}; тип змінна[] = new тип[кількість_елементів_масиву]; тип змінна[] = {значення1, значення2,..., значенняN}; Приклади оголошення та ініціалізації одновимірного масиву типу int: int[] arr = new int[5]; int[] arr = {1,2,3,4,5}; int arr[] = new int[5]; int arr[] = {1,2,3,4,5}; Java дозволяє створювати і анонімні масиви (без іменні). При створенні анонімного масиву відбувається виділення необхідної кількості пам’яті для збереження елементів масиву та ініціалізація масиву значеннями зі списку ініціалізації. Синтаксис створення анонімного масиву: new тип [] { значення1, значення2,..., значенняN }; Анонімні масиви корисні тоді, коли необхідно ініціалізувати існуючий масив новими значеннями без створення нової змінної, коли необхідно повернути з методу масив нульової довжини (пустий масив), або коли в метод необхідно передати масив наперед відомих значень. Анонімні масиви дозволяють записати код: int[] arr = {1, 2, 3}; ... int[] anonym = {4, 5, 6} arr = anonym; у скороченому вигляді: int[] arr = {1, 2, 3}; ... arr = new int[] {4, 5, 6}; int[] arr = {1, 2, 3}; obj.met(arr); у скороченому вигляді: obj.met(new int[] {1, 2, 3});   Багатовимірні масиви Багатовимірний масив – це масив, який складається з множини масивів. У Java нема багатовимірних масивів в принципі, а багатовимірні масиви реалізуються як множина одновимірних. Кількість вимірів масиву задається парами закриваючих і відкриваючих прямокутних дужок. Як і одновимірнім масиви багатовимірні масиви перед використанням необхідно оголосити і ініціалізувати. Синтаксиси оголошення неініціалізованого двовимірного масиву: тип[][] змінна; тип змінна[][]; Приклади оголошення неініціалізованого двовимірного масиву типу int: int[][] arr; int arr[][]; Синтаксиси оголошення та ініціалізації двовимірного масиву: тип[][] змінна = new тип[розмір_виміру_1][розмір_виміру_2]; тип[][] змінна = {{значення11, значення12,..., значення1N}, {{значення21, значення22,..., значення2N} ... {значенняM1, значенняM2,..., значенняMN}}; тип змінна[][] = new тип[розмір_виміру_1][розмір_виміру_2]; тип змінна[][] = {{значення11, значення12,..., значення1N}, {{значення21, значення22,..., значення2N} ... {значенняM1, значенняM2,..., значенняMN}}; Приклади оголошення та ініціалізації двовимірного масиву типу int: int[][] arr = new int[2][5]; int[][] arr = {{1,2,3,4,5},{11,12,13,14,15}}; int arr[][] = new int[2][5]; int arr[][] = {{1,2,3,4,5},{11,12,13,14,15}}; Зубчаті масиви Завдяки тому, що багатовимірні масиви у Java реалізуються як множина одновимірних масивів, стає можливим реалізувати багатовимірні масиви з різною кількістю елементів у межах виміру. Синтаксис оголошення зубчатого масиву нічим не відрізняється від синтаксису оголошення звичайного багатовимірного масиву. Різниця є лише у способі ініціалізації, де використовується виділення пам’яті під різну кількість елементів у межах виміру. Синтаксис оголошення та ініціалізації зубчатого масиву: тип[][] змінна = new тип[N][]; змінна[0] = new тип[розмір_виміру_20]; змінна[1] = new тип[розмір_виміру_21]; ... змінна[N-1] = new тип[розмір_виміру_2N-1]; Приклад оголошення та ініціалізації зубчатого масиву: int[][] arr = new int[3][]; arr[0]= new int[3]; arr[1]= new int[0]; arr[2]= new int[2]; Виконання лабораторної роботи Завдання: Варіант – 14 14                         Написати та налагодити програму на мові Java згідно варіанту. Програма має задовольняти наступним вимогам: програма має розміщуватися в загальнодоступному класі Lab2ПрізвищеГрупа; програма має генерувати зубчатий масив, який міститиме лише заштриховані області квадратної матриці згідно варіанту; розмір квадратної матриці і символ-заповнювач масиву вводяться з клавіатури; при не введені або введенні кількох символів-заповнювачів відбувається коректне переривання роботи програми; сформований масив вивести на екран і у текстовий файл; Код програми: import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.PrintStream; import java.util.Arrays; import java.util.Scanner; import java.util.stream.IntStream; public class Lab2KarabasKI43 { public static void main(String[] args) throws FileNotFoundException { Scanner scanner = new Scanner(System.in); int matrixSize = scanner.nextInt(); if (matrixSize % 6 != 0) { System.err.println("Matrix size must be multiple by 6"); return; } String fillCharter = scanner.next(); if (fillCharter.length() != 1) { System.err.println("Fill charter must contains only one charter"); return; } String matrix[][] = new String[matrixSize][]; int partLen = matrixSize / 6; IntStream.iterate(1, i -> i < 6, i -> i + 2).forEach( i -> IntStream.range(i * partLen, (i + 1) * partLen).forEach( j -> { matrix[j] = new String[matrixSize]; Arrays.fill(matrix[j], fillCharter); } ) ); StringBuilder stringBuilder = new StringBuilder(); Arrays.stream(matrix).forEach(arr -> stringBuilder .append("[") .append(arr != null ? String.join(" ", arr) : "") .append("]\n")); String result = stringBuilder.toString(); System.out.println(result); try (PrintStream out = new PrintStream(new FileOutputStream("result.txt"))) { out.print(result); } } } Результат виконання програми: 12 a [] [] [a a a a a a a a a a a a] [a a a a a a a a a a a a] [] [] [a a a a a a a a a a a a] [a a a a a a a a a a a a] [] [] [a a a a a a a a a a a a] [a a a a a a a a a a a a] Висновок: на даній лабораторній роботі я ознайомився з базовими конструкціями мови Java та оволодів навиками написання й автоматичного документування простих консольних програм мовою Java.
Антиботан аватар за замовчуванням

24.11.2018 18:11-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!