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

Найти количество строк матрицы, среднее арифметическое элементов которых меньше заданной величины - C++

Восстановить пароль Регистрация
 
RT_MAX
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 3
28.05.2011, 01:35     Найти количество строк матрицы, среднее арифметическое элементов которых меньше заданной величины #1
Преобразовать матрицу заданную в обычном виде в треугольную!(методом гаусса) Найти количество строк, среднее арифметическое элементов которых меньше заданной величины.
P.S. убедительная просьба надо написать на С а не на С++
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2011, 01:35     Найти количество строк матрицы, среднее арифметическое элементов которых меньше заданной величины
Посмотрите здесь:

Определить количество строк, среднее арифметическое элементов которых больше заданной величины C++
C++ Найти количество строк, среднее арифметическое элементов которых меньше заданной величины
C++ Найти количество строк, среднее арифметическое элементов которых меньше заданной величины
Найти количество строк в матрице, среднее арифметическое элементов которых меньше заданной величины C++
Определить номера строк, среднее арифметическое элементов которых меньше заданного значения C++
Найти количество строк матрицы среднее арифметическое элементов которых меньше заданной величины C++
Найти количество строк, среднее арифметическое элементов которых меньше заданной величины C++
В прямоугольном массиве найдите номера, у которых среднее арифметическое элементов меньше заданной величины C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
archinko
13 / 13 / 2
Регистрация: 02.03.2010
Сообщений: 29
28.05.2011, 03:52     Найти количество строк матрицы, среднее арифметическое элементов которых меньше заданной величины #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
#include <math.h>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
 
using namespace std;
int main()
{   
    FILE *f;
    f=fopen("gaus_mat","r");
    int x,y;
    fscanf(f,"%d %d",&x,&y);
    float **M=(float**)calloc(x,sizeof(float*));
    float koef, *A=(float*) calloc(x,sizeof(float));
    for(int i=0;i<x;i++) M[i]=(float*)calloc(y,sizeof(float));
    
    for(int i=0;i<x;i++)
    {
        for(int j=0;j<y;j++)
        {
            fscanf(f,"%f",&M[i][j]);    
        }
    }   
    fclose(f);
    for(int i=0; i<x;i++) A[i]=0;
 
    //step 1
    
    for(int s=0;s<x-1;s++)
    {
        for(int i=1+s;i<x;i++)
        {   
            koef=M[i][s]/M[s][s];
            for(int j=0+s;j<4;j++)
            {
                M[i][j]-=koef*M[s][j];
            }
        }
    }
 
    //step 2
 
    for(int i=x-1;i>=0;i--)
    {
        for(int j=0;j<y-1;j++)
        {   
            A[i]+=M[i][j]*A[j];
            if(j==2)
            {   
                A[i]=(A[i]*(-1.)+M[i][3])/M[i][i];
            }
        }
    }
 
 
 
 
    for(int i=0;i<x;i++)
        {   
        for(int j=0;j<y;j++)
            {
                cout<<M[i][j]<<" ";
            }
            cout<<endl;
        }
 
    for(int i=0;i<x;i++) cout << "A[" << i << "]= " << A[i]<<endl; 
 
    return 0;
}
Если не ошибаюсь, тебе нужен только первый шаг - там идет приобразование матрицы в треугольную, второй шаг уже считает иксы.
В текстовом документе (gaus_mat) лежит матрица в таком виде(первая строка задает размер матрицы) :
3 4
4. 1. 5. -3.
6. 2. 8. -4.
3. 7. -2. 3.
Ну а заменить cout на printf думаю сможешь + посчитать "количество строк, среднее арифметическое элементов которых меньше заданной величины" и бла-бла-бла.
ЗЫ: Да не испугают тебя вложенные форы ^_^
Yandex
Объявления
28.05.2011, 03:52     Найти количество строк матрицы, среднее арифметическое элементов которых меньше заданной величины
Ответ Создать тему
Опции темы

Текущее время: 16:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru