0 / 0 / 0
Регистрация: 23.04.2013
Сообщений: 5
1

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

15.09.2013, 17:27. Показов 11081. Ответов 2
Метки нет (Все метки)

Дана целочисленная прямоугольная матрица. Вывести ее на экран и определить количество строк, не содержащих ни одного нулевого элемента.Язык программирования С++
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.09.2013, 17:27
Ответы с готовыми решениями:

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

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

Данная целочисленная прямоугольная матрица. Определить количество строк, не содержащих ни одного нулевого элемента
Эту же задачу я видел здесь https://www.cyberforum.ru/cpp-beginners/thread683947.html ,но там она...

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

2
413 / 250 / 118
Регистрация: 26.12.2012
Сообщений: 786
15.09.2013, 18:27 2
Лучший ответ Сообщение было отмечено mascha2010 как решение

Решение

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
#include<iostream>
#include<stdlib.h>
#include<time.h>
#include<Windows.h>
 
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    srand(time(NULL));
 
         int n=0,m=0,x=0,count=0;
 
    cout <<"Введите количество строк"<<"\n";
    cin >> n;
    cout<<"Введите количество столбцов"<< "\n";
    cin >> m;
    cout<<"\n";
 
    // динамическое создание двумерного массива
    int **A = new int* [n]; // строк в массиве
    for (int i = 0; i < n; i++)
        A[i] = new int [m]; // столбцов
    // заполнение массива и вывод на экран
     for(int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
         {
            A[i][j]=rand()%10;
            cout<<A[i][j]<<"\t";
         }
        cout<<"\n";
    }
         // выводим
 
    for(int i=0; i<n; i++)// перебираем отдельные строки
    {
        x = 0;
        for(int j=0; j<n; j++)//
        {
            if(A[i][j]==0)// считаем элементы, которые равны 0
            x++;
        }
        if(x==0)// считаем строки, в которых нет нулевых элементов
            count++;
    }
    cout<<"\n\n";
    cout<<"Количество строк, не содержащих ни одного нулевого элемента: "<<count<<endl;
            for (int i = 0;i<n;i++)
                delete []A[i];
                delete [] A;
 
 
return 0;
}
0
0 / 0 / 0
Регистрация: 28.01.2021
Сообщений: 4
28.01.2021, 16:46 3
Genn55, Приветствую!

Есть такая задача:

Дана целочисленная прямоугольная матрица. Определить:
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
#include <iostream>
#include <iomanip>
 
int main() {
    setlocale(LC_ALL, "Russian");
    int n, m;
    std::cout << "Введите количество строк: ";
    std::cin >> n;
    std::cout << "Введите количество столбцов: ";
    std::cin >> m;
    int **a = new int *[n], i, j;
    for (i = 0; i < n; i++)
    {
        a[i] = new int[m];
    }
    std::cout << "Введите " << n*m << " элементов:\n";
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            std::cout << "a[" << i + 1 << "." << j + 1 << "]: ";
            std::cin >> a[i][j];
        }
    }
    std::cout << std::endl;
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            std::cout << std::setw(3) << a[i][j];
        }
        std::cout << "\n\n";
    }
    int temp = 0, count = 0;
    for (j = 0; j < m; j++)
    {
        for (i = 0; i < n; i++)
        {
            if (a[i][j] != 0)
            {
                temp++;
            }
        }
        if (temp == n)
        {
            count++;
        }
        temp = 0;
    }
    std::cout << "Количество строк не содержащих ни одного нулевого элемента = " << count << std::endl;
    return 0;
}
Как видно значения вводятся руками, верхняя граница не вводится никак и 2 часть задачи не выполнена.
Очень прошу помочь!

Добавлено через 25 минут
Genn55, Update!

Получил код программы, который всё считает, но не выполняет доп. условия, а именно:
Программа должна запрашивать размеры матрицы и самостоятельно заполнять ее с помощью генератора случайных чисел. Верхняя граница для значения элементов матрицы также вводится с клавиатуры.

Помогите пожалуйста добить доп.условия:

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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <memory.h>
 
#define N 10
 
void swap(int& n1, int& n2);
 
int main()
{
    int** X = new int*[N];
    memset((void*)X, 0x00, 4 * N);
 
    for (int i = 0; i < N; i++)
    {
        X[i] = new int[N];
        for (int j = 0; j < N; j++)
        {
            X[i][j] = rand() % 9 + 1;
            printf("%d ",X[i][j]);
        }
 
        printf("\n");
    }
 
    int x = 0, *Y = new int[N * N];
    for (int t1 = 0; t1 < N; t1++)
        for (int t2 = 0; t2 < N; t2++)
            Y[x++] = X[t1][t2];
 
    for (int k = 0; k < N * N; k++)
    {
        int max = k;
        for (int m = k+1; m < N * N; m++)
            max = Y[m] > Y[max] ? m : max; 
        swap(Y[k],Y[max]);
    }
 
    bool found = false; int d = 0;
    while (d < N * N && !found)
    {
        int count = 0;
        for (int v1 = 0; v1 < N; v1++)
            for (int v2 = 0; v2 < N; v2++)
                if (X[v1][v2] == Y[d]) count++;
        found = (count > 1) ? 1 : 0; d++;
    }
 
    printf("\nMax = %d\n",Y[d]);
 
    getch();
 
    return 0;
}
 
void swap(int& n1, int& n2)
 { int _tn = n1; n1 = n2; n2 = _tn; }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.01.2021, 16:46
Помогаю со студенческими работами здесь

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

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

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

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

Прямоугольная матрица: определить количество строк, не содержащих ни одного нулевого элемента
Помогите пожалуйста написать программу обработки двумерного массива. Дана прямоугольная матрица....

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru