mirror of
https://github.com/ASDjonok/OOP_IO-2x_2023.git
synced 2026-04-01 21:21:50 +03:00
Compare commits
52 Commits
ІО-25/18-М
...
ІО-24/25-С
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1c89c9da01 | ||
|
|
a34d7aa388 | ||
|
|
55bfc1cca6 | ||
|
|
48dad5cd9e | ||
|
|
f1131c280f | ||
|
|
20be64e175 | ||
|
|
1583e33ab3 | ||
|
|
277f8f82f6 | ||
|
|
eb2ffae473 | ||
|
|
f05125e298 | ||
|
|
ce73ebf1f5 | ||
|
|
31c3b96018 | ||
| 4eecffe040 | |||
|
|
f7b11d9444 | ||
|
|
bfdfd65153 | ||
| ae042010a6 | |||
|
|
9b871b6a42 | ||
|
|
e41e64369b | ||
|
|
484bef389b | ||
| 455c991edb | |||
| 90d0f042a1 | |||
|
|
1690d0f9e4 | ||
|
|
4531049ff2 | ||
|
|
07b17ca3cc | ||
|
|
a61c59bf48 | ||
|
|
9ece98fece | ||
|
|
81ac59840f | ||
|
|
1e6825d7d4 | ||
|
|
4087daef02 | ||
|
|
31ba116ad8 | ||
|
|
6fc3cc244e | ||
|
|
3bbb7c8e54 | ||
|
|
1af299f8f7 | ||
|
|
4924bbe62f | ||
|
|
29e63163a4 | ||
|
|
399941844f | ||
|
|
f385bff73d | ||
|
|
6d8171ad4c | ||
|
|
14c58d0cc4 | ||
|
|
afc13cf9f8 | ||
|
|
e910ee6e4d | ||
|
|
6ab6cc17db | ||
|
|
25173d66d1 | ||
|
|
41ad598b79 | ||
|
|
788fa03eda | ||
|
|
13e1a61ad9 | ||
|
|
f692ae7588 | ||
|
|
429bcc7b3d | ||
|
|
4b159fa22b | ||
|
|
b25ceea45d | ||
|
|
2880b770f7 | ||
|
|
53a9d20438 |
8
.idea/.gitignore
generated
vendored
Normal file
8
.idea/.gitignore
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
# Editor-based HTTP Client requests
|
||||
/httpRequests/
|
||||
# Datasource local storage ignored files
|
||||
/dataSources/
|
||||
/dataSources.local.xml
|
||||
6
.idea/misc.xml
generated
Normal file
6
.idea/misc.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_X" default="true" project-jdk-name="openjdk-20" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
||||
8
.idea/modules.xml
generated
Normal file
8
.idea/modules.xml
generated
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/OOP_IO-2x_2023.iml" filepath="$PROJECT_DIR$/OOP_IO-2x_2023.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
124
.idea/uiDesigner.xml
generated
Normal file
124
.idea/uiDesigner.xml
generated
Normal file
@@ -0,0 +1,124 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Palette2">
|
||||
<group name="Swing">
|
||||
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
|
||||
</item>
|
||||
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
|
||||
</item>
|
||||
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
|
||||
</item>
|
||||
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.svg" removable="false" auto-create-binding="false" can-attach-label="true">
|
||||
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
|
||||
</item>
|
||||
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
|
||||
<initial-values>
|
||||
<property name="text" value="Button" />
|
||||
</initial-values>
|
||||
</item>
|
||||
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
|
||||
<initial-values>
|
||||
<property name="text" value="RadioButton" />
|
||||
</initial-values>
|
||||
</item>
|
||||
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
|
||||
<initial-values>
|
||||
<property name="text" value="CheckBox" />
|
||||
</initial-values>
|
||||
</item>
|
||||
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
|
||||
<initial-values>
|
||||
<property name="text" value="Label" />
|
||||
</initial-values>
|
||||
</item>
|
||||
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
||||
<preferred-size width="150" height="-1" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
||||
<preferred-size width="150" height="-1" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
|
||||
<preferred-size width="150" height="-1" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
|
||||
<preferred-size width="150" height="50" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
|
||||
<preferred-size width="200" height="200" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
|
||||
<preferred-size width="200" height="200" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.svg" removable="false" auto-create-binding="true" can-attach-label="true">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
|
||||
</item>
|
||||
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
|
||||
<preferred-size width="-1" height="20" />
|
||||
</default-constraints>
|
||||
</item>
|
||||
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
|
||||
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
|
||||
</item>
|
||||
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
|
||||
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
|
||||
</item>
|
||||
</group>
|
||||
</component>
|
||||
</project>
|
||||
6
.idea/vcs.xml
generated
Normal file
6
.idea/vcs.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
Binary file not shown.
@@ -1,21 +0,0 @@
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
float s = 0.0f, a = 2.0f, b = 1.0f, m = 6.0f, n = 4.0f;
|
||||
int c = 1;
|
||||
|
||||
for (float i = a; i <= m; i++) {
|
||||
// Перевірка ділення на 0.
|
||||
if (i == -1) {
|
||||
System.out.println("Помилка: ділення на нуль не можливе.");
|
||||
return;
|
||||
}
|
||||
for (float j = b; j <= n; j++) {
|
||||
s += (i + j) / (i + c);
|
||||
}
|
||||
}
|
||||
|
||||
System.out.println("S = " + s);
|
||||
}
|
||||
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,59 +0,0 @@
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
// Створення матриць.
|
||||
char[][] a = {
|
||||
{12, 4, 8, 11},
|
||||
{16, 9, 3, 13},
|
||||
{7, 11, 16, 15}
|
||||
};
|
||||
char[][] b = {
|
||||
{15, 12, 4, 5},
|
||||
{19, 1, 3, 11},
|
||||
{2, 11, 6, 10}
|
||||
};
|
||||
|
||||
System.out.println("Матриця A: ");
|
||||
for (char[] i : a) {
|
||||
for (char j : i) {
|
||||
/* При виведенні елементів ми додаємо пробіли на кінці
|
||||
цілого числа (%-4d) задля легшого читання матриці.
|
||||
*/
|
||||
System.out.printf("%-4d", (int) j);
|
||||
}
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
System.out.println("\nМатриця B: ");
|
||||
for (char[] i : b) {
|
||||
for (char j : i) {
|
||||
System.out.printf("%-4d", (int) j);
|
||||
}
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
// Перевірка на те, чи є матриці однакових форм.
|
||||
if (a[0].length != b[0].length || a.length != b.length) {
|
||||
System.out.println("Матриці А і В мають різні форми.");
|
||||
} else {
|
||||
int[][] c = new int[a.length][a[0].length];
|
||||
float sum = 0;
|
||||
|
||||
System.out.println("\nМатриця С: ");
|
||||
for (int i = 0; i < a.length; i++) {
|
||||
for (int j = 0; j < a[i].length; j++) {
|
||||
|
||||
c[i][j] = (byte) a[i][j] ^ (byte) b[i][j];
|
||||
sum += c[i][j];
|
||||
System.out.printf("%-4d", c[i][j]);
|
||||
}
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
float average = sum / (c.length * c[0].length);
|
||||
System.out.printf("\nСереднє значення матриці С: %.3f", average);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Binary file not shown.
@@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
Binary file not shown.
@@ -1,54 +0,0 @@
|
||||
import java.util.Arrays;
|
||||
import java.util.Scanner;
|
||||
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
StringBuffer text = new StringBuffer(scanner.nextLine());
|
||||
String str_text = text.toString();
|
||||
// Заміна ? й ! на .
|
||||
str_text = str_text.replaceAll("[?!]", ".");
|
||||
// Очищення від спеціальних символів.
|
||||
str_text = str_text.replaceAll("\"", "");
|
||||
str_text = str_text.replaceAll("-", "");
|
||||
str_text = str_text.replaceAll("[,':;^*&%$#@]", "");
|
||||
// Створення масиву з речень.
|
||||
String[] spl_text = str_text.split("\\.");
|
||||
|
||||
// Перевірка на кількість речень.
|
||||
if (spl_text.length == 0 || spl_text.length == 1) {
|
||||
System.out.println("Не вдалося виконати дію з рядками (було введено одне речення або взагалі нічого)");
|
||||
return;
|
||||
}
|
||||
|
||||
System.out.println("Слова першого речення, яких немає у жодному з наступних:");
|
||||
for (String st : spl_text[0].split(" ")) {
|
||||
int index = 0;
|
||||
for (int i = 1; i < spl_text.length; i++) {
|
||||
// Усунення кейсу з регістром, усунення пробілів.
|
||||
if (Arrays.asList(spl_text[i].toLowerCase().trim().split(" ")).contains(st.trim().toLowerCase())) {
|
||||
index = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
// Перевірка на те, чи було дане слово хоча б в одному реченні.
|
||||
if (index == 0) {
|
||||
System.out.println(st.trim().toLowerCase());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* [Input]
|
||||
"У молодості я взяв собі за правило не пити ні краплі спиртного до обіду. Тепер, коли я вже немолодий, я тримаюся правила не пити ні краплі спиртного до сніданку". - Вінстон Черчилль
|
||||
[Output]
|
||||
у
|
||||
молодості
|
||||
взяв
|
||||
собі
|
||||
за
|
||||
правило
|
||||
обіду
|
||||
*/
|
||||
Binary file not shown.
@@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,40 +0,0 @@
|
||||
package lab4;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
// Створення об'єктів класу Student.
|
||||
Student First = new Student("Михайло", "Гордун", 21, "ІПСА", true);
|
||||
Student Second = new Student("Дмитро", "Шарій", 19, "ТЕФ", false);
|
||||
Student Third = new Student("Аліна", "Шарій", 18, "ЕФ", false);
|
||||
Student Fourth = new Student("Назар", "Лоленко", 17, "ФІОТ", true);
|
||||
Student Fifth = new Student("Олександра", "Зеленська", 18, "ФМВ", true);
|
||||
|
||||
// Створення масиву об'єктів класу Student.
|
||||
Student[] ObjArray = new Student[] {First, Second, Third, Fourth, Fifth};
|
||||
|
||||
// Сортування по алфавіту (прізвище ім'я).
|
||||
Arrays.sort(ObjArray, new Sorting.SortByAlphabet());
|
||||
System.out.println("\nСортування за алфавітом (зростання):");
|
||||
for (Student Student : ObjArray) {
|
||||
System.out.println(Student.lastName + " " + Student.firstName);
|
||||
}
|
||||
|
||||
/* Сортування по віці (спадання).
|
||||
Масив сортує масив по зростанню, але в циклі ітерація
|
||||
проходить навпаки, тим самим виводячи елементи з кінця
|
||||
до початку.
|
||||
*/
|
||||
Arrays.sort(ObjArray, new Sorting.SortByAge());
|
||||
System.out.println("\nСортування за віком (спадання):");
|
||||
for (int i = ObjArray.length-1; i >= 0; i--) {
|
||||
System.out.print(ObjArray[i].lastName + " ");
|
||||
System.out.print(ObjArray[i].firstName);
|
||||
System.out.println(", вік: " + ObjArray[i].age);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
package lab4;
|
||||
|
||||
import java.util.Comparator;
|
||||
|
||||
public class Sorting {
|
||||
|
||||
// Непорушний клас, створений на основі абстратного класу Comparator.
|
||||
public static class SortByAlphabet implements Comparator<Student> {
|
||||
|
||||
/* Реалізація методу compare().
|
||||
Метод compare(Object o1, Object 02) є одним із абстрактних методів
|
||||
класу Comparator. Нам потрібно або зробити наш клас абстактним, або
|
||||
реалізувати даний метод. Якщо ж оголосити клас SortByAlphabet
|
||||
абстрактним, ми не зможемо створити на основі його об'єкт, тому
|
||||
вибір очевидний - реалізація методу.
|
||||
*/
|
||||
@Override
|
||||
public int compare(Student st1, Student st2) {
|
||||
/* Якщо в нас буде 2 однакових прізвища на порівняння, нам потрібно
|
||||
порівнювати імена аби сортування по алфавіту було правильним.
|
||||
*/
|
||||
if (st1.lastName.compareTo(st2.lastName) == 0) {
|
||||
return st1.firstName.compareTo(st2.firstName);
|
||||
} else {
|
||||
return st1.lastName.compareTo(st2.lastName);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Непорушний клас, створений на основі абстратного класу Comparator.
|
||||
public static class SortByAge implements Comparator<Student> {
|
||||
|
||||
// Аналогічно тут, реалізуємо метод compare().
|
||||
@Override
|
||||
public int compare(Student st1, Student st2) {
|
||||
/* Метод compareTo() приймає лише дані типу String, тому
|
||||
ми перетворюємо вік з int в String. Звісно ж це може привести
|
||||
до неточності. Числа будуть порівнюватись спочатку по перших
|
||||
цифрах, потім по других і тд. Якщо в нас буде, наприклад вік
|
||||
107 і 18 на порівнянні, прогрма порахує, що 18 > 107 по
|
||||
порядку. Тут цим знехтується, адже я сумніваюсь що існують
|
||||
студенти яким >100 років.
|
||||
*/
|
||||
String age1 = Integer.toString(st1.age);
|
||||
String age2 = Integer.toString(st2.age);
|
||||
return age1.compareTo(age2);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,44 +0,0 @@
|
||||
package lab4;
|
||||
|
||||
public class Student {
|
||||
|
||||
// Створення полів класу.
|
||||
public String firstName;
|
||||
public String lastName;
|
||||
public int age;
|
||||
private String faculty;
|
||||
private boolean hasStipend;
|
||||
|
||||
// Конструктор класу.
|
||||
public Student(String fn, String ln, int age, String fac, boolean wealth) {
|
||||
setValues(fn, ln, age, fac, wealth);
|
||||
getValues();
|
||||
}
|
||||
|
||||
/* Метод, який нічого не повертає.
|
||||
Визначає поля класу.
|
||||
*/
|
||||
private void setValues(String fn, String ln, int age, String fac, boolean wealth) {
|
||||
this.firstName = fn;
|
||||
this.lastName = ln;
|
||||
this.age = age;
|
||||
this.faculty = fac;
|
||||
this.hasStipend = wealth;
|
||||
}
|
||||
|
||||
/* Метод, який нічого не повертає.
|
||||
Виводить значення полів.
|
||||
*/
|
||||
private void getValues() {
|
||||
System.out.println("Прізвище та ім'я: " + this.lastName + " " + this.firstName);
|
||||
System.out.println("Вік: " + this.age);
|
||||
System.out.println("Факультет: " + this.faculty);
|
||||
System.out.print("Наявність стипендії: ");
|
||||
if (this.hasStipend)
|
||||
System.out.println("є");
|
||||
else
|
||||
System.out.println("немає");
|
||||
System.out.println("~".repeat(40));
|
||||
}
|
||||
|
||||
}
|
||||
Binary file not shown.
@@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,5 +0,0 @@
|
||||
package lab5;
|
||||
|
||||
public record Letter(char value) {
|
||||
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
package lab5;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
String inputText = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam tempor dictum velit, vitae sollicitudin mauris facilisis et. Praesent mi odio, pretium eget sem ac, ultricies eleifend elit. Maecenas vulputate efficitur risus, a ornare lorem sollicitudin vitae. Pellentesque rhoncus posuere risus eu placerat. Maecenas luctus felis ac interdum sodales. Quisque nec est lectus.";
|
||||
|
||||
// Створений Text об'єкт
|
||||
Text text = new Text(inputText);
|
||||
|
||||
// Пошук у першому реченні слів, яких немає в наступних реченнях
|
||||
List<String> result = findUniqueWords(text);
|
||||
System.out.println("Unique words in the first sentence: " + result);
|
||||
}
|
||||
|
||||
public static List<String> findUniqueWords(Text text) {
|
||||
if (text.getSentences().isEmpty()) {
|
||||
throw new IllegalArgumentException("Text must contain at least one sentence.");
|
||||
}
|
||||
|
||||
Sentence firstSentence = text.getSentences().get(0);
|
||||
List<String> wordsInFirstSentence = firstSentence.getStringWords();
|
||||
|
||||
Set<String> uniqueWords = new HashSet<>(wordsInFirstSentence);
|
||||
|
||||
for (int i = 1; i < text.getSentences().size(); i++) {
|
||||
Sentence sentence = text.getSentences().get(i);
|
||||
List<String> wordsInCurrentSentence = sentence.getStringWords();
|
||||
|
||||
wordsInCurrentSentence.forEach(uniqueWords::remove);
|
||||
}
|
||||
|
||||
return new ArrayList<>(uniqueWords);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
package lab5;
|
||||
|
||||
public record Punctuation(char value) {
|
||||
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
package lab5;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Sentence {
|
||||
private final List<Object> wordsAndPunctuations;
|
||||
|
||||
public Sentence(String stringSentence) {
|
||||
List<Object> wordsAndPunctuations = new ArrayList<>();
|
||||
StringBuilder word = new StringBuilder();
|
||||
|
||||
for (int i = 0; i < stringSentence.length(); i++) {
|
||||
char ch = stringSentence.charAt(i);
|
||||
|
||||
if (Character.isLetterOrDigit(ch)) {
|
||||
word.append(ch);
|
||||
} else if (Character.isWhitespace(ch)) {
|
||||
if (word.length() > 0) {
|
||||
wordsAndPunctuations.add(new Word(word.toString()));
|
||||
word.setLength(0);
|
||||
}
|
||||
} else if (String.valueOf(ch).matches(".*\\p{Punct}.*")) {
|
||||
if (word.length() > 0) {
|
||||
wordsAndPunctuations.add(new Word(word.toString()));
|
||||
word.setLength(0);
|
||||
}
|
||||
wordsAndPunctuations.add(new Punctuation(ch));
|
||||
}
|
||||
}
|
||||
|
||||
if (word.length() > 0) {
|
||||
wordsAndPunctuations.add(new Word(word.toString()));
|
||||
}
|
||||
|
||||
this.wordsAndPunctuations = wordsAndPunctuations;
|
||||
}
|
||||
|
||||
public List<Object> getWordsAndPunctuations() {
|
||||
return wordsAndPunctuations;
|
||||
}
|
||||
|
||||
|
||||
public List<Word> extractWords() {
|
||||
List<Word> words = new ArrayList<>();
|
||||
for (Object element : getWordsAndPunctuations()) {
|
||||
if (element instanceof Word) {
|
||||
words.add((Word) element);
|
||||
}
|
||||
}
|
||||
return words;
|
||||
}
|
||||
|
||||
public List<String> getStringWords() {
|
||||
List<String> wordStrings = new ArrayList<>();
|
||||
for (Word word : extractWords()) {
|
||||
wordStrings.add(word.getStringWord());
|
||||
}
|
||||
return wordStrings;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
package lab5;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Text {
|
||||
private final List<Sentence> sentences;
|
||||
|
||||
public Text(String stringText) {
|
||||
this.sentences = new ArrayList<>();
|
||||
String[] splitText = stringText.split("(?<=[!.?])\\s*");
|
||||
for (String sentence : splitText) {
|
||||
getSentences().add(new Sentence(sentence));
|
||||
}
|
||||
}
|
||||
|
||||
public List<Sentence> getSentences() {
|
||||
return sentences;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
package lab5;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Word {
|
||||
private final String stringWord;
|
||||
private final List<Letter> letters;
|
||||
|
||||
public Word(String stringWord) {
|
||||
List<Letter> letters = new ArrayList<>();
|
||||
char[] chars = stringWord.toCharArray();
|
||||
for (char c : chars) {
|
||||
letters.add(new Letter(c));
|
||||
}
|
||||
this.letters = letters;
|
||||
this.stringWord = stringWord;
|
||||
}
|
||||
|
||||
public List<Letter> getLetters() {
|
||||
return letters;
|
||||
}
|
||||
|
||||
public String getStringWord() {
|
||||
return stringWord;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,17 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
public class Bmw extends Car {
|
||||
|
||||
public String mark = "BMW";
|
||||
|
||||
public Bmw(String _model, float speed, int price, int year, float fuel, float engineCapacity, String country) {
|
||||
super(_model, speed, price, year, fuel, engineCapacity, country);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void printValues() {
|
||||
System.out.println("Марка: BMW");
|
||||
super.printValues();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
import java.util.Comparator;
|
||||
|
||||
public class Car {
|
||||
|
||||
protected String _model;
|
||||
protected float speed;
|
||||
protected int price;
|
||||
protected int year;
|
||||
protected float fuel;
|
||||
protected float engineCapacity;
|
||||
protected String country;
|
||||
|
||||
public Car(String _model, float speed, int price, int year, float fuel, float engineCapacity, String country) {
|
||||
setValues(_model, speed, price, year, fuel, engineCapacity, country);
|
||||
printValues();
|
||||
}
|
||||
|
||||
public void setValues(String _m, float s, int p, int y, float f, float e, String c) {
|
||||
this._model = _m;
|
||||
this.speed = s;
|
||||
this.price = p;
|
||||
this.year = y;
|
||||
this.fuel = f;
|
||||
this.engineCapacity = e;
|
||||
this.country = c;
|
||||
}
|
||||
|
||||
public void printValues() {
|
||||
System.out.println("Модель: " + _model + " " + year);
|
||||
System.out.println("Максимальна швидкість: " + speed + "км/год");
|
||||
System.out.println("Ціна: " + price + "$");
|
||||
System.out.println("Витрати палива: " + fuel + "л/100км");
|
||||
System.out.println("Об'єм двигуна: " + engineCapacity);
|
||||
System.out.println("Країна-виробник: " + country);
|
||||
System.out.println("~".repeat(40));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
public class Ford extends Car {
|
||||
|
||||
public String mark = "Ford";
|
||||
|
||||
public Ford(String _model, float speed, int price, int year, float fuel, float engineCapacity, String country) {
|
||||
super(_model, speed, price, year, fuel, engineCapacity, country);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void printValues() {
|
||||
System.out.println("Марка: Ford");
|
||||
super.printValues();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
public class Lexus extends Car {
|
||||
|
||||
public String mark = "Lexus";
|
||||
|
||||
public Lexus(String _model, float speed, int price, int year, float fuel, float engineCapacity, String country) {
|
||||
super(_model, speed, price, year, fuel, engineCapacity, country);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void printValues() {
|
||||
System.out.println("Марка: Lexus\nМатеринська компанія: Toyota");
|
||||
super.printValues();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,55 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
/*
|
||||
Номер заліковї книжки - 2518.
|
||||
|
||||
Завдання:
|
||||
9)Визначити ієрархію легкових автомобілів. Створити таксопарк.
|
||||
Порахувати вартість автопарку. Провести сортування автомобілів
|
||||
парку за витратами палива. Знайти автомобіль у компанії, що
|
||||
відповідає заданому діапазону швидкості автомобіля.
|
||||
*/
|
||||
|
||||
import java.util.Scanner;
|
||||
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println(" ".repeat(15) + "Таксопарк" + " ".repeat(15));
|
||||
System.out.println("~".repeat(40));
|
||||
|
||||
Volkswagen Car1 = new Volkswagen("Golf 4", 224, 5000, 2001, 6.8f, 1.6f, "Німеччина");
|
||||
Volkswagen Car2 = new Volkswagen("Passat", 240, 15000, 2007, 7.0f, 2.0f, "Німеччина");
|
||||
Toyota Car3 = new Toyota("Prius", 231, 12500, 2014, 4.3f, 1.8f, "Японія");
|
||||
Peguot Car4 = new Peguot("308", 220, 12000, 2007, 6.1f, 1.6f, "Франція");
|
||||
Lexus Car5 = new Lexus("LS", 250, 80000, 2022, 10.9f, 3.5f, "Японія");
|
||||
Skoda Car6 = new Skoda("Octavia", 220, 25000, 2022, 6.2f, 1.5f, "Чехія");
|
||||
Ford Car7 = new Ford("Focus", 242, 7800, 2014, 6.9f, 2.0f, "США");
|
||||
Bmw Car8 = new Bmw("5-Series", 250, 50000, 2018, 8.3f, 3.0f, "Німеччина");
|
||||
Car[] CarList = new Car[] {Car1, Car2, Car3, Car4, Car5, Car6, Car7, Car8};
|
||||
/*
|
||||
Використовується лямбда функція, щоб описати компаратор в Arrays.sort().
|
||||
*/
|
||||
java.util.Arrays.sort(CarList, (a, b) -> Float.compare(a.fuel, b.fuel));
|
||||
|
||||
System.out.println("Сортування автомобілів за витратами палива:");
|
||||
for (Car Car : CarList) {
|
||||
System.out.println(Car._model + ": " + Car.fuel + "л/100км");
|
||||
}
|
||||
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
System.out.print("\nВведіть діапазон швидкості автомобіля:\nвід ");
|
||||
float speed_down = scanner.nextFloat();
|
||||
System.out.print("до ");
|
||||
float speed_up = scanner.nextFloat();
|
||||
System.out.println("Автомобілі із заданою швидкістю:");
|
||||
for (Car Car : CarList) {
|
||||
if ((Car.speed >= speed_down) && (Car.speed <= speed_up)) {
|
||||
|
||||
System.out.println(Car._model + ": " + Car.speed + " км/год");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
public class Peguot extends Car {
|
||||
|
||||
public String mark = "Peguot";
|
||||
|
||||
public Peguot(String _model, float speed, int price, int year, float fuel, float engineCapacity, String country) {
|
||||
super(_model, speed, price, year, fuel, engineCapacity, country);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void printValues() {
|
||||
System.out.println("Марка: Peguot");
|
||||
super.printValues();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
public class Skoda extends Car {
|
||||
|
||||
public String mark = "Skoda";
|
||||
|
||||
public Skoda(String _model, float speed, int price, int year, float fuel, float engineCapacity, String country) {
|
||||
super(_model, speed, price, year, fuel, engineCapacity, country);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void printValues() {
|
||||
System.out.println("Марка: Skoda\nМатеринська компанія: Volkswagen");
|
||||
super.printValues();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
public class Toyota extends Car {
|
||||
|
||||
public String mark = "Toyota";
|
||||
|
||||
public Toyota(String _model, float speed, int price, int year, float fuel, float engineCapacity, String country) {
|
||||
super(_model, speed, price, year, fuel, engineCapacity, country);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void printValues() {
|
||||
System.out.println("Марка: Toyota");
|
||||
super.printValues();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
package lab6;
|
||||
|
||||
public class Volkswagen extends Car {
|
||||
|
||||
public String mark = "Volkswagen";
|
||||
|
||||
public Volkswagen(String _model, float speed, int price, int year, float fuel, float engineCapacity, String country) {
|
||||
super(_model, speed, price, year, fuel, engineCapacity, country);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void printValues() {
|
||||
System.out.println("Марка: Volkswagen");
|
||||
super.printValues();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,42 +0,0 @@
|
||||
package lab7;
|
||||
|
||||
public class Car {
|
||||
|
||||
protected String mark;
|
||||
protected String model;
|
||||
protected int price;
|
||||
protected int year;
|
||||
protected float fuel;
|
||||
|
||||
public Car(String mark, String model, int price, int year, float fuel) {
|
||||
setValues(mark, model, price, year, fuel);
|
||||
}
|
||||
|
||||
// Цей конструктор був створений окремо для класу ElectricCar
|
||||
public Car(String mark, String model, int price, int year) {
|
||||
setValues(mark, model, price, year);
|
||||
}
|
||||
|
||||
public void setValues(String mark, String model, int price, int year, float fuel) {
|
||||
this.mark = mark;
|
||||
this.model = model;
|
||||
this.price = price;
|
||||
this.year = year;
|
||||
this.fuel = fuel;
|
||||
}
|
||||
|
||||
public void setValues(String mark, String model, int price, int year) {
|
||||
this.mark = mark;
|
||||
this.model = model;
|
||||
this.price = price;
|
||||
this.year = year;
|
||||
}
|
||||
|
||||
public void printValues() {
|
||||
System.out.println("Марка: " + mark);
|
||||
System.out.println("Модель: " + model + " " + year);
|
||||
System.out.println("Ціна: " + price + "$");
|
||||
System.out.println("Витрати палива: " + fuel + "л/100км");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,137 +0,0 @@
|
||||
package lab7;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public class CarCollection<T extends Car> implements List<T> {
|
||||
private final LinkedList<T> carList;
|
||||
|
||||
public CarCollection() {
|
||||
carList = new LinkedList<>();
|
||||
}
|
||||
|
||||
public CarCollection(T car) {
|
||||
carList = new LinkedList<>();
|
||||
carList.add(car);
|
||||
}
|
||||
|
||||
public CarCollection(Collection<? extends T> c) {
|
||||
carList = new LinkedList<>(c);
|
||||
}
|
||||
|
||||
// Реалізація методів List
|
||||
@Override
|
||||
public int size() {
|
||||
return carList.size();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return carList.isEmpty();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean contains(Object o) {
|
||||
return carList.contains(o);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Iterator<T> iterator() {
|
||||
return carList.iterator();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object[] toArray() {
|
||||
return carList.toArray();
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T1> T1[] toArray(T1[] a) {
|
||||
return carList.toArray(a);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean add(T t) {
|
||||
return carList.add(t);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean remove(Object o) {
|
||||
return carList.remove(o);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean containsAll(Collection<?> c) {
|
||||
return carList.containsAll(c);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean addAll(Collection<? extends T> c) {
|
||||
return carList.addAll(c);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean addAll(int index, Collection<? extends T> c) {
|
||||
return carList.addAll(index, c);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean removeAll(Collection<?> c) {
|
||||
return carList.removeAll(c);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean retainAll(Collection<?> c) {
|
||||
return carList.retainAll(c);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void clear() {
|
||||
carList.clear();
|
||||
}
|
||||
|
||||
@Override
|
||||
public T get(int index) {
|
||||
return carList.get(index);
|
||||
}
|
||||
|
||||
@Override
|
||||
public T set(int index, T element) {
|
||||
return carList.set(index, element);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void add(int index, T element) {
|
||||
carList.add(index, element);
|
||||
}
|
||||
|
||||
@Override
|
||||
public T remove(int index) {
|
||||
return carList.remove(index);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int indexOf(Object o) {
|
||||
return carList.indexOf(o);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int lastIndexOf(Object o) {
|
||||
return carList.lastIndexOf(o);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ListIterator<T> listIterator() {
|
||||
return carList.listIterator();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ListIterator<T> listIterator(int index) {
|
||||
return carList.listIterator(index);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<T> subList(int fromIndex, int toIndex) {
|
||||
return carList.subList(fromIndex, toIndex);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
package lab7;
|
||||
|
||||
public class CombatsCar extends Car {
|
||||
|
||||
private final int crew;
|
||||
private final float weight;
|
||||
private final String country;
|
||||
|
||||
public CombatsCar(String mark, String model, int price, int year, float fuel, int crew, float weight, String country) {
|
||||
super(mark, model, price, year, fuel);
|
||||
this.crew = crew;
|
||||
this.weight = weight;
|
||||
this.country = country;
|
||||
}
|
||||
|
||||
public String getCountry() {
|
||||
return country;
|
||||
}
|
||||
|
||||
public void printValues() {
|
||||
super.printValues();
|
||||
System.out.println("--- Особливості бойової машини ---");
|
||||
System.out.println("Екіпаж: " + crew + " людей");
|
||||
System.out.println("Бойова маса: " + weight + "т");
|
||||
System.out.println("Країна-виробник: " + country);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
package lab7;
|
||||
|
||||
public class ElectricCar extends Car {
|
||||
|
||||
private final float electricity;
|
||||
private final float chargingSpeed;
|
||||
|
||||
public ElectricCar(String mark, String model, int price, int year, float electricity, int chargingSpeed) {
|
||||
super(mark, model, price, year);
|
||||
this.electricity = electricity;
|
||||
this.chargingSpeed = chargingSpeed;
|
||||
}
|
||||
|
||||
public float getElectricity() {
|
||||
return electricity;
|
||||
}
|
||||
|
||||
public void printValues() {
|
||||
super.printValues();
|
||||
System.out.println("-Особливості електрокару-");
|
||||
System.out.println("Споживання електроенергії: " + electricity + " кВт·год/100км");
|
||||
System.out.println("Швидкість зарядки (з 0% до 100%): " + chargingSpeed + " хв");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,73 +0,0 @@
|
||||
package lab7;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
import java.util.Scanner;
|
||||
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
// Використання пустого конструктора CarCollection
|
||||
CarCollection<SportsCar> sportsCars = new CarCollection<>();
|
||||
sportsCars.add(new SportsCar("Ferrari", "458 Italia", 230000, 2015, 9.8f, 562, 202, 4.5f));
|
||||
sportsCars.add(new SportsCar("Lamborghini", "Huracan", 260000, 2020, 9.5f, 640, 211, 5.2f));
|
||||
sportsCars.add(new SportsCar("Porsche", "911", 150000, 2018, 14.3f, 450, 191, 3.0f));
|
||||
sportsCars.add(new SportsCar("McLaren", "570S", 200000, 2017, 11.2f, 562, 204, 3.8f));
|
||||
sportsCars.add(new SportsCar("Aston Martin", "Vantage", 150000, 2021, 12.3f, 503, 195, 4.0f));
|
||||
|
||||
// Сортування спорткарів за ціною
|
||||
System.out.println("~~~~~ Відсортовані спорткари за ціною ~~~~~");
|
||||
sportsCars.sort(Comparator.comparingInt(SportsCar::getPrice));
|
||||
|
||||
for (int i = sportsCars.size() - 1; i >= 0; i--) {
|
||||
sportsCars.get(i).printValues();
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
// Використання конструктора CarCollection з передаванням в його лише один об'єкт
|
||||
CarCollection<CombatsCar> combatsCars = new CarCollection<>(new CombatsCar("Humvee", "M1114", 220000, 1995, 6.5f, 4, 5.5f, "США"));
|
||||
combatsCars.add(new CombatsCar("Puma", "IFV", 3500000, 2010, 10.7f, 6, 31f, "Німеччина"));
|
||||
combatsCars.add(new CombatsCar("Warrior", "IFV", 4500000, 1988, 12.4f, 3, 29f, "Великобританія"));
|
||||
combatsCars.add(new CombatsCar("ZBD", "05", 1200000, 2011, 9.4f, 4, 25f, "Китай"));
|
||||
combatsCars.add(new CombatsCar("VBCI", "IFV", 5000000, 2008, 10.7f, 8, 32f, "Франція"));
|
||||
|
||||
// Пошук бойової машини за країною-виробником
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
System.out.print("Введіть країну-виробницю бойової машини: ");
|
||||
String userCountry = scanner.nextLine();
|
||||
|
||||
System.out.println("Результати пошуку:\n");
|
||||
for (CombatsCar car : combatsCars) {
|
||||
if (car.getCountry().equals(userCountry)) {
|
||||
car.printValues();
|
||||
}
|
||||
}
|
||||
|
||||
ArrayList<ElectricCar> electricCarsList = new ArrayList<>();
|
||||
electricCarsList.add(new ElectricCar("Tesla", "Model S", 80000, 2022, 21.5f, 45));
|
||||
electricCarsList.add(new ElectricCar("Chevrolet", "Bolt", 35000, 2021, 28.0f, 60));
|
||||
electricCarsList.add(new ElectricCar("Nissan", "Leaf", 32000, 2021, 24.0f, 40));
|
||||
electricCarsList.add(new ElectricCar("BMW", "i3", 45000, 2021, 19.5f, 30));
|
||||
electricCarsList.add(new ElectricCar("Hyundai", "Kona", 42000, 2022, 22.0f, 50));
|
||||
|
||||
// Використання конструктора CarCollection з передаванням в його колекцію об'єктів
|
||||
CarCollection<ElectricCar> electricCars = new CarCollection<>(electricCarsList);
|
||||
|
||||
// Пошук автомобіля по діапазону споживання електроенергії
|
||||
System.out.println("\nВведіть діапазон споживання електроенергії (кВт·год/100км):");
|
||||
System.out.print("від ");
|
||||
float electricityLowerLimit = scanner.nextFloat();
|
||||
System.out.print("до ");
|
||||
float electricityUpperLimit = scanner.nextFloat();
|
||||
|
||||
System.out.println("Результати пошуку:\n");
|
||||
for (ElectricCar car : electricCars) {
|
||||
if (car.getElectricity() < electricityUpperLimit & car.getElectricity() > electricityLowerLimit) {
|
||||
car.printValues();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
package lab7;
|
||||
|
||||
public class SportsCar extends Car {
|
||||
|
||||
private final int power;
|
||||
private final float speed;
|
||||
private final float engineCapacity;
|
||||
|
||||
public SportsCar(String mark, String model, int price, int year, float fuel, int power, float speed, float engineCapacity) {
|
||||
super(mark, model, price, year, fuel);
|
||||
this.power = power;
|
||||
this.speed = speed;
|
||||
this.engineCapacity = engineCapacity;
|
||||
}
|
||||
|
||||
public int getPrice() {
|
||||
return price;
|
||||
}
|
||||
|
||||
public void printValues() {
|
||||
super.printValues();
|
||||
System.out.println("-Особливості спорткару-");
|
||||
System.out.println("Потужість: " + power + " кінських сил");
|
||||
System.out.println("Максимальна швидкість: " + speed + " км/год");
|
||||
System.out.println("Об'єм двигуна: " + engineCapacity + "л");
|
||||
}
|
||||
|
||||
}
|
||||
231
src/Lab5.java
Normal file
231
src/Lab5.java
Normal file
@@ -0,0 +1,231 @@
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
class Letter {
|
||||
private char character;
|
||||
|
||||
public Letter(char character) {
|
||||
this.character = character;
|
||||
}
|
||||
|
||||
public char getCharacter() {
|
||||
return character;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.valueOf(character);
|
||||
}
|
||||
}
|
||||
|
||||
class Word {
|
||||
private List<Letter> letters;
|
||||
|
||||
public Word(List<Letter> letters) {
|
||||
this.letters = letters;
|
||||
}
|
||||
|
||||
public List<Letter> getLetters() {
|
||||
return letters;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
StringBuilder wordBuilder = new StringBuilder();
|
||||
for (Letter letter : letters) {
|
||||
wordBuilder.append(letter.getCharacter());
|
||||
}
|
||||
return wordBuilder.toString();
|
||||
}
|
||||
}
|
||||
|
||||
class Sentence {
|
||||
private List<Object> components;
|
||||
|
||||
public Sentence(List<Object> components) {
|
||||
this.components = components;
|
||||
}
|
||||
|
||||
public List<Object> getComponents() {
|
||||
return components;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
StringBuilder sentenceBuilder = new StringBuilder();
|
||||
for (Object component : components) {
|
||||
if (component instanceof Word) {
|
||||
List<Letter> letters = ((Word) component).getLetters();
|
||||
for (Letter letter : letters) {
|
||||
sentenceBuilder.append(letter.getCharacter());
|
||||
}
|
||||
} else if (component instanceof PunctuationMark) {
|
||||
sentenceBuilder.append(((PunctuationMark) component).getMark());
|
||||
}
|
||||
sentenceBuilder.append(" ");
|
||||
}
|
||||
return sentenceBuilder.toString().trim();
|
||||
}
|
||||
}
|
||||
|
||||
class PunctuationMark {
|
||||
private char mark;
|
||||
|
||||
public PunctuationMark(char mark) {
|
||||
this.mark = mark;
|
||||
}
|
||||
|
||||
public char getMark() {
|
||||
return mark;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.valueOf(mark);
|
||||
}
|
||||
}
|
||||
|
||||
class Text {
|
||||
private List<Sentence> sentences;
|
||||
|
||||
public Text(List<Sentence> sentences) {
|
||||
this.sentences = sentences;
|
||||
}
|
||||
|
||||
public List<Sentence> getSentences() {
|
||||
return sentences;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
StringBuilder textBuilder = new StringBuilder();
|
||||
for (Sentence sentence : sentences) {
|
||||
textBuilder.append(sentence.toString()).append(". ");
|
||||
}
|
||||
return textBuilder.toString().trim();
|
||||
}
|
||||
}
|
||||
|
||||
public class Lab5 {
|
||||
public static void main(String[] args) {
|
||||
System.out.println("C17 = " + 2425%17);
|
||||
StringBuffer sentence = new StringBuffer("об'єктно-орієнтована мова програмування , випущена 1995 року компанією" +
|
||||
" Сан Майкросістемс , як основний компонент платформи Джава." +
|
||||
" З 2009 року мовою займається компанія Оракл , яка того року придбала Сан Майкросістемс. В офіційній" +
|
||||
" реалізації Джава-програми компілюються у байт-код , який при виконанні інтерпретується віртуальною" +
|
||||
" машиною для конкретної платформи");
|
||||
|
||||
// Заміна послідовності табуляцій та пробілів одним пробілом
|
||||
String cleanedText = replaceTabsAndSpaces(sentence.toString());
|
||||
|
||||
// Розбиття тексту на речення
|
||||
String[] sentenceArray = cleanedText.split("\\.");
|
||||
|
||||
List<Sentence> sentences = new ArrayList<>();
|
||||
List<Character> punctuationMarks = new ArrayList<>();
|
||||
|
||||
for (String s : sentenceArray) {
|
||||
// Розбиття речення на слова та розділові знаки
|
||||
String[] components = s.trim().split("\\s+");
|
||||
|
||||
List<Object> sentenceComponents = new ArrayList<>();
|
||||
|
||||
for (String component : components) {
|
||||
if (isPunctuationMark(component)) {
|
||||
// Додавання розділових знаків
|
||||
char mark = component.charAt(component.length() - 1);
|
||||
punctuationMarks.add(mark);
|
||||
sentenceComponents.add(new PunctuationMark(mark));
|
||||
} else {
|
||||
// Створення слова
|
||||
List<Letter> letters = new ArrayList<>();
|
||||
for (char c : component.toCharArray()) {
|
||||
letters.add(new Letter(c));
|
||||
}
|
||||
sentenceComponents.add(new Word(letters));
|
||||
}
|
||||
}
|
||||
|
||||
sentences.add(new Sentence(sentenceComponents));
|
||||
}
|
||||
|
||||
// Створення тексту
|
||||
Text text = new Text(sentences);
|
||||
|
||||
// Виведення букв, слів та речень
|
||||
List<Sentence> allSentences = text.getSentences();
|
||||
for (Sentence s : allSentences) {
|
||||
List<Object> components = s.getComponents();
|
||||
|
||||
for (Object component : components) {
|
||||
if (component instanceof Word) {
|
||||
System.out.println("Слово: " + component);
|
||||
List<Letter> letters = ((Word) component).getLetters();
|
||||
for (Letter letter : letters) {
|
||||
System.out.println("Літера: " + letter.getCharacter());
|
||||
}
|
||||
} else if (component instanceof PunctuationMark) {
|
||||
System.out.println("Розділовий знак: " + ((PunctuationMark) component).getMark());
|
||||
}
|
||||
}
|
||||
|
||||
System.out.println("Речення: " + s.toString());
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
// Виведення розділових знаків
|
||||
System.out.println("Розділові знаки:");
|
||||
for (Character mark : punctuationMarks) {
|
||||
System.out.println(mark);
|
||||
}
|
||||
|
||||
// Виведення масиву речень з пробілами
|
||||
System.out.println("Масив речень:");
|
||||
for (Sentence s : allSentences) {
|
||||
System.out.println(s.toString());
|
||||
}
|
||||
|
||||
// Видалення слів заданої довжини, починаючи з приголосної літери
|
||||
removeWords(allSentences);
|
||||
|
||||
// Виведення оновленого тексту
|
||||
System.out.println("Оновлений текст:");
|
||||
System.out.println(text.toString());
|
||||
|
||||
}
|
||||
|
||||
|
||||
// Функція для заміни табуляцій та пробілів одним пробілом
|
||||
private static String replaceTabsAndSpaces(String text) {
|
||||
return text.replaceAll("\\s+", " ");
|
||||
}
|
||||
|
||||
// Функція для перевірки, чи є рядок розділовим знаком
|
||||
private static boolean isPunctuationMark(String text) {
|
||||
return text.matches(".*[,.]$");
|
||||
}
|
||||
|
||||
// Функція для видалення слів заданої довжини, починаючи з приголосної літери
|
||||
private static void removeWords(List<Sentence> sentences) {
|
||||
String consonants = "бвгґджзклмнпрстфхцчшщ";
|
||||
for (Sentence sentence : sentences) {
|
||||
List<Object> components = sentence.getComponents();
|
||||
List<Object> componentsToRemove = new ArrayList<>();
|
||||
|
||||
for (Object component : components) {
|
||||
if (component instanceof Word) {
|
||||
Word word = (Word) component;
|
||||
List<Letter> letters = word.getLetters();
|
||||
int wordLength = letters.size();
|
||||
char firstLetter = letters.get(0).getCharacter();
|
||||
|
||||
if ((wordLength > 5) && (wordLength < 9) && consonants.contains(String.valueOf(firstLetter))) {
|
||||
componentsToRemove.add(component);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
components.removeAll(componentsToRemove);
|
||||
}
|
||||
}
|
||||
}
|
||||
117
src/Lab6.java
Normal file
117
src/Lab6.java
Normal file
@@ -0,0 +1,117 @@
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.Scanner;
|
||||
|
||||
class Train {
|
||||
private List<PassengerCarriage> carriages;
|
||||
|
||||
public Train(List<PassengerCarriage> carriages) {
|
||||
this.carriages = carriages;
|
||||
}
|
||||
|
||||
public int getTotalPassengerCount() {
|
||||
int totalPassengerCount = 0;
|
||||
for (PassengerCarriage carriage : carriages) {
|
||||
totalPassengerCount += carriage.getPassengerCount();
|
||||
}
|
||||
return totalPassengerCount;
|
||||
}
|
||||
|
||||
public int getTotalLuggageCount() {
|
||||
int totalLuggageCount = 0;
|
||||
for (PassengerCarriage carriage : carriages) {
|
||||
totalLuggageCount += carriage.getLuggageCount();
|
||||
}
|
||||
return totalLuggageCount;
|
||||
}
|
||||
|
||||
public void sortCarriagesByComfortLevel() {
|
||||
Collections.sort(carriages, new Comparator<PassengerCarriage>() {
|
||||
@Override
|
||||
public int compare(PassengerCarriage c1, PassengerCarriage c2) {
|
||||
return c1.getComfortLevel() - c2.getComfortLevel();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public PassengerCarriage findCarriageByPassengerCount(int minPassengers, int maxPassengers) {
|
||||
for (PassengerCarriage carriage : carriages) {
|
||||
int passengerCount = carriage.getPassengerCount();
|
||||
if (passengerCount >= minPassengers && passengerCount <= maxPassengers) {
|
||||
return carriage;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
class PassengerCarriage {
|
||||
private int passengerCount;
|
||||
private int luggageCount;
|
||||
private int comfortLevel;
|
||||
|
||||
public PassengerCarriage(int passengerCount, int luggageCount, int comfortLevel) {
|
||||
this.passengerCount = passengerCount;
|
||||
this.luggageCount = luggageCount;
|
||||
this.comfortLevel = comfortLevel;
|
||||
}
|
||||
|
||||
public int getPassengerCount() {
|
||||
return passengerCount;
|
||||
}
|
||||
|
||||
public int getLuggageCount() {
|
||||
return luggageCount;
|
||||
}
|
||||
|
||||
public int getComfortLevel() {
|
||||
return comfortLevel;
|
||||
}
|
||||
}
|
||||
|
||||
public class Lab6 {
|
||||
public static void main(String[] args) {
|
||||
// Задаємо характеристики вагонів
|
||||
List<PassengerCarriage> carriages = new ArrayList<>();
|
||||
carriages.add(new PassengerCarriage(30, 64, 3));
|
||||
carriages.add(new PassengerCarriage(53, 126, 2));
|
||||
carriages.add(new PassengerCarriage(89, 164, 1));
|
||||
|
||||
Train train = new Train(carriages);
|
||||
|
||||
int totalPassengerCount = train.getTotalPassengerCount();
|
||||
int totalLuggageCount = train.getTotalLuggageCount();
|
||||
|
||||
System.out.println("Кількість всіх пасажирів: " + totalPassengerCount);
|
||||
System.out.println("Кількість всього багажу: " + totalLuggageCount);
|
||||
|
||||
train.sortCarriagesByComfortLevel();
|
||||
|
||||
System.out.println("Вагони відсортовані за рівнем комфорту:");
|
||||
for (PassengerCarriage carriage : carriages) {
|
||||
System.out.println("Кількість пасажирів: " + carriage.getPassengerCount() +
|
||||
", Рівень комфорту: " + carriage.getComfortLevel());
|
||||
}
|
||||
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
|
||||
System.out.print("Введіть мінімальну кількість пасажирів: ");
|
||||
int minPassengers = scanner.nextInt();
|
||||
System.out.print("Введіть максимальну кількість пасажирів: ");
|
||||
int maxPassengers = scanner.nextInt();
|
||||
|
||||
PassengerCarriage carriage = train.findCarriageByPassengerCount(minPassengers, maxPassengers);
|
||||
|
||||
if (carriage != null) {
|
||||
System.out.println("Вагон знайдений за кількість пасажирів між " +
|
||||
minPassengers + " та " + maxPassengers);
|
||||
System.out.println("Кількість пасажирів: " + carriage.getPassengerCount() +
|
||||
", Рівень комфорту: " + carriage.getComfortLevel());
|
||||
} else {
|
||||
System.out.println("Вагон не знайдений за кількістю пасажирів " +
|
||||
minPassengers + " між " + maxPassengers);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user