Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Макська я
0 / 0 / 0
Регистрация: 30.03.2010
Сообщений: 28
1

Дана квадратная матрица А порядка n. Составить программу которая все элементы расположенные на главных и побочных диагоналях заменяет на минимальное.

13.06.2010, 18:26. Просмотров 736. Ответов 10
Метки нет (Все метки)

Дана квадратная матрица А порядка n. Составить программу которая все элементы расположенные на главной и побочных диагоналях заменяет на значение минимального элемента.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.06.2010, 18:26
Ответы с готовыми решениями:

Составить программу, которая все элементы, расположенные на главной и побочных диагоналях массива, заменяет значение минимального элемента
3. Данная квадратная матрица А порядка n. Составить программу, которая все...

Дана действительная квадратная матрица порядка 12. Заменить нулями все её элементы, расположенные на глав-ной диагонали и выше неё.
Дана действительная квадратная матрица порядка 12. Заменить нулями все её...

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

Дана действительная квадратная матрица D(6,6). Заменить нулями все элементы, расположенные на главной диагонал
С++ Дана действительная квадратная матрица D(6,6). Заменить нулями все...

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

10
Scythian
59 / 59 / 12
Регистрация: 01.01.2010
Сообщений: 222
13.06.2010, 18:51 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
/*Дана квадратная матрица А порядка n. Составить программу которая все элементы
расположенные на главной и побочных диагоналях заменяет
на значение минимального элемента. */
#include<iostream.h>
#include<stdlib.h>
 
main()
{
 int **A,n,i,j,min=1000;
 cin>>n;
 A=new int*[n];
 for(i=0;i<n;i++)
    A[i]=new int[n];
 cout<<"Matrix\n";
 for(i=0;i<n;i++)
  {
    for(j=0;j<n;j++)
        {
         A[i][j]=rand()%10;
         cout<<A[i][j]<<' ';
        }
    cout<<endl;
  }
 cout<<"-----------------\n";
 for(i=0;i<n;i++)
    for(j=0;j<n;j++)
        if(A[i][j]<min)
            min=A[i][j];
 for(i=0;i<n;i++)
     {
        A[i][i]=min;
        A[i][(n-1)-i]=min;
     }
 for(i=0;i<n;i++)
  {
    for(j=0;j<n;j++)
         cout<<A[i][j]<<' ';
    cout<<endl;
  }
 return 0;
}
2
selevit
81 / 77 / 6
Регистрация: 08.10.2008
Сообщений: 296
13.06.2010, 19:27 3
Не успел, но все же =)
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
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL,"");
    double **A;
    int n;
    cout<<"Введите порядок матрицы А: ";
    cin>>n;
    A = new double *[n];
    for(int i=0;i<n;i++)
        A[i] = new double [n];
    cout<<"Заполните матрицу: "<<endl;
    for(int i=0;i<n;i++)
        for(int j=0;j<n;j++)
        {
            cout<<"A["<<i<<"]["<<j<<"] = ";
            cin>>A[i][j];
        }
    double min=A[0][0];
    cout<<"Исходная матрица:"<<endl;
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
            cout<<A[i][j]<<" ";
        cout<<endl;
    }
    for(int i=0;i<n;i++)
        for(int j=0;j<n;j++)
            if(A[i][j]<min)
                min = A[i][j];
    for(int i=0;i<n;i++)
        A[i][i] = min;
 
    for(int i=0;i<n;i+=2)
        for(int j=n-1;j>=0;j-=2)
            A[i][j] = min;
    cout<<"Измененная матрица:"<<endl;
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
            cout<<A[i][j]<<" ";
        cout<<endl;
    }
    system("pause");
    return 0;
}
Добавлено через 4 минуты
Макська я, На выбор =),

P.S.
C++
1
2
int **A,n,i,j,min=1000;
if(A[i][j]<min)
Scythian, а если матрица будет содержать все элементы больше, чем 1000? Это не рациональный метод.
2
Scythian
59 / 59 / 12
Регистрация: 01.01.2010
Сообщений: 222
13.06.2010, 19:41 4
Ну ладно, пусть будет так.
C++
1
min=A[0][0];
или
C++
1
min=32767
))

C++
1
2
3
4
5
6
7
                         min = A[i][j];
        for(int i=0;i<n;i++)
                A[i][i] = min;
 
        for(int i=0;i<n;i+=2)
                for(int j=n-1;j>=0;j-=2)
                        A[i][j] = min;
Ну это тоже как-бы не совсем рационально в плане количества действий)))))))))))
1
selevit
81 / 77 / 6
Регистрация: 08.10.2008
Сообщений: 296
13.06.2010, 19:44 5
Цитата Сообщение от Scythian Посмотреть сообщение
C++
1
min=32767
а кто сказал, что матрица должна быть целого типа? кстати в С++ тип int для IBM, насколько я знаю больше чем 32767 =)

Добавлено через 2 минуты
Цитата Сообщение от Scythian Посмотреть сообщение
Ну это тоже как-бы не совсем рационально в плане количества действий)))))))))))
Кому как нравится, тот так и пишет, программинг - это творчество =)

ЗЫ. уже оффтоп пошел.
1
Scythian
59 / 59 / 12
Регистрация: 01.01.2010
Сообщений: 222
13.06.2010, 19:47 6
Вот по этому поводу - не знаю. У меня мах именно столько выдает и компилятор(справка) и книги. Но точно не знаю.
1
cibertronic
256 / 143 / 17
Регистрация: 27.12.2009
Сообщений: 909
13.06.2010, 19:49 7
у меня была такая задача....эммм...мож че поможет вот
0
Макська я
0 / 0 / 0
Регистрация: 30.03.2010
Сообщений: 28
13.06.2010, 21:31  [ТС] 8
спасибо всем)
0
selevit
81 / 77 / 6
Регистрация: 08.10.2008
Сообщений: 296
13.06.2010, 22:12 9
Цитата Сообщение от Макська я Посмотреть сообщение
спасибо всем)
а спасибку нажать?
0
KatyaKotik
0 / 0 / 0
Регистрация: 13.03.2013
Сообщений: 33
13.05.2013, 16:53 10
Скажите, пожалуйста, что означает A = new double *[n] , а то я ещё не сильно шарю))
0
faLek
101 / 102 / 43
Регистрация: 06.03.2012
Сообщений: 478
13.05.2013, 16:59 11
KatyaKotik, динамическое выделение памяти по массив...
1
13.05.2013, 16:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2013, 16:59

Дана целочисленная квадратная матрица порядка n. Найти номера строк все элементы которых 0.
Дана целочисленная квадратная матрица порядка n. Найти номера строк все...

Дана действительная квадратная матрица порядка n, все элементы которой различны. Найти наибольший элемент среди стоящих на главной и побочной диаг
Дана действительная квадратная матрица порядка n, все элементы которой...

[C++] Дана квадратная матрица состоящая из натруальных чисел. Надо заменить нулями элементы, расположенные на главной диагонали и выше её
Напишите пожалуйста код. Очень надо ):)


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

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

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