Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Реализовать в JavaScript класс комплексных чисел, и продемонстрировать его работу. (https://javascript.ru/forum/misc/38291-realizovat-v-javascript-klass-kompleksnykh-chisel-i-prodemonstrirovat-ego-rabotu.html)

Tania 26.05.2013 21:43

Реализовать в JavaScript класс комплексных чисел, и продемонстрировать его работу.
 
помогите!!!пожалуйста!!!

melky 26.05.2013 22:40

http://jsbin.com/ukejey/1/

Tania 26.05.2013 22:55

мда..так все понятно

zebra 26.05.2013 23:12

Докажите что вы девушка, выложите фотку с сиськами :)

Tania 26.05.2013 23:14

я нормально спросила...мне очень надо...здесь как-то все не серьезно

zebra 26.05.2013 23:18

Если хотите чтобы вам помогли - покажите ваши наработки, расскажите что именно не получается. Если хотите чтобы за вас все написали - создайте тему в разделе работа. Хотя могут и просто так помочь, если кому-то не трудно.

Tania 26.05.2013 23:22

с этим работаю первый раз ... это задали в универе, хотя я джава в глаза не видела и мы это еще не проходили ... в сети только инфу нашла
. Класс комплексных чисел
/*
* Complex.js:
* В этом файле определяется класс Complex для представления комплексных чисел.
* Вспомним, что комплексное число – это сумма вещественной и мнимой
* частей числа, и что мнимое число i – это квадратный корень из 1.
*/
/*
* Первый шаг в определении класса – это определение функции конструктора
* класса. Этот конструктор должен инициализировать все свойства
* экземпляра объекта. Это неотъемлемые "переменные состояния",
* делающие все экземпляры класса разными.
*/
function Complex(real, imaginary) {
this.x = real; // Вещественная часть числа
this.y = imaginary; // Мнимая часть числа
}
/*
* Второй шаг в определении класса – это определение методов экземпляра
* (и возможно других свойств) в объекте прототипе конструктора.
* Любые свойства, определенные в этом объекте, будут унаследованы всеми
* экземплярами класса. Обратите внимание, что методы экземпляра
* неявно работают с ключевым словом this. Для многих методов никаких
* других аргументов не требуется.
*/
// Возвращает модуль комплексного числа. Он определяется как расстояние
// на комплексной плоскости до числа от начала координат (0,0).
Complex.prototype.magnitude = function() {
return Math.sqrt(this.x*this.x + this.y*this.y);
};
// Возвращает комплексное число с противоположным знаком.
Complex.prototype.negative = function() {9.3. Объектно*ориентированный язык JavaScript 177
return new Complex( this.x, this.y);
};
// Складывает данное комплексное число с заданным и возвращает
// сумму в виде нового объекта.
Complex.prototype.add = function(that) {
return new Complex(this.x + that.x, this.y + that.y);
}
// Умножает данное комплексное число на заданное и возвращает
// произведение в виде нового объекта.
Complex.prototype.multiply = function(that) {
return new Complex(this.x * that.x this.y * that.y,
this.x * that.y + this.y * that.x);
}
// Преобразует объект Complex в строку в понятном формате.
// Вызывается, когда объект Complex используется как строка.
Complex.prototype.toString = function() {
return "{" + this.x + "," + this.y + "}";
};
// Проверяет равенство данного комплексного числа с заданным.
Complex.prototype.equals = function(that) {
return this.x == that.x && this.y == that.y;
}
// Возвращает вещественную часть комплексного числа.
// Эта функция вызывается, когда объект Complex рассматривается
// как числовое значение.
Complex.prototype.valueOf = function() { return this.x; }
/*
* Третий шаг в определении класса – это определение методов класса,
* констант и других необходимых свойств класса как свойств самой
* функции конструктора (а не как свойств объекта прототипа
* конструктора). Обратите внимание, что методы класса не используют
* ключевое слово this, они работают только со своими аргументами.
*/
// Складывает два комплексных числа и возвращает результат.
Complex.add = function (a, b) {
return new Complex(a.x + b.x, a.y + b.y);
};
// Умножает два комплексных числа и возвращает полученное произведение.
Complex.multiply = function(a, b) {
return new Complex(a.x * b.x a.y * b.y,
a.x * b.y + a.y * b.x);
};
// Несколько предопределенных комплексных чисел.
// Они определяются как свойства класса, в котором могут использоваться как "константы".
// (Хотя в JavaScript невозможно определить свойства, доступные только для чтения.)
Complex.ZERO = new Complex(0,0);
Complex.ONE = new Complex(1,0);
Complex.I = new Complex(0,1);

Shaci 26.05.2013 23:56

Цитата:

Сообщение от Tania
хотя я джава в глаза не видела

(только это джаваскрипт, джава другой язык)
а какой язык знаете?

Tania 27.05.2013 00:02

Да ошибка сорри...Знаю css, html

kobezzza 27.05.2013 00:07

Цитата:

Сообщение от Tania (Сообщение 252957)
Знаю css, html

Спорим, что не знаете?)

Tania 27.05.2013 00:09

а почему такие выводы?

kobezzza 27.05.2013 00:11

Цитата:

Сообщение от Tania (Сообщение 252959)
а почему такие выводы?

Какие 2 основных свойства селекторов CSS?)

Shaci 27.05.2013 00:14

Цитата:

Сообщение от Tania
css, html

а , это не языки программирования, это разметка страницы

Shaci 27.05.2013 00:15

Цитата:

Сообщение от kobezzza
Какие 2 основных свойства селекторов CSS?)

тогда и я не знаю :D

а это типо вот это что ли - http://xhtml.ru/2005/10/03/css_cheat_sheet/

Shaci 27.05.2013 00:20

Цитата:

Сообщение от Tania
Да ошибка сорри...Знаю css, html

она не знает, уже видно по ответу, в котором считает их языками программирования

kobezzza 27.05.2013 00:20

Ну вы даёте, специфичность и каскадность

Shaci 27.05.2013 00:26

Цитата:

Сообщение от kobezzza (Сообщение 252966)
Ну вы даёте, специфичность и каскадность

да действительно, воспринимал специфичность как "приоритет"
ну пофиг, главное знать правила.
http://htmlbook.ru/samcss/kaskadirovanie

kobezzza 27.05.2013 00:28

Приоритет это совокупность специфичности с каскадом)

Tania 27.05.2013 00:29

я не писала что это языки программирования ... я только написала что знаю css, html ... а сейчас учу C + +

Shaci 27.05.2013 00:32

Цитата:

Сообщение от kobezzza
Приоритет это совокупность специфичности с каскадом)

ну да, логично

tenshi 27.05.2013 09:20

Цитата:

Сообщение от kobezzza (Сообщение 252961)
Какие 2 основных свойства селекторов CSS?)

Обожаю вопросы из серии "угадай, что я задумал".
Краткость и выразительность.

kobezzza 27.05.2013 09:44

Цитата:

Сообщение от tenshi (Сообщение 253000)
Обожаю вопросы из серии "угадай, что я задумал".
Краткость и выразительность.

Я вроде сказал "свойства", а не "достоинства" и даже уточнил "селекторов". У селекторов не так много свойств и каждый кто изучал CSS по вменяемым учебникам, вроде Майера, знает и про специфичность, и про каскадность (про каждое из свойств есть отдельная глава), т.к. это самый азм, ну а те, кто не знает лепят везде !important -ы.

Shaci 27.05.2013 12:26

Цитата:

Сообщение от Tania
помогите!!!пожалуйста!!!

используйте тот скрипт, который нашли и выложили в эту тему

tenshi 27.05.2013 22:47

Цитата:

Сообщение от kobezzza (Сообщение 253007)
Я вроде сказал "свойства", а не "достоинства"

А достоинства уже не являются свойствами? Блин, я всё проспал :-?

kobezzza 27.05.2013 23:33

Цитата:

Сообщение от tenshi (Сообщение 253128)
А достоинства уже не являются свойствами? Блин, я всё проспал :-?

Свойства частиц являются достоинством? Свойства объекта является достоинством? Слишком толсто.

ЗЫ: я уже молчу про побочные свойства лекарств :)

Questioner 28.05.2013 11:15

Цитата:

Сообщение от kobezzza (Сообщение 253131)
Свойства частиц являются достоинством? Свойства объекта является достоинством? Слишком толсто.

ЗЫ: я уже молчу про побочные свойства лекарств :)

Если бы вы прочли внимательно, то там написано достоинства являются свойствами, а не наоборот


Часовой пояс GMT +3, время: 14:38.