mirror of
https://github.com/ASDjonok/OOP_IO-2x_2023.git
synced 2026-04-01 21:21:50 +03:00
Compare commits
6 Commits
ІО-24/25-С
...
IO-23/19-М
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6999512789 | ||
|
|
a5b76b264f | ||
|
|
65b34dffdf | ||
|
|
571b69b3ce | ||
|
|
c85bde4d42 | ||
|
|
3f7ed6860e |
68
Lab4.java
Normal file
68
Lab4.java
Normal file
@@ -0,0 +1,68 @@
|
||||
import java.util.Scanner;
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
|
||||
public class Lab4 {
|
||||
|
||||
public static void main(String[] args) {
|
||||
Students student1 = new Students("Максим", 22, "ФІОТ", 91, 8);
|
||||
Students students2 = new Students("Ольга", 19, "ФЕА", 34, 4);
|
||||
Students students3 = new Students("Владислав", 18, "ФММ", 55, 10);
|
||||
Students students4 = new Students("Марія", 20, "ХТФ", 11, 6);
|
||||
Students students5 = new Students("Петро", 23, "ФМФ", 78, 2);
|
||||
Students[] students = {student1, students2, students3, students4, students5};
|
||||
System.out.println("Список студентів: ");
|
||||
System.out.println(String.format("%-9s | %-3s | %-9s | %-11s | %s", "Ім'я", "Вік", "Факультет", "Номер групи", "Рівень знань(від 0 до 10)"));
|
||||
for (Students student : students) {
|
||||
System.out.println(String.format("%-9s | %-3s | %-9s | %-11s | %s", student.getName(), student.getAge(), student.getNameOfFaculty(), student.getNumberOfGroup(), student.getLvlOfKnowledge()));
|
||||
}
|
||||
Scanner scan = new Scanner(System.in);
|
||||
System.out.println("Введіть за чим сортувати: ");
|
||||
System.out.println("1 - Зростання \n2 - Спадання:");
|
||||
int incOrDec = scan.nextInt();
|
||||
System.out.println("Введіть за чим хочете сортувати: ");
|
||||
System.out.println("1 - Ім'я \n2 - Вік \n3 - Факультет\n4 - Група\n5 - Рівень знань: ");
|
||||
int num = scan.nextInt();
|
||||
if (incOrDec == 1) {
|
||||
switch (num) {
|
||||
case 1:
|
||||
Arrays.sort(students, Comparator.comparing(Students::getName));
|
||||
break;
|
||||
case 2:
|
||||
Arrays.sort(students, Comparator.comparingInt(Students::getAge));
|
||||
break;
|
||||
case 3:
|
||||
Arrays.sort(students, Comparator.comparing(Students::getNameOfFaculty));
|
||||
break;
|
||||
case 4:
|
||||
Arrays.sort(students, Comparator.comparingInt(Students::getNumberOfGroup));
|
||||
break;
|
||||
case 5:
|
||||
Arrays.sort(students, Comparator.comparingInt(Students::getLvlOfKnowledge));
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (num) {
|
||||
case 1:
|
||||
Arrays.sort(students, Comparator.comparing(Students::getName).reversed());
|
||||
break;
|
||||
case 2:
|
||||
Arrays.sort(students, Comparator.comparingInt(Students::getAge).reversed());
|
||||
break;
|
||||
case 3:
|
||||
Arrays.sort(students, Comparator.comparing(Students::getNameOfFaculty).reversed());
|
||||
break;
|
||||
case 4:
|
||||
Arrays.sort(students, Comparator.comparingInt(Students::getNumberOfGroup).reversed());
|
||||
break;
|
||||
case 5:
|
||||
Arrays.sort(students, Comparator.comparingInt(Students::getLvlOfKnowledge).reversed());
|
||||
break;
|
||||
}
|
||||
}
|
||||
System.out.println(String.format("%-9s | %-3s | %-9s | %-11s | %s", "Ім'я", "Вік", "Факультет", "Номер групи", "Рівень знань(від 0 до 10)"));
|
||||
for (Students student : students) {
|
||||
System.out.println(String.format("%-9s | %-3s | %-9s | %-11s | %s", student.getName(), student.getAge(), student.getNameOfFaculty(), student.getNumberOfGroup(), student.getLvlOfKnowledge()));
|
||||
}
|
||||
}
|
||||
}
|
||||
107
Lab5.java
Normal file
107
Lab5.java
Normal file
@@ -0,0 +1,107 @@
|
||||
public class Lab5 {
|
||||
public static void main(String[] args) {
|
||||
StringBuilder txt = new StringBuilder("соціальна мережа, яка є мережею мікроблогів. Дає змогу користувачам надсилати короткі текстові повідомлення (до 2802 символів, до 2017 року — до 140 символів), використовуючи SMS,");
|
||||
System.out.println("Початковий текст:");
|
||||
System.out.println(txt);
|
||||
Text text = new Text(txt);
|
||||
StringBuilder result = text.splitText();
|
||||
System.out.println("Змінений текст:");
|
||||
System.out.println(result);
|
||||
}
|
||||
}
|
||||
|
||||
class Text {
|
||||
private final StringBuilder textString;
|
||||
public Text(StringBuilder textString){
|
||||
this.textString = textString;
|
||||
}
|
||||
|
||||
public StringBuilder splitText() {
|
||||
StringBuilder result = new StringBuilder();
|
||||
String[] sentenceStrings = textString.toString().split("(?<=[?.!])\\s?");
|
||||
for (String s : sentenceStrings) {
|
||||
StringBuilder sb = new StringBuilder(s);
|
||||
Sentence sentence = new Sentence(sb);
|
||||
result.append(sentence.splitSentence());
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class Sentence {
|
||||
private final StringBuilder sentence;
|
||||
|
||||
public Sentence(StringBuilder sentence) {
|
||||
this.sentence = sentence;
|
||||
|
||||
}
|
||||
|
||||
public StringBuilder splitSentence() {
|
||||
StringBuilder returnSentence = new StringBuilder();
|
||||
String text = sentence.toString();
|
||||
String[] words = text.split(" ");
|
||||
for (String w : words) {
|
||||
StringBuilder wb = new StringBuilder(w);
|
||||
Word word = new Word(wb);
|
||||
returnSentence.append(word.splitWord()).append(" ");
|
||||
}
|
||||
return returnSentence;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
class Word {
|
||||
private final StringBuilder word;
|
||||
|
||||
public Word(StringBuilder word) {
|
||||
this.word = word;
|
||||
}
|
||||
|
||||
public StringBuilder splitWord() {
|
||||
StringBuilder returnWord = new StringBuilder();
|
||||
String wordstring = word.toString();
|
||||
String[] letters = wordstring.split("");
|
||||
String firstLetter = wordstring.substring(0, 1);
|
||||
returnWord.append(firstLetter);
|
||||
for (String l: letters){
|
||||
StringBuilder lb = new StringBuilder(l);
|
||||
Letter letter = new Letter(lb);
|
||||
if (firstLetter.equals(letter.getLetter().toString())){
|
||||
returnWord.append("");
|
||||
}else{
|
||||
if(l.equals("!") || l.equals("?") || l.equals(".") || l.equals(",") || l.equals(":") || l.equals(";")){
|
||||
Punctuation punctuation = new Punctuation(lb);
|
||||
returnWord.append(punctuation.getPunctuation());
|
||||
}else{
|
||||
returnWord.append(letter.getLetter());
|
||||
}
|
||||
}
|
||||
}
|
||||
return returnWord;
|
||||
}
|
||||
}
|
||||
|
||||
class Letter {
|
||||
private final StringBuilder letter;
|
||||
|
||||
public Letter(StringBuilder letter) {
|
||||
this.letter = letter;
|
||||
}
|
||||
|
||||
public StringBuilder getLetter() {
|
||||
return letter;
|
||||
}
|
||||
}
|
||||
|
||||
class Punctuation {
|
||||
private final StringBuilder punctuation;
|
||||
|
||||
public Punctuation(StringBuilder punctuation) {
|
||||
this.punctuation = punctuation;
|
||||
}
|
||||
|
||||
public StringBuilder getPunctuation() {
|
||||
return punctuation;
|
||||
}
|
||||
}
|
||||
30
Students.java
Normal file
30
Students.java
Normal file
@@ -0,0 +1,30 @@
|
||||
public class Students {
|
||||
private String name;
|
||||
private int age;
|
||||
private String nameOfFaculty;
|
||||
private int numberOfGroup;
|
||||
private int lvlOfKnowledge;
|
||||
|
||||
public Students(String name, int age, String nameOfFaculty, int numberOfGroup, int lvlOfKnowledge) {
|
||||
this.name = name;
|
||||
this.age = age;
|
||||
this.nameOfFaculty = nameOfFaculty;
|
||||
this.numberOfGroup = numberOfGroup;
|
||||
this.lvlOfKnowledge = lvlOfKnowledge;
|
||||
}
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
public int getAge() {
|
||||
return age;
|
||||
}
|
||||
public String getNameOfFaculty() {
|
||||
return nameOfFaculty;
|
||||
}
|
||||
public int getNumberOfGroup() {
|
||||
return numberOfGroup;
|
||||
}
|
||||
public int getLvlOfKnowledge() {
|
||||
return lvlOfKnowledge;
|
||||
}
|
||||
}
|
||||
29
lab1.java
Normal file
29
lab1.java
Normal file
@@ -0,0 +1,29 @@
|
||||
import java.util.Scanner;
|
||||
|
||||
public class lab1 {
|
||||
public static void main(String[] args) {
|
||||
float S = 0, i, j;
|
||||
int C = 1;
|
||||
Scanner scan = new Scanner(System.in);
|
||||
System.out.println("Введіть значення a (a>1):");
|
||||
int a = scan.nextInt();
|
||||
System.out.println("Введіть значення b:");
|
||||
int b = scan.nextInt();
|
||||
System.out.println("Введіть значення n:");
|
||||
int n = scan.nextInt();
|
||||
System.out.println("Введіть значення m:");
|
||||
int m = scan.nextInt();
|
||||
for (i = a; i <= n; i++) {
|
||||
if (i - C == 0) {
|
||||
System.out.println("Ділення на 0");
|
||||
return;
|
||||
}
|
||||
for (j = b; j <= m; j++) {
|
||||
S += (i - j) / (i - C);
|
||||
|
||||
}
|
||||
}
|
||||
System.out.println(S);
|
||||
|
||||
}
|
||||
}
|
||||
78
lab2.java
Normal file
78
lab2.java
Normal file
@@ -0,0 +1,78 @@
|
||||
import java.util.Scanner;
|
||||
import java.util.Random;
|
||||
|
||||
public class lab2 {
|
||||
public static void main(String[] args) {
|
||||
Scanner scan = new Scanner(System.in);
|
||||
|
||||
System.out.println("Введіть кількість рядків матриці А:");
|
||||
int mA = scan.nextInt();
|
||||
System.out.println("Введіть кількість стовпців матриці А:");
|
||||
int nA = scan.nextInt();
|
||||
System.out.println("Введіть кількість рядків матриці B:");
|
||||
int mB = scan.nextInt();
|
||||
if (nA != mB) {
|
||||
System.out.println("Щоб помножити матриці, потрібно, щоб кількість стовпців матриці А == кількості рядків матриці B");
|
||||
return;
|
||||
}
|
||||
System.out.println("Введіть кількість стовпців матриці B:");
|
||||
int nB = scan.nextInt();
|
||||
System.out.println("Границя значень у матрицях:");
|
||||
int upperbound = scan.nextShort();
|
||||
int[][] matrixA = new int[mA][nA];
|
||||
int[][] matrixB = new int[mB][nB];
|
||||
int[][] matrixC = new int[mA][nB];
|
||||
generationMatrixes(matrixA, matrixB, upperbound);
|
||||
printMatrixC(matrixA, matrixB, matrixC);
|
||||
AverageValueofElementsofEachColumn(matrixC);
|
||||
}
|
||||
|
||||
private static void AverageValueofElementsofEachColumn(int[][] matrixC) {
|
||||
System.out.println("Середнє значення елементів кожного стовпчика матриці:");
|
||||
System.out.print("||");
|
||||
for (int i = 0; i < matrixC.length; i++) {
|
||||
double sum = 0;
|
||||
for (int j = 0; j < matrixC[i].length; j++) {
|
||||
sum += matrixC[j][i];
|
||||
}
|
||||
System.out.printf(" %.2f ||", (sum) / matrixC.length);
|
||||
}
|
||||
}
|
||||
|
||||
private static void printMatrixC(int[][] matrixA, int[][] matrixB, int[][] matrixC) {
|
||||
for (int i = 0; i < matrixC.length; i++) {
|
||||
for (int j = 0; j < matrixC[i].length; j++) {
|
||||
for (int k = 0; k < matrixA[j].length; k++) {
|
||||
matrixC[i][j] += matrixA[i][k] * matrixB[k][j];
|
||||
}
|
||||
}
|
||||
}
|
||||
System.out.println("Матриця С:");
|
||||
for (int i = 0; i < matrixC.length; i++) {
|
||||
for (int j = 0; j < matrixC[i].length; j++) {
|
||||
System.out.printf("|%4d", matrixC[i][j]);
|
||||
}
|
||||
System.out.println("|");
|
||||
}
|
||||
}
|
||||
|
||||
private static void generationMatrixes(int[][] matrixA, int[][] matrixB, int upperbound) {
|
||||
Random rand = new Random();
|
||||
System.out.println("Матриця А:");
|
||||
for (short i = 0; i < matrixA.length; i++) {
|
||||
for (int j = 0; j < matrixA[i].length; j++) {
|
||||
matrixA[i][j] = rand.nextInt(upperbound);
|
||||
System.out.printf("|%4d", matrixA[i][j]);
|
||||
}
|
||||
System.out.println("|");
|
||||
}
|
||||
System.out.println("Матриця B:");
|
||||
for (short i = 0; i < matrixB.length; i++) {
|
||||
for (int j = 0; j < matrixB[i].length; j++) {
|
||||
matrixB[i][j] = rand.nextInt(upperbound);
|
||||
System.out.printf("|%4d", matrixB[i][j]);
|
||||
}
|
||||
System.out.println("|");
|
||||
}
|
||||
}
|
||||
}
|
||||
21
lab3.java
Normal file
21
lab3.java
Normal file
@@ -0,0 +1,21 @@
|
||||
public class lab3 {
|
||||
public static void main(String[] args) {
|
||||
StringBuilder txt = new StringBuilder("— соціальна мережа, яка є мережею мікроблогів, дає змогу користувачам надсилати короткі текстові повідомлення (до 2802 символів, до 2017 року — до 140 символів), використовуючи SMS,");
|
||||
System.out.println(txt);
|
||||
String[] words = txt.toString().split("\\s+");
|
||||
StringBuilder result = new StringBuilder();
|
||||
for (int i = 0; i < words.length; i++) {
|
||||
StringBuilder word = new StringBuilder(words[i]);
|
||||
StringBuilder firstLetter = new StringBuilder(word.substring(0, 1));
|
||||
if (word.substring(1).contains(firstLetter.toString().toLowerCase()) || word.substring(1).contains(firstLetter)) {
|
||||
String changedWord = firstLetter + word.substring(1).replaceAll(firstLetter.toString().toLowerCase(), "").replaceAll(firstLetter.toString(), "");
|
||||
result.append(changedWord);
|
||||
result.append(" ");
|
||||
} else {
|
||||
result.append(word);
|
||||
result.append(" ");
|
||||
}
|
||||
}
|
||||
System.out.println(result);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user