diff --git a/pom.xml b/pom.xml
new file mode 100644
index 00000000..60b3aed3
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,38 @@
+
+
+ 4.0.0
+
+ org.example
+ laboratoryWork
+ 1.0-SNAPSHOT
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 7
+ 7
+
+
+
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ RELEASE
+ test
+
+
+ junit
+ junit
+ RELEASE
+ test
+
+
+
+
+
diff --git a/src/main/java/Circle.java b/src/main/java/Circle.java
new file mode 100644
index 00000000..cf0d98d1
--- /dev/null
+++ b/src/main/java/Circle.java
@@ -0,0 +1,59 @@
+public class Circle {
+ private double radius;
+ private double ference;
+ private double area;
+
+ public Circle(double radius){
+ this.radius = radius;
+ this.ference = 2 * Math.PI * radius;
+ this.area = Math.PI * Math.pow(radius,2);
+ }
+
+ public double getRadius() {
+ return radius;
+ }
+
+ public void setRadius(double radius) {
+ this.radius = radius;
+ this.ference = 2 * Math.PI * radius;
+ this.area = Math.PI * Math.pow(radius,2);
+ }
+
+ public double getFerence() {
+ return ference;
+ }
+
+ public void setFerence(double ference) {
+ this.ference = ference;
+ this.radius = ference / 2 / Math.PI;
+ this.area = Math.PI * Math.pow(radius,2);
+ }
+
+ public double getArea() {
+ return area;
+ }
+
+ public void setArea(double area) {
+ this.area = area;
+ this.radius = Math.sqrt(area / Math.PI);
+ this.ference = 2 * Math.PI * radius;
+ }
+
+}
+
+class Task6 {
+ public static void main(String[] args) {
+ Circle rope = new Circle((double)6378.1);
+ double dist = rope.getRadius();
+ rope.setFerence(rope.getFerence() + 0.001);
+ double diff = rope.getRadius() - dist;
+ System.out.println(diff);
+ Circle road = new Circle(4);
+ double roadPrice = road.getArea() * 1000;
+ double fencePrice = road.getFerence() * 2000;
+ double totalPrice =roadPrice + fencePrice;
+ System.out.println((float)roadPrice);
+ System.out.println((float)fencePrice);
+ System.out.println((float)totalPrice);
+ }
+}
diff --git a/src/main/java/Collatz.java b/src/main/java/Collatz.java
new file mode 100644
index 00000000..aabe0148
--- /dev/null
+++ b/src/main/java/Collatz.java
@@ -0,0 +1,43 @@
+class Collatz
+{
+ private long maxSequence = 0;
+ private int count = 0;
+ private long result = 0;
+ private long temp = 0;
+ private long Result_number;
+ public long setMaxSequence(long num) {
+ temp = num;
+ while (temp!=1) {
+ if (temp % 2 == 0) {
+ count++;
+ result = temp / 2;
+ temp = result;
+ } else {
+ count++;
+ result = temp * 3 + 1;
+ temp = result;
+ }
+ }
+ if (count >= maxSequence) {
+ maxSequence = count;
+ Result_number = num;
+
+ }
+ count = 0;return maxSequence;
+ }
+ public long getResult_number() {
+ return Result_number;
+ }
+}
+
+class Task1 {
+ public static void main(String[] args) {
+ Collatz object = new Collatz();
+ long result = 0;
+ for (long i = 1; i <= 1_000_000; i++)
+ result = object.setMaxSequence(i);
+ long result2 = object.getResult_number();
+ System.out.println("Sequence consist of " + result + " steps");
+ System.out.println("This number is " + result2);
+ }
+}
diff --git a/src/main/java/Numbers.java b/src/main/java/Numbers.java
new file mode 100644
index 00000000..4310160e
--- /dev/null
+++ b/src/main/java/Numbers.java
@@ -0,0 +1,56 @@
+import java.util.ArrayList;
+
+class Numbers {
+ private String[] buf = new String[100];
+ private String str="";
+ private String total="";
+ private ArrayList list = new ArrayList<>();
+ private ArrayList list2 = new ArrayList<>();
+ private String a="";
+ private String b="";
+ public String wrapping(String[] args) {
+ int j = 0;
+ for (int i = 0; i < args.length; i++) {
+ if (args[i].equals("-")) {
+ buf[j] = args[i - 1];
+ j++;
+ buf[j] = args[i + 1];
+ j++;
+ }
+ }
+ try {
+ int a = Integer.parseInt(buf[0]);
+ int b = Integer.parseInt(buf[0 + 1]);
+ for (int k = 0; a + 1 <= b; a++, k++) {
+ list.add(a + 1);
+ }
+ } catch (NumberFormatException e) { }
+ return this.list.toString();
+ }
+ public String delete(String[] args) {
+ for (int i = 0; i < args.length; i++) {
+ if (args[i].equals("-")) break;
+ str = args[i];
+ list2.add(str);
+ }
+ return this.list2.toString();
+ }
+
+ public String addingString(String[] args) {
+ Numbers numbers = new Numbers();
+ String a = numbers.wrapping(args);
+ String b = numbers.delete(args);
+ total = b + a;
+ return this.total.replace("[","").replace("]"," ").replace(", "," ");
+ }
+}
+class Task_03
+{
+ public static void main(String[]args)
+ {
+ String [] arguments ={"1","2","3","4","5","-","15"};
+ Numbers numbers = new Numbers();
+ String result = numbers.addingString(arguments);
+ System.out.println(result);
+ }
+}
diff --git a/src/main/java/Numbers2.java b/src/main/java/Numbers2.java
new file mode 100644
index 00000000..bb03be57
--- /dev/null
+++ b/src/main/java/Numbers2.java
@@ -0,0 +1,50 @@
+import java.util.regex.Pattern;
+import java.util.ArrayList;
+
+public class Numbers2 {
+ private static StringBuilder total;
+ private static ArrayList buf;
+
+ public static void main(String[] args) {
+ System.out.println(UnWrapping("1,2,4,5,6,7,18,19,20,21"));
+ }
+
+ static String UnWrapping(String original){
+ Pattern pattern = Pattern.compile("[,]");
+ String[] numbers = pattern.split(original);
+
+ int prev = -2;
+ int curr;
+ buf = new ArrayList();
+ total = new StringBuilder();
+
+ for (String num:numbers
+ ) {
+ curr = Integer.parseInt(num);
+
+ if(curr != prev+1 & buf.size() != 0)
+ BufferCleaning();
+
+ buf.add(curr);
+ prev = curr;
+ }
+ BufferCleaning();
+ total.deleteCharAt(total.length()-1);
+ return total.toString();
+ }
+ private static void BufferCleaning(){
+ if(buf.size() < 3 ){
+ for (int temp:buf) {
+ total.append(temp);
+ total.append(",");
+ }
+ }
+ else {
+ total.append(buf.get(0));
+ total.append("-");
+ total.append(buf.get(buf.size()-1));
+ total.append(",");
+ }
+ buf = new ArrayList();
+ }
+}
diff --git a/src/main/java/NumbersToStrings.java b/src/main/java/NumbersToStrings.java
new file mode 100644
index 00000000..70e297c5
--- /dev/null
+++ b/src/main/java/NumbersToStrings.java
@@ -0,0 +1,149 @@
+public class NumbersToStrings {
+ public static void main(String[] args) {
+ String in = args[0];
+ String[] out = Printing(in);
+ for (int i = 0; i < out.length; i++) {
+ System.out.println(out[i]);
+ }
+ }
+
+ static String[] Printing(String input) {
+ String[] output = new String[7];
+ for (int i = 0; i < input.length(); i++) {
+ int number = input.charAt(i);
+ String[] strBuf = printDigitArray(number);
+ if (i<1){
+ output = strBuf;
+ }
+ else {
+ for (int j = 0; j < 7; j++) {
+
+ output[j] = output[j].concat(strBuf[j]);
+ }
+ }
+
+ }
+ return output;
+ }
+
+ private static String[] printDigitArray(int number) {
+ switch (number) {
+ case '0':
+ String[] num_0 = {
+ " *** ",
+ " * * ",
+ "* *",
+ "* *",
+ "* *",
+ " * * ",
+ " *** "};
+ return num_0;
+
+ case '1':
+ String[] num_01 =
+ {" * ",
+ " ** ",
+ " * ",
+ " * ",
+ " * ",
+ " * ",
+ " *** "};
+ return num_01;
+
+ case '2':
+ String[] num_02 =
+ {"*** ",
+ " * * ",
+ " * * ",
+ " * ",
+ " * ",
+ " * ",
+ " ***** "};
+ return num_02;
+
+ case '3':
+ String[] num_03 =
+ {"*** ",
+ " * * ",
+ " * ",
+ " *** ",
+ " * ",
+ " * * ",
+ " *** "};
+
+
+ return num_03;
+
+
+ case '4':
+ String[] num_04 =
+ {"*",
+ " ** ",
+ " * * ",
+ " * * ",
+ "****** ",
+ " * ",
+ " * "};
+ return num_04;
+
+ case '5':
+
+
+ String[] num_05 =
+ {"****",
+ " * ",
+ " * ",
+ " **** ",
+ " * ",
+ " * * ",
+ " *** "};
+ return num_05;
+
+ case '6':
+ String[] num_06 =
+ {"***",
+ " * * ",
+ " * ",
+ " **** ",
+ " * * ",
+ " * * ",
+ " *** "};
+ return num_06;
+
+ case '7':
+ String[] num_07 =
+ {"*****",
+ " * ",
+ " * ",
+ " * ",
+ " * ",
+ " * ",
+ " * "};
+ return num_07;
+
+ case '8':
+ String[] num_08 =
+ {"***",
+ " * * ",
+ " * * ",
+ " *** ",
+ " * * ",
+ " * * ",
+ " *** "};
+ return num_08;
+
+ case '9':
+ String[] num_09 = {
+ " ***",
+ " * * ",
+ " * * ",
+ " **** ",
+ " * ",
+ " * * ",
+ " *** "};
+ return num_09;
+ }
+ return null;
+ }
+ }
+
diff --git a/src/main/java/Sqrt.java b/src/main/java/Sqrt.java
new file mode 100644
index 00000000..808edef6
--- /dev/null
+++ b/src/main/java/Sqrt.java
@@ -0,0 +1,52 @@
+import java.math.*;
+import java.util.Scanner;
+class Sqrt
+{
+ double delta = 0.00000001;
+ double arg;
+
+ Sqrt(double arg)
+ {
+ this.arg = arg;
+ }
+ double average(double x ,double y) {
+ return (x + y) / 2.0;
+ }
+ boolean good(double guess , double x)
+ {
+ return Math.abs(guess*guess -x)