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

матрица разделена диагоналями на 4 треугольника, элементы верхнего и нижнего треугольника нулевые - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
Master_13Dan
0 / 0 / 0
Регистрация: 19.11.2011
Сообщений: 14
13.10.2013, 16:33     матрица разделена диагоналями на 4 треугольника, элементы верхнего и нижнего треугольника нулевые #1
Задание матрица разделена диагоналями на 4 треугольника, элементы верхнего и нижнего треугольника нулевые.Не понимаю,как сделать???помогите пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.10.2013, 16:33     матрица разделена диагоналями на 4 треугольника, элементы верхнего и нижнего треугольника нулевые
Посмотрите здесь:

Сформировать одномерный массив Х из элементов верхнего левого треугольника матрицы А и найти максимальный элемент массива Х C++
C++ Даны длины сторон треугольника, определить тип этого треугольника
C++ Заданы длины двух сторон треугольника и угол между ними. найти площадь треугольника?
Дана сторона равностороннего треугольника. Найти площадь этого треугольника, его высоты, радиусы вписанной и описанной окружностей. C++
C++ Нулевые элементы размещены в верхнем и нижнем треугольнике, за условием разделения матрицы диагоналями на 4 треугольника
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kosheniatko
13 / 13 / 3
Регистрация: 03.10.2013
Сообщений: 44
13.10.2013, 16:39     матрица разделена диагоналями на 4 треугольника, элементы верхнего и нижнего треугольника нулевые #2
какие именно треугольники нулевые?
верхний правый и левый нижний?

Добавлено через 36 секунд
и что конкретно сделать? заполнить матрицу просто?
Master_13Dan
0 / 0 / 0
Регистрация: 19.11.2011
Сообщений: 14
13.10.2013, 16:52  [ТС]     матрица разделена диагоналями на 4 треугольника, элементы верхнего и нижнего треугольника нулевые #3
есть квадратная матрица,состоящая допустим из 0 и 1...нужно сделать так:разделим образно матрицу подиоганалям,нужно чтобы верхний и нижний треугольник заполнились нулями....есть пример другого похожего задания...всмысле метод выполнения
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
// Украинцев Виталий ПО-21
# include <conio.h>
# include <stdio.h>
 
// прототипы функций
 
int menu(int kp, char *naz[]);
void main();
void error();
void insert(void);
void view(void);
void change(void);
 
// глобальные переменные
 
int a[100],n;
 
// ошибка ввода
 
void error()
{
    clrscr();
    printf("Data is not correct!\n");
    getch();
}
 
// меню
 
int menu(int kp, char*naz[])
{
    int k, i;
    clrscr( );
    for (i=0; i<kp; i++)
      printf("\n %d %s", i+1, naz[i]);
    printf("\n\n Viberi punkt ->");
    scanf("%d", &k);
    return k;
}
 
 
void main()
{
    int kol=4, nom;
    char*naz[]={"Vvod", "View", "Change","Exit"};
 
        for (;;)
        {
            fflush(stdin);
            nom=menu(kol,naz);
            switch(nom)
            {
                case 1: insert();break;
                case 2: view();break;
                case 3: change();break;
                case 4: return;
            }
        }
}
 
void insert(void)
{
    clrscr();
    int x,i,k=0,j;
    printf("Vvedite razmer: ");
    scanf("%d",&n);
    for (i=0; i<n; i++)
        for (j=0; j<n; j++)
            if (scanf("%d",&x)!=0)
            {
                if (i==0 && j==0) a[0]=x;
                if (i!=j)
                {
                    k++;               // запись эл-ов в вектор
                    a[k]=x;
                }
                else if (a[0]!=x)         // проверка на ошибку ввода
                {
                    error();
                    return;
                }
            }
    getch();
}
 
 
void  view(void)
{
    clrscr();
    int i,j,k=1;
    printf("Matrica: \n");
    for (i=0;i<n;i++)
    {
        for (j=0;j<n;j++)                           // вывод матрицы
            if (i==j) printf("%d ",a[0]);
            else {printf("%d ",a[k]); k++;}
        printf("\n");
    }
    printf("Vektor: \n");
    for (i=1;i<k;i++)                           // вывод вектора
        printf("%d ",a[i]);
    getch();
}
 
 
void change(void)
{
    clrscr();
    int k=1,i,j,x,y,z;
    printf("Vvedite [i,j]: ");
    scanf("%d%d",&x,&y);
    if (x==y)                 // проверка на ошибку ввода
    {
        error();
        return;
    }
    for (i=0;i<n;i++)
        for (j=0;j<n;j++)
        {
            if (i==x && j==y)
            {
                printf("Element raven : %d\n",a[k]);      // вывод нужного эл-та матрицы
                printf("New value : ");
                scanf("%d",&z);
                a[k]=z;                               // замена эл-та матрицы
            }
            if (i!=j) k++;
        }
    getch();
}
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
13.10.2013, 17:06     матрица разделена диагоналями на 4 треугольника, элементы верхнего и нижнего треугольника нулевые #4
Так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
int main()
{
    const int n = 7;
    int a[n][n];
    for (int i = 0; i<n; i++)
    {
        for (int j = 0; j<n; j++)
        {
            if ((j>i && i+j+2<n+1) || (j<i && i+j+2>n+1))
                a[i][j] = 0;
            else a[i][j] = 1;
            std::cout <<a[i][j] <<" ";
        }
        std::cout <<std::endl;
    }
    return 0;
}
Yandex
Объявления
13.10.2013, 17:06     матрица разделена диагоналями на 4 треугольника, элементы верхнего и нижнего треугольника нулевые
Ответ Создать тему
Опции темы

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