Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nik13666
0 / 0 / 0
Регистрация: 29.06.2014
Сообщений: 1
#1

Ввести комплексные числа, упорядочить их мнимые части и вывести на экран - C++

03.07.2014, 10:25. Просмотров 711. Ответов 1
Метки нет (Все метки)

Всем пртвет. Сижу на зачете и нуждаюсь в вашей помлщи. К этому коду надо добавить ввод не двух а 5 комплексных чисел упорядочить их мнимые части и вывести на экран
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
#include <iostream>
using namespace std;
struct Complex//структура
{
    float re,im;
};
Complex CMPX(float r,float i)//получаем комплексное число
{
    Complex res;
    res.im=i;
    res.re=r;
    return res;//результат
}
void Print(Complex a)//выводим
{
    cout<<"Re = "<<a.re<<"   Im = "<<a.im<<endl;
}
float Cabs(Complex a)
{
    return sqrt(a.re*a.re+a.im*a.im);//модуль числа комплексного
}
float Carg(Complex a)
{
    return atan(a.im/a.re);//аргумент
}
Complex Cmult(Complex a,Complex b)
{
    Complex res;
    float mabs=Cabs(a)*Cabs(b);//умножение модулей
    res.re=mabs*cos(Carg(a)+Carg(b));//re
    res.im=mabs*sin(Carg(a)+Carg(b));//im
    return res;//возвращаем
}
Complex Cdiv(Complex a,Complex b)
{
    Complex res;
    float mabs=Cabs(a)/Cabs(b);//деление модулей
    res.re=mabs*cos(Carg(a)-Carg(b));//re
    res.im=mabs*sin(Carg(a)-Carg(b));//im
    return res;
}
int main()
{
    Complex a,b,c,z;//два комплексных числа
    float re,im;
    cout<<"A re = ";cin>>re;//считали re
    cout<<"A im = ";cin>>im;// im 
    a=CMPX(re,im);// создали комплексное число
    cout<<"Abs = "<<Cabs(a)<<endl<<"Arg = "<<Carg(a)<<endl;//модуль и аргумент первого
    Print(a);//выводим a
    cout<<endl;//перенос строки
    cout<<"B re = ";cin>>re;
    cout<<"B im = ";cin>>im;
    b=CMPX(re,im);
    cout<<"Abs = "<<Cabs(b)<<endl<<"Arg = "<<Carg(b)<<endl;//второго
    Print(b);//выводим b
    cout<<endl;
    cout<<"C re = ";cin>>re;
    cout<<"C im = ";cin>>im;
    c=CMPX(re,im);
    cout<<"Abs = "<<Cabs(c)<<endl<<"Arg = "<<Carg(c)<<endl;//второго
    Print(c);//выводим c
    cout<<endl;
    z=Cdiv(Cmult(a,b),c);//то что нужно в задании, контрольный пример
    cout<<"a*b/c"<<endl;
    Print(z);
    system("pause");
    return 0;
}
Добавлено через 2 минуты
Вернее сделать так чтобы был ввод именно 5 комплексных чисел. Упорядчить мнимые по возрастанию и вывести на экран. Ребят выручайте
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.07.2014, 10:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввести комплексные числа, упорядочить их мнимые части и вывести на экран (C++):

создать шаблон класса,реализующий буфер из произвольного (5) числа вещественных чисел. Числа ввести с клавиатуры содержащие буфера вывести на экран - C++
Помогите, пожалуйста.

Ввести 3 числа, вывести на экран в порядке убывания - C++
Пользователь должен ввести 3 числа,а на экран выводятся эти числа в порядке убывания.Как это сделать циклами?

С++ Найти суму n1 цифер дробовой части действительного числа и вывести на экран - C++
:declare:

Отсортировать комплексные числа по возрастанию модуля, убыванию действительной части - C++
Отсортировать комплексные числа по возрастанию модуля, убыванию действительной части. Найти и вывести на экран адреса и содержание...

Ввести с клавиатуры два целых числа и вывести на экран их сумму. - C++
Задача. Ввести с клавиатуры два целых числа и вывести на экран их сумму.

Вывести на экран 1 или 0 в зависимости от того, есть ли среди первых трех цифр дробной части заданного положительного вещественного числа цифра ноль - C++
Вывести на экран 1 или 0 в зависимости от того, есть ли среди первых трех цифр дробной части заданного положительного вещественного числа...

1
zibertscrem
3 / 3 / 1
Регистрация: 03.07.2014
Сообщений: 19
03.07.2014, 11:18 #2
Полностью заменил код главной функции на поставленную задачу. Удачи на зачете.

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
#include <iostream>
#include <math.h>
#include <stdlib.h>
using namespace std;
struct Complex//структура
{
    float re,im;
};
Complex CMPX(float r,float i)//получаем комплексное число
{
    Complex res;
    res.im=i;
    res.re=r;
    return res;//результат
}
void Print(Complex a)//выводим
{
    cout<<"Re = "<<a.re<<"   Im = "<<a.im<<endl;
}
float Cabs(Complex a)
{
    return sqrt(a.re*a.re+a.im*a.im);//модуль числа комплексного
}
float Carg(Complex a)
{
    return atan(a.im/a.re);//аргумент
}
Complex Cmult(Complex a,Complex b)
{
    Complex res;
    float mabs=Cabs(a)*Cabs(b);//умножение модулей
    res.re=mabs*cos(Carg(a)+Carg(b));//re
    res.im=mabs*sin(Carg(a)+Carg(b));//im
    return res;//возвращаем
}
Complex Cdiv(Complex a,Complex b)
{
    Complex res;
    float mabs=Cabs(a)/Cabs(b);//деление модулей
    res.re=mabs*cos(Carg(a)-Carg(b));//re
    res.im=mabs*sin(Carg(a)-Carg(b));//im
    return res;
}
void CMPSwitch(Complex *c1, Complex *c2)//Флип переменных
{
    Complex p;
    p.re = c1->re;
    p.im = c1->im;
    c1->re = c2->re;
    c1->im = c2->im;
    c2->re = p.re;
    c2->im = p.im;
}
int main()
{
    const int n = 5;//количество комплексных чисел
    Complex arr[n];
    for(int i = 0; i<n; i++)//ввод
    {
        float re,im;
        cout<<i<<" Re:";cin>>re;
        cout<<i<<" Im:";cin>>im;
        arr[i] = CMPX(re,im);        
    }
    for(int i = 0; i<n; i++)
    {
        for(int j = i; j<n-1; j++)
        {
            if(arr[j].im>arr[j+1].im)
            {
                CMPSwitch(&arr[j],&arr[j+1]);
            }
        }
    }
    for(int i = 0; i<n; i++)
    {
        Print(arr[i]);
    }
    system("pause");
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.07.2014, 11:18
Привет! Вот еще темы с ответами:

Вывести старшую цифру дробной части и младшую цифру целой части числа - C++
Искал у вас, не нашел. Я новичок в этом деле, если вам не трудно напишите полностью решение ща контрольная ( 31. Даны натуральные...

Классы. Вывести значение числа цифр в дробной части числа - C++
#include &quot;stdafx.h&quot; #include &lt;locale.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; using namespace std; class Chislo { ...

Заданы числа x и y. Если их сумма положительная, вывести на экран эти числа, иначе вывести их разницу - C++
Помогите пожалуйста...Заданные числа x и y . Если их сумма положительная , вывести на экран эти числа , иначе вывести на экран их разницу.

подскажите: как вывести на экран числа от 0 до 20.... и еще одна: вывести все четные числа от 0 до 20... - C++
подскажите: как вывести на экран числа от 0 до 20.... и еще одна: вывести все четные числа от 0 до 20... эт надо очень срочно....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.