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

Многочлен с комплексными числами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ограничение времени ввода. http://www.cyberforum.ru/cpp-beginners/thread190564.html
нада дать юзеру 10 сек на ввод значения Х. Еси он провтыкал 10 сек, то стандартно Х = 0. в худшем случае дать возможность 10 секунд вводить етот Х. в лучшем, сразу после ввода икса прога идет работать дальше. Я пишу кроссплатформенную консольную прогу... возможно ли такое?? хотябы для любой ОС?
C++ Подсчет в строке символов вводимых с клавиатуры День добрый. Стоит задача ввести с клавиатуры строку потом вводим вторую строку и сравниваем совпадение символов. пример: строка 1:asdfafsdfsaaafsdfsfsaadsfsaafsdfaa строка 2: аа результат: 5 - тоесть совпадение ааа с аа считает 2 раза. int main() { char string1; http://www.cyberforum.ru/cpp-beginners/thread190554.html
одномерный массив C++
одномерный массив заполнить случайными плавающими числами и отсортировать по убыванию (число элементов массива не менее 15, сортировку произвести пузырьковым методом)
Указатели. C++
Как написать эту программу через указатели??? #include <stdio.h> #include <conio.h> int main() { int a; int b; int c; int s; int n;
C++ Массив целых чисел. http://www.cyberforum.ru/cpp-beginners/thread190510.html
Дан массив целых чисел. а) Разделить все элементы массива на его первый элемент; б) увеличить все элементы массива в два раза; в) уменьшить элементы массива на число A.
C++ Массив Написать программу, которая вычисляет среднее арифметическое элементов массива без учета минимального и максимального элементов массива. Ниже приведен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены полужирным шрифтом). ! Среднее арифметическое без учета min и max значений. Введите массив (10 целых чисел в одной строке) ->12 10 5 7 15 4 10 17 23 7... подробнее

Показать сообщение отдельно
Mr.X
Эксперт С++
 Аватар для Mr.X
3011 / 1667 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
13.11.2010, 19:29     Многочлен с комплексными числами
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
//////////////////////////////////////////////////////////////////////////////////////
//Даны натуральное число n, действительные числа х,у,а0,b0...an,bn. 
//Вычислить по схеме Горнера значение многочлена с комплексными коэффициентами
//:(а0+ib0)*(x+iy)^n+(a1+ib1)(x+iy)^(n-1)+...+(a(n-1)+ib(n-1))(x+iy)+(an+ibn).
//////////////////////////////////////////////////////////////////////////////////////
#include <algorithm>
#include <complex>
#include <iostream>
#include <string>
#include <vector>
//////////////////////////////////////////////////////////////////////////////////////
typedef double                T_real;
typedef std::complex<T_real>  T_compl;
typedef std::vector<T_compl>  T_compl_coefficients;
//////////////////////////////////////////////////////////////////////////////////////
void input_compl_coef(T_compl&  compl_coef)
{
    std::cout << "real: ";
    T_real  real;
    std::cin >> real;
 
    std::cout << "imag: ";
    T_real  imag;
    std::cin >> imag;
    compl_coef = T_compl(real, imag);
    std::cout << std::endl;
}
//////////////////////////////////////////////////////////////////////////////////////
T_compl compl_gorner(T_compl_coefficients  compl_coefficients, T_compl z)
{
    T_compl  a = compl_coefficients.back();
    compl_coefficients.pop_back();
    return compl_coefficients.empty() ? a : a + z * compl_gorner(compl_coefficients, z); 
}
//////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));
    for(;;)
    {        
        int n; 
        std::cout << "Введите количество коэффициентов многочлена >= 1: ";                   
        std::cin >> n;  
        if(n < 1) break;
 
        T_compl_coefficients  compl_coefficients(n);
 
        std::cout << std::endl
                  << "Введите "
                  << n
                  << " комплексных коэффициентов многочлена, "
                  << "начиная со старшей степени z: "
                  << std::endl;
        
        std::for_each(compl_coefficients.begin(), compl_coefficients.end(), input_compl_coef);
 
        for(;;)
        {
            std::cout << "Введите значение z: "
                      << std::endl;
            T_compl z;
            input_compl_coef(z);            
 
            std::cout << "Ответ: "
                      << compl_gorner(compl_coefficients, z)                      
                      << std::endl
                      << std::endl;      
        }    
    }    
}
 
Текущее время: 05:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru