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

Работа с текстовыми данным - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ какой существует аналог tmp (паскаль) только на c++? http://www.cyberforum.ru/cpp-beginners/thread1308577.html
Какой сущ-ет аналог или какой оператор служит для обмена значений двух элементов в массиве.
C++ Переделать ряд Тейлора Вычислить и вывести на экран в виде таблицы значение функции, заданной с помощью ряда Тейлора на интервале от Хнач до Хкон с шагом dx с точностью e. Функция {cos}^{2} x Имеется рабочий код для функции cos x (см. ниже), его надо переделать под функцию {cos}^{2} x. #include "stdafx.h" #include <conio.h> #include <clocale> #include <iostream> #include "math.h" http://www.cyberforum.ru/cpp-beginners/thread1308575.html
C++ Перегрузка операторов смысл задания
Доброго времени. Прохожу тему перегрузок операторов. Есть задание, не могу понять что от меня требуется. Как это связанно? Создать класс прямоугольник со сторонами, параллельными осями координат(прямоугольная система координат ОХУ). Реализовать метод вывода на экран информации о прямоугольнике. Перегрузить бинарный оператор НЕСИММЕТРИЧЕСКОЙ РАЗНОСТИ двух прямоугольников (-); УНАРНЫЙ ОПЕРАТОР...
C++ Дерево
Задание. Ввести произвольное сильно ветвящееся дерево. Выдать списки вершин: -являющихся листьями; -не являющихся листьями; -родителей листьев; -заданного уровня считая от вершины. Помогите пожалуйста с реализацией сильно ветвящегося дерева
C++ Из двух масивов А и В построить вектор D http://www.cyberforum.ru/cpp-beginners/thread1308539.html
Из двух массивов A m,n и Bn построить вектор D m, элементы которого вычислить по формуле:
C++ Основные принципы работы с двоичными файлами "Преобразовать входной текстовый файл в выходной двоичный, содержащий данные следующего вида: значение типа int - количество строк в файле, n массивов типа char фиксированной размерности, равной длине максимальной строки, -строка входного файла без завершающего символа \n. До максимальной длины массив типа char дополняется пробелами." Пожалуйста, помогите с заданием. Первую часть с количеством... подробнее

Показать сообщение отдельно
NeONRAcE
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 14
23.11.2014, 16:47     Работа с текстовыми данным
Здравствуйте!
Я может пишу совсем не по теме, но мне нужна помощь. Задание было такое: Найти разность двух многочленов Pn(x) и Pm(x) (n и m степени многочлена) и вычислить значение этой разности при x=3. Я с горем пополам, благодаря другу написал код программы, но теперь мне нужно составить блок-схему (в которых я понимаю относительно немного), включая в неё алгоритм решения. Буду крайне благодарен, заранее спасибо!



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
101
102
103
104
105
106
107
108
109
110
111
#include "stdafx.h"
#include <clocale>
#include <iostream>
 
using namespace std;
 
int n = 0;
int m = 0;
 
void output(char ch, int* a,int n){
    cout << "Введенный многочлен" << endl << ch <<" = ";
    for (int i = n; i >= 0; i--){
        if (i == 0)
            cout << a[i];
        else
            cout << a[i] << " * x^" << i << " + ";
    }
    cout << endl;
}
void CalcX(double x, int* coeffs, int N)
{
    double polyX = 1.0;
    double res = 0;
    for (int i = 0; i<N; i++)
    {
        res += coeffs[i] * polyX;
        polyX *= x;
    }
    cout << endl << "E(x) ,x=" << x << " :" << endl << res << endl;
}
 
float calc_poly(int x, int n, int* P) {
 
    // переменные
    int ix;                 // индекс коэффициента многочлена
    float res;              // результат вычисления
 
    // выполняем вычисления
    res = 0;
    for (ix = 0; ix <= n; ix++) {
        res = res + P[ix] * pow(x, ix);
    }
 
    // возвращаем в основную программу результат расчетов
    return res;
 
}
 
int main(void)
{
    setlocale(LC_CTYPE, "Russian");
    int *P, *Q, *dif;
    
    while (true)
    {
        cout << "Введите степень многочлена n" << endl;
        cin >> n;
        if (n > 0 && n < 10) break;
    }
    P = new int[n];
    cout << "Введите коэфициенты многочлена" << endl;
    for (int i = n; i >= 0; i--){
        cout << "P[" << i+1 << "]=";
        cin >> P[i];
    }
 
    //Q n
    while (true)
    {
        cout << "Введите степень многочлена m" << endl;
        cin >> m;
        if (m > 0 && m < 10) break;
    }
    Q = new int[m];
    cout << "Введите коэфициенты многочлена" << endl;
    for (int i = m; i >= 0; i--){
        cout << "Q[" << i+1 << "]=";
        cin >> Q[i];
    }
 
    output('P', P,n);
    output('Q', Q,m);
 
    
    if (n >= m)
    {
        dif = new int[n];
        for (int i = n ; i >= 0; i--){
            dif[i] = P[i];
        }
        for (int i = n - (n - m); i >= 0; i--){
            dif[i] = P[i] - Q[i];
        }
        output('E', dif, n);
    }
    else
    {
        dif = new int[m];
        for (int i = m ; i >= 0; i--){
            dif[i] = Q[i];
        }
        for (int i = m - (m - n); i >= 0; i--){
            dif[i] = P[i] - Q[i];
        }
        output('E', dif, m);
    }
    cout<<calc_poly(, m, dif)<<endl;
 
 
    system("pause");
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru