Compare commits

...

26 Commits

Author SHA1 Message Date
Oleksii Aleshchenko
eb2ffae473 update lab4 2023-05-18 16:03:31 +03:00
Oleksii Aleshchenko
f05125e298 Merge pull request #3 from Dymik739/commit-fix
Lab2: remove duplicate string to fix calculations
2023-05-11 16:12:29 +03:00
Oleksii Aleshchenko
ce73ebf1f5 update lab4 2023-05-11 16:10:42 +03:00
Oleksii Aleshchenko
31c3b96018 update Variant0.java 2023-05-11 15:46:43 +03:00
4eecffe040 Merge branch 'master' into commit-fix 2023-05-04 18:06:15 +03:00
Oleksii Aleshchenko
f7b11d9444 add Variant0.java for lab3 2023-05-04 15:59:21 +03:00
Oleksii Aleshchenko
bfdfd65153 add text for regex search 2023-05-04 15:29:07 +03:00
ae042010a6 remove duplicate string to fix calculations 2023-05-02 18:48:21 +03:00
Oleksii Aleshchenko
9b871b6a42 Merge remote-tracking branch 'origin/master' 2023-04-27 16:08:25 +03:00
Oleksii Aleshchenko
e41e64369b add test polymorphism example 2023-04-27 16:08:09 +03:00
Oleksii Aleshchenko
484bef389b upd lab3 2023-04-27 15:57:01 +03:00
455c991edb Випадково закомітив не туди) Все повернув 2023-04-17 21:00:20 +03:00
90d0f042a1 test 2023-04-17 20:59:13 +03:00
Oleksii Aleshchenko
1690d0f9e4 upd lab3 // add todo for lab4 2023-04-13 16:07:52 +03:00
Oleksii Aleshchenko
4531049ff2 add lab3 2023-04-06 16:07:04 +03:00
Oleksii Aleshchenko
07b17ca3cc upd lab2 (remove todo) 2023-04-06 15:34:29 +03:00
Oleksii Aleshchenko
a61c59bf48 upd lab2 2023-04-06 15:34:03 +03:00
Oleksii Aleshchenko
9ece98fece upd lab2 2023-04-06 15:04:51 +03:00
Oleksii Aleshchenko
81ac59840f Revert "Done lab 1-3"
This reverts commit 29e63163a4.
2023-04-04 22:33:00 +03:00
Oleksii Aleshchenko
1e6825d7d4 Revert "Delete lab1 directory"
This reverts commit 1af299f8f7.
2023-04-04 22:32:47 +03:00
Oleksii Aleshchenko
4087daef02 Revert "Delete lab2 directory"
This reverts commit 3bbb7c8e54.
2023-04-04 22:32:36 +03:00
Oleksii Aleshchenko
31ba116ad8 Revert "Delete lab3 directory"
This reverts commit 6fc3cc244e.
2023-04-04 22:32:00 +03:00
xivihwa
6fc3cc244e Delete lab3 directory 2023-04-04 17:44:45 +03:00
xivihwa
3bbb7c8e54 Delete lab2 directory 2023-04-04 17:44:38 +03:00
xivihwa
1af299f8f7 Delete lab1 directory 2023-04-04 17:44:30 +03:00
xivihwa
4924bbe62f Merge pull request #2 from ASDjonok/ІО-25/01-Антоненко-Віолетта-Станіславівна
Done lab 1-3
2023-04-04 17:41:26 +03:00
58 changed files with 951 additions and 205 deletions

View File

@@ -1,6 +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">
<component name="ProjectRootManager" version="2" languageLevel="JDK_18" default="true" project-jdk-name="openjdk-18" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

View File

@@ -2,7 +2,7 @@
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/Matrix.iml" filepath="$PROJECT_DIR$/Matrix.iml" />
<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
View 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
View 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>

View File

@@ -1 +0,0 @@
Main.java

View File

@@ -1,6 +0,0 @@
<?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>

View File

@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/FunctionCalculator.iml" filepath="$PROJECT_DIR$/FunctionCalculator.iml" />
</modules>
</component>
</project>

View File

@@ -1,51 +0,0 @@
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
//C2 = 2501 % 2 = 1, і операція O1 буде відніманням (-).
//C3 = 2501 % 3 = 2
//C5 = 2501 % 5 = 1, і операція O2 буде діленням (/).
//C7 = 2501 % 7 = 4, тип індексів i та j буде char.
double result = 0; // результат
char i, j;
char operation1 = '-';
double constant = 2.0;
Scanner scanner = new Scanner(System.in);
System.out.print("Введіть значення n: ");
int n = scanner.nextInt();
System.out.print("Введіть значення m: ");
int m = scanner.nextInt();
// Обчислення значення функції S
for (i = 'a'; i <= 'a' + n - 1; i++) {
for (j = 'b'; j <= 'b' + m - 1; j++) {
try {
double value = (double) i / applyOperation(j, operation1, constant);
result += value;
} catch (ArithmeticException e) {
System.out.println("Ділення на нуль: " + e.getMessage());
} catch (Exception e) {
System.out.println("Виникла помилка: " + e.getMessage());
}
}
}
// Виведення результату
System.out.println("Результат: " + result);
}
// Метод, який застосовує операцію О1 до двох чисел
public static double applyOperation(char j, char operation, double constant) throws Exception {
switch (operation) {
case '-':
return (double) j - constant;
case '/':
if (constant == 0.0) {
throw new ArithmeticException("C не може бути рівним нулю");
} else {
return (double) j / constant;
}
default:
throw new Exception("Непідтримувана операція: " + operation);
}
}
}

Binary file not shown.

8
lab2/Matrix/.idea/.gitignore generated vendored
View File

@@ -1,8 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

View File

@@ -1 +0,0 @@
Main.java

View File

@@ -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>

View File

@@ -1,58 +0,0 @@
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
byte[][] matrix = {{4, 7, 3}, {4, 7, 6}, {7, 10, 9}};
//C5 = 2501 mod 5 = 1, тому C = B^T (транспонування матриці)
//C7 = 2501 mod 7 = 1, тому тип елементів матриці має бути byte
//C11 = 2501 mod 11 = 10, тому треба знайти середнє значення елементів матриці
// Виконуємо дію з матрицею: транспонування матриці B
byte[][] transposedMatrix = transposeMatrix(matrix);
System.out.println("Transposed matrix: ");
printMatrix(transposedMatrix);
// Виконуємо дію з матрицею C: знаходимо середнє значення елементів матриці
double average = calculateAverage(transposedMatrix);
System.out.println("Cереднє значення елементів матриці: " + average);
}
// Метод для транспонування матриці
private static byte[][] transposeMatrix(byte[][] matrix) {
int rows = matrix.length;
int columns = matrix[0].length;
byte[][] transposedMatrix = new byte[columns][rows];
for (int i = 0; i < rows; i++) {
for (int j = 0; j < columns; j++) {
transposedMatrix[j][i] = matrix[i][j];
}
}
return transposedMatrix;
}
// Метод для знаходження середнього значення елементів матриці
private static double calculateAverage(byte[][] matrix) {
int rows = matrix.length;
int columns = matrix[0].length;
int sum = 0;
for (int i = 0; i < rows; i++) {
for (int j = 0; j < columns; j++) {
sum += matrix[i][j];
}
}
return (double) sum / (rows * columns);
}
// Метод для виведення матриці на екран
private static void printMatrix(byte[][] matrix) {
for (byte[] row : matrix) {
System.out.println(Arrays.toString(row));
}
}
}

Binary file not shown.

View File

@@ -1,8 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

View File

@@ -1 +0,0 @@
Main.java

View File

@@ -1,6 +0,0 @@
<?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>

View File

@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/OperationsStrings.iml" filepath="$PROJECT_DIR$/OperationsStrings.iml" />
</modules>
</component>
</project>

View File

@@ -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>

View File

@@ -1,25 +0,0 @@
import java.util.HashSet;
public class Main {
public static void main(String[] args) {
String inputText = "Who are you? What is your name? Where are you from?";
int targetLength = 3;
try {
HashSet<String> uniqueWords = new HashSet<String>();
String[] sentences = inputText.split("[?]");
for (String sentence : sentences) {
String[] words = sentence.trim().split("\\s+");
for (String word : words) {
if (word.length() == targetLength) {
uniqueWords.add(word.toLowerCase());
}
}
}
System.out.println("Unique words of length " + targetLength + " in the input text are: " + uniqueWords);
} catch (Exception e) {
System.out.println("An error occurred: " + e.getMessage());
}
}
}

Binary file not shown.

58
src/Lab1.java Normal file
View File

@@ -0,0 +1,58 @@
public class Lab1 {
public static void main(String[] args) {
// char c = 'a' + '1';
char c = 97;
// char c = '1';
System.out.println(c);
System.out.println((int) c);
c++;
System.out.println(c);
System.out.println((int) c);
System.out.println((double)'1'/'3');
// System.out.println( (double) 0 / 0 );
// System.out.println( Math.sqrt(-1) );
double s = 0;
/*for (int i = 1; i <= 3; i++) { // 1) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> i = 1, 2) <20><><EFBFBD><EFBFBD> <20> <= 3, 3) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䳿 <20> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>,
System.out.println(i); // 4) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><> 1, 5) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> 2
// s = s + i;
s += i;
}*/
/*int[] array = new int[2];
for (int i = 0; i < array.length; i++) {
}*/
final int A = -3;
final int B = 0;
final int N = 2;
final int M = 2;
final int C = 1;
// boolean wasDivisionByZero = false;
// todo char
// todo[clear code] think about avoiding brackets
if ((A <= -C && -C <= N) || (B <= 0 && 0 <= M)) {
System.out.println("Division by zero!");
return;
}
/*myLabel:*/for (int i = A; i <= N /*&& !wasDivisionByZero*/; i++) {
/*if (i + C == 0) { // todo optimize
System.out.println("Division by zero!");
wasDivisionByZero = true;
break; //todo flag vs return;
}*/
for (int j = B; j <= M; j++) {
/*if (j == 0) {
System.out.println("Division by zero!");
return;
// wasDivisionByZero = true;
// break myLabel;
}*/
s += (double) (i / j) / (i + C);
}
}
// if (!wasDivisionByZero) {
System.out.println("s = " + s);
// }
}
}

139
src/Lab2.java Normal file
View File

@@ -0,0 +1,139 @@
public class Lab2 {
public static void main(String[] args) {
final int A = 2;
final int[][] MATRIX_B = {
{1, 202, 1, 1, 202, 3, 1, 202, 3,},
{1, 202, 1, 1, 202, 3, 1, 202, 3, 4},
{1, 1, 3, 1, 202, 3, 1, 202, 3,},
// {4, 5, 6,},
};
int[][] MATRIX_C = multiplication(A, MATRIX_B);
print(MATRIX_C);
// System.out.println("Sum of smallest elements in every column: " + sumOfSmallestElementsInEveryColumn(MATRIX_C));
try {
System.out.println("Sum of smallest elements in every column: " + sumOfSmallestElementsInEveryColumnRenew(MATRIX_C));
System.out.println("???...");
} catch (Exception e) {
System.err.println(e.getMessage());
}
System.out.println("I'm still working...");
/*int[] array = {1, 2, 3};
int[] array2 = new int[3];
Object[] array3 = new String[3];
System.out.println(array3[0]); //nothing, trash from the memory, null || null
System.out.println(array2[0]); //nothing, trash from the memory, null || 0
System.out.println(array[0]); // || 1
int[][] matrix2 = new int[2][3];
matrix2[0] = new int[2];
matrix2[1] = new int[1];
for (int i = 0; i < array.length; i++) {
if (i % 2 == 0) {
System.out.println("!" + array[i]);
} else {
System.out.println("?" + array[i]);
}
}
for (int i = 0; i < array.length; i+=2) {
System.out.println("!" + array[i]);
}
for (int i = 1; i < array.length; i+=2) {
System.out.println("?" + array[i]);
}
// зубчасті матриці
int[][] matrix = {
{1, 2},
{3}
};
// C=a×B, a - const
// final int[][] MATRIX_C = int;
MATRIX_B[0][0] = 2;
MATRIX_B[0] = new int[]{1, 2};
System.out.println(MATRIX_B[0][0]);
MATRIX_B = new int[][]{
{1, 2},
{3}
};*/
}
private static int sumOfSmallestElementsInEveryColumn(final int[][] MATRIX_C) {
// todo check different length of rows
// todo try to change i and j
// todo check repetition of minimal elements
int sum = 0;
for (int i = 0; i < MATRIX_C[0].length; i++) {
int tmpSmallest = MATRIX_C[0][i];
for (int j = 1; j < MATRIX_C.length; j++) {
if (MATRIX_C[j][i] < tmpSmallest) {
tmpSmallest = MATRIX_C[j][i];
}
}
sum += tmpSmallest;
}
return sum;
}
private static int sumOfSmallestElementsInEveryColumnRenew(final int[][] MATRIX_C) throws Exception {
// todo check different length of rows
for (int i = 1; i < MATRIX_C.length; i++) {
if (MATRIX_C[i].length != MATRIX_C[0].length) {
throw new /*Runtime*/Exception("There are different lengths of matrix rows.");
// System.err.println("There are different lengths of matrix rows.");
// System.exit(0);
}
}
int sum = 0;
for (int j = 0; j < MATRIX_C[0].length; j++) {
int tmpSmallest = MATRIX_C[0][j];
boolean valueRepeats = false;
for (int i = 1; i < MATRIX_C.length; i++) {
if (MATRIX_C[i][j] < tmpSmallest) {
tmpSmallest = MATRIX_C[i][j];
valueRepeats = false;
} else if (MATRIX_C[i][j] == tmpSmallest) {
valueRepeats = true;
}
}
if (!valueRepeats) {
sum += tmpSmallest;
}
}
return sum;
}
private static void print(final int[][] MATRIX_C) {
for (int i = 0; i < MATRIX_C.length; i++) {
for (int j = 0; j < MATRIX_C[i].length; j++) {
// System.out.print(MATRIX_C[i][j] + "\t");//printf("%4d",
System.out.printf("%4d ", MATRIX_C[i][j]);//printf("%4d",
}
System.out.println();
}
}
private static int[][] multiplication(int A, final int[][] MATRIX_B) {
final int[][] MATRIX_C = new int[MATRIX_B.length][/*MATRIX_B[0].length*/]; // todo !!!DANGER different lengths of rows
// final int[][] MATRIX_C = MATRIX_B;
for (int i = 0; i < MATRIX_B.length; i++) {
MATRIX_C[i] = new int[MATRIX_B[i].length];
for (int j = 0; j < MATRIX_B[i].length; j++) {
MATRIX_C[i][j] = MATRIX_B[i][j] * A;
}
}
return MATRIX_C;
}
}

42
src/Main.java Normal file
View 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;
}
}

View 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);
}
}

View File

@@ -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);
}
}

View 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");
}
}

View 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;
}
}

View File

@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.inheritance;
public class ElectricEngine extends Engine {
private String batteryType;
/*private class Engine {
private int power;
}*/
}

View File

@@ -0,0 +1,5 @@
package encapsulationInheritancePolymorphism.inheritance;
public class Engine {
private int power;
}

View File

@@ -0,0 +1,5 @@
package encapsulationInheritancePolymorphism.inheritance;
public class FuelEngine extends Engine {
private String fuelType;
}

View File

@@ -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();
}
}

View File

@@ -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;
}*/
}

View File

@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.polymorphism;
public class Engine {
private int power;
public int getPower() {
return power;
}
}

View File

@@ -0,0 +1,10 @@
package encapsulationInheritancePolymorphism.polymorphism;
public class FuelEngine extends Engine {
private String fuelType;
@Override
public int getPower() {
return 50;
}
}

View File

@@ -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);
}
}

View File

@@ -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;
}*/
}

View File

@@ -0,0 +1,9 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
public class Engine {
private int power = 100;
public int getPower() {
return power;
}
}

View File

@@ -0,0 +1,10 @@
package encapsulationInheritancePolymorphism.polymorphism.enhanced;
public class FuelEngine extends Engine {
private String fuelType;
/*public int getPower() {
return 50;
}*/
}

View File

@@ -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());
}*/
}
}

View File

@@ -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);
}
}

75
src/lab3/Lab3.java Normal file
View File

@@ -0,0 +1,75 @@
package lab3;
public class Lab3 {
private static final int REPETITION_NUMBER = 10;
public static void main(String[] args) {
StringBuilder result = new StringBuilder();
for (int i = 0; i < REPETITION_NUMBER; i++) {
// result += Integer.toString(i);
// result += String.valueOf(i);
result.append(i);
}
/*float f = 1.1f;
double d = 2.2;
// f = (float) (f + d);
f += d;*/
String s = "ASD";
StringBuilder stringBuilder = new StringBuilder("ASD");
StringBuffer stringBuffer = new StringBuffer("ASD");
stringBuilder.append("A");
System.out.println(s.length());
System.out.println(stringBuilder.length());
System.out.println(stringBuffer.length());
System.out.println(s.endsWith("D"));
// System.out.println(stringBuilder.substring(stringBuilder.length() - 1).equals("A"));
System.out.println("A".equals(stringBuilder.substring(stringBuilder.length() - 1)));
System.out.println("A".equals(stringBuffer.substring(stringBuffer.length() - 1)));
String sNull = null;
System.out.println("A".equals(sNull));
System.out.println(sNull.equals("A"));
System.out.println(s.substring(2));
System.out.println(s.contains("AS"));
System.out.println(s.indexOf('a'));
// System.out.println(s.charAt(-1));
System.out.println("s.equalsIgnoreCase(\"AsD\") = " + s.equalsIgnoreCase("AsD"));
String s2 = s;
System.out.println("s2 = " + s2);
System.out.println(s == s2); // true?
System.out.println(s.equals(s2)); // true?
s += "B";
System.out.println(s);
System.out.println("s2 = " + s2);
System.out.println(s == s2); // false?
System.out.println(s.equals(s2)); // false?
String s3 = new String("ASD");
System.out.println(s3 == s2); // true? (false)
System.out.println(s3.equals(s2)); // false? (true)
// String Pool
String s4 = "ASD";
// String s5 = new String("ASD");
String s5 = "AS";
s5 += "D";
System.out.println(s4 == s5); // true? (SP)
System.out.println(s4.equals(s5)); // (true)
System.out.println("Done!");
}
}

66
src/lab3/Variant0.java Normal file
View File

@@ -0,0 +1,66 @@
package lab3;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
/**
* Знайти найбільшу кількість речень заданого тексту, в яких є однакові слова.
*/
public class Variant0 {
public static void main(String[] args) {
System.out.println("\\");
String textString = "Aa, a b. Bb a? B a! B a. Ccc.";
// final String[] sentencesStrings = textString.split("(?<=(\\.|!|\\?)) ");
// final String[] sentencesStrings = textString.split("(?<=[.!?]) ");
final String[] sentencesStrings = textString.split("[.!?] ?");
for (String sentencesString : sentencesStrings) {
System.out.println("[" + sentencesString + "]");
}
System.out.println("++++++++++++");
final String[][] wordsStringsBySentences = new String[sentencesStrings.length][];
for (int i = 0; i < sentencesStrings.length; i++) {
wordsStringsBySentences[i] = sentencesStrings[i].split(",? ");
}
for (String[] wordsStrings : wordsStringsBySentences) {
for (String wordsString : wordsStrings) {
System.out.print("[" + wordsString + "] - ");
}
System.out.println();
}
Set<String> originalWordsStrings = new HashSet();
for (String[] wordsStrings : wordsStringsBySentences) {
for (String wordsString : wordsStrings) {
originalWordsStrings.add(wordsString.toLowerCase());
}
}
final String[] originalWordsArray = originalWordsStrings.toArray(new String[0]);
System.out.println("++++++++++++");
for (Object originalWordsString : originalWordsStrings) {
System.out.println(originalWordsString);
}
int[] entersQuantitiesOriginalWordsInSentences = new int[originalWordsArray.length];
for (int i = 0; i < originalWordsArray.length; i++) {
String originalWord = originalWordsArray[i];
for (String[] words : wordsStringsBySentences) {
for (String word : words) {
if (originalWord.equalsIgnoreCase(word)) {
entersQuantitiesOriginalWordsInSentences[i]++;
break;
}
}
}
}
// todo show greatest value from entersQuantitiesOriginalWordsInSentences
// System.out.println(Arrays.toString(sentencesStrings));
System.out.println("++++++++++++");
}
}

77
src/lab4/Furniture.java Normal file
View File

@@ -0,0 +1,77 @@
package lab4;
/**
* My class Furniture.
*/
public class Furniture<T> {
/**
*
*/
private String material;
private int length;
private int height;
private int width;
private int price;
private T additional;
public void setAdditional(T additional) {
this.additional = additional;
}
/**
*
* @param material
* @param length
* @param height
* @param width
* @param price
*/
public Furniture(String material, int length, int height, int width, int price) {
// this.material = material;
setMaterial(material);
this.length = length;
this.height = height;
this.width = width;
this.price = price;
}
public void setMaterial(String material) {
this.material = material;
}
public String getMaterial() {
return material;
}
public int getLength() {
return length;
}
public int getHeight() {
return height;
}
public int getWidth() {
return width;
}
public int getPrice() {
return price;
}
/*public Furniture() {
}*/
@Override
public String toString() {
return "Furniture{" +
"material='" + material + '\'' +
", length=" + length +
", height=" + height +
", width=" + width +
", price=" + price +
'}';
}
}

45
src/lab4/Main.java Normal file
View File

@@ -0,0 +1,45 @@
package lab4;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
// todo Comparable
//todo equals+hashcode
// todo JavaDoc
final Furniture<Furniture> furniture1 = new Furniture<>("A", 1, 1, 1, 1);
final Furniture<String> furniture2 = new Furniture<>("D", 1, 1, 1, 4);
Furniture[] furnitureArray = {
furniture1,
furniture2,
new Furniture("B", 1, 2, 1, 1),
new Furniture("C", 1, 1, 3, 1),
};
for (Furniture furniture : furnitureArray) {
// System.out.println(furniture.getMaterial() + " " + furniture.getPrice());
System.out.println(furniture);
}
System.out.println("+++++++++++++");
furniture1.setAdditional(new Furniture("Y", 1, 1, 1, 0));
furniture2.setAdditional("new Furniture(\"Y\", 1, 1, 1, 0)");
// furnitureArray[0].setMaterial("E");
Arrays.sort(furnitureArray, (o1, o2) -> o1.getMaterial().compareTo(o2.getMaterial()));
for (Furniture furniture : furnitureArray) {
System.out.println(furniture);
}
System.out.println("+++++++++++++");
// todo check
Arrays.sort(furnitureArray, (o1, o2) -> Integer.compare(o2.getPrice(), o1.getPrice()));
for (Furniture furniture : furnitureArray) {
System.out.println(furniture);
}
System.out.println("+++++++++++++");
}
}

13
src/test/A.java Normal file
View 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
View 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);
}
}

13
src/test/Test.java Normal file
View File

@@ -0,0 +1,13 @@
package test;
public class Test {
public static void main(String[] args) {
}
static int m(){
System.exit(0);
// return 1;
System.out.println(123);
return 1;
}
}

7
src/test/one/A.java Normal file
View File

@@ -0,0 +1,7 @@
package test.one;
public class A implements MyMethodInterface {
public void myMethod() {
}
}

7
src/test/one/B.java Normal file
View File

@@ -0,0 +1,7 @@
package test.one;
public class B implements MyMethodInterface {
public void myMethod() {
}
}

13
src/test/one/Main.java Normal file
View File

@@ -0,0 +1,13 @@
package test.one;
public class Main {
public static void main(String[] args) {
Object[] objects = {
new A(),
new B(),
};
for (Object object : objects) {
((MyMethodInterface)object).myMethod();
}
}
}

View File

@@ -0,0 +1,5 @@
package test.one;
public interface MyMethodInterface {
void myMethod();
}

1
test.txt Normal file
View File

@@ -0,0 +1 @@
Фів фіке фівлоафждіо хщшіоекдодлфіідваол фі