Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Rina_VMI
0 / 0 / 0
Регистрация: 03.12.2014
Сообщений: 9
1

Переписать решение системы линейных уравнений с помощью указателей

13.02.2015, 20:10. Просмотров 269. Ответов 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
#include <iostream>
#include <math.h>
#include <conio.h>
#define N 100
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL,".1251");
    cout<<"Коэффициенты системы линейных уравнений  заданы в виде прямоугольной матрицы.\n";
    cout<<"C помощью допустимых преобразований программа приводит систему к треугольному виду\n";
    cout<<"и находит количество строк, среднее арифметическое элементов которых меньше заданной величины\n";
    int i, j, n, m;
    //создаем массив
    cout << "Введите число строк:";
    cin >> n;
    cout << "Введите число столбцов: ";
    cin >> m;
 
    float **a = new float *[n];
 
    for (i = 0; i < n; i++)
        a[i] = new float [m];
    //инициализируем
    for (i = 0; i < n; i++)
        for (j = 0; j < m; j++)
        {
            cout << "Элемент " << "[" << i + 1 << ", " << j+1 << "]: ";
            cin >> a[i][j];
        }
    //выводим массив
    cout << "Исходная матрица: " << endl;
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
            cout << a[i][j] << " ";
        cout << endl;
    }
    cout << endl;
    //Метод Гаусса
    //Прямой ход, приведение к верхнетреугольному виду
    float tmp, x[N];
    int k;
 
    for (i = 0; i < n; i++)
    {
        tmp = a[i][i];
        for (j = n; j >= i; j--)
            a[i][j] /= tmp;
        for (j = i + 1; j < n; j++)
        {
            tmp = a[j][i];
            for (k = n; k >= i; k--)
                a[j][k] -= tmp * a[i][k];
        }
    }
    //выводим массив
    cout << "Треугольный вид: " << endl;
 
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
            cout << a[i][j] << " ";
        cout << endl;
    }
    cout << endl;
    /*обратный ход*/
    x[n-1] = a[n-1][n];
    for (i = n-2; i >= 0; i--)
    {
        x[i] = a[i][n];
        for (j = i + 1;j < n;j++)
            x[i] -= a[i][j] * x[j];
    }
    //находим количество строк, среднее арифметическое элементов которых меньше заданной величины
    float vel, ar;
    int col;
    cout<<"Задайте величину:";
    cin>>vel;
    col=0;
    ar=0;
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            ar=(a[i][j]+ar);
        }
        ar=ar/m;
        if (ar<vel)
            col=col+1;
    }
    cout<<"Кол-во строк,среднее арифметическое элементов которых меньше заданной величины:"<<col;
    getch();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2015, 20:10
Ответы с готовыми решениями:

Решение системы линейных уравнений с помощью обратной матрицы
Нужно решить систему уравнений с помощью обратной матрицы на с++ x1 + x2 +...

Решение системы линейных уравнений
Помогите решить на Си

Решение системы линейных уравнений
Компилятор wxDev-c++. Ошибка:C:\Program Files\Dev-Cpp\çàäà÷è\ãëàâà1\Ïåðâàÿ...

Решение системы линейных уравнений
Не могу сделать прогу на С++. Кто сделает - огромное спасибо. Решить систему...

Решение системы линейных уравнений.
\begin{cases} &amp; \text{ } cos(ax+2)...... x&gt;2 \\ &amp; \text{ } tg |x-2a| ...

3
rao
894 / 415 / 158
Регистрация: 02.04.2014
Сообщений: 1,201
13.02.2015, 22:15 2
какие данные? число строк/столбцов? что подразумевается под "организовать"?
0
Rina_VMI
0 / 0 / 0
Регистрация: 03.12.2014
Сообщений: 9
18.02.2015, 10:46  [ТС] 3
Задание так и звучит "организовать данные с помощью указателей" и все, ни слова больше)
0
Fallenworld
76 / 76 / 32
Регистрация: 14.04.2014
Сообщений: 408
18.02.2015, 11:27 4
замените все переменные на указатели

C++
1
int i, j, n, m;
меняем на
C++
1
int *i(new int), *j(new int), *n(new int), *m(new int);
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2015, 11:27

Решение системы двух линейных уравнений
Привет всем. Я только недавно начал учить с++. Я вспомнил, что когда-то давно...

Численное решение системы линейных уравнений
Решить систему линейных уравнений: -сформировать матрицу А коэффициентов и...

Найти решение системы линейных уравнений
Даны действительные числа a1, b1, c1, a2, b2, c2. Выяснить, верно ли, что...


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

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

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