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

Вычисление корня квадратного из комплексного числа - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Задержка на несколько секунд в приложении http://www.cyberforum.ru/cpp-beginners/thread1229025.html
Как сделать задержку на несколько секунд? Например, чтобы вывелась строчка, а через десять секунд вывелась другая.
C++ Завершение потока ввода Всем привет,столкнулся с небольшой проблемой,расскажите почему так происходит собственно.. сама суть проблемы.. После ввода нескольких чисел нажимаю Ctrl+z для завершения ввода.. и далее программа завершается, не выполнив оставшиеся инструкции.. код vector<double> num; double number; int count; cout<<"Введите несколько чисел"<<endl; cin>>number; while(cin>>number){... http://www.cyberforum.ru/cpp-beginners/thread1228964.html
C++ Работа функции qsort - объяснить работу функции
#include<iostream> #include<cstdlib> int mysort(const void *arg1, const void *arg2); int main() { const short ARR_SIZE=5; int arr={10,5,6,1,3}; std::qsort(arr, ARR_SIZE, sizeof (int), mysort); for (int i=0;i<ARR_SIZE;++i) { std::cout<<arr<<std::endl; }
C++ Дерево структур "семья" - Найти и вывести имя младшего ребенка у Иванова И. И
Здравствуйте. Помогите, пожалуйста. У меня возникли проблемы. Вот задание: Описать массив записей "семья". -------------------------------------------------------------- Отец ! Мать ! Ребенок ! ! Ребенок! --------------------------------------- ----------- Ф.И.О.!дата !Ф.И.О.!дата ! Имя !дата ! ...... ! Имя !дата ! !рожд.! ...
C++ Std::thread, создать указатель на член класса http://www.cyberforum.ru/cpp-beginners/thread1228832.html
Есть класс #pragma once #include <map> #include <vector> #include <string> #include <thread> //This class allows to calculate quadratic equation class SquareSolver { public:
C++ Найти слова в файле, которые больше 10 букв и вывести первое на экран Помогите понять и решить проблему, пожалуйста. Задача такова: есть файл со словами, необходимо найти слова, которые больше 10 букв и вывести первое на экран. Сделать это нужно с помощью функции(поиск по дереву и вывод на экран), которая принимает, как параметр указатель на другую функцию(задаем условие). Компилятор выдает ошибку: error C2664: Tree<T>::SearchIf: невозможно преобразовать... подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
18.07.2014, 14:03     Вычисление корня квадратного из комплексного числа
Корень квадратный - возвести число в степень 1/2, переводим число в показательную форму, после чего возвели в нужную степень a*eb, потом возвращаем его в алгебраическую.
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#include <cmath>
#include <iostream>
using namespace std;
 
class CComplex
{
protected:
    bool bExp;
    double re;
    double im;
public:
    CComplex();
    double Abs ();
    double Angle();
    void ToExp();
    void ToAlg();
    void power(float p);
    void print();
 
    double &Re(){return re;}
    double &Im(){return im;}
};
 
CComplex::CComplex(){
    re = 0;
    im = 0;
    bExp = 0;
}
 
double CComplex::Abs(){
    if( bExp )
        return re;
    else
        return sqrt(re*re + im*im);
}
 
double CComplex::Angle(){
    if( bExp )
        return im;
    else
        return atan2(im, re);
}
 
void CComplex::ToExp(){
    if( !bExp ) {
        float abs = Abs();
        float phi = Angle();
        re = abs;
        im = phi;
        bExp = 1;
    }
}
 
void CComplex::ToAlg(){
    if( bExp )  {
    float abs = re;
    float phi = im;
    re = abs*cos(phi);
    im = abs*sin(phi);
    bExp = 0;
    }
}
 
void CComplex::power(float p){
    if( bExp )
    {
        re = pow(re, p);
        im = im*p;
    }
    else
    {
        ToExp();
        power(p);
        ToAlg();
    }
}
 
void CComplex::print(){
    if( bExp )
        cout<<"EXP FORM : "<<re<<"*exp(j*"<<im<<")"<<endl;
    else
        cout<<"ALG FORM : "<<re<<" + j*("<<im<<")"<<endl;
}
 
 
 
int main()
{
    CComplex val;
    val.Re() =  25;
    val.Im() = -63;
    val.print();
    cout<<"SQRT : "<<endl;
    val.power(0.5);
    val.print();
    val.ToExp();
    val.print();
    cin.get();
    return 0;
}
http://codepad.org/0RqUtHUx
ALG FORM : 25 + j*(-63)
SQRT :
ALG FORM : 6.81099 + j*(-4.62488)
EXP FORM : 8.2328*exp(j*-0.596515)
Миниатюры
Вычисление корня квадратного из комплексного числа  
 
Текущее время: 07:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru