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

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

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

три задачи о матрицах в C++ - C++

21.10.2013, 15:55. Просмотров 419. Ответов 7
Метки нет (Все метки)

помогите решить три задания про матрицы, болел пропустил все что о них учили, так:
1. Вычислить произведения главной диагонали матрицы
2. Вычислить сумму элементов матрицы, значение которых не превышают заданное число
3. Представить два заданных столбца матрицы
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2013, 15:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос три задачи о матрицах в C++ (C++):

Три задачи на матрицы - C++
здавствуйте, помогите пожалуйстарешить пару задачек оч надо: 1) найти номер перого максимального элемента среди элементов, лежащего в...

Три простенькие задачи на C++ - C++
Здравствуйте. Скажите пожалуйста, как написать решение трёх простых задач в компиляторе? 1) За какое время велосипедист проедет 250...

Три задачи для чайника. - C++
Помогите пожалуйста решить пару задач. 1.Определить третью справа цифру натурального числа N 2.Определить три наибольших элемента...

Нахождение в матрицах - C++
Есть две матрицы, в них найти максимальные по модулю элементы и отрицательные элементы и отдельно положительные и вывести их значения и их...

Обмен строк в матрицах - C++
Помогите пожалуйста с программкой на с++! буду очень благодарен! В каждой из матриц A (4×3), B (5×4) поменять местами две строки: в A...

Перегрузка friend оператора в матрицах - C++
#include <time.h> #include <iostream> using namespace std; short int ddd=1; class Matrix { private: int mn,mm,**mass1; ...

7
GoldenChild
28 / 28 / 4
Регистрация: 12.06.2013
Сообщений: 65
21.10.2013, 16:23 #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
#include <iostream>
using namespace std;
// Размерность матрицы
const int N = 5;
 
int main() {
    //Заполнение матрицы случайными числами
    int A[N][N];
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            A[i][j] = rand()%10;
            cout << A[i][j] << " ";
        }
        cout << endl;
    }
    // 1. Произвидение диагонали
    int d = 1;
    for (int i = 0; i < N; i++) {
        d *= A[i][i];
    }
    cout << "main diagonal mult = " << d << endl;
    
    // 2. Считаем сумму эл. не больше введенного
    int max;
    int s = 0;
    cout << "Enter max element = ";
    cin >> max;
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            if (A[i][j] <= max) {
                s += A[i][j];
            }
        }
    }
    cout << "Sum = " << s << endl;
 
    // 3. Что такое "представить 2 столбца" ???
    system("pause");
    return 0;
}
1
паникер
0 / 0 / 0
Регистрация: 21.10.2013
Сообщений: 6
21.10.2013, 16:53  [ТС] #3
а руссифицированный код можно ? а то я вообще в этой теме нуб
0
GoldenChild
28 / 28 / 4
Регистрация: 12.06.2013
Сообщений: 65
21.10.2013, 18:48 #4
Цитата Сообщение от паникер Посмотреть сообщение
а руссифицированный код можно ? а то я вообще в этой теме нуб
Что вы подразумеваете под русифицированым кодом?)
0
паникер
0 / 0 / 0
Регистрация: 21.10.2013
Сообщений: 6
21.10.2013, 19:16  [ТС] #5
у на с эта типа курсовая и выглядеть она должна вот как то так только с моими заданиями
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
#include <vcl.h>
#include <stdio.h>
#include <math.h>
#include <time.h>
#include <windows.h>
#include <iostream.h>
#include <conio.h>
char Rus[256];
void main ()
{ int i,j, A[3][4], oper, min, kp, pr1;
clrscr () ;
CharToOem("\n                  Министерство образования Пензенской области",Rus);
cout<<Rus<<endl;
CharToOem("\n               ГБОУ СПО ПО Кузнецкий колледж электронной техники\n",Rus);
cout<<Rus<<endl;
printf("\n");
printf("\n");
CharToOem("\n                              КУРСОВОЙ ПРОЕКТ\n",Rus);
cout<<Rus<<endl;
CharToOem("           по дисциплине Технология разработки программных продуктов\n",Rus);
cout<<Rus<<endl;
CharToOem("                 Тема: Обработка элементов двумерного массива",Rus);
cout<<Rus<<endl;
printf("\n");
printf("\n");
printf("\n");
CharToOem("\nВыполнил: ст-т гр 3п5",Rus);
cout<<Rus<<endl;
CharToOem("\nДулкин Дамир",Rus);
cout<<Rus<<endl;
printf("\n");
CharToOem("\n                                  2013 год",Rus);
cout<<Rus<<endl;
CharToOem("\nДля продолжения нажмите клавишу Enter",Rus);
cout<<Rus<<endl;
getch();
clrscr () ;
printf("\n\n\n\n\n\n\n");
CharToOem("\n  Постановка задачи: разработать программу для определения требуемых величин ",Rus);
cout<<Rus<<endl;
CharToOem("\n                               в двумерном массиве. \n ",Rus);
cout<<Rus<<endl;
printf("\n\n\n\n\n\n\n\n\n\n");
CharToOem("\nДля продолжения нажмите клавишу Enter",Rus);
cout<<Rus<<endl;
getch();
clrscr () ;
CharToOem("\nВведите элементы массива:\n",Rus);
cout<<Rus<<endl;
 for(i=0; i<3; i++)
{  for(j=0; j<4; j++)
 { cout<<"A["<<i<<"]"<<"["<<j<<"]="; cin>>A[i][j]; }
}
CharToOem("\nВведённый массив:\n",Rus);
cout<<Rus<<endl;
for(i=0; i<03; i++)
{  for(j=0; j<4; j++)  printf("%5d",A[i][j]);
printf("\n");
}
printf("\n");
CharToOem("\nДля продолжения нажмите клавишу Enter",Rus);
cout<<Rus<<endl;
k: getch();
 clrscr () ;
CharToOem("\n       Выберите действие:",Rus);
cout<<Rus<<endl;
CharToOem("\n1- найти минимальный элемент массива",Rus);
cout<<Rus<<endl;
CharToOem("\n2- найти произведение положительных чисел",Rus);
cout<<Rus<<endl;
CharToOem("\n3- найти количество положительных нечетных чисел",Rus);
cout<<Rus<<endl;
CharToOem("\n4- выход",Rus);
cout<<Rus<<endl;CharToOem("\nОперация - ",Rus);
cout<<Rus<<endl;
cin>>oper;
clrscr () ;
switch (oper)
{ case 1: { CharToOem("\tНахождение минимального элемента массива\n",Rus);
            cout<<Rus<<endl;
            min=32676;
            for(i=0; i<3; i++)
             {for(j=0; j<4; j++)
                {if (A[i][j]<min)  min=A[i][j]; }
             }
             CharToOem("\nВ массиве:\n",Rus);
             cout<<Rus<<endl;
             for(i=0; i<03; i++)
              {  for(j=0; j<4; j++)  printf("%5d",A[i][j]);
                 printf("\n");
               }
             CharToOem("\nминимальный элемент =  ",Rus);
             cout<<Rus<<min<<endl;
             printf("\n\n\n\n\n\n\n\n\n\n\n");
             CharToOem("\nДля продолжения нажмите клавишу Enter",Rus);
             cout<<Rus<<endl;
             goto k;
           }
 
   case 2: { CharToOem("\tНахождение произведения положительных чисел массива\n",Rus);
             cout<<Rus<<endl;
             pr1=1;
             for(i=0; i<3; i++)
              {for(j=0; j<4; j++)
                {if (A[i][j]>0)  pr1=pr1*A[i][j]; }
             }
             CharToOem("\nВ массиве:\n",Rus);
             cout<<Rus<<endl;
             for(i=0; i<03; i++)
              {  for(j=0; j<4; j++)  printf("%5d",A[i][j]);
                 printf("\n");
               }
             CharToOem("\n Произведение положительных чисел массива=  ",Rus);
             cout<<Rus<<pr1<<endl;
             printf("\n\n\n\n\n\n\n\n\n\n\n");
             CharToOem("\nДля продолжения нажмите клавишу Enter",Rus);
             cout<<Rus<<endl;
             goto k;
           }
   case 3: { CharToOem("\tНахождение количества положительных нечетных чисел массива\n",Rus);
             cout<<Rus<<endl;
             kp=0;
             for(i=0; i<3; i++)
              {for(j=0; j<4; j++)
                {if (A[i][j]>0)
                  {if (fmod(A[i][j],2)!=0) kp=kp+1;  }
                }
              }
             CharToOem("\nВ массиве:\n",Rus);
             cout<<Rus<<endl;
             for(i=0; i<03; i++)
              {  for(j=0; j<4; j++)  printf("%5d",A[i][j]);
                 printf("\n");
               }
             CharToOem("\n Количество положительных нечетных чисел массива=  ",Rus);
             cout<<Rus<<kp<<endl;
              printf("\n\n\n\n\n\n\n\n\n\n\n");
             CharToOem("\nДля продолжения нажмите клавишу Enter",Rus);
             cout<<Rus<<endl;
             goto k;
           }
   case 4: { goto k1;}
   default: {printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
            CharToOem("\n                            Исправьтесь! ",Rus);
            cout<<Rus<<endl;
            CharToOem("\n                Вы выбрали несуществующий пункт меню ",Rus);
            cout<<Rus<<endl;
            printf("\n\n\n\n\n\n\n\n\n\n\n\n");
            CharToOem("\nДля возврата в меню нажмите клавишу Enter",Rus);
            cout<<Rus<<endl;
            goto k;  }
            }
        k1:    }
и еще на счет третьего задания , я вообще что то не представляю как его делать , но в методичке написанно именно так как я вам написал

Добавлено через 24 минуты
Извиняюсь на счет третьего задания там написано "Переставить два заданных столбца матрицы"
0
govorov
24 / 24 / 3
Регистрация: 25.09.2013
Сообщений: 76
21.10.2013, 19:21 #6
Цитата Сообщение от паникер Посмотреть сообщение
3. Представить два заданных столбца матрицы
Что значит представить? Так вам скорее всего никто не сможет помочь.
0
GoldenChild
28 / 28 / 4
Регистрация: 12.06.2013
Сообщений: 65
21.10.2013, 19:24 #7
Вывод русских сообщений думаю сами сделаете корректный, я просто перевел.

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
#include <iostream>
using namespace std;
// Размерность матрицы
const int N = 5;
 
int main() {
    //Заполнение матрицы случайными числами
    int A[N][N];
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            A[i][j] = rand()%10;
            cout << A[i][j] << " ";
        }
        cout << endl;
    }
    // 1. Произвидение диагонали
    int d = 1;
    for (int i = 0; i < N; i++) {
        d *= A[i][i];
    }
    cout << "Произведение главной диагонали = " << d << endl;
    
    // 2. Считаем сумму эл. не больше введенного
    int max;
    int s = 0;
    cout << "Введите элемент для ограничения = ";
    cin >> max;
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            if (A[i][j] <= max) {
                s += A[i][j];
            }
        }
    }
    cout << "Сума элементов не выше ограничения = " << s << endl;
 
    // 3. Переставляем два столбца
    int jn, in;
    cout << "Введите номера столбцов, которые нужно поменять ";
    cin >> jn >> in;
    for (int i = 0; i < N; i++) {
        int temp = A[i][jn-1];
        A[i][jn-1] = A[i][in-1];
        A[i][in-1] = temp;
    }
    cout << "Новая матрица: \n";
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            cout << A[i][j] << " ";
        }
        cout << endl;
    }
    system("pause");
    return 0;
}
1
паникер
0 / 0 / 0
Регистрация: 21.10.2013
Сообщений: 6
21.10.2013, 19:30  [ТС] #8
Цитата Сообщение от govorov Посмотреть сообщение
Что значит представить? Так вам скорее всего никто не сможет помочь.
я же поправился "пЕрЕставить два заданных столбца матрицы"

Добавлено через 5 минут
большое спасибо GoldenChild все получилось ))
0
21.10.2013, 19:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2013, 19:30
Привет! Вот еще темы с ответами:

Поменять местами столбицы в матрицах - C++
помогите мне как я буду писать эту программу на С++. Задана мтрица целых чисел .Поменять местами столбицы в которых находятся min и...

Подсчет количества нулей в матрицах - C++
Нужно пощитать количество нулей у матрицах A (N, M) и B (M, N). Вычисление сделать как функцию. Програма Dev C++. Матрицы рандомные.

Нахождение мин и мак в матрицах - C++
Есть две матрицы, в них найти и напечатать значения и индексы максимальных по модулю отрицательных элементов и отдельно положительных. ...

Ввод числа строк и столбцов в матрицах - C++
Вот наконец-то с вашей помощью дописал программу, которая перемножает 2 матрицы. У меня получился вот такой код. #include &lt;stdio.h&gt; ...


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

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

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