Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

README.md

Домашнее задание к занятию «1.2. Программирование на Java: переменные, операторы, работа с отладчиком»

‼️ Вниманию студентов, обучающихся на QA, QAMID - 29, 31, 33, 35! Вам следует выполнять обновленное домашнее задание из репозитория по ссылке

Не забывайте заводить по найденным багам баг-репорты в Github Issue.

В качестве результата пришлите ссылки на ваши GitHub-проекты в личном кабинете студента на сайте netology.ru.

Все задачи этого занятия нужно делать в разных репозиториях.

Важно: если у вас что-то не получилось, то оформляйте Issue по установленным правилам.

Важно: не делайте ДЗ всех занятий в одном репозитории! Иначе вам потом придётся достаточно сложно подключать системы Continuous Integration.

Напоминалку по некоторым теоретическим моментам в джаве вы можете найти здесь.

Как сдавать задачи

  1. Инициализируйте на своём компьютере пустой Git-репозиторий
  2. Добавьте в него готовый файл .gitignore
  3. Добавьте в этот же каталог необходимые файлы
  4. Сделайте необходимые коммиты
  5. Создайте публичный репозиторий на GitHub и свяжите свой локальный репозиторий с удалённым
  6. Сделайте пуш (удостоверьтесь, что ваш код появился на GitHub)
  7. Ссылку на ваш проект отправьте в личном кабинете на сайте netology.ru
  8. Задачи, отмеченные, как необязательные, можно не сдавать, это не повлияет на получение зачета (в этом ДЗ все задачи являются обязательными)

Задача №1 - Money Transfer

Легенда

Вы устроились на работу в достаточно крупный банк и там произошёл неприятный казус: при пополнении счёта VIP-клиента что-то пошло не так.

Входные данные:

  • текущий баланс счёта клиента - переменная типа int, значение - 2_000_000_000 (два миллиарда рублей)*
  • сумма перевода - переменная типа int, значение - 500_000_000 (пятьсот миллионов рублей)
  • переменная для хранения итогового значения - тип int

Примечание*: Java позволяет для удобочитаемости использовать символ нижнего подчёркивания в числах.

Что вам нужно:

  1. Создать базовое приложение (на основании примера, который рассматривался на лекции), позволяющее воспроизвести ситуацию*
  2. Проанализировать ситуацию (а конкретно то, что записалось в переменной для хранения итогового значения)
  3. Подготовить баг-репорт, в котором нормально описать, что же произошло

Важно: в причинах (почему именно так произошло) разбираться не нужно - мы об этом поговорим на лекции.

Примечание*: к сожалению, как всегда, все говорят, что что-то пошло не так, но никто не может объяснить толком, поэтому придётся разбираться вам.

Подготовьте отчёт о проведённом тестировании в указанном формате и разместите его в репозитории.

Подсказка

Что-то мне подсказывает, что должны быть какие-то проблемы при выходе за границы типов.

Итого: у вас должен быть репозиторий на GitHub, в котором расположен ваш Java-код, а также отчёт о проведённом тестировании и заведены баг-репорты в Issues (если баги есть).

Задача №2 - Precision

Легенда

Вы работаете в компании, развивающей бонусную систему для своих клиентов.

И так случилось, что в целях продвижения компании было решено внедрить дополнительный бонус новым клиентам.

Для этого программисты "по-быстрому" написали следующий кусок кода:

public class Main {
  public static void main(String[] args) {
    double regularBonus = 0.3;
    double specialBonus = 0.6;
    double totalBonus = regularBonus + specialBonus;
    System.out.println(totalBonus);
  }
}

Что вам нужно:

  1. Создать базовое приложение и разместить в нём переданный вам код
  2. Проверить его работоспособность (данные менять не нужно)

Подготовьте отчёт о проведённом тестировании в указанном формате и разместите его в репозитории.

Важно: в причинах (почему именно так произошло) разбираться не нужно - мы об этом поговорим на лекции.

Итого: у вас должен быть репозиторий на GitHub, в котором расположен ваш Java-код, а также отчёт о проведённом тестировании и заведены баг-репорты в Issues (если баги есть).