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

Посчитать количество отрицательных элементов выше главной диагонали

17.12.2013, 01:11. Просмотров 454. Ответов 9
Метки нет (Все метки)

Дана задача: Посчитать количество отрицательных элементов выше главной диагонали матрицы размером nxn. Я вот написала кое что, но считает она неправильно. Я новичек, по дскажите где ошиблась?

// lab5.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#pragma hdrstop
#include "conio.h"
#include "stdio.h"
#include "iostream"
#include "stdlib.h"
#include "iomanip"
#include <math.h>
using namespace std;




int _tmain(int argc, _TCHAR* argv[])
{
double **a, tmp;
int i, j, n;
cout<<"Vvedite razmer n:";
cin>>n;
a= new double*[n];
for (i=0; i<n; i++)
a[i]=new double[n];
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{cout<<"Vvedite a["<<i<<"]["<<j<<"]:";
cin>>a[i][j];}
cout<<"Massiv A:"<<endl;
for (i=0; i<n; i++)
{for (j=0; j<n; j++)
cout<<setw(9)<<a[i][j]<<" ";
cout<<endl;}
for (i=0; i<n; i++)
for (j=0; j<n; j++)
if (i+j<n+1)
{int count=0;
for (i=0; i<n; i++)
if(a[i][j] < 0)
++count;
cout<<endl;

cout << "The quantity of the negative elements is: " << count << endl;}
for (i=0; i<n; i++)
delete[] a[i];
delete[]a;
a=NULL;
system("pause");


return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2013, 01:11
Ответы с готовыми решениями:

Определить количество отрицательных элементов расположенных выше главной диагонали
Определить количество отрицательных элементов расположенных выше главной диагонали

Определить количество отрицательных элементов, расположенных выше главной диагонали матрицы
Доброго времени суток, помогите пожалуйста с заданием. Желательно максимально просто Задание 2....

Определить количество отрицательных элементов, расположенных выше главной диагонали матрицы
Ребят, помогите!!! Необходимо определить количество отрицательных элементов, расположенных выше...

Определить количество отрицательных элементов, расположенных выше главной диагонали матрицы
2. Определить количество отрицательных элементов, расположенных выше главной диагонали матрицы.

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

9
bradobrei
Продам уран 238U
121 / 120 / 127
Регистрация: 22.01.2013
Сообщений: 298
17.12.2013, 06:37 2
вместо этого
C++
1
2
3
4
5
6
7
for (i=0; i<n; i++)
for (j=0; j<n; j++)
if (i+j<n+1)
{int count=0;
for (i=0; i<n; i++)
if(a[i][j] < 0)
++count;
вставь вот это
C++
1
2
3
4
5
6
7
int count = 0;
for (i=0; i<n; i++){
for (j= i + 1; j<n; j++){
if(a[i][j] < 0)
count ++;
}
}
1
outoftime
║XLR8║
854 / 749 / 227
Регистрация: 25.07.2009
Сообщений: 3,716
Записей в блоге: 5
17.12.2013, 06:56 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <algorithm>
#include <functional>
 
using namespace std;
 
int main()
{
    const int n = 5;
    int a[n][n];
    int res = 0;
    
    for (int i = 0; i < n; ++i) {
        res += count_if(a[i], a[i]+n-i, bind1st(greater<int>(), 0));
    }
    
    cout << "Result: " << res << endl;
   
    return 0;
}
Выделяя кусок памяти под массив и не инициализируя его, значения элементов массива будут соответствовать значениям блоков памяти, т.е. будут псевдослучайными.
0
гапуся
0 / 0 / 0
Регистрация: 12.12.2013
Сообщений: 7
17.12.2013, 14:40  [ТС] 4
Цитата Сообщение от гапуся Посмотреть сообщение
a[i]=new double[n];
а это не инициализация?
0
17.12.2013, 14:40
RaiaNKnight
97 / 71 / 12
Регистрация: 29.06.2011
Сообщений: 465
Записей в блоге: 1
17.12.2013, 14:50 5
Цитата Сообщение от гапуся Посмотреть сообщение
а это не инициализация?
только отведение памяти
0
outoftime
║XLR8║
854 / 749 / 227
Регистрация: 25.07.2009
Сообщений: 3,716
Записей в блоге: 5
17.12.2013, 14:55 6
гапуся, RaiaNKnight, и инициализация аля случайными значениями. В отличии от std::vector при выделении блока памяти он не инициализируется стантартными значениями как это делает вектор.
0
RaiaNKnight
97 / 71 / 12
Регистрация: 29.06.2011
Сообщений: 465
Записей в блоге: 1
17.12.2013, 14:59 7
Цитата Сообщение от outoftime Посмотреть сообщение
гапуся, RaiaNKnight, и инициализация аля случайными значениями. В отличии от std::vector при выделении блока памяти он не инициализируется стантартными значениями как это делает вектор.
да, отведение памяти под объект вроде включает же в себя автоматические присвоение ему случайного значения.
0
outoftime
║XLR8║
854 / 749 / 227
Регистрация: 25.07.2009
Сообщений: 3,716
Записей в блоге: 5
17.12.2013, 15:02 8
RaiaNKnight, не присвоение случайного значения а выделение блока памяти который имел какое-то значение.
0
RaiaNKnight
97 / 71 / 12
Регистрация: 29.06.2011
Сообщений: 465
Записей в блоге: 1
17.12.2013, 15:03 9
Цитата Сообщение от outoftime Посмотреть сообщение
RaiaNKnight, не присвоение случайного значения а выделение блока памяти который имел какое-то значение.

Не по теме:

оговорился я

0
гапуся
0 / 0 / 0
Регистрация: 12.12.2013
Сообщений: 7
17.12.2013, 17:07  [ТС] 10
Спасибо!!! Работает, только выводит почему-то строку "The quantity of the negative elements is: " выводит n раз, то есть если размер матрицы 2, 2 раза, если 5 , то соответственно 5 раз. Не подскажите почему?
0
17.12.2013, 17:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2013, 17:07

В матрице посчитать сумму четных элементов выше главной диагонали
Помогите пожалуйста!!! Задание такое: В матрице подсчитать сумму четных элементов выше главной...

Найти число отрицательных элементов в области выше главной и ниже побочной диагонали
В квадратной матрице а (7,7) найти число отрицательных элементов в области выше главной и ниже...

Нужна блок схема к задаче - посчитать сумму элементов выше главной диагонали матрицы 5х5
нужно составить блок схему к задаче: посчитать сумму элементов выше главной диагонали матрицы...


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

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

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