From f75a9a1d790565ae2235b9fc3a034e807de239e2 Mon Sep 17 00:00:00 2001 From: LorenaBerchesan <91964957+LorenaBerchesan@users.noreply.github.com> Date: Thu, 29 Feb 2024 20:16:58 +0200 Subject: [PATCH 1/2] ex 1-10 --- .idea/.gitignore | 0 .idea/java-course.iml | 9 + .idea/modules.xml | 8 + .idea/runConfigurations.xml | 10 + .idea/vcs.xml | 6 + .idea/workspace.xml | 39 +++ .../main/java/com/rinftech/codewars/Main.java | 112 +++++++++ .../java/com/rinftech/develop/Animal.java | 11 + .../main/java/com/rinftech/develop/Car.java | 23 ++ .../java/com/rinftech/develop/Circle.java | 13 + .../java/com/rinftech/develop/Employee.java | 24 ++ .../main/java/com/rinftech/develop/Lion.java | 20 ++ .../main/java/com/rinftech/develop/Main.java | 233 ++++++++++++++++++ .../java/com/rinftech/develop/Motorcycle.java | 24 ++ .../java/com/rinftech/develop/Panther.java | 15 ++ .../java/com/rinftech/develop/Person.java | 33 +++ .../java/com/rinftech/develop/Rectangle.java | 16 ++ .../main/java/com/rinftech/develop/Shape.java | 7 + .../main/java/com/rinftech/develop/Tiger.java | 15 ++ .../java/com/rinftech/develop/Triangle.java | 16 ++ .../main/java/com/rinftech/develop/Truck.java | 22 ++ .../java/com/rinftech/develop/Vehicle.java | 55 +++++ 22 files changed, 711 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/java-course.iml create mode 100644 .idea/modules.xml create mode 100644 .idea/runConfigurations.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/workspace.xml create mode 100644 JavaCourse/src/main/java/com/rinftech/codewars/Main.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Animal.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Car.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Circle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Employee.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Lion.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Main.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Motorcycle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Panther.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Person.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Rectangle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Shape.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Tiger.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Triangle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Truck.java create mode 100644 JavaCourse/src/main/java/com/rinftech/develop/Vehicle.java diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/.idea/java-course.iml b/.idea/java-course.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/java-course.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..edb5d78 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml new file mode 100644 index 0000000..797acea --- /dev/null +++ b/.idea/runConfigurations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..696731f --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + 1709037762257 + + + + + + \ No newline at end of file diff --git a/JavaCourse/src/main/java/com/rinftech/codewars/Main.java b/JavaCourse/src/main/java/com/rinftech/codewars/Main.java new file mode 100644 index 0000000..d278509 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/codewars/Main.java @@ -0,0 +1,112 @@ +package com.rinftech.codewars; + +import java.util.Locale; +import java.util.stream.Stream; + +public class Main { + + public static void main(String[] args) { + String a = "abcd"; + System.out.println(solution("a")); + System.out.println(); + + int n = 1234; + System.out.println(countBits(n)); + System.out.println(); + + System.out.println(fisrtNonRepeatingLetter("hello word,c?")); + System.out.println(); + + int[] input = new int[]{-10,-9,-8,-6,-3,-2,-1,0,1,3,4,5,7,8,9,10,11,14,15,17,18,19,20}; + System.out.println(rangeExtraction(input)); + + + } + + //'abc'=> ["ab","c_"] ; "abcd" => ["ab","cd"] + public static String[] solution(String s) { + + boolean isOdd = s.length() % 2 == 1; + if (isOdd) { + s = s + "_"; + + } + String[] result = new String[s.length() / 2]; + + for (int i = 0; i < s.length() - 1; i += 2) { + result[i / 2] = s.substring(i, i + 2); + + } + return result; + } + + //1234 => 100111010010 transformare in baza doi si sa se calculeze cati de 1 sunt =5 + public static int countBits(int n) { + String binaryForm = Integer.toBinaryString(n); + + return (int) Stream.of(binaryForm.split("")) + .filter(digit -> Integer.parseInt(digit) == 1) + .count(); + } + + //first_non_repeating_letter "stress"=> t prima litera care nu se repeta + public static String fisrtNonRepeatingLetter(String s) { + + if (s.isEmpty()) { + return ""; + } + + String lowerS = s.toLowerCase(); + char[] chars = lowerS.toCharArray(); + for (int i = 0; i < chars.length - 1; i++) { + int firstIndex = s.indexOf(chars[i]); + int lastIndex = s.lastIndexOf(chars[i]); + + if (firstIndex == lastIndex) { + return s.substring(i, i + 1); + + } + + } + String lastChar = s.substring(s.length() - 1); + if (lowerS.indexOf(lastChar) == lowerS.length() - 1) { + return s.substring(s.length() - 1); + } + return ""; + + } + + //int=-10,-9,-8,-6,-1,0,1,2,4 => -10--8,-6,-1-2,4 + public static String rangeExtraction(int[] arr) { + StringBuilder result = new StringBuilder(); + int left = 0; + for (int right = 1; right < arr.length; right++) { + if (arr[right - 1] - arr[right] != -1) { + if (left == right - 1) { + //result += arr[left]; + result.append(arr[left]) + .append(","); + } else { + //result += arr[left]+"-"+arr[right-1]; + result.append(arr[left]) + .append("-") + .append(arr[right - 1]) + .append(","); + } + left = right; + + } + + } + if ( left == arr.length - 1) { + result.append(arr[left]); + }else{ + result.append(arr[left]) + .append("-") + .append(arr[arr.length-1]); + } + return result.toString(); + } + + //aceasi prob dar afiseaza doar intervale care sunt minim 3 altfel nr sunt puse singure +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Animal.java b/JavaCourse/src/main/java/com/rinftech/develop/Animal.java new file mode 100644 index 0000000..15f4d09 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Animal.java @@ -0,0 +1,11 @@ +package com.rinftech.develop; + +public class Animal { + public String eat() { + return "hi"; + } + + public String sound(){ + return "hi2"; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Car.java b/JavaCourse/src/main/java/com/rinftech/develop/Car.java new file mode 100644 index 0000000..b50fa2c --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Car.java @@ -0,0 +1,23 @@ +package com.rinftech.develop; + +public class Car extends Vehicle{ + public Car(String make, String model, Integer year, String fuel_type){ + super(make,model,year,fuel_type); + } + + @Override + public int maximumSpeed(){ + return 120; + } + + @Override + public double calculateFuelEfficiency(double distance, double fuelConsumptionRate) { + return distance / fuelConsumptionRate; + } + + @Override + public double distanceTraveled(double time, double speed){ + return time*speed; + } + +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Circle.java b/JavaCourse/src/main/java/com/rinftech/develop/Circle.java new file mode 100644 index 0000000..81c1c57 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Circle.java @@ -0,0 +1,13 @@ +package com.rinftech.develop; + +public class Circle extends Shape{ + private int radius; + public Circle(int radius){ + this.radius = radius; + } + + @Override + public double calculateArea(){ + return Math.PI*this.radius*this.radius; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Employee.java b/JavaCourse/src/main/java/com/rinftech/develop/Employee.java new file mode 100644 index 0000000..711df5d --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Employee.java @@ -0,0 +1,24 @@ +package com.rinftech.develop; + + +public class Employee extends Person { + + private Integer empoyeeId; + private String jobTitle; + + public Employee(String firstName, String lastName, Integer empoyeeId , String jobTitle) { + super(firstName, lastName); + this.empoyeeId = empoyeeId; + this.jobTitle = jobTitle; + } + //get + public Integer getEmpoyeeId() { + return empoyeeId; + } + + @Override + public String getLastName(){ + return super.getLastName()+","+jobTitle; + } +} + diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Lion.java b/JavaCourse/src/main/java/com/rinftech/develop/Lion.java new file mode 100644 index 0000000..2e93a7a --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Lion.java @@ -0,0 +1,20 @@ +package com.rinftech.develop; + +public class Lion extends Animal{ + private String meal; + private String sound; + public Lion(String meal, String sound){ + this.meal = meal; + this.sound = sound; + } + + @Override + public String eat(){ + return this.meal; + } + + @Override + public String sound(){ + return this.sound; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Main.java b/JavaCourse/src/main/java/com/rinftech/develop/Main.java new file mode 100644 index 0000000..8001e1e --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Main.java @@ -0,0 +1,233 @@ +package com.rinftech.develop; + +import java.util.*; + +public class Main { + public static void main(String[] args){ + int number = 8733; + System.out.println("The sum of the integer "+number+" is: "+computeSum(number)); + System.out.println(); + + String input = "The quick brown fox jumps over 42 lazy dogs"; + countAll(input); + System.out.println(); + + Employee employee = new Employee("Ana","Pop",12,"dks"); + System.out.println("Last name and job: "+employee.getLastName()); + System.out.println(); + + Car car = new Car("c", "b",2020,"d"); + System.out.println("Maximum speed car:"+car.maximumSpeed()); + System.out.println("Calculate fuel efficiency: "+car.calculateFuelEfficiency(car.distanceTraveled(20,60),5.5)); + System.out.println("Distance traveled: "+car.distanceTraveled(20,60)); + System.out.println(); + + Motorcycle motorcycle = new Motorcycle("m","r", 2021,"b"); + System.out.println("Maximum speed motorcycle: "+motorcycle.maximumSpeed()); + System.out.println("Calculate fuel efficiency: "+motorcycle.calculateFuelEfficiency(motorcycle.distanceTraveled(20,80),7.5)); + System.out.println("Distance traveled: "+motorcycle.distanceTraveled(20,80)); + System.out.println(); + + Truck truck = new Truck("t", "c", 2019, "b"); + System.out.println("Maximum speed truck: "+truck.maximumSpeed()); + System.out.println("Calculate fuel efficiency: "+truck.calculateFuelEfficiency(truck.distanceTraveled(20,50),8)); + System.out.println("Distance traveled: "+truck.distanceTraveled(20,50)); + System.out.println(); + + commonElements(); + + // Creăm un obiect de tip Scanner pentru a citi de la tastatură + Scanner scanner = new Scanner(System.in); + + // Afisăm un mesaj pentru utilizator + System.out.print("Introduceti un numar intreg: "); + + // Citim numărul introdus de utilizator + int element1 = scanner.nextInt(); + + // Afisăm un mesaj pentru utilizator + System.out.print("Introduceti un numar intreg: "); + + // Citim numărul introdus de utilizator + int element2 = scanner.nextInt(); + + swapsTwoTlements(element1,element2); + + //9th problem + + // Afisăm un mesaj pentru utilizator + System.out.print("Introduceti o culoare: "); + + // Citim numărul introdus de utilizator + String c = scanner.next(); + + positionSpecifiedElement(c); + + + anagramsMap(); + System.out.println(); + + Circle circle = new Circle(5); + System.out.println("Circle area : "+circle.calculateArea()); + + Triangle triangle = new Triangle(5,10); + System.out.println("Triangle area: "+triangle.calculateArea()); + + Rectangle rectangle = new Rectangle(5,5); + System.out.println("Rectangle area: "+rectangle.calculateArea()); + System.out.println(); + + Lion lion = new Lion("Hyenas","roar"); + System.out.println("Lion eats: "+lion.eat()+" and it makes: "+lion.sound()); + Panther panther = new Panther("deer","grr" ); + System.out.println("Panther makes: "+panther.sound()); + Tiger tiger = new Tiger("humans","hss"); + System.out.println("Tiger makes: "+tiger.sound()); + + } + + //first problem + public static int computeSum(int number) { + int sum = 0; + while ( number !=0 ) { + sum = sum + number % 10; + number = number / 10; + } + return sum; + } + + //second problem + public static void countAll(String input){ + int letters = 0; + int numbers = 0; + int spaces = 0; + for ( int i = 0 ; i< input.length() ; i++ ){ + char ch = input.charAt(i); + if ( Character.isLetter(ch) ){ + letters++; + } + if ( Character.isSpaceChar(ch) ){ + spaces++; + } + if ( Character.isDigit(ch) ){ + numbers++; + } + + } + System.out.println("Letter: "+letters); + System.out.println("Spaces: "+spaces); + System.out.println("Numbers: "+numbers); + + } + + //5th problem + public static void commonElements(){ + List firstArray = new ArrayList<>(); + List secondArray = new ArrayList<>(); + firstArray.add("Python"); + firstArray.add("Java"); + firstArray.add("GoLang"); + firstArray.add("Lisp"); + secondArray.add("Java"); + secondArray.add("C++"); + secondArray.add("Apples"); + secondArray.add("Hamburger"); + secondArray.add("Lisp"); + List newArray = new ArrayList<>(); + + for ( int i = 0 ; i < firstArray.size() ; i++ ){ + //verify first element from firstArray if exist in secondArray + if ( secondArray.contains(firstArray.get(i)) ){ + newArray.add(firstArray.get(i)); + } + } + System.out.println("Result for problem 5: "+newArray); + System.out.println(); + } + + //8th problem + public static void swapsTwoTlements(int element1, int element2){ + List colorArray = new ArrayList<>(); + colorArray.add("Red"); + colorArray.add("Green"); + colorArray.add("Black"); + colorArray.add("White"); + colorArray.add("Pink"); + + + + if ( !(element1 < colorArray.size())){ + System.out.println("The element 1 is bigger than colorArray size"); + } + if ( !(element2 < colorArray.size())){ + System.out.println("The element 2 is bigger than colorArray size"); + } + + String obj1 = colorArray.get(element1); + String obj2 = colorArray.get(element2); + for ( int i = 0 ; i < colorArray.size() ; i ++ ){ + if ( colorArray.get(i).equals(obj1)){ + colorArray.remove(i); + colorArray.add(i,obj2); + }else { + if (colorArray.get(i).equals(obj2)) { + colorArray.remove(i); + colorArray.add(i, obj1); + } + } + } + System.out.println("Output for problem 8: "+colorArray); + System.out.println(); + } + + //9th problem + public static void positionSpecifiedElement(String c){ + List color = new ArrayList<>(); + color.add("Red"); + color.add("Green"); + color.add("Black"); + color.add("White"); + color.add("Pink"); + color.add("Green"); + color.add("Green"); + color.add("Black"); + color.add("Yellow"); + color.add("White"); + + int firstPosition = color.indexOf(c); + int lastPosition = color.lastIndexOf(c); + + System.out.println("First occurrence for "+c+" is position "+firstPosition+" and last is position "+lastPosition); + System.out.println(); + } + + //10th problem + public static void anagramsMap(){ + String[] strs = {"eat", "tea", "tan", "ate", "nat", "bat", "listen", "silent", "enlist", "hello", "world", "dlrow"}; + + // Crearea unui map pentru a grupa anagramele + Map> map = new HashMap<>(); + for (String str : strs) { + char[] charArray = str.toCharArray(); + Arrays.sort(charArray); + + String sortedStr = new String(charArray); + + // Dacă șirul sortat nu există în map, adăugăm o nouă listă goală + if (!map.containsKey(sortedStr)) { + map.put(sortedStr, new ArrayList<>()); + } + map.get(sortedStr).add(str); + } + List> groupedAnagrams = new ArrayList<>(map.values()); + for (List group : groupedAnagrams) { + System.out.println("Output problem 10: "+group); + } + } + + + + + + +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Motorcycle.java b/JavaCourse/src/main/java/com/rinftech/develop/Motorcycle.java new file mode 100644 index 0000000..1ae3867 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Motorcycle.java @@ -0,0 +1,24 @@ +package com.rinftech.develop; + +public class Motorcycle extends Vehicle{ + public Motorcycle(String make, String model, Integer year, String fuel_type){ + super(make,model,year,fuel_type); + } + + @Override + public int maximumSpeed(){ + return 120; + } + + + + @Override + public double calculateFuelEfficiency(double distance, double fuelConsumptionRate) { + return distance / fuelConsumptionRate; + } + + @Override + public double distanceTraveled(double time, double speed){ + return time*speed; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Panther.java b/JavaCourse/src/main/java/com/rinftech/develop/Panther.java new file mode 100644 index 0000000..9101dbb --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Panther.java @@ -0,0 +1,15 @@ +package com.rinftech.develop; + +public class Panther extends Animal{ + private String meal; + private String sound; + public Panther(String meal, String sound){ + this.meal = meal; + this.sound = sound; + } + + @Override + public String sound(){ + return this.sound; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Person.java b/JavaCourse/src/main/java/com/rinftech/develop/Person.java new file mode 100644 index 0000000..5cc0ea0 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Person.java @@ -0,0 +1,33 @@ +package com.rinftech.develop; +//3 problem +public class Person { + private String firstName; + private String lastName; + + //constructor + public Person(String firstName, String lastName) { + this.firstName = firstName; + this.lastName = lastName; + } + + //get + public String getFirstName() { + return firstName; + } + + public String getLastName() { + return lastName; + } + + public void calculateFuelEfficiency(){ + + } + + public int distanceTraveled(int time, int speed){ + return time*speed; + } + + public int maximumSpeed(){ + return 0; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Rectangle.java b/JavaCourse/src/main/java/com/rinftech/develop/Rectangle.java new file mode 100644 index 0000000..f413764 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Rectangle.java @@ -0,0 +1,16 @@ +package com.rinftech.develop; + +public class Rectangle extends Shape{ + private int length; + private int width; + + public Rectangle(int length, int width){ + this.length = length; + this.width = width; + } + + @Override + public double calculateArea(){ + return this.length*this.width; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Shape.java b/JavaCourse/src/main/java/com/rinftech/develop/Shape.java new file mode 100644 index 0000000..aec4a39 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Shape.java @@ -0,0 +1,7 @@ +package com.rinftech.develop; + +public class Shape { + public double calculateArea(){ + return 0; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Tiger.java b/JavaCourse/src/main/java/com/rinftech/develop/Tiger.java new file mode 100644 index 0000000..981bcc7 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Tiger.java @@ -0,0 +1,15 @@ +package com.rinftech.develop; + +public class Tiger extends Animal{ + private String meal; + private String sound; + public Tiger(String meal,String sound){ + this.meal = meal; + this.sound = sound; + } + + @Override + public String sound(){ + return this.sound; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Triangle.java b/JavaCourse/src/main/java/com/rinftech/develop/Triangle.java new file mode 100644 index 0000000..65d27b2 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Triangle.java @@ -0,0 +1,16 @@ +package com.rinftech.develop; + +public class Triangle extends Shape{ + + private int hight; + private int base; + public Triangle(int hight, int base){ + this.hight =hight; + this.base = base; + } + + @Override + public double calculateArea(){ + return (this.hight*this.base)/2; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Truck.java b/JavaCourse/src/main/java/com/rinftech/develop/Truck.java new file mode 100644 index 0000000..8bea4b3 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Truck.java @@ -0,0 +1,22 @@ +package com.rinftech.develop; + +public class Truck extends Vehicle{ + public Truck(String make, String model, Integer year, String fuel_type){ + super(make,model,year,fuel_type); + } + + @Override + public int maximumSpeed(){ + return 100; + } + + @Override + public double calculateFuelEfficiency(double distance, double fuelConsumptionRate) { + return distance / fuelConsumptionRate; + } + + @Override + public double distanceTraveled(double time, double speed){ + return time*speed; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/develop/Vehicle.java b/JavaCourse/src/main/java/com/rinftech/develop/Vehicle.java new file mode 100644 index 0000000..3c56b0b --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/develop/Vehicle.java @@ -0,0 +1,55 @@ +package com.rinftech.develop; + +public abstract class Vehicle { + private String make; + private String model; + private Integer year; + private String fuel_type; + + public Vehicle(String make, String model, Integer year, String fuel_type){ + this.make = make; + this.model = model; + this.year = year; + this.fuel_type = fuel_type; + } + + + + public String getMake() { + return make; + } + + public void setMake(String make) { + this.make = make; + } + + public String getModel() { + return model; + } + + public void setModel(String model) { + this.model = model; + } + + public Integer getYear() { + return year; + } + + public void setYear(Integer year) { + this.year = year; + } + + public String getFuel_type() { + return fuel_type; + } + + public void setFuel_type(String fuel_type) { + this.fuel_type = fuel_type; + } + + public abstract int maximumSpeed(); + + public abstract double calculateFuelEfficiency(double distance, double fuelConsumptionRate); + + public abstract double distanceTraveled(double time, double speed); +} From 805294a07a8a4796494e0f9e7c18e252f0c7fa2a Mon Sep 17 00:00:00 2001 From: RaresSuflet Date: Sat, 2 Mar 2024 21:55:54 +0200 Subject: [PATCH 2/2] solved exercises 1-10 --- .../java/com/rinftech/problems/Exercise1.java | 16 +++++++ .../com/rinftech/problems/Exercise10.java | 47 +++++++++++++++++++ .../java/com/rinftech/problems/Exercise2.java | 22 +++++++++ .../java/com/rinftech/problems/Exercise5.java | 30 ++++++++++++ .../java/com/rinftech/problems/Exercise8.java | 23 +++++++++ .../java/com/rinftech/problems/Exercise9.java | 28 +++++++++++ .../rinftech/problems/exercise3/Employee.java | 21 +++++++++ .../com/rinftech/problems/exercise3/Main.java | 8 ++++ .../rinftech/problems/exercise3/Person.java | 19 ++++++++ .../com/rinftech/problems/exercise4/Car.java | 22 +++++++++ .../com/rinftech/problems/exercise4/Main.java | 21 +++++++++ .../problems/exercise4/Motorcycle.java | 23 +++++++++ .../rinftech/problems/exercise4/Truck.java | 23 +++++++++ .../rinftech/problems/exercise4/Vehicle.java | 44 +++++++++++++++++ .../rinftech/problems/exercise6/Circle.java | 13 +++++ .../com/rinftech/problems/exercise6/Main.java | 13 +++++ .../problems/exercise6/Rectangle.java | 16 +++++++ .../rinftech/problems/exercise6/Shape.java | 5 ++ .../rinftech/problems/exercise6/Triangle.java | 20 ++++++++ .../rinftech/problems/exercise7/Animal.java | 10 ++++ .../com/rinftech/problems/exercise7/Lion.java | 12 +++++ .../com/rinftech/problems/exercise7/Main.java | 12 +++++ .../rinftech/problems/exercise7/Panther.java | 12 +++++ .../rinftech/problems/exercise7/Tiger.java | 12 +++++ 24 files changed, 472 insertions(+) create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/Exercise1.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/Exercise10.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/Exercise2.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/Exercise5.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/Exercise8.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/Exercise9.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise3/Employee.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise3/Main.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise3/Person.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise4/Car.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise4/Main.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise4/Motorcycle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise4/Truck.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise4/Vehicle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise6/Circle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise6/Main.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise6/Rectangle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise6/Shape.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise6/Triangle.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise7/Animal.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise7/Lion.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise7/Main.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise7/Panther.java create mode 100644 JavaCourse/src/main/java/com/rinftech/problems/exercise7/Tiger.java diff --git a/JavaCourse/src/main/java/com/rinftech/problems/Exercise1.java b/JavaCourse/src/main/java/com/rinftech/problems/Exercise1.java new file mode 100644 index 0000000..19a8ea4 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/Exercise1.java @@ -0,0 +1,16 @@ +package com.rinftech.problems; + +public class Exercise1 { + + public static void main(String[] args) { + System.out.println("Result: " + computeDigitsSum(8733)); + } + private static int computeDigitsSum(int input) { + int result = 0; + while (input != 0) { + result += input % 10; + input /= 10; + } + return result; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/Exercise10.java b/JavaCourse/src/main/java/com/rinftech/problems/Exercise10.java new file mode 100644 index 0000000..589d974 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/Exercise10.java @@ -0,0 +1,47 @@ +package com.rinftech.problems; + +import java.util.*; + +public class Exercise10 { + public static void main(String[] args) { + String[] input = {"eat", "tea", "tan", "ate", "nat", "bat", "listen", "silent", "enlist", "hello", "world", "dlrow"}; + Map> result = groupAnagrams(input); + + for (Map.Entry> entry : result.entrySet()) { + System.out.println("Group nr.: " + entry.getKey() + ", Elements: " + entry.getValue()); + } + } + + public static Map> groupAnagrams(String[] input) { + Map> anagramMap = new HashMap<>(); + anagramMap.put(0, new ArrayList<>(Collections.singletonList(input[0]))); + + for (int i = 1; i < input.length; i++) { + String currentElement = input[i]; + boolean alreadyAdded = false; + + for (Map.Entry> entry : anagramMap.entrySet()) { + List groupList = entry.getValue(); + if (!groupList.isEmpty()) { + String groupMember = groupList.get(0); + if (currentElement.length() == groupMember.length()) { + char[] firstWord = currentElement.toCharArray(); + char[] secondWord = groupMember.toCharArray(); + Arrays.sort(firstWord); + Arrays.sort(secondWord); + + if (Arrays.equals(firstWord, secondWord)) { + groupList.add(currentElement); + alreadyAdded = true; + break; + } + } + } + } + if (!alreadyAdded) { + anagramMap.put(anagramMap.size(), new ArrayList<>(Collections.singletonList(currentElement))); + } + } + return anagramMap; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/Exercise2.java b/JavaCourse/src/main/java/com/rinftech/problems/Exercise2.java new file mode 100644 index 0000000..0894052 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/Exercise2.java @@ -0,0 +1,22 @@ +package com.rinftech.problems; + +public class Exercise2 { + public static void main(String[] args) { + countCharacters("The quick brown fox jumps over 42 lazy dogs"); + } + private static void countCharacters(String input) { + int letterCount = 0; + int spaceCount = 0; + int numberCount = 0; + for (char c : input.toCharArray()) { + if ((c >= 65 && c <= 90 ) || (c >= 97 && c <= 122)) { + letterCount++; + } else if (c == 32) { + spaceCount++; + } else if (c >= 48 && c <= 57){ + numberCount++; + } + } + System.out.println("Letters: " + letterCount + " Spaces: " + spaceCount + " Numbers: " + numberCount); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/Exercise5.java b/JavaCourse/src/main/java/com/rinftech/problems/Exercise5.java new file mode 100644 index 0000000..95ae160 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/Exercise5.java @@ -0,0 +1,30 @@ +package com.rinftech.problems; + +import java.util.Arrays; +import java.util.HashSet; + +public class Exercise5 { + public static void main(String[] args) { + String[] firstArray = {"Python", "Java", "GoLang", "Lisp"}; + String[] secondArray = {"Java", "C++", "Apples", "Hamburger", "Lisp"}; + System.out.println(findCommonElements(firstArray, secondArray)); + + } + + public static StringBuilder findCommonElements(String[] firstArray, String[] secondArray) { + HashSet firstSet = new HashSet<>(Arrays.asList(firstArray)); + StringBuilder commonElements = new StringBuilder(); + + for (String element : secondArray) { + if (firstSet.contains(element)) { + if (commonElements.length() == 0) { + commonElements.append(element); + } else { + commonElements.append(", "); + commonElements.append(element); + } + } + } + return commonElements; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/Exercise8.java b/JavaCourse/src/main/java/com/rinftech/problems/Exercise8.java new file mode 100644 index 0000000..6c582f7 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/Exercise8.java @@ -0,0 +1,23 @@ +package com.rinftech.problems; + +import java.util.ArrayList; + +public class Exercise8 { + public static void main(String[] args) { + ArrayList input = new ArrayList(); + input.add("Red"); + input.add("Green"); + input.add("Black"); + input.add("White"); + input.add("Pink"); + System.out.println("Output: " + swapTwoElements(input, 1, 4)); + } + + public static ArrayList swapTwoElements (ArrayList input, int firstIndex, int secondIndex) { + String elementCopy; + elementCopy = input.get(firstIndex); + input.set(firstIndex, input.get(secondIndex)); + input.set(secondIndex, elementCopy); + return input; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/Exercise9.java b/JavaCourse/src/main/java/com/rinftech/problems/Exercise9.java new file mode 100644 index 0000000..44ce2b7 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/Exercise9.java @@ -0,0 +1,28 @@ +package com.rinftech.problems; + +import java.util.Arrays; +import java.util.List; + +public class Exercise9 { + public static void main(String[] args) { + List input = Arrays.asList("Red", "Green", "Black", "White", "Pink", "Green", "Green", "Black", "Yellow" + , "White"); + findFirstAndLastOccurrence(input, "Green"); + } + public static void findFirstAndLastOccurrence(List input, String elementToFind) { + int firstOccurrence = -1; + int lastOccurrence = -1; + int j = input.size() - 1; + for (int i = 0; i < input.size() && (firstOccurrence == -1 || lastOccurrence == -1); i++) { + if (input.get(i).equals(elementToFind) && (firstOccurrence < 0)) { + firstOccurrence = i; + } + if (input.get(j).equals(elementToFind) && (lastOccurrence < 0)) { + lastOccurrence = j; + } + j--; + } + System.out.println("First occurrence for " + elementToFind + " is position " + firstOccurrence + + " and last position is " + lastOccurrence); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Employee.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Employee.java new file mode 100644 index 0000000..63521ba --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Employee.java @@ -0,0 +1,21 @@ +package com.rinftech.problems.exercise3; + +public class Employee extends Person{ + private int employeeId; + private String jobTitle; + + public Employee(String firstName, String lastName, int employeeId, String jobTitle) { + super(firstName, lastName); + this.employeeId = employeeId; + this.jobTitle = jobTitle; + } + + public int getEmployeeId() { + return employeeId; + } + + @Override + public String getLastName() { + return this.jobTitle + " " + super.getLastName(); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Main.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Main.java new file mode 100644 index 0000000..334bad4 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Main.java @@ -0,0 +1,8 @@ +package com.rinftech.problems.exercise3; + +public class Main { + public static void main(String[] args) { + Employee employee = new Employee("James", "Smith", 17, "Business Analyst"); + System.out.println("Job Title and Last name: " + employee.getLastName());; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Person.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Person.java new file mode 100644 index 0000000..1bf266f --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise3/Person.java @@ -0,0 +1,19 @@ +package com.rinftech.problems.exercise3; + +public class Person { + private String firstName; + private String lastName; + + public Person(String firstName, String lastName) { + this.firstName = firstName; + this.lastName = lastName; + } + + public String getFirstName() { + return firstName; + } + + public String getLastName() { + return lastName; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Car.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Car.java new file mode 100644 index 0000000..77fb5e4 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Car.java @@ -0,0 +1,22 @@ +package com.rinftech.problems.exercise4; + +public class Car extends Vehicle{ + public Car(String make, String model, int year, String fuelType) { + super(make, model, year, fuelType); + } + @Override + public void calculateFuelEfficiency() { + System.out.println(this.getMake() + " cars have all kinds of fuel depending on their model and fuel type."); + + } + @Override + public void calculateDistanceTraveled(int traveledDistance) { + System.out.println("This " + this.getMake() + " " + this.getModel() + " " + this.getYear() + " has traveled " + traveledDistance + + " kilometres already!"); + } + @Override + public void calculateMaximumSpeed(int speed) { + System.out.println(this.getMake() + " " + this.getModel() + " " + this.getYear() + " can reach a speed of " + speed + + " kilometres per hour!"); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Main.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Main.java new file mode 100644 index 0000000..e7badd3 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Main.java @@ -0,0 +1,21 @@ +package com.rinftech.problems.exercise4; + +public class Main { + public static void main(String[] args) { + Car car = new Car("Toyota", "Supra MKIV", 1996, "Petrol"); + Motorcycle motorcycle = new Motorcycle("Kawasaki", "Ninja 400", 2018, "Unleaded Petrol"); + Truck truck = new Truck("Ford", "F-250", 2021, "Diesel Fuel"); + + car.calculateFuelEfficiency(); + motorcycle.calculateFuelEfficiency(); + truck.calculateFuelEfficiency(); + + car.calculateDistanceTraveled(137582); + motorcycle.calculateDistanceTraveled(48973); + truck.calculateDistanceTraveled(62586); + + car.calculateMaximumSpeed(250); + motorcycle.calculateMaximumSpeed(196); + truck.calculateMaximumSpeed(173); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Motorcycle.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Motorcycle.java new file mode 100644 index 0000000..4f7f713 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Motorcycle.java @@ -0,0 +1,23 @@ +package com.rinftech.problems.exercise4; + +public class Motorcycle extends Vehicle{ + public Motorcycle(String make, String model, int year, String fuelType) { + super(make, model, year, fuelType); + } + + @Override + public void calculateFuelEfficiency() { + System.out.println(this.getMake() + " motorcycles have all kinds of fuel depending on their model and fuel type."); + + } + @Override + public void calculateDistanceTraveled(int traveledDistance) { + System.out.println("This " + this.getMake() + " " + this.getModel() + " " + this.getYear() + " has traveled " + traveledDistance + + " kilometres already!"); + } + @Override + public void calculateMaximumSpeed(int speed) { + System.out.println(this.getMake() + " " + this.getModel() + " " + this.getYear() + " can reach a speed of " + speed + + " kilometres per hour!"); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Truck.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Truck.java new file mode 100644 index 0000000..8b5fb05 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Truck.java @@ -0,0 +1,23 @@ +package com.rinftech.problems.exercise4; + +public class Truck extends Vehicle{ + public Truck(String make, String model, int year, String fuelType) { + super(make, model, year, fuelType); + } + + @Override + public void calculateFuelEfficiency() { + System.out.println(this.getMake() + " trucks have all kinds of fuel depending on their model and fuel type."); + + } + @Override + public void calculateDistanceTraveled(int traveledDistance) { + System.out.println("This " + this.getMake() + " " + this.getModel() + " " + this.getYear() + " has traveled " + traveledDistance + + " kilometres already!"); + } + @Override + public void calculateMaximumSpeed(int speed) { + System.out.println(this.getMake() + " " + this.getModel() + " " + this.getYear() + " can reach a speed of " + speed + + " kilometres per hour!"); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Vehicle.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Vehicle.java new file mode 100644 index 0000000..cf8357c --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise4/Vehicle.java @@ -0,0 +1,44 @@ +package com.rinftech.problems.exercise4; + +public class Vehicle { + private String make; + private String model; + private int year; + private String fuelType; + + public Vehicle(String make, String model, int year, String fuelType) { + this.make = make; + this.model = model; + this.year = year; + this.fuelType = fuelType; + } + + public String getMake() { + return make; + } + + public String getModel() { + return model; + } + + public int getYear() { + return year; + } + + public String getFuelType() { + return fuelType; + } + + public void calculateFuelEfficiency() { + ; + } + + public void calculateDistanceTraveled(int traveledDistance) { + ; + } + + public void calculateMaximumSpeed(int speed) { + ; + } + +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Circle.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Circle.java new file mode 100644 index 0000000..62c4688 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Circle.java @@ -0,0 +1,13 @@ +package com.rinftech.problems.exercise6; + +public class Circle extends Shape{ + private double radius; + + public Circle(double radius) { + this.radius = radius; + } + @Override + public double calculateArea() { + return Math.PI * Math.pow(this.radius, 2); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Main.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Main.java new file mode 100644 index 0000000..9aec5fd --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Main.java @@ -0,0 +1,13 @@ +package com.rinftech.problems.exercise6; + +public class Main { + public static void main(String[] args) { + Circle circle = new Circle(6); + Rectangle square = new Rectangle(8, 8); + Triangle triangle = new Triangle(3, 4, 5); + + System.out.println("Circle area: " + circle.calculateArea()); + System.out.println("Rectangle area: " + square.calculateArea()); + System.out.println("Triangle area: " + triangle.calculateArea()); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Rectangle.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Rectangle.java new file mode 100644 index 0000000..6ca378b --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Rectangle.java @@ -0,0 +1,16 @@ +package com.rinftech.problems.exercise6; + +public class Rectangle extends Shape{ + private double length; + private double width; + + public Rectangle(double length, double width) { + this.length = length; + this.width = width; + } + + @Override + public double calculateArea() { + return this.length * this.width; + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Shape.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Shape.java new file mode 100644 index 0000000..11fac44 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Shape.java @@ -0,0 +1,5 @@ +package com.rinftech.problems.exercise6; + +abstract class Shape { + public abstract double calculateArea(); +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Triangle.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Triangle.java new file mode 100644 index 0000000..6c3aa3a --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise6/Triangle.java @@ -0,0 +1,20 @@ +package com.rinftech.problems.exercise6; + +public class Triangle extends Shape{ + private double sideA; + private double sideB; + private double sideC; + + public Triangle(double sideA, double sideB, double sideC) { + this.sideA = sideA; + this.sideB = sideB; + this.sideC = sideC; + } + + @Override + public double calculateArea() { + double semiPerimeter = (this.sideA + this.sideB + this.sideC) / 2; + return Math.sqrt(semiPerimeter * (semiPerimeter - this.sideA) * (semiPerimeter - this.sideB) * + (semiPerimeter - this.sideC)); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Animal.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Animal.java new file mode 100644 index 0000000..a32ffb8 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Animal.java @@ -0,0 +1,10 @@ +package com.rinftech.problems.exercise7; + +public class Animal { + public void eat() { + System.out.println("An animal can eat very different things compared to another"); + } + public void sound() { + System.out.println("An animal makes very diverse sounds."); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Lion.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Lion.java new file mode 100644 index 0000000..9a61827 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Lion.java @@ -0,0 +1,12 @@ +package com.rinftech.problems.exercise7; + +public class Lion extends Animal{ + @Override + public void eat() { + System.out.println("A lion primarily hunts zebras and wildebeests."); + } + @Override + public void sound() { + System.out.println("A lion roars"); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Main.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Main.java new file mode 100644 index 0000000..2bf64da --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Main.java @@ -0,0 +1,12 @@ +package com.rinftech.problems.exercise7; + +public class Main { + public static void main(String[] args) { + Lion lion = new Lion(); + Tiger tiger = new Tiger(); + Panther panther = new Panther(); + lion.eat(); + tiger.eat(); + panther.eat(); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Panther.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Panther.java new file mode 100644 index 0000000..6c36da6 --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Panther.java @@ -0,0 +1,12 @@ +package com.rinftech.problems.exercise7; + +public class Panther extends Animal{ + @Override + public void eat() { + System.out.println("A panther primarily hunts wild hog and deer."); + } + @Override + public void sound() { + System.out.println("A panther is usually silent"); + } +} diff --git a/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Tiger.java b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Tiger.java new file mode 100644 index 0000000..dfd400e --- /dev/null +++ b/JavaCourse/src/main/java/com/rinftech/problems/exercise7/Tiger.java @@ -0,0 +1,12 @@ +package com.rinftech.problems.exercise7; + +public class Tiger extends Animal{ + @Override + public void eat() { + System.out.println("A tiger primarily hunts deer and wild boar"); + } + @Override + public void sound() { + System.out.println("A tiger roars"); + } +}