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

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

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

Подсчитать количество положительных элементов на главной диагонали матрицы - C++

04.12.2012, 11:47. Просмотров 749. Ответов 8
Метки нет (Все метки)

В квадратной матрице А ( н х н ) элементы матрицы целые, задаются датчиком случайных чисел из интервала от-35 до 40. Подсчитать количество положительных элементов на главной диагонали. вывести результаты расчета и матрицу.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2012, 11:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подсчитать количество положительных элементов на главной диагонали матрицы (C++):

Подсчитать количество элементов матрицы, лежащих выше главной диагонали - C++
В двумерном массиве подсчитать количество элементов лежащих выше главной диагонали.

Найти количество положительных элементов расположенных ниже главной диагонали матрицы - C++
Найти количество положительных элементов расположенных ниже главной диагонали матрицы, с++

Найти количество положительных элементов матрицы, расположенных выше главной диагонали - C++
Дан целочисленный массив В. найдите кол-во положительных элементов этого массива, расположенных выше главной дагонали

Подсчитать количество нечетных элементов, расположенных ниже главной диагонали матрицы - C++
Дана квадратная матрица А(N,N). Составить программу подсчета количества нечетных элементов, расположенных ниже главной диагонали.

Подсчитать количество локальных минимумов матрицы, найти сумму модулей элементов выше главной диагонали - C++
Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него соседей. Подсчитать количество локальных...

Найти максимальный элемент главной диагонали матрицы и множитель положительных элементов выбраной диагонали - C++
Узнать максимальные элемент на главной диагонали и множитель позитивных элементов выбраной диагонали. Рамер матрицы вводить с клавиатуры,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
angelgreys
9 / 9 / 0
Регистрация: 29.10.2012
Сообщений: 27
04.12.2012, 12:00 #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
...
void main()
{
  int n=0;
  std::cin << n;
  //int A[n][n];
  //тут пиши код ввода чисел в матрицу
  ...
  int kol=polojitelnie(int A, int n);
  
  //тут выводишь матрицу и все остальное
 
}
 
int polojitelnie(int A, int n)
{
  int kolichestvo=0;
 
  for(int x=0; x<=n; x++)
  {
    if(A[x][x]>0)
      kolichestvo++;
  }
  return kolichestvo;
}
0
Croessmah
Эксперт CЭксперт С++
13227 / 7499 / 845
Регистрация: 27.09.2012
Сообщений: 18,418
Записей в блоге: 3
Завершенные тесты: 1
04.12.2012, 12:03 #3
Цитата Сообщение от angelgreys Посмотреть сообщение
C++
1
for(int x=0; x<=n; x++)
Индексация в массиве [0,n)

Добавлено через 29 секунд
Цитата Сообщение от angelgreys Посмотреть сообщение
C++
1
std::cin << n;
Может всё-таки >>?

Добавлено через 1 минуту
Цитата Сообщение от angelgreys Посмотреть сообщение
C++
1
int polojitelnie(int A, int n)
Передаете одно значение int, вместо массива
0
gray_fox
What a waste!
1520 / 1223 / 70
Регистрация: 21.04.2012
Сообщений: 2,560
Завершенные тесты: 3
04.12.2012, 12:04 #4
Цитата Сообщение от angelgreys Посмотреть сообщение
void main()
int же.
0
angelgreys
9 / 9 / 0
Регистрация: 29.10.2012
Сообщений: 27
04.12.2012, 12:08 #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
...
void main()
{
  int n=0;
  std::cin << n;
  //int A[n][n];
  //тут пиши код ввода чисел в матрицу
  ...
  int kolichestvo=0;
 
  for(int x=0; x<=n; x++)
  {
    if(A[x][x]>0)
      kolichestvo++;
  }
  
  //тут выводишь матрицу и все остальное
 
}
Добавлено через 1 минуту
void == функция никакого значения не возвращает
int == функция возвращает целое значение
0
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.12.2012, 12:11 #6
angelgreys, Да, вот только по стандарту:
1) Функция main обязана возвращать int.
2) Если функция main завершается без явного return - неявно возвращается 0.
0
gray_fox
What a waste!
1520 / 1223 / 70
Регистрация: 21.04.2012
Сообщений: 2,560
Завершенные тесты: 3
04.12.2012, 12:13 #7
Цитата Сообщение от angelgreys Посмотреть сообщение
void == функция никакого значения не возвращает
int == функция возвращает целое значение
main всегда возвращает int - это статус завершения (0 - ok, не 0 - ошибка).
0
Croessmah
Эксперт CЭксперт С++
13227 / 7499 / 845
Регистрация: 27.09.2012
Сообщений: 18,418
Записей в блоге: 3
Завершенные тесты: 1
04.12.2012, 12:14 #8
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
#include <iostream>
#include <ctime>
#include <random>
#include <iomanip>
 
int main()
{
    const int n=5;
    int A[n][n];
    srand(time(0));
    for(int i=0;i<n;++i)
        for(int j=0;j<n;++j)
            A[i][j]=rand()%76-35;
    int count=0;
    for(int i=0;i<n;++i)
        count+=(A[i][i]>0)?1:0;
    std::cout<<"Count = "<<count<<std::endl;
    for(int i=0;i<n;++i){
        for(int j=0;j<n;++j)
            std::cout<<std::setw(4)<<A[i][j];
        std::cout<<std::endl;
    }
    
    std::cin.get();
    return 0;
}
0
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.12.2012, 12:28 #9
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
#include <algorithm>
#include <vector>
#include <iostream>
#include <random>
#include <iterator>
 
int main()
{
    const size_t size = 5;
    auto print_m = [](const std::vector<std::vector<int>>& m)
    {
        std::for_each(m.begin(), m.end(), [](const std::vector<int>& v)
        {
            std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
            std::cout << std::endl;
        });
    };
    std::mt19937 gen = std::mt19937(std::random_device()());
    std::uniform_int_distribution<> distr(-35, 40);
    std::vector<std::vector<int>> matrix(size, std::vector<int>(size));
    std::for_each(matrix.begin(), matrix.end(), [&gen, &distr](std::vector<int>& v)
    {
        std::generate(v.begin(), v.end(), [&gen, &distr]() { return distr(gen); });
    });
    print_m(matrix);
    int counter = 0;
    for (int i = 0; i < matrix.size(); ++i)
    {
        counter = matrix[i][i] > 0 ? counter + 1 : counter;
    }
    std::cout << counter << std::endl;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2012, 12:28
Привет! Вот еще темы с ответами:

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

Подсчитать сумму элементов матрицы, лежащих на главной диагонали - C++
Матрица с размерностью n на m заполняется случайными числами в диапазоне от -10 до 10. Подсчитать сумму элементов лежащей на главной...

Замена положительных элементов, расположенных выше главной диагонали матрицы - C++
Дана квадратная матрица А(N,N). Составить программу замены положительных элементов, расположенных выше главной диагонали и кратных 5, на...

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
04.12.2012, 12:28
Ответ Создать тему
Опции темы

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