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

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
craftsman
0 / 0 / 0
Регистрация: 25.11.2010
Сообщений: 16
#1

Построить матрицу - C++

26.11.2010, 16:31. Просмотров 1569. Ответов 3
Метки нет (Все метки)

Здравствуйте. Помогите пожалуйста с программой. Задание: "Пусть задана матрица A, размерностью
n x n. Необходимо построить матрицу B, причём элементы матрицы являются средним значением всех элементов матрицы A в заштрихованной области, где область указана на рисунке."
0
Миниатюры
Построить матрицу  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2010, 16:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Построить матрицу (C++):

По матрице смежности построить граф, а по нему матрицу инцидентности. - Visual C++
Очень прошу о помощи: По матрице смежности построить граф, а по нему матрицу инцидентности. Размерность графа: от 5 до 500. Среда...

построить матрицу - C++
построить матрицу (5*5) с числом 6 в предпоследней строке, остальные элементы 0.

Построить матрицу по образцу - C++
помоги пожалуйста ,а то я совсем не разбираюсь

Из матрицы X (mxn) построить матрицу Y - C++
Из матрицы X (mxn) построить матрицу Y, поменяв местами строки и столбцы.

Ввести с клавиатуры, построить матрицу - C++

Построить матрицу заданного вида - C++
Построить матрицу вида порядка n C++

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
craftsman
0 / 0 / 0
Регистрация: 25.11.2010
Сообщений: 16
07.12.2010, 18:26  [ТС] #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
#include "stdafx.h"
#include "iostream"
using namespace std;
 
#define m 7
 
void main()
{
    {void rus();{setlocale(0,"");}
    int i,j,k,l,n,s,p,d,x;
    float a[m][m],b[m][m];
    char c;
    do{
        s=0;
        p=0;
        d=0;
        x=0;
        do{
            cout<<"Введите размерность матрицы m"<<endl;
            scanf("%d",&n);
        }while(!(n>0 && n<=m));
        for(i=1;i<=n;i++)
            for(j=1;j<=n;j++)
            {printf("Введите a(%d,%d)=",i,j);
             cout<<"a["<<i<<"]["<<j<<"]=";scanf("%f",&a[i-1][j-1]);}
        cout<<"Исходная матрица:"<<endl;
        for(i=1;i<=n;i++)
        {for(j=1;j<=n;j++)
        printf("%5.1f",a[i-1][j-1]);
        printf("\n");}//Конец печати исходной матрицы
        for(i=1;i<=n;i++)
        {for(j=1;j<=n;j++)
               for(k=1;k<=n;k++)
               for(l=j-i+k;l<=j+i-k;l++)
               if(l>=1 && l<=n)
        s=s+a[i-1][j-1];
               p++;}p=p+2;
            cout<<"Сумма верхнего:"<<s<<endl;
            cout<<"Число:"<<p<<endl;
        for(i=1;i<=n;i++)
        {for(j=1;j<=n;j++)
               for(k=1;k<=n;k++)
               for(l=j+i-k;l<=j-i+k;l++)
               if(l>=1 && l<=n)
        d=d+a[i-1][j-1];
               x++;}x=x+2;
            cout<<"Сумма нижнего:"<<d<<endl;
            cout<<"Число:"<<x<<endl;
           if(n%2==0)//вычисление другой матрицы
           {for(i=1;i<=n;i++)
            for(j=1;j<=n;j++)
            {b[i-1][j-1]=(s+d)/(p+x);}}
           else
           {for(i=1;i<=n;i++)
            for(j=1;j<=n;j++)
            {b[i-1][j-1]=(s+d)/(p+x+1);}}
        printf("Полученная матрица\n");
        for(i=1;i<=n;i++)
        {for(j=1;j<=n;j++)
        printf("%5.1f",b[i-1][j-1]);
        printf("\n");}
        cout<<"Перезапустить программу? Y/N"<<endl;
        cin>>c;}
    while(c=='y' || c=='Y');
}}
0
alex256
Сообщений: n/a
10.12.2010, 15:51 #3
Да жестокие задачки а мне надо из той же книжки только 6 рисунок, но тоже 2 задание)))
craftsman
0 / 0 / 0
Регистрация: 25.11.2010
Сообщений: 16
16.12.2010, 17:12  [ТС] #4
Вот, сам додумал! Правильное, стопроцентное решение:
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
#include "stdafx.h"
#include "iostream"
using namespace std;
 
#define m 7
 
int main()
{
    {void rus();{setlocale(0,"");}
    int i,j,k,l,n,s,p;
    float a[m][m],b[m][m];
    char c;
    do{
        do{
            cout<<"Введите размерность матрицы m"<<endl;
            scanf("%d",&n);
        }while(!(n>0 && n<=m));
        for(i=1;i<=n;i++)
            for(j=1;j<=n;j++)
            {printf("Введите a(%d,%d)=",i,j);
             cout<<"a["<<i<<"]["<<j<<"]=";
             cin>>a[i-1][j-1];}
        cout<<"Исходная матрица:"<<endl;
        for(i=1;i<=n;i++)
        {for(j=1;j<=n;j++)
        printf("%7.1f",a[i-1][j-1]);
        printf("\n");}//Конец печати исходной матрицы
        printf("Полученная матрица\n");
        for(i=1;i<=n;i++)
        {for(j=1;j<=n;j++)
        {s=0;
         p=0;
        for(k=1;k<=n;k++)
           for(l=j-i+k;l<=j+i-k;l++)
               {if(l>=1 && l<=n)
           {s=s+a[k-1][l-1];
        p++;}}
           s=s-a[i-1][j-1];
           p--;
        for(k=1;k<=n;k++)
           for(l=j+i-k;l<=j-i+k;l++)
               {if(l>=1 && l<=n)
           {s=s+a[k-1][l-1];
        p++;}}
           b[i-1][j-1]=s/p;}}
        for(i=1;i<=n;i++)
        {for(j=1;j<=n;j++)
        printf("%7.1f",b[i-1][j-1]);
        printf("\n");}
        cout<<"Перезапустить программу? Y/N"<<endl;
        cin>>c;}
    while(c=='y' || c=='Y');
    return 0;}}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2010, 17:12
Привет! Вот еще темы с ответами:

Построить матрицу по заданному алгоритму - C++
Товарищи, нужна помощь. Задача следующая: построить матрицу D. Что она из себя представляет? Эта матрица используется при подсчёте...

Построить квадратную матрицу порядка n - C++
Помогите плз!!!

Построить матрицу вида порядка n - C++
Построить матрицу вида порядка n Язык Си

Построить квадратную матрицу порядка n - C++
Извините, не нашел такой, а принцип понять не могу( \begin{bmatrix} n &amp; 0 &amp; 0 &amp;\dots&amp; 0 &amp; 0&amp;0\\ n-1 &amp; n &amp; 0 &amp; \dots &amp; 0 &amp; 0&amp;0\\ ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.12.2010, 17:12
Ответ Создать тему
Опции темы

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