Домашние задания

Домашнее задание 1. Hello World

Тесты к домашним заданиям

  1. Установите JDK 21+.
  2. Скопируйте исходный код HelloWorld.java из архива с примерами к лекции intro.zip.
  3. Откомпилируйте HelloWorld.java и получите HelloWorld.class.
  4. Запустите HelloWorld и проверьте, что он выводит Hello, World!.
  5. Создайте скрипт, компилирующий и запускающий HelloWorld из командной строки. Если вы не умеете писать скрипты, воспользуйтесь одной из инструкций: Windows, Linux, MacOS.
  6. Измените HelloWorld.java так, чтобы он выводил Hello, prog-intro! и проверьте это запуском вашего скрипта.

Домашнее задание 2. Сумма чисел

  1. Разработайте класс Sum, который при запуске из командной строки будет складывать переданные в качестве аргументов целые числа и выводить их сумму на консоль.
  2. Примеры запуска программы:
    java Sum 1 2 3
    Результат: 6
    java Sum 1 2 -3
    Результат: 0
    java Sum "1 2 3"
    Результат: 6
    java Sum "1 2" " 3"
    Результат: 6
    java Sum " "
    Результат: 0
    Аргументы могут содержать:
  3. При выполнении задания можно считать, что для представления входных данных и промежуточных результатов достаточен тип int.
  4. Перед выполнением задания ознакомьтесь с документацией к классам String и Integer.
  5. Для отладочного вывода используйте System.err, тогда он будет игнорироваться проверяющей программой.

Домашнее задание 3. Реверс

  1. Разработайте класс Reverse, читающий числа из стандартного ввода и выводящий их на стандартный вывод в обратном порядке.
  2. В каждой строке входа содержится некоторое количество целых чисел (возможно ноль). Числа разделены пробелами. Каждое число помещается в тип int.
  3. Порядок строк в выходе должен быть обратным по сравнению с порядком строк во входе. Порядок чисел в каждой строке также должен быть обратным к порядку чисел во входе.
  4. Вход содержит не более 10⁶ чисел и строк.
  5. Для чтения чисел используйте класс Scanner.
  6. Примеры работы программы:
    ВводВывод
    1 2
    3
    
    3
    2 1
    
    3
    2 1
    
    1 2
    3
    
    1
    
    2 -3
    
    -3 2
    
    1
    
    1     2
    3     4
    
    4 3
    2 1