mirror of
https://github.com/ASDjonok/OOP_IO-2x_2023.git
synced 2026-04-01 21:21:50 +03:00
Compare commits
18 Commits
ІО-25/18-М
...
ІО-21/31-Ц
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0e7941c21e | ||
|
|
41ea5f841a | ||
|
|
e38652d12f | ||
|
|
6d7a81dee2 | ||
|
|
ab62df0a7f | ||
|
|
4417dfe95a | ||
|
|
14c58d0cc4 | ||
|
|
afc13cf9f8 | ||
|
|
e910ee6e4d | ||
|
|
6ab6cc17db | ||
|
|
25173d66d1 | ||
|
|
41ad598b79 | ||
|
|
13e1a61ad9 | ||
|
|
f692ae7588 | ||
|
|
429bcc7b3d | ||
|
|
4b159fa22b | ||
|
|
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_19" default="true" project-jdk-name="openjdk-19" 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>
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<module type="JAVA_MODULE" version="4">
|
<module type="JAVA_MODULE" version="4">
|
||||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||||
<exclude-output />
|
<exclude-output />
|
||||||
<content url="file://$MODULE_DIR$">
|
<content url="file://$MODULE_DIR$">
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||||
</content>
|
</content>
|
||||||
<orderEntry type="inheritedJdk" />
|
<orderEntry type="inheritedJdk" />
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
</component>
|
</component>
|
||||||
</module>
|
</module>
|
||||||
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.
@@ -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,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 + "л");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
42
src/Main.java
Normal file
42
src/Main.java
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
System.out.println(args[2]);
|
||||||
|
System.out.println("Hello world!");
|
||||||
|
// System.out.println(1);
|
||||||
|
|
||||||
|
int a = 1;
|
||||||
|
int b = 2;
|
||||||
|
int c = 1;
|
||||||
|
int d = 1;
|
||||||
|
|
||||||
|
System.out.println(2&1);
|
||||||
|
System.out.println(2|1);
|
||||||
|
int aa = 2;
|
||||||
|
|
||||||
|
/*if (aa) {
|
||||||
|
|
||||||
|
}*/
|
||||||
|
|
||||||
|
// System.out.println("a"&"b");
|
||||||
|
System.out.println('a'&'b');
|
||||||
|
|
||||||
|
if ((a > b) & MyBooleanMethod()) {
|
||||||
|
System.out.println("?????????????????????????");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
static boolean MyBooleanMethod() {
|
||||||
|
System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
void myFunction() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
int myFunction2() {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
20
src/encapsulationInheritancePolymorphism/Encapsulation.java
Normal file
20
src/encapsulationInheritancePolymorphism/Encapsulation.java
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
package encapsulationInheritancePolymorphism;
|
||||||
|
|
||||||
|
public class Encapsulation {
|
||||||
|
/*private*/ int field;
|
||||||
|
private int field2;
|
||||||
|
// int a = 1;
|
||||||
|
|
||||||
|
public void myMethodForTheField () {
|
||||||
|
System.out.println(field);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void myMethodForTheField2 () {
|
||||||
|
System.out.println(field);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void myMethodForTheFieldAndTheField2 () {
|
||||||
|
System.out.println(field);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
package encapsulationInheritancePolymorphism;
|
||||||
|
|
||||||
|
public class EncapsulationInheritancePolymorphism {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
int a = 1;
|
||||||
|
// var b = 2;
|
||||||
|
// System.out.println(b);
|
||||||
|
}
|
||||||
|
}
|
||||||
14
src/encapsulationInheritancePolymorphism/Main.java
Normal file
14
src/encapsulationInheritancePolymorphism/Main.java
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
package encapsulationInheritancePolymorphism;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Student student = new Student();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//...
|
||||||
|
|
||||||
|
student.setFaculty("FPM", "MO-22");
|
||||||
|
}
|
||||||
|
}
|
||||||
18
src/encapsulationInheritancePolymorphism/Student.java
Normal file
18
src/encapsulationInheritancePolymorphism/Student.java
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
package encapsulationInheritancePolymorphism;
|
||||||
|
|
||||||
|
public class Student {
|
||||||
|
private String name;
|
||||||
|
private String surname;
|
||||||
|
private String group;
|
||||||
|
private String faculty;
|
||||||
|
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFaculty(String faculty, String group) {
|
||||||
|
this.faculty = faculty;
|
||||||
|
this.group = group;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.inheritance;
|
||||||
|
|
||||||
|
public class ElectricEngine extends Engine {
|
||||||
|
private String batteryType;
|
||||||
|
|
||||||
|
/*private class Engine {
|
||||||
|
private int power;
|
||||||
|
}*/
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.inheritance;
|
||||||
|
|
||||||
|
public class Engine {
|
||||||
|
private int power;
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.inheritance;
|
||||||
|
|
||||||
|
public class FuelEngine extends Engine {
|
||||||
|
private String fuelType;
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.inheritance;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
|
||||||
|
FuelEngine fuelEngine = new FuelEngine();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism;
|
||||||
|
|
||||||
|
public class ElectricEngine extends Engine {
|
||||||
|
private String batteryType;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getPower() {
|
||||||
|
return 20;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*private class Engine {
|
||||||
|
private int power;
|
||||||
|
}*/
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism;
|
||||||
|
|
||||||
|
public class Engine {
|
||||||
|
private int power;
|
||||||
|
|
||||||
|
public int getPower() {
|
||||||
|
return power;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism;
|
||||||
|
|
||||||
|
public class FuelEngine extends Engine {
|
||||||
|
private String fuelType;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getPower() {
|
||||||
|
return 50;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism;
|
||||||
|
|
||||||
|
/*import encapsulationInheritancePolymorphism.inheritance.ElectricEngine;
|
||||||
|
import encapsulationInheritancePolymorphism.inheritance.FuelEngine;*/
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
/*encapsulationInheritancePolymorphism.inheritance.*/ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
|
||||||
|
/*encapsulationInheritancePolymorphism.inheritance.*/FuelEngine fuelEngine = new FuelEngine();
|
||||||
|
|
||||||
|
Engine engine1 = fuelEngine;
|
||||||
|
|
||||||
|
Engine[] engines = {
|
||||||
|
electricEngine,
|
||||||
|
fuelEngine
|
||||||
|
};
|
||||||
|
|
||||||
|
for (Engine engine : engines) {
|
||||||
|
System.out.println(engine.getPower());
|
||||||
|
}
|
||||||
|
|
||||||
|
/*for (int i = 0; i < engines.length; i++) {
|
||||||
|
System.out.println(engines[i].getPower());
|
||||||
|
}*/
|
||||||
|
|
||||||
|
// +
|
||||||
|
int a = 1;
|
||||||
|
int b = 1;
|
||||||
|
int c = a + b;
|
||||||
|
System.out.println(c);
|
||||||
|
|
||||||
|
|
||||||
|
String sA = "1";
|
||||||
|
String sB = "1";
|
||||||
|
String sC = sA + sB;
|
||||||
|
System.out.println(sC);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
|
||||||
|
|
||||||
|
public class ElectricEngine extends Engine {
|
||||||
|
private String batteryType;
|
||||||
|
private int chargeLevel = 9;
|
||||||
|
private int criticalChargeLevel = 10;
|
||||||
|
private float coefficientCriticalPowerCut = 0.1f;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getPower() {
|
||||||
|
return chargeLevel > criticalChargeLevel
|
||||||
|
? super.getPower()
|
||||||
|
: (int) (super.getPower() * coefficientCriticalPowerCut);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*private class Engine {
|
||||||
|
private int power;
|
||||||
|
}*/
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
|
||||||
|
|
||||||
|
public class Engine {
|
||||||
|
private int power = 100;
|
||||||
|
|
||||||
|
public int getPower() {
|
||||||
|
return power;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
|
||||||
|
|
||||||
|
public class FuelEngine extends Engine {
|
||||||
|
private String fuelType;
|
||||||
|
|
||||||
|
/*public int getPower() {
|
||||||
|
return 50;
|
||||||
|
}*/
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
|
||||||
|
|
||||||
|
/*import encapsulationInheritancePolymorphism.inheritance.ElectricEngine;
|
||||||
|
import encapsulationInheritancePolymorphism.inheritance.FuelEngine;*/
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
/*encapsulationInheritancePolymorphism.inheritance.*/
|
||||||
|
ElectricEngine electricEngine = new ElectricEngine(); // створення нового об'єкту (екземпляру) класу ElectricEngine
|
||||||
|
/*encapsulationInheritancePolymorphism.inheritance.*/
|
||||||
|
FuelEngine fuelEngine = new FuelEngine();
|
||||||
|
|
||||||
|
Engine engine1 = fuelEngine;
|
||||||
|
|
||||||
|
Engine[] engines = {
|
||||||
|
electricEngine,
|
||||||
|
fuelEngine
|
||||||
|
};
|
||||||
|
|
||||||
|
for (Engine engine : engines) {
|
||||||
|
System.out.println(engine.getPower());
|
||||||
|
}
|
||||||
|
|
||||||
|
/*for (int i = 0; i < engines.length; i++) {
|
||||||
|
System.out.println(engines[i].getPower());
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
package encapsulationInheritancePolymorphism.polymorphism.overload;
|
||||||
|
|
||||||
|
public class MyClassForOverloadExample {
|
||||||
|
void myMethod(int a) {
|
||||||
|
System.out.println("Integer: " + a);
|
||||||
|
}
|
||||||
|
|
||||||
|
void myMethod(double a) {
|
||||||
|
System.out.println("Double: " + a);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
MyClassForOverloadExample overload = new MyClassForOverloadExample();
|
||||||
|
overload.myMethod(1);
|
||||||
|
overload.myMethod(0.1);
|
||||||
|
}
|
||||||
|
}
|
||||||
45
src/lab1.java
Normal file
45
src/lab1.java
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
import java.util.Scanner;
|
||||||
|
public class lab1 {
|
||||||
|
public static void main(String[] args){
|
||||||
|
Scanner scanner = new Scanner(System.in);
|
||||||
|
|
||||||
|
// 2131 % 7 = 3; C7 = long
|
||||||
|
long n, m, a, b;
|
||||||
|
float result, sum;
|
||||||
|
while(true) {
|
||||||
|
try {
|
||||||
|
System.out.println("Введіть n типу long:");
|
||||||
|
n = scanner.nextLong();
|
||||||
|
System.out.println("Введіть m типу long:");
|
||||||
|
m = scanner.nextLong();
|
||||||
|
System.out.println("Введіть a типу long:");
|
||||||
|
a = scanner.nextLong();
|
||||||
|
System.out.println("Введіть b типу long:");
|
||||||
|
b = scanner.nextLong();
|
||||||
|
break;
|
||||||
|
}catch(Exception e){
|
||||||
|
scanner.nextLine();
|
||||||
|
System.out.println("Введене неправильне число");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2131 % 5 = 1; O2 = /
|
||||||
|
// 2131 % 2 = 1; O1 = -
|
||||||
|
// 2131 % 3 = 1; C = 1
|
||||||
|
result = 0;
|
||||||
|
byte C = 1;
|
||||||
|
for(long i = a; i <= n; i++){
|
||||||
|
sum = 0;
|
||||||
|
for(long j = b; j <= m; j++){
|
||||||
|
if (i - C == 0 || j == 0){
|
||||||
|
System.out.println("Помилка ділення на 0");
|
||||||
|
System.exit(0);
|
||||||
|
}
|
||||||
|
sum += (float) (i/j)/(i-C);
|
||||||
|
}
|
||||||
|
result += sum;
|
||||||
|
}
|
||||||
|
System.out.println(result);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
51
src/lab2.java
Normal file
51
src/lab2.java
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
public class lab2 {
|
||||||
|
public static void main(String[] args){
|
||||||
|
|
||||||
|
// 2131 % 7 = 3; C7 = int
|
||||||
|
|
||||||
|
int[][] matrix = {
|
||||||
|
{1,2,3,4,5},
|
||||||
|
{1,3,5,7,9},
|
||||||
|
{10,1,20,2,5}
|
||||||
|
};
|
||||||
|
|
||||||
|
int rows = matrix.length;
|
||||||
|
int column = matrix[0].length;
|
||||||
|
System.out.println("Матриця:");
|
||||||
|
for(int i = 0; i < rows; i++){
|
||||||
|
for (int j = 0; j < column; j++){
|
||||||
|
System.out.print(matrix[i][j]+" ");
|
||||||
|
}
|
||||||
|
System.out.println();
|
||||||
|
}
|
||||||
|
System.out.println();
|
||||||
|
// 2131 % 5 = 1; C5 = транспортування;
|
||||||
|
|
||||||
|
int[][] transportMatrix = new int[column][rows];
|
||||||
|
|
||||||
|
|
||||||
|
for(int i = 0; i < rows; i++){
|
||||||
|
for(int j = 0; j < column; j++){
|
||||||
|
transportMatrix[j][i] = matrix[i][j];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
System.out.println("Транспонована матриця:");
|
||||||
|
for (int i = 0; i < column; i++){
|
||||||
|
for (int j = 0; j < rows; j++){
|
||||||
|
System.out.print(transportMatrix[i][j]+" ");
|
||||||
|
}
|
||||||
|
System.out.println();
|
||||||
|
}
|
||||||
|
System.out.println();
|
||||||
|
|
||||||
|
// 2131 % 11 = 8; C11 = Знайти середнє значення елементів кожного рядка матриці;
|
||||||
|
int sum;
|
||||||
|
for(int i = 0; i < rows; i++){
|
||||||
|
sum = 0;
|
||||||
|
for(int j = 0; j < column; j++){
|
||||||
|
sum += matrix[i][j];
|
||||||
|
}
|
||||||
|
System.out.println("Середнє арифметичне " + (i+1) + " строки = " + (float)sum/column);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
23
src/lab3.js
Normal file
23
src/lab3.js
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
//C17 = 2131 % 17 = 6; Відсортувати слова заданого тексту за зростанням кількості голосних літер.
|
||||||
|
|
||||||
|
import create from 'prompt-sync';
|
||||||
|
const prompt = create();
|
||||||
|
|
||||||
|
class Sentence {
|
||||||
|
constructor() {
|
||||||
|
this.sentence = prompt("Input sentence: ");
|
||||||
|
}
|
||||||
|
sort() {
|
||||||
|
const words = this.sentence.split(/[\s.?!,;]/).filter((word) => word);
|
||||||
|
const vowels = /[AaEeiOoUuYy]/g
|
||||||
|
const sortedWords = words.sort((first, second) => {
|
||||||
|
const vowelsOfFirstWord = first.match(vowels)? first.match(vowels): [];
|
||||||
|
const vowelsOfSecondWord = second.match(vowels)? second.match(vowels): [];
|
||||||
|
return vowelsOfFirstWord.length-vowelsOfSecondWord.length;
|
||||||
|
});
|
||||||
|
return sortedWords.join(' ');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const sentence = new Sentence;
|
||||||
|
console.log(sentence.sort())
|
||||||
46
src/lab4.js
Normal file
46
src/lab4.js
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
//C11 = 2131%11 = 8; Визначити клас меблі, який складається як мінімум з 5-и полів.
|
||||||
|
|
||||||
|
//Створимо клас меблів
|
||||||
|
class Furniture{
|
||||||
|
constructor({model, width, height, length, price}) { //об'єкт класа буде створений на основі об'єкта для зручості, тому використовуємо деструктороване присвоєння, щоб не брати зайве.
|
||||||
|
this.model = model;
|
||||||
|
this.width = width;
|
||||||
|
this.height = height;
|
||||||
|
this.length = length;
|
||||||
|
this.price = price;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//Створимо об'єкти майбутніх об'єктів класу меблі
|
||||||
|
|
||||||
|
const chair = {
|
||||||
|
model: 'chair',
|
||||||
|
width: 1,
|
||||||
|
length: 1,
|
||||||
|
height: 1,
|
||||||
|
price: 500,
|
||||||
|
};
|
||||||
|
|
||||||
|
const table = {
|
||||||
|
model: 'table',
|
||||||
|
width: 3,
|
||||||
|
length: 2,
|
||||||
|
height: 1.5,
|
||||||
|
price: 1000,
|
||||||
|
};
|
||||||
|
|
||||||
|
const wardrobe = {
|
||||||
|
model: 'wardrobe',
|
||||||
|
width: 5,
|
||||||
|
length: 1,
|
||||||
|
height: 3,
|
||||||
|
price: 750,
|
||||||
|
};
|
||||||
|
|
||||||
|
//Створимо масив що складається з об'єктів класу
|
||||||
|
const furniture = [new Furniture(wardrobe), new Furniture(chair), new Furniture(table)];
|
||||||
|
|
||||||
|
//Відсрортуємо масив за алфавітним порядком;
|
||||||
|
console.log(furniture.sort((first, second) => first.model > second.model ? 1 : first.model < second.model ? -1 : 0));
|
||||||
|
//Відсортуємл масив за ціною за спаданням
|
||||||
|
console.log(furniture.sort((first, second) => second.price - first.price));
|
||||||
103
src/lab5.js
Normal file
103
src/lab5.js
Normal file
@@ -0,0 +1,103 @@
|
|||||||
|
class Text {
|
||||||
|
constructor(text) {
|
||||||
|
this.text = [];
|
||||||
|
const sentences = text.split(/[.?!;]/).filter((sentence) => sentence);
|
||||||
|
for (const sentence of sentences) {
|
||||||
|
this.text.push(new Sentence(sentence))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
getText() {
|
||||||
|
let text = '';
|
||||||
|
for (const sentence of this.text) {
|
||||||
|
text += sentence.getSentence() + '. ';
|
||||||
|
}
|
||||||
|
return text;
|
||||||
|
}
|
||||||
|
|
||||||
|
getSortedText() {
|
||||||
|
let words = [];
|
||||||
|
const vowels = /[AaEeiOoUuYy]/g;
|
||||||
|
|
||||||
|
for (const sentence of this.text) {
|
||||||
|
words = words.concat(sentence.getWords());
|
||||||
|
}
|
||||||
|
const sortedWords = words.sort((first, second) => {
|
||||||
|
const vowelsOfFirstWord = first.match(vowels)? first.match(vowels): [];
|
||||||
|
const vowelsOfSecondWord = second.match(vowels)? second.match(vowels): [];
|
||||||
|
return vowelsOfFirstWord.length-vowelsOfSecondWord.length;
|
||||||
|
});
|
||||||
|
return sortedWords.join(' ');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Sentence {
|
||||||
|
constructor(sentence) {
|
||||||
|
this.sentence = [];
|
||||||
|
const words = sentence.split(/[\s,:]/).filter((word) => word);
|
||||||
|
for (const word of words) {
|
||||||
|
this.sentence.push(new Word(word));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
getSentence() {
|
||||||
|
let sentence = '';
|
||||||
|
for (const word of this.sentence) {
|
||||||
|
sentence += word.getWord();
|
||||||
|
if ( this.sentence[this.sentence.length-1] !== word) sentence += ' ';
|
||||||
|
}
|
||||||
|
return sentence;
|
||||||
|
}
|
||||||
|
|
||||||
|
getWords() {
|
||||||
|
let words = [];
|
||||||
|
for (const word of this.sentence) {
|
||||||
|
words.push(word.getWord());
|
||||||
|
}
|
||||||
|
return words;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Word {
|
||||||
|
constructor(word) {
|
||||||
|
this.word = [];
|
||||||
|
for (const symbol of word) {
|
||||||
|
if (/[A-Za-z]/.test(symbol)){
|
||||||
|
this.word.push(new Letter(symbol));
|
||||||
|
} else if (/[0-9]/.test(symbol)) {
|
||||||
|
this.word.push(new Number(symbol));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
getWord() {
|
||||||
|
let word = '';
|
||||||
|
for (const symbol of this.word) {
|
||||||
|
word += symbol.getSymbol();
|
||||||
|
}
|
||||||
|
return word
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Letter {
|
||||||
|
constructor(letter) {
|
||||||
|
this.letter = letter;
|
||||||
|
}
|
||||||
|
|
||||||
|
getSymbol() {
|
||||||
|
return this.letter;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Number {
|
||||||
|
constructor(number) {
|
||||||
|
this.number = number;
|
||||||
|
}
|
||||||
|
|
||||||
|
getSymbol() {
|
||||||
|
return this.number;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const text = new Text('In late September or October, Martina elevated Constans to co-emperor, but also raised Heraclonas\'s brother Tiberius to co-emperor alongside them. Despite these overtures, Valentinus entered Constantinople shortly thereafter, deposed Heraclonas and Martina, and then elevated Constans to sole emperor. Heraclonas, Martina, Tiberius, and Martinus are said by John of Nikiu to have been escorted forth with insolence. Valentinus had Martinus nose cut off, emasculated him, and then banished his family to Rhodes, where they stayed until their deaths. According to some sources, the stress of the surgery killed Martinus immediately.');
|
||||||
|
console.log(text.getText());
|
||||||
|
console.log('\n' + text.getSortedText());
|
||||||
71
src/lab6.js
Normal file
71
src/lab6.js
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
console.log(2131 % 13)
|
||||||
|
|
||||||
|
class Room {
|
||||||
|
constructor(price, ...toys) {
|
||||||
|
this.toys = toys;
|
||||||
|
this.price = price;
|
||||||
|
if (this.getCurrentPrice() > price) throw new SyntaxError('We haven`t money for this');
|
||||||
|
}
|
||||||
|
|
||||||
|
addToy(toy) {
|
||||||
|
if (this.getCurrentPrice() + toy.getPrice() <= this.price) this.toys.push(toy);
|
||||||
|
else throw new SyntaxError('We haven`t money for this');
|
||||||
|
}
|
||||||
|
|
||||||
|
getCurrentPrice() {
|
||||||
|
let sum = 0;
|
||||||
|
for (const toy of this.toys) {
|
||||||
|
sum += toy.getPrice();
|
||||||
|
}
|
||||||
|
return sum;
|
||||||
|
}
|
||||||
|
|
||||||
|
getSortedToysByPrice() {
|
||||||
|
const sortedToys = this.toys.copyWithin();
|
||||||
|
return sortedToys.sort((firstToy, secondToy) => {
|
||||||
|
return firstToy.getPrice() - secondToy.getPrice();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
getToyByPrice(lowerPrice, upperPrice) {
|
||||||
|
return this.toys.find((toy) => lowerPrice <= toy.getPrice() && toy.getPrice() <= upperPrice);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
class Toy {
|
||||||
|
|
||||||
|
constructor(type, price, group) {
|
||||||
|
this.type = type;
|
||||||
|
this.price = price;
|
||||||
|
this.group = group;
|
||||||
|
}
|
||||||
|
|
||||||
|
getPrice() {
|
||||||
|
return this.price;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Car extends Toy {
|
||||||
|
constructor(price, group) {
|
||||||
|
super('car', price, group);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Ball extends Toy {
|
||||||
|
constructor(price, group) {
|
||||||
|
super('ball', price, group);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Doll extends Toy {
|
||||||
|
constructor(price, group) {
|
||||||
|
super('doll', price, group);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const doll = new Doll(200, 'middle');
|
||||||
|
const ball = new Ball(150, 'young');
|
||||||
|
const car = new Car(300, 'old');
|
||||||
|
const room = new Room(1000, doll, ball, car);
|
||||||
|
console.log(room.getSortedToysByPrice())
|
||||||
|
console.log(room.getToyByPrice(201, 301));
|
||||||
13
src/test/A.java
Normal file
13
src/test/A.java
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
package test;
|
||||||
|
|
||||||
|
public class A {
|
||||||
|
/*private*/ int f/* = 3*/;
|
||||||
|
|
||||||
|
public int getF() {
|
||||||
|
return f;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setF(int f) {
|
||||||
|
this.f = f;
|
||||||
|
}
|
||||||
|
}
|
||||||
15
src/test/Main.java
Normal file
15
src/test/Main.java
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
package test;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
A a = new A();
|
||||||
|
System.out.println(a.getF());
|
||||||
|
a.setF(1);
|
||||||
|
System.out.println(a.getF());
|
||||||
|
|
||||||
|
System.out.println(a.f);
|
||||||
|
|
||||||
|
int[] array = {1, 2, 1};
|
||||||
|
System.out.println(array.length);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user