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

Дана целочисленная квадратная матрица

08.02.2010, 11:28. Просмотров 1871. Ответов 16
Метки нет (Все метки)

Дана целочисленная квадратная матрица. Определить произведение элементов в тех строках, которые не содержат отрицательные элементы

Если можно напишите, пожалуйста, всю программу а не кусок программы!!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2010, 11:28
Ответы с готовыми решениями:

Дана целочисленная квадратная матрица
Дана целочисленная квадратная матрица. Найдите наибольший элемент...

Дана целочисленная квадратная матрица
2. Дана целочисленная квадратная матрица. Определить:

Дана целочисленная квадратная матрица
Всем доброго времени суток!Я тут немнога запутался, кто может пожалуйста помочь...

Дана целочисленная квадратная матрица
Всем доброго времени суток ув. форумчане! Не успеваю выполнить задачу по...

Дана целочисленная квадратная матрица
дана целочисленная квадратная матрица. Определить максимальный среди элементов...

16
vet
175 / 176 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
08.02.2010, 11:40 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
#include <iomanip.h>
#include <iostream.h>
 
 using namespace std;
 
int main()
{
int N;
cout<<"Vvedite kol-vo strok i stolbsov:"<<endl;
cin>>N;
 
int j,i,z;
int **a=new int*[N];
for (i=0;i<N;i++) a[i]=new int[N];
cout<<"Vvedite elementi massiva:"<<endl;
for (i=0;i<N;i++)
for (j=0;j<N;j++)
{
cout<<"a["<<i<<"]"<<"["<<j<<"]=";
cin>>a[i][j];
}
for (i=0;i<N;i++){
for (j=0;j<N;j++) cout<<setw(4)<<a[i][j]<<" ";
cout<<endl;}
 
int sum;
for (j=0;j<N;j++){
sum=1;
for (i=0;i<N;i++){
sum*=a[j][i];
if (a[j][i]<0){sum=-1; break;}
}
if(sum>0) cout<<"Strok: "<<i<<"   prozv: "<<sum<<endl;
}
//cout <<z<<"\n";
system("pause");
return 0;
}
1
Genius Ignat
1243 / 781 / 108
Регистрация: 16.09.2009
Сообщений: 2,014
08.02.2010, 11:43 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
#include <stdio.h>
 
#define H 3
#define W 3
 
void main(){
 
int matrix[H][W] = {
        { 1,2,3 },
        {-4,5,6 },
        { -7,8,9 }
    };
 
int pr = 1 ;             //произведение
bool negative = false;   //определение отрицательного
 
int i, j;
for(i = 0; i<H;i++) {
negative = false;
      for(j=0;j<W;j++) {
 
      pr*=matrix[i][j];      //вычисляем произведение  
      if(matrix[i][j]<0)negative = true;
      }
 
if(!negative){
printf("pr %d:",pr);
printf("\n");
}
 
pr = 1;                      //произвдение по умолчанию
getch();
}
 
}
1
ReN
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 19
08.02.2010, 11:44  [ТС] 4
в 1 варианте выдало 2 ошибки
0
vet
175 / 176 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
08.02.2010, 11:44 5
какие? и какой компилятор?
0
ReN
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 19
08.02.2010, 11:45  [ТС] 6
2 варианте 1 ошибка
0
Genius Ignat
1243 / 781 / 108
Регистрация: 16.09.2009
Сообщений: 2,014
08.02.2010, 11:46 7
В моём примере что за ошибка
0
vet
175 / 176 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
08.02.2010, 11:49 8
ReN, путем Copy-Paste приведи тексты ошибок,что компилятор выдал
0
ReN
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 19
08.02.2010, 11:50  [ТС] 9
с++
using namespace std;
system("pause");
0
vet
175 / 176 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
08.02.2010, 11:51 10
закоментируй эти 2-е и попробуй снова,может просто компилятор старый?
0
Genius Ignat
1243 / 781 / 108
Регистрация: 16.09.2009
Сообщений: 2,014
08.02.2010, 11:51 11
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
#include <stdio.h>
#include <conio.h>
 
#define H 3
#define W 3
 
void main(){
 
int matrix[H][W] = {
        { 1,2,3 },
        {-4,5,6 },
        { 1,2,3 }
    };
 
int pr = 1 ;             //произведение
bool negative = false;   //определение отрицательного
 
int i, j;
for(i = 0; i<H;i++) {
negative = false;
      for(j=0;j<W;j++) {
 
      pr*=matrix[i][j];      //вычисляем произведение  
      if(matrix[i][j]<0)negative = true;
      }
 
if(!negative){
printf("pr %d:",pr);
printf("\n");
}
 
pr = 1;                      //произвдение по умолчанию
}
getch();
}
0
ReN
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 19
08.02.2010, 11:55  [ТС] 12
E:\MODUL\1.cpp(4) : error C2871: 'std' : does not exist or is not a namespace
E:\MODUL\1.cpp(36) : error C2065: 'system' : undeclared identifier
0
Genius Ignat
1243 / 781 / 108
Регистрация: 16.09.2009
Сообщений: 2,014
08.02.2010, 12:06 13
#include <conio.h> //надо было добавить:забыл..

Добавлено через 7 минут
vet:
А где #include <stdlib.h>
2
vet
175 / 176 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
08.02.2010, 12:09 14
Genius Ignat,
Цитата Сообщение от Genius Ignat Посмотреть сообщение
А где #include <stdlib.h>
я его обычно использую если на С пишу
на С++ у меня и без него работает,согласно стандарта:
#include <iostream>
using namespace std;
Разве не так?

Не по теме:

По крайней мере в достаточно новых компиляторах

1
Sens0
15 / 2 / 1
Регистрация: 06.12.2009
Сообщений: 27
08.02.2010, 12:47 15
Вот, я чучуть изменил и подредактировал вариан Vet(а). Должно работать.
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
#include <iomanip.h>
#include <iostream.h>
#include <stdlib.h>
int main()
{
    int N;
    cout<<"Vvedite kol-vo strok i stolbsov:"<<endl;
    cin>>N;
    int j,i;
    int **a=new int*[N];
    for (i=0;i<N;i++)
        a[i]=new int[N];
        cout<<"Vvedite elementi massiva:"<<endl;
    for (i=0;i<N;i++)
        for (j=0;j<N;j++)
        {
            cout<<"a["<<i<<"]"<<"["<<j<<"]=";
            cin>>a[i][j];
        }
        for (i=0;i<N;i++)
        {
            for (j=0;j<N;j++)
                cout<<setw(4)<<a[i][j]<<" ";
            cout<<endl;
        }
        int sum;
        for (j=0;j<N;j++)
        {
            sum=1;
            for (i=0;i<N;i++)
            {
                sum*=a[j][i];
                if (a[j][i]<0)
                {
                    sum=-1;
                    break;
                }
            }
            if(sum>0) cout<<"Prozvedenie stroki = "<<sum<<endl;
        }
        return 0;
}
1
ReN
0 / 0 / 0
Регистрация: 08.02.2010
Сообщений: 19
08.02.2010, 12:52  [ТС] 16
Спасибо этот вариант подходит!
Спасибо всем.
0
vet
175 / 176 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
08.02.2010, 12:55 17
Пожалуйста =)
0
08.02.2010, 12:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2010, 12:55

Дана целочисленная квадратная матрица
Дана целочисленная квадратная матрица порядка n. Найти номера строк: в) все...

Дана целочисленная квадратная матрица
Дана целочисленная квадратная матрица. Определить: • первую строку в которой...

Дана целочисленная квадратная матрица.
Определить сумму элементов в тех строках, которые не содержат отрицательных...


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

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

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