Несколько заданий из квеста Syntax
/*
Задача: Пользователь вводит с клавиатуры список слов (и чисел).
Слова вывести в возрастающем порядке, числа - в убывающем.
Пример ввода:
Вишня
1
Боб
3
Яблоко
22
0
Арбуз
Пример вывода:
Арбуз
22
Боб
3
Вишня
1
0
Яблоко
Требования:
•
Программа должна считывать данные с клавиатуры.
•
Программа должна выводить данные на экран.
•
Выведенные слова должны быть упорядочены по возрастанию (используй готовый метод isGreaterThan).
•
Выведенные числа должны быть упорядочены по убыванию.
•
Метод main должен использовать метод sort.
•
Метод sort должен использовать метод isGreaterThan.
•
Метод sort должен использовать метод isNumber.
///////////////////////////////////////////////////////////////////
*/
package com.javarush.task.task09.task0930;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
/*
Задача по алгоритмам
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
ArrayList<String> list = new ArrayList<>();
while (true) {
String s = reader.readLine();
if (s.isEmpty()) {
break;
}
list.add(s);
}
String[] array = list.toArray(new String[0]);
sort(array);
for (String x : array) {
System.out.println(x);
}
}
public static void sort(String[] array) {
// напишите тут ваш код
}
// Метод для сравнения строк: 'а' больше чем 'b'
public static boolean isGreaterThan(String a, String b) {
return a.compareTo(b) > 0;
}
// Переданная строка - это число?
public static boolean isNumber(String s) {
if (s.length() == 0) {
return false;
}
char[] chars = s.toCharArray();
for (int i = 0; i < chars.length; i++) {
char c = chars[i];
if ((i != 0 && c == '-') // Строка содержит '-'
|| (!Character.isDigit(c) && c != '-') // или не цифра и не начинается с '-'
|| (chars.length == 1 && c == '-')) // или одиночный '-'
{
return false;
}
}
return true;
}
}
Следующее задание:
/*
По аналогии с классом Duck (утка) создай классы Cat (кошка) и Dog (собака).
Подумай, что должен возвращать метод toString в классах Cat и Dog?
В методе main создай по два объекта каждого класса и выведи их на экран.
Объекты класса Duck уже созданы и выводятся на экран.
Требования:
•
Создай класс Cat(кошка).
•
Создай класс Dog(собака).
•
У класса Cat должен быть верно реализован метод toString.
•
У класса Dog должен быть верно реализован метод toString.
•
В методе main создай два объекта типа Cat.
•
В методе main создай два объекта типа Dog.
•
Выведи все созданные объекты на экран.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
*/
package com.javarush.task.task05.task0525;
/*
И целой утки мало
*/
public class Solution {
public static void main(String[] args) {
Duck duck1 = new Duck();
Duck duck2 = new Duck();
System.out.println(duck1);
System.out.println(duck2);
//напишите тут ваш код
}
public static class Duck {
public String toString() {
return "Duck";
}
}
//напишите тут ваш код
}
Еще задание:
/*
1. Внутри класса Solution создай public static классы Man и Woman.
2. У классов должны быть поля: name(String), age (int), address (String).
3. Создай конструкторы, в которые передаются все возможные параметры.
4. Создай по два объекта каждого класса со всеми данными используя конструктор.
5. Объекты выведи на экран в таком формате: name + " " + age + " " + address
Требования:
•
В классе Solution создай public static класс Man.
•
В классе Solution создай public static класс Woman.
•
Класс Man должен содержать переменные: name(String), age(int) и address(String).
•
Класс Woman должен содержать переменные: name(String), age(int) и address(String).
•
У классов Man и Woman должны быть конструкторы, принимающие параметры с типами String, int и String.
•
Конструкторы должны инициализировать переменные класса.
•
В методе main необходимо создать по два объекта каждого типа.
•
Метод main должен выводить созданные объекты на экран в указанном формате.
///////////////////////////////////////////////////////////////////
*/
package com.javarush.task.task05.task0526;
/*
Мужчина и женщина
*/
public class Solution {
public static void main(String[] args) {
//напишите тут ваш код
}
//напишите тут ваш код
}
И еще задание:
/*
Написать функцию, которая вычисляет минимум из четырёх чисел.
Функция min(a,b,c,d) должна использовать (вызывать) функцию min(a,b)
Подсказка:
Нужно написать тело двух существующих функций min.
Требования:
•
Программа должна выводить текст на экран.
•
Методы min не должны выводить текст на экран.
•
Метод main должен вызывать метод min(a, b) и метод min(a, b, c, d).
•
Метод main должен выводить на экран результат работы методов min. Каждый раз с новой строки.
•
Метод min(a, b) должен возвращать минимальное значение из чисел a, b.
•
Метод min(a, b, c, d) должен использовать метод min(a, b)
•
Метод min(a, b, c, d) должен возвращать минимальное значение из чисел a, b, c, d.
///////////////////////////////////////////////////////////////////
*/
package com.javarush.task.task02.task0217;
/*
Минимум четырех чисел
*/
public class Solution {
public static int min(int a, int b, int c, int d) {
//напишите тут ваш код
}
public static int min(int a, int b) {
//напишите тут ваш код
}
public static void main(String[] args) throws Exception {
System.out.println(min(-20, -10));
System.out.println(min(-40, -10, -30, 40));
System.out.println(min(-20, -40, -30, 40));
System.out.println(min(-20, -10, -40, 40));
System.out.println(min(-20, -10, -30, -40));
}