[Java] Задание про Vector2D, наследование
Если все сделали - попробуйте самостоятельно начать рисовать графику на базе этой статьи.
13 октября встреча учителей с родителями
К сожалению я не смогу быть в это время в школе, если у ваших родителей есть вопросы которые они хотят обсудить - попросите их пожалуйста написать мне в Telegram чтобы либо обсудить письменно, либо договориться созвониться, либо договориться встретиться вживую в школе.
Новое задание
Новое задание очень похоже на рациональную дробь и уже доступно в http://mdl.sch239.net/
Обратите внимание что там много заданий, но это не значит что вы обязаны сделать все, меня абсолютно устроит если вы сделаете только часть. Конечно чем больше - тем лучше. Но в данном задании гораздо важнее путь а не цель. Если вы хорошо поработали на уроке, и хорошо поработали дома - вы все сделали правильно и вы молодец. Задание нужно чтобы вы еще немного освоились, получили еще немного уверенности и т.п., но нет необходимости понять/выполнить его полностью.
Через неделю мы перейдем к отрисовке графики.
Если при выполнении задания возникнут вопросы - спрашивайте меня. Глупых вопросов не существует. Смело спрашивайте даже если вы уже спрашивали это раньше, или если это уже встречалось в рациональной дроби. Нормально сложные темы усваивать не с первого раза. И то что вы сумеете сформулировать вопрос на который не знаете ответа (даже если вам ошибочно кажется что он глупый) и найдете в себе смелость задать его мне - скажет о вас только хорошо.
Подсказки к новому заданию
Ссылки на прошлые статьи:
1) В задании сказано что нужно найти длину вектора - для этого нужно уметь извлекать квадратный корень. Как это делать? Придумайте запрос в гугл - и найдите эту информацию.
2) В задании сказано что нужно выводить числа с точностью два знака после запятой. Как это делать? Не знаю, я вот вбил в гугл и научился.
Поэтому: придумайте запрос в гугл и найдите нужный кусочек кода.
Спойлер
я использовал запрос в гугл “java вывести 2 знака после запятой”
3) В задании нужно посчитать длину вектора - для применения теоремы Пифагора нужно лишь научиться извлекать корень. Как же это сделать? Тоже загуглить!
Поэтому: придумайте как это загуглить и найдите нужный кусочек код. Дополнительные баллы Гриффиндор получит если вы заставите себя гуглить на английском (все-равно в будущем только так и придется искать, на английском банально больше материалов).
Спойлер
я использовал запрос в гугл “java как извлечь корень”
4) Про static
:
public class Vector2d {
double x;
double y;
public Vector2d(double x, double y) {
this.x = x;
this.y = y;
}
void add(Vector2d that) {
this.x += that.x;
this.y += that.y;
}
// Этот метод просто суммирует два переданных вектора
// в отличии от add(...) он никак не использует this
// а значит он не использует текущий объект
// а значит эта функция никак не привязана к конкретному объекту
// чтобы это фиксировать - нужно написать ключевое слово static
// и тогда это позволит вызывать метод без объекта - через Vector2d.plus(a, b)
// считайте что это слово static означает что метод является глобальным,
// вместо того чтобы являться навыком конкретного объекта как было до сих пор
static Vector2d plus(Vector2d a, Vector2d b) {
return new Vector2d(a.x + b.x, a.y + b.y);
}
}
5) Иерархия про котиков:
public class Cat extends Animal {
// Ключевое слово extends - наследование всего что было в Animal
// Cat теперь является Animal!
// Но методы можно переопределить:
@Override
String type() {
return "Cat";
}
@Override
String typicalPhrase() {
return "meow uwu nyaaaa";
}
}