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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Olia88
1 / 1 / 0
Регистрация: 20.02.2012
Сообщений: 24
#1

Матрица - C++

21.02.2012, 21:29. Просмотров 534. Ответов 5
Метки нет (Все метки)

Дана квадратная матрица порядка N. Заменить нулями все ее элементы, расположенные на главной диагонали и выше ее. Вывести матрицу в исходном и преобразованном виде.

Как заполнить нулями все элементы находящиеся над главной диагональю?

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
#include <iostream>
#include <stdio.h>
 
int main()
{   int i,n,s,k,min,m;
  
    int mas[30][30];
    
    
    std::cout <<"Vvedite kol.  ";
    std::cin >> n;
    
   for (int i=0; i<n; i++)
       {for (int j=0; j<n; j++)
   std::cin>> mas[i][j];}
   
    for (int i=0; i<n; i++)
       {for (int j=0; j<n; j++)
            mas[i][i]=0;
            
   }
   for (int j=0; j<n+1; j++)
    
       {min=0;
            for (int i=0; i<n+1; i++)
            mas[i][i]=0;
            
   }
   
    for (int i=0; i<n; i++)
      { {for (int j=0; j<n; j++)
   std::cout<< mas[i][j]<<" ";}
   std::cout<<'\n';}
  
    
        system ("pause");
    return 0;
}
 Комментарий модератора 
Используйте теги форматирования кода!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2012, 21:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Матрица (C++):

дана квадратичная матрица z[n][n]. составить программу, которая если матрица симметричная(транспонированная матрица равна исходной), сделает ее не сим - C++
помогите пожалуйста. условие: дана квадратичная матрица z. составить программу, которая если матрица симметричная(транспонированная...

Дана матрица целых чисел, из n строк и n столбцов (n < = 100).Определить является ли матрица нулевой (состоит из одних нулей) - C++
#include &lt;iostream.h&gt; #include &lt;iomanip.h&gt; #include &lt;stdlib.h&gt; int main(int argc, char* argv) { srand(time(NULL)); int mas; ...

Дана матрица целых чисел, из n строк и n столбцов (n < = 100).Определить является ли матрица нулевой (состоит из одних нулей) - C++
#include &lt;iostream.h&gt; #include &lt;iomanip.h&gt; #include&lt;conio.h&gt; void main() { int mas; int N; int max_element; int...

Даны квадратная матрица A порядка n и вектор с n элементами. Получить вектор: (A=E)b, где E единичная матрица порядка n - C++
Даны квадратная матрица A порядка n и вектор с n элементами. Получить вектор: (A=E)b, где E-единичная матрица порядка n. Помогите...

Определить базовый класс "Матрица" и класс-потомок "Треугольная матрица" - C++
Нужно определить класс &quot;матрица&quot; с возможностью динамического выделения и освобождения памяти, наполнения матрицы, сохранения и чтения из...

матрица - C++
помогите написать программу чтоб вводить числа с клавиатуры и чтоб находила определитель. у меня Borland C++ 3.1

5
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
21.02.2012, 21:53 #2
Цитата Сообщение от Olia88 Посмотреть сообщение
Дана квадратная матрица порядка N. Заменить нулями все ее элементы, расположенные на главной диагонали и выше ее. Вывести матрицу в исходном и преобразованном виде.
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
#include <iostream>
#include <stdio.h>
 
using namespace std;
 
int main()
{ 
    setlocale(0,"");
    int n;
    int mas[30][30];
 
 
    cout << "Введите размерность матрицы - ";
    cin >> n;
 
    cout << "\nВведите исходную маитрицу\n";
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            cin >> mas[i][j];
        }
    }
 
    for (int i=0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            if(i <= j)
            {
                mas[i][j] = 0;
            }
        }
    }
    
    cout << "\nМатрица в преобразованном виде\n";
    for (int i = 0; i < n; i++)
    { 
        for (int j = 0; j < n; j++)
        {
            cout << mas[i][j] << " ";
        }
        cout << '\n';
    }
 
 
    system ("pause >> null");
    return 0;
}
1
Миниатюры
Матрица  
Olia88
1 / 1 / 0
Регистрация: 20.02.2012
Сообщений: 24
21.02.2012, 22:02  [ТС] #3
огромное спасибо!!! А вы еще не подскажите как случайными числами ее заполнить? Я делаю так
C++
1
2
3
4
5
6
7
8
9
10
 for (int i = 0; i < n; i++)
        {
                for (int j = 0; j < n; j++)
                {
                      
                      mas[i][j]=1+rand()%100;
                      std::cout<<mas[i][j];
                      
                }
        }
а он как то странно заполняет
0
R136a1
142 / 111 / 15
Регистрация: 14.04.2011
Сообщений: 261
21.02.2012, 22:05 #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 <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>
 
int main()
{
    int n;
    int **matrix;
 
    std::cout << "Порядок матрицы: ";
    std::cin >> n;
 
    matrix = new int*[n];
 
    std::cout << "Исходная матрица: " << std::endl;
 
    srand(time(NULL));
 
    for(int i = 0; i < n; i++)
    {
        matrix[i] = new int[n];
 
        for(int j = 0; j < n; j++)
        {
            matrix[i][j] = rand() % 20 + 1;
            std::cout << std::setw(5) << matrix[i][j];
        }
 
        std::cout << std::endl;
    }
 
    for(int i = 0; i < n; i++)
        for(int j = i; j < n; j++)
            matrix[i][j] = 0;
 
    std::cout << "\nПолученная матрица: " << std::endl;
 
    for(int i = 0; i < n; i++)
    {
        for(int j = 0; j < n; j++)
            std::cout << std::setw(5) << matrix[i][j];
 
        std::cout << std::endl;
    }
 
    for(int i = 0; i < n; i++)
        delete[] matrix[i];
 
    delete[] matrix;
 
    return 0;
}
0
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
21.02.2012, 22:07 #5
Цитата Сообщение от Olia88 Посмотреть сообщение
А вы еще не подскажите как случайными числами ее заполнить?
Объединил еще два цикла в один!

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
#include <iostream>
#include <stdio.h>
 
using namespace std;
 
int main()
{ 
    setlocale(0,"");
    int n;
    int mas[30][30];
 
 
    cout << "Введите размерность матрицы - ";
    cin >> n;
 
    cout << "\nВведите исходную маитрицу\n";
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            mas[i][j] = 1 + rand() % 100;
            cout << mas[i][j] << "\t";
            if(i <= j)
            {
                mas[i][j] = 0;
            }   
        }
        cout << '\n';
    }
 
    cout << "\nМатрица в преобразованном виде\n";
    for (int i = 0; i < n; i++)
    { 
        for (int j = 0; j < n; j++)
        {
            cout << mas[i][j] << "\t";
        }
        cout << '\n';
    }
 
    system ("pause >> null");
    return 0;
}
1
Миниатюры
Матрица  
Olia88
1 / 1 / 0
Регистрация: 20.02.2012
Сообщений: 24
21.02.2012, 22:19  [ТС] #6
Большущее спасибо!!!!!
0
21.02.2012, 22:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2012, 22:19
Привет! Вот еще темы с ответами:

Матрица - C++
Вот код: //--------------------------------------------------------------------------- #include &lt;vcl.h&gt; #include &lt;stdio.h&gt; ...

Матрица. - C++
Не пойму как решить задачу на матрицу в Си. Задана матрица А(m,n), m&lt;=8,m&lt;=10.Вычеркнуть в матрице А строку с минимальной суммой...

Матрица в C++ - C++
Задана матрица А(5,5). Если в строке есть хотя бы один нуль, то заменить эту строку единицами.

Матрица - C++
В какой строке матрицы A(mхn) определить количество элементов, значения коториых принадлежат промежутку . Строку, содержащую максимальное...


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

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

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