Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 13.05.2018
Сообщений: 11

Работа с матрицами, программа выдает неправильный результат

20.05.2018, 02:28. Показов 700. Ответов 1
Метки с (Все метки)

Студворк — интернет-сервис помощи студентам
помогите пожалуйста,ВЫВОДИТ НЕ ТОТ РЕЗУЛЬТАТ.
MAIN
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
#include "stdafx.h"
#include "Header.h" 
#include <stdio.h>
#include <iostream>
#include <fstream>
#include <conio.h>
#include <memory> 
using namespace std;
 
 
int main(int argc, char** argv)
{
 
    int n;
    int m;
    FILE *res;
    res = fopen(argv[2], "wt");
    FILE *dat;
    dat = fopen(argv[1], "rt");
    fscanf(dat, "%d", &n);
    fscanf(dat, "%d", &m);
    double **a = (double**)sospam(n,m);
    proch(dat, n, m, a);
    fclose(dat);
 
    fprintf(res, "Количество строк : %d\n", n);
    fprintf(res, "Количество столбцов : %d\n", m);
    fprintf(res, "Матрица A:\n");
    pokaz(res, n, m, a);
    double sr;
    fprintf(res, "Среднее арифметическое матрицы %5.2lf\n", sr = sredn(n, m, a));
 
    if (NOT prover(n, m, a)) {
    fprintf(res, "Матрица А не содержит ни одного отрицательного элемента\n");
    fprintf(res, "Новая матрица\n");
    (n, m, a);
;
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
            fprintf(res, "%3.1lf ", a[i][j]);
        fprintf(res, "\n");
    }
    }
    else
    fprintf(res, "Матрица содержит отрицательный элемент");
    udalit(n, a);
    fclose(res);
    return 0;
}
HEADER
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include "stdafx.h" 
#include <conio.h>
#include <iostream>
#include <fstream>
#ifndef Source
#define Source
double** sospam(int n, int m);
void proch(FILE *dat, int n, int m, double **x);
void pokaz(FILE *res, int n, int m, double **x);
double sredn(int n, int m, double **a);
bool prover(int n, int m, double **a);
void nov(int n, int m, double **a);
void udalit (int n, double **&a);
#endif
MODULE
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
#include "stdafx.h" 
#include <stdio.h> 
#include <locale.h>
#include "Header.h" 
 
double** sospam(int n, int m)
{
    double **x = new double *[n];
    for (int i = 0; i<n; i++)
        x[i] = new double[m];
    return x;
}
 
void proch(FILE *dat, int n, int m, double **x)
{
    for (int i = 0; i<n; i++)
        for (int j = 0; j<m; j++)
            fscanf(dat, "%5.3lf ", &x[i][j]);
    return;
}
 
void pokaz(FILE *res, int n, int m, double **x)
{
    for (int i = 0; i<n; i++) {
        for (int j = 0; j<m; j++)
            fprintf(res, "%3.2f ", x[i][j]);
        fprintf(res, "\n");
    }
    return;
}
 
double sredn(int n, int m, double **a)
{
    double sr = 0;
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
            sr += a[i][j];
    }
    sr = sr / n*m;
    return sr;
}
 
bool prover(int n, int m, double **a)
{
    bool flag = false;
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++)
            if (a[i][j] <0)
            {
                flag = true;
            }
    }
    return flag;
}
 
void nov(int n,int m, double **a )
{
        double sr = sredn(n, m, a);
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < m; j++)
                a[i][j] = a[i][j] - sr;
        }
    return;
}
 
void udalit(int n, double **&a)
{
    for (int i = 0; i<n; i++)
        delete[] a[i];
    delete[] a;
    return;
}
ВХОДНЫЕ ДАННЫЕ
3 3
1 2 3
4 5 6
7 8 9
ВЫХОДНЫЕ ДАННЫЕ
Количество строк : 3
Количество столбцов : 3
Матрица A:
-6277438562204192487878988888393020692503 707483087375482269988814848.00 -6277438562204192487878988888393020692503 707483087375482269988814848.00 -6277438562204192487878988888393020692503 707483087375482269988814848.00
-6277438562204192487878988888393020692503 707483087375482269988814848.00 -6277438562204192487878988888393020692503 707483087375482269988814848.00 -6277438562204192487878988888393020692503 707483087375482269988814848.00
-6277438562204192487878988888393020692503 707483087375482269988814848.00 -6277438562204192487878988888393020692503 707483087375482269988814848.00 -6277438562204192487878988888393020692503 707483087375482269988814848.00
Среднее арифметическое матрицы -5649694705983774062208812144318242155568 6345205892346042641981374464.00
Матрица А не содержит ни одного отрицательного элемента
Новая матрица
-6277438562204192487878988888393020692503 707483087375482269988814848.0 -6277438562204192487878988888393020692503 707483087375482269988814848.0 -6277438562204192487878988888393020692503 707483087375482269988814848.0
-6277438562204192487878988888393020692503 707483087375482269988814848.0 -6277438562204192487878988888393020692503 707483087375482269988814848.0 -6277438562204192487878988888393020692503 707483087375482269988814848.0
-6277438562204192487878988888393020692503 707483087375482269988814848.0 -6277438562204192487878988888393020692503 707483087375482269988814848.0 -6277438562204192487878988888393020692503 707483087375482269988814848.0
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.05.2018, 02:28
Ответы с готовыми решениями:

Метод Ньютона (касательных), программа выдает неправильный результат
Здравствуйте. Проблема в том, что с моей функцией программа выдает неверный результат(хотя если написать функцию, например x*x-2, то все...

Программа для подсчета калорий выдает неправильный результат
Здравствуйте. Недавно начал изучать c++. Написал простую программу для подсчета калорий. Она выдаёт неправильный результат. При вводе...

Программа выдает неправильный результат
Создал проект unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ...

1
4052 / 2663 / 583
Регистрация: 11.09.2009
Сообщений: 9,501
20.05.2018, 02:42
Ни хрена не понял... Зачем "создавать" память, если можно её купить? Под какие "хотелки" выбирается компьютер и в каком ценовом диапазоне? И при чём тут какой-то код про матричные вычисления в разделе Выбор конфигурации компьютера?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.05.2018, 02:42
Помогаю со студенческими работами здесь

Программа выдает неправильный результат
# include &lt;string.h&gt; # include &lt;stdio.h&gt; # include&lt;conio.h&gt; char a1=&quot;asddfghjk&quot;;char a2;int l1,l2; int main() { ...

Программа выдает неправильный результат
#include &lt;stdio.h&gt; #define a 20 #define n 20 int main () { int i,k; int arr,m; i=0; k=20; do

Программа выдает неправильный результат
#include &lt;stdio.h&gt; int main(void){ char mas; scanf(&quot;%s&quot;, mas); for(int i = 0; i &lt; 10; i++){ switch(mas){ case '0': ...

Программа выдает неправильный результат
Решаю задачу больше недели, препод не помогает, Задача в Фортране 90, s1 должно быть равно s2 проверяю в Excel все верно, а программа не...

Программа выдает неправильный результат
Function Dispersia(varArray As Variant) As Variant Dim varItem As Variant Dim varSum As Variant Dim varSum2 As...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru