• Октября 22, 2020, 04:31:12 am
• Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
Новости: Вебинар по выбору IT профессии: http://bit.ly/2S4kcC6

Автор Тема: Java_OOP_ALexander_Julanska_11_02_2020  (Прочитано 1154 раз)

Alexander Ts

  • Преподаватели
  • Пользователи
  • *
  • Сообщений: 14222
    • Просмотр профиля
    • E-mail
Re: Java_OOP_ALexander_Julanska_11_02_2020
« Ответ #75 : Марта 20, 2020, 12:23:07 am »
Итак что полезно почитать после окончания курса Java OOP для начинающего

Enterprice разработчика

1) Основы html и CSS - Например тут - http://htmlbook.ru/
   Если быстро и относительно просто красивый FrontEnd к своему проекту - то попробуйте BootStrap - http://getbootstrap.com/

2) Познакомится и разобраться как работает Maven - Разобраться как работать именно из консоли - никаких IDE
   Maven - https://maven.apache.org/
   
   Почитать о Maven - http://www.apache-maven.ru/           
                 https://habrahabr.ru/post/77382/

3) Зарегистрироваться для получения бесплатного хостинга
   Heroku - https://www.heroku.com/
   Open Shift - https://www.openshift.com/
 
4) Установить и настроить сервер баз данных (один на ваш выбор. Всеволод любит MySQL):
      MySQL - https://www.mysql.com/
      PostgreSQL - https://www.postgresql.org/

5) Основы sql - Изучать лучше на примере MySQL - http://dump.codebreak.ru/vv206_files_archive/6%20%D1%81%D0%B5%D0%BC%D0%B5%D1%81%D1%82%D1%80/%D0%91%D0%B0%D0%B7%D1%8B%20%D0%94%D0%B0%D0%BD%D0%BD%D1%8B%D1%85/%D0%92%D0%B8%D0%BA%D1%82%D0%BE%D1%80_%D0%93%D0%BE%D0%BB%D1%8C%D1%86%D0%BC%D0%B0%D0%BD_-_mysql_5.0_-_%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%81%D1%82%D0%B0_-_2010.pdf

6) Установить и настроить контейнер сервлетов - Apache TomCat - http://tomcat.apache.org/


Рекомендации для Android разработчика:

1) Установить и настроить среду разработки Android Studio - https://developer.android.com/studio/index.html
2) Прочесть (по возможности как можно больше туториал рекомендованный преподавателем) - https://github.com/codepath/android_guides/wiki
3) Можете изучить работу со встраиваемой базой данных SQLite - https://www.sqlite.org/


Если у вас есть желание оставить отзыв о наших курсах, то вы можете сделать это по ссылке
- https://jobs.dou.ua/companies/progkievua/reviews/
Заранее спасибо за отзывы.

Ну и удачи вам в дальнейшем развитии.

С уважением Цымбалюк А.Н.

Rod

  • Пользователи
  • *
  • Сообщений: 25
    • Просмотр профиля
    • E-mail
Re: Java_OOP_ALexander_Julanska_11_02_2020
« Ответ #76 : Марта 25, 2020, 10:23:18 pm »
Добрый вечер, Александр!
проверьте пожалуйста:

3) Считайте из файла текст на английском языке, вычислите
относительную частоту повторения каждой буквы и выведите на
экран результат в порядке убывания относительной частоты
повторения.


https://gitlab.com/_Rod_/homeworkjavaoop/-/tree/master/OOP_HW9/HomeWork9Task3OOP

Alexander Ts

  • Преподаватели
  • Пользователи
  • *
  • Сообщений: 14222
    • Просмотр профиля
    • E-mail
Re: Java_OOP_ALexander_Julanska_11_02_2020
« Ответ #77 : Марта 26, 2020, 01:27:09 pm »
Rod

Решение верное. Но вы уже знаете про Map, а с их помощью это задание можно было решить гораздо проще.

Hetalova

  • Пользователи
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Java_OOP_ALexander_Julanska_11_02_2020
« Ответ #78 : Апреля 11, 2020, 07:34:43 pm »
Добрый вечер)
Домашнее задание №2 второй уровень

Задание 1
С клавиатуры вводиться шестизначное число. Проверить, является ли
оно палиндромом. Примечание: палиндромом называется число, слово
или текст, которые одинакового читаются слева направо и справа налево.
Например, это числа 143341, 5555, 7117 и т. д.
import java.util.Scanner;
public class Test {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
       String palindrome = 0;
        System.out.println("Введите шестизначное число:");
        palindrome = scanner.nextLine();
        System.out.println(isPalindrome(palindrome));

    }
 public static boolean isPalindrome(String value) {
String clean = numbers.replaceAll("\\s+", "").toLowerCase();
 int length = clean.length();
        int forward = 0;
        int backward = length - 1;
        while (backward > forward) {
        char forwardChar = clean.charAt(forward++);
            char backwardChar = clean.charAt(backward--);
            if (forwardChar != backwardChar)
                return false;

        }
        return true;
    }
}

Задание 2
Проверить, является ли четырехзначное число счастливым билетом.
Дано четырехзначное число. Проверить, является ли оно «счастливым
билетом». Примечание: счастливым билетом называется число, в
котором - при четном количестве цифр в числе сумма цифр его левой
половины равна сумме цифр его правой половины. Например,
рассмотрим число 1322. Его левая половина равна 13, а правая – 22, и
оно является счастливым билетом (т. к. 1 + 3 = 2 + 2)
public class Main {
    public static void main(String[] args) {
        int number1 = 2;
        int number2 = 3;
        int number3 = 7;
        int number4 = 7;

        if(number1 + number2 == number3 + number4){
            System.out.println("У вас счастливый билет!!!");
        }else{
            System.out.println("У вас не счастливый билет!!!");
        }

    }
}
Задание 3
Есть круг с центром в начале координат и радиусом 4. Пользователь
вводит с клавиатуры координаты точки x и y. Написать программу которая
определит лежит ли эта точка внутри круга или нет.

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
        double radius = 4.0;
        double x = 0;
        double y = 0;
        System.out.println("Введите координаты точки х:");
        x = scanner.nextDouble();
        System.out.println("Введите координаты точки y:");
        y = scanner.nextDouble();
        double h = Math.sqrt(x * x + y * y);
        if (h > radius) {
            System.out.println("Точка не принадлежит кругу!!");
        } else {
            System.out.println("Точка  принадлежит кругу");
        }


    }
}

Задание 4
 Дан треугольник координаты вершин А(0,0), В(4,4), С(6,1). Пользователь
вводит с клавиатуры координаты точки x и y. Написать программу которая
определит лежит ли эта точка внутри треугольника или нет.
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
     int x0 = 0;
     int y0 = 0;
     int x1 = 4;
     int y1 = 4;
     int x2 = 6;
     int y2 = 1;
     int a = 0;
     int b = 0;
     int c = 0;



        int x3= 0;
        int y3 = 0;
        System.out.println("Введите координаты точки х:");
        x3= scanner.nextInt();
        System.out.println("Введите координаты точки y:");
        y3 = scanner.nextInt();


       a = (x1 - x0) * (y2 - y1) - (x2 - x1) * (y1 - y0);
       b = (x2 - x0) * (y3 - y2) - (x3 - x2) * (y2 - y0);
       c = (x3 - x0) * (y1 - y3) - (x1 - x3) * (y3 - y0);

        if ((a >= 0 && b >= 0 && c >= 0) || (a <= 0 && b <= 0 && c <= 0)){
            System.out.println("Точка принадлежит треугольнику");
        }else {
            System.out.println("Точка не принадлежит треугольнику");
        }


    }
}






Hetalova

  • Пользователи
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Java_OOP_ALexander_Julanska_11_02_2020
« Ответ #79 : Апреля 11, 2020, 07:43:57 pm »
Домашняя работа 4 второй уровень
Задание 1
«Перевернуть массив». Т.е. написать программу которая повернет
базовый массив на 90,180,270 градусов по часовой стрелке. (При
выполнении задания использовать дополнительный массив нельзя). В
примере показан поворот на 90 градусов - (3 часа)
public class Main {
    public static void main(String[] args) {
        // часть 1 - создаем матрицу n на n
        int n = 6;
        int[][] a = new int[n][n];
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                a[i][j] =  j+1;
            }
        }

        // часть 2 - выводит на экран начальную матрицу
        System.out.println("Начальная матрица");
        System.out.println("------");
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                System.out.printf("%4d", a[i][j]);
            }
            System.out.println();
        }
        // часть 3 - транспонирование матрицы
        for (int i = 0; i < n; i++) {
            for (int j = i+1; j < n; j++) {
                int temp = a[i][j];
                a[i][j] = a[j][i];
                a[j][i] = temp;
            }
        }
        // часть 4 - выводит на экран транспонированную матрицу
        System.out.println();
        System.out.println("Новая матрица");
        System.out.println("------");
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                System.out.printf("%3d", a[i][j]);
            }
            System.out.println();
        }








    }
}


Задание 2
Написать код для зеркального переворота массива (7,2,9,4) -> (4,9,2,7). -
массив может быть произвольной длинны. (При выполнении задания
использовать дополнительный массив нельзя)(1 час)

public class Main {
    public static void main(String[] args) {
        int [] arr = {7,2,9,4};

        for(int i = 0; i < arr.length; i++){
            System.out.println(arr[i]);
        }
        int n = arr.length;
        int temp;

        for (int i = 0; i < n/2; i++) {
            temp = arr[n-i-1];
            arr[n-i-1] = arr[i];
            arr[i] = temp;
        }
        for (int i=0; i<arr.length; i++){
            System.out.print(arr[i]);
        }
    }
}




Hetalova

  • Пользователи
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Java_OOP_ALexander_Julanska_11_02_2020
« Ответ #80 : Апреля 11, 2020, 07:50:02 pm »
Домашнее задание 5 уровень два
Задание 1
Существует массив {1,2,3,4,5} — размер массива может быть
произвольным. Напишите программу которая выведет на экран все
возможные комбинации из этих цифр. Внимание повторений быть не
должно.(2 часа)
public class Main {
    public static void main(String args[]) {
        String[] numbers = {"1", "2", "3", "4", "5"};
        permutation(numbers);
    }

    public static void permutation(String[] arr){
        combinationOfValues (arr, 0);
    }

    private static void combinationOfValues(String[] arr, int index){
        if(index >= arr.length - 1){
            for(String s: arr) System.out.print(s + " ");
            System.out.println("");
            return;
        }

        for(int i = index; i < arr.length; i++){
            String temp = arr[index];
            arr[index] = arr[i];
            arr[i] = temp;

            combinationOfValues(arr, index+1);

            temp = arr[index];
            arr[index] = arr[i];
            arr[i] = temp;
        }
    }
}



Задание 2
Число-палиндром с обеих сторон (справа налево и слева направо)
читается одинаково. Самое большое число-палиндром, полученное
умножением двух двузначных чисел – 9009 = 91 ? 99.
Найдите самый большой палиндром, полученный умножением двух
трехзначных чисел. (4 часа)

public class Main {

    public static void main(String[] args) {
        System.out.println(getBiggestPalindrome());
    }

    private static boolean isPalindrome(int number) {
        int result = 0;
        int n = number;
        while (n > 0) {
            int digit = n % 10;
            result = result * 10 + digit;
            n /= 10;
        }
        return result == number;
    }

    public static int getBiggestPalindrome() {
        int maxNumber= 999;
        int minNumber = 100;
        int biggest = -1;

        for (int i = maxNumber; i >= minNumber; i--) {
           
            if (i * i < biggest) {
                break;
            }
           
            for (int j = i; j >= minNumber; j--) {
                int product = j * i;
                if (product < biggest) {
                    break;
                }
                if (isPalindrome(product)) {
                    biggest = product;
                }
            }
        }
        return biggest;
    }


}




Alexander Ts

  • Преподаватели
  • Пользователи
  • *
  • Сообщений: 14222
    • Просмотр профиля
    • E-mail
Re: Java_OOP_ALexander_Julanska_11_02_2020
« Ответ #81 : Апреля 12, 2020, 11:20:10 pm »
Hetalova
Домашняя работа 4 второй уровень
Задание 1
Ну а где повороты на 180, 270 градусов?

В остальном решение верное

Hetalova

  • Пользователи
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Java_OOP_ALexander_Julanska_11_02_2020
« Ответ #82 : Апреля 15, 2020, 04:35:33 pm »
Спасибо, доделаю )