Форум программистов, компьютерный форум CyberForum.ru

Комплексные числа/перегрузка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Принадлежность TImage TScrollBox'у http://www.cyberforum.ru/cpp-beginners/thread250378.html
В общем сабж. Есть на форме компонент TScrollBox и динамически создаются объекты типа TImage. Как их создавать на TScrollBox, а то у меня они ляпаются на форму, под TScrollBox? Добавлено через 55 минут Разобрался. Image1->Parent = ScrollBox1; тема закрыта.
C++ Найти сумму элементов вектора, входящих в интервал Помогите пожалуйста с написанием программы на С. Вектор А сформировать из вещественных случайных чисел в диапазоне . а) найти сумму S элементов из интервала . б) найти произведение этой суммы на min элемент вектора. в) найти номер максимального элемента между номерами 5 и 15. г) удалить 16-ый элемент вектора. Заранее благодарю.... http://www.cyberforum.ru/cpp-beginners/thread250376.html
C++ Ссылки и указатели
Добрый день. Возможно было. В чем существенная разница между передачей данных в функцию по ссылке или указателю. В каких случаях вы бы что рекоммендовали. Заранее спасибо.
Построение UML C++
Можно ли создать диаграмму зависимостей UML из существующего проекта VS 2005?
C++ написать программу если можно с объяснением!!!!!!!! http://www.cyberforum.ru/cpp-beginners/thread250357.html
C++ класс эллипс ПОМОГИТЕ ПОЖАЛУЙСТА, начала изучать с++ столкнулась с такой вот задачей...... Определить класс эллипс, продемонстрировать использование класса. Члены класса: переменные, необходимые для того, чтобы иметь возможность пользоваться стандартными функциями рисования. Обязательны функции-члены класса: нарисовать, стереть, передвинуть эллипс, изменить радиусы эллипса. может у кого есть примеры для... подробнее

Показать сообщение отдельно
IrineK
Заблокирован
01.03.2011, 16:16     Комплексные числа/перегрузка
На случай, если в компиляторе square() есть. Если нет - тогда не надо.
Сейчас напишу корень по-чесному - сброшу.

Добавлено через 1 час 35 минут
Для того, чтобы перегрузить корень, вводим в класс следующие функции:

C++
1
2
3
double module(); // Модуль комплексного числа
double arg(); //Агрумент комплексного числа
friend void sqrt(Complex &); //Перегрузка корня
Под описанием класса определяем функции:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
double Complex::module()
{   double i=sqrt(real * real + image * image);
    return i;
}
 
double Complex::arg()
{   double i;
    if(real) i=atan(image/real);
    else if(image>0)i= M_PI/2;
    else i= -M_PI/2;
    return i;
}
 
void sqrt(Complex &f)
{   Complex res[2];
    double sqmod = sqrt(f.module());
    double sqarg = f.arg()/2;
    res[0].real=sqmod*cos(sqarg);
    res[0].image=sqmod*sin(sqarg);
    res[1].real=sqmod*cos(sqarg);
    res[1].image=-sqmod*sin(sqarg);
    cout<<"     1: "<<res[0];
    cout<<"     2: "<<res[1];
}
В модуле main() дописываем:
C++
1
2
3
4
cout << "Модуль c1: "<<c1.module()<<endl;
cout << "Аргумент c1: "<<c1.arg()<<endl;
cout << "Корень c1: "<<endl;
sqrt(c1);
Теперь эта часть работает корректно.

P.S. У вас там еще баги с перегрузкой операций. Если никто ничего не предложит или вы сами их не найдете, посмотрю уже в начале новых суток.

Удачи, играйтесь пока с корнем.
 
Текущее время: 14:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru