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

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

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

Целочисленная прямоугольная матрица - C++

28.03.2011, 20:07. Просмотров 854. Ответов 8
Метки нет (Все метки)

помогите,пожалуйста!
задание:Дана целочисленная прямоугольная матрица. Определить:
1.количество строк, содержащих хотя бы один нулевой элемент;
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
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
#include "stdafx.h"
#include <iostream>
#include <math.h>
 
 
 
using namespace std;
int mass();
int stroka (const int** mass);
int nom(const int** mass);
 
int main()
{
        setlocale (LC_ALL, "Russian");
        int mass[256][256], count=0, n, m, count1=0;
        cout<<"Введите количество строк"<<endl;
        cin>>n;
        cout<<"Введите количество столбцов"<<endl;
        cin>>m;
}
 
int mass ()
{
    int i, n, m, j;
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            cout<<"Введите элемент ["<<i+1<<"]["<<j+1<<"] -> ";
            cin>>mass[i][j];
        }
    }
}
 
int stroka (const int** mass)
{
    int i, n, m, j;
    int count1, count;
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            if (mass[i][j]!=0)
            {
                count1++;
            }
        }
        if (count1==m)
        {
            count++;
        }
        count1=0;
    }
    cout<<"Количество строк, содержащих один нулевой элемент "<<count<<endl;
    system ("pause");
    return 0;
}
 
int nom(const int** mass)
{
    int k,n,i,j;
    int nom=0;
 
    for (j=0;j<n;j++)
    {
 
        if (mass[i][j]==mass[i][j+1])
        {
            nom++;
            cout<<"Номер столбца= "<<nom+1<<endl;
            k++;
            break;
        }
        if (k!=0)
            break;
    }
    return nom;
}
Добавлено через 3 часа 22 минуты
пожалуйста,очень надо

 Комментарий модератора 
Используйте теги форматирования кода!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2011, 20:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Целочисленная прямоугольная матрица (C++):

целочисленная прямоугольная матрица - C++
Дана целочисленная прямоугольная матрица. Определить: 1)количество столбцов, содержащих хотя бы один нулевой элемент (оформить в виде...

целочисленная прямоугольная матрица - C++
Дана целочисленная прямоугольная матрица. Определить количество столбцов, Не содержащих ни одного нулевого элемента. Характеристикой...

Целочисленная прямоугольная матрица - C++
Ребят,помогите пожалуйста найти ошибку... Задача:Дана целочисленная прямоугольная матрица.Определить:1)количество строк,не содержащих ни...

целочисленная прямоугольная матрица - C++
дана целочисленая прямоугольная матрица. Определить номер первого из столбцов , содержащих хотя бы один нулевой элемент Характеристикой...

Целочисленная прямоугольная матрица - C++
Дана целочисленная прямоугольная матрица размера m×n. Составить программу, которая находит номер столбца, в котором находится самая длинная...

целочисленная прямоугольная матрица. - C++
Дана целочисленная прямоугольная матрица. 1). Визначіть номер первого из строк, который содержит хотя бы один нулевой элемент 2)....

8
IrineK
Заблокирован
28.03.2011, 20:56 #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
42
43
44
45
46
#include <iostream>
#include <math.h>
 
using namespace std;
 
void setArray( int**, int, int);
int stroka (int**,int,int);
int nom(int**,int,int);
 
int main()
{
setlocale (LC_ALL, "Russian");
int m, n;
cout<<"Введите количество строк"<<endl;
cin>>m;
cout<<"Введите количество столбцов"<<endl;
cin>>n;
int ** matrix = new int * [ m ];
        for ( int i = 0; i < m; i++ )
                matrix[ i ] = new int [ n ];
    
setArray(matrix,m,n);
cout<<"Количество строк, содержащих хотя бы один нулевой элемент "<<stroka(matrix,m,n)<<endl;
//nom (matrix,m,n);
 
system ("pause");
}
 
void setArray(int** mass,int rows,int cols)
{   cout<<"Введите элементы массива\n";
    for (int i=0; i<rows; i++)
        for (int j=0; j<cols; j++)
                cin>>mass[i][j];
}
 
 
int stroka (int** mass,int rows,int cols)
{   int count=0;
    for (int i=0; i<rows; i++)
        for (int j=0; j<cols; j++)
            if (mass[i][j]==0)
            {   count++;
                break;
            }
    return count;
}
Если будет немного времени, доделаю последнюю функцию.
Если нет - может, кто-то поможет.
1
lyal
0 / 0 / 0
Регистрация: 28.03.2011
Сообщений: 20
30.03.2011, 20:56  [ТС] #3
большое спасибо!!!!!!!!!!но еще бы последнюю...........

Добавлено через 1 час 8 минут
0
lyal
0 / 0 / 0
Регистрация: 28.03.2011
Сообщений: 20
03.04.2011, 16:05  [ТС] #4
пожалуйста, помогите еще сделать вот эту функцию
2.номер столбца, в котором находится самая длинная серия одинаковых элементов.
0
lyal
0 / 0 / 0
Регистрация: 28.03.2011
Сообщений: 20
05.04.2011, 22:52  [ТС] #5
0
Fafle
34 / 34 / 4
Регистрация: 19.03.2010
Сообщений: 136
05.04.2011, 23:33 #6
Должно быть что то типа такого, а там уже ищи больший элемент в массиве number
C++
1
2
3
4
5
6
7
8
9
int search(int **ar, int row/*количество строк*/, int col/*количество столбцов*/){
    int index/*будет записан номер столбца*/, *number=new int[col]/*для подстчета одинаковых элементов*/;
    for(int i=0;i<row-1;i++)
        for(int j=0;j<col;j++)
            if(ar[i][j]==ar[i+1][j])
                number[j]+=1;
        for(int i=0;i<col;i++)
            cout<<number[i]<<" ";
}
1
lyal
0 / 0 / 0
Регистрация: 28.03.2011
Сообщений: 20
08.04.2011, 19:52  [ТС] #7
спасибо большое)))))))))))
0
zhvaka
0 / 0 / 0
Регистрация: 29.01.2011
Сообщений: 40
01.05.2011, 22:17 #8
Если Вас не затруднит, перепишите пожалуйста первое задание под Си. Никак не могу разобраться - переписал как понял, а программулина выводит кол-во нулей вместо того чтобы выводить кол-во строк, нуль содержащих
0
gregggg
0 / 0 / 0
Регистрация: 30.11.2014
Сообщений: 1
30.11.2014, 18:15 #9
lyal, Небольшая просьба есть к тебе) Можешь скинуть эту программу полностью, в доработанной форме. А то у меня небольшая проблема(
0
30.11.2014, 18:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.11.2014, 18:15
Привет! Вот еще темы с ответами:

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

Дана целочисленная прямоугольная матрица - C++
Дана целочисленная прямоугольная матрица. 1) Найдите наименьший элемент среди четных строк этой матрицы. 2) Переставьте местами строки...

Дана целочисленная прямоугольная матрица - C++
Дана целочисленная прямоугольная матрица. Определить: Сумму модулей элементов, расположенных ниже побочной диагонали. Есть код но...

дана целочисленная прямоугольная матрица - C++
дана целочисленная прямоугольная матрица 1)определить количество строк,не содержавших не одного нулевого элемента? 2 )максимальное их...


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

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

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