Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > C/C++/С#


Ответ
 
Опции темы Опции просмотра
Старый 29.03.2012, 19:12   #1 (permalink)
Serjant0007
Member
 
Регистрация: 21.06.2010
Сообщений: 31
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Сумма положительных элементов

Вычислить сумму положительных элементов матрицы, находящихся под главной диагональю и на ней. Профессионалы, буду Вам благодарен! Что то пытался но не получается
Код:
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ()
{
        int i, j, k,s1=0,s2=0;
        int n;
        int** a;
        cout << "Vvedite razmernost' matrizy n = ";
        cin >> n;
        cout << "\nMatriza razmerom " << n << "x" << n << "\n\n";
        a = new int* [n];
        for (i = 0; i < n; ++i)
        {
                a[i] = new int[n];
                for (j = 0; j < n; ++j)
                {
                        a[i][j] = rand()%20-10;
                        cout << a[i][j] << "\t";
                }
                cout <<"\n";
    }
        //Вычисление суммы положительных элементов под главной диагональю
        int s = 0;
        i = 1;
        j = 0;
        for (k = 0; k < n-1; ++k)
        {
                if (a[i][j] > 0)
                {
                        s1=s1+a[i][j];
                }
                ++i;
                ++j;
        }
        //Вычисление суммы положительных элементов на главной диагонали
        i = 0;
        j = 0;
        for (k = 0; k < n; ++k)
        {
                if (a[i][j] > 0)
                {
                        s2=s2+a[i][j];
                }
                ++i;
                ++j;
        }
{s=s1+s2;}
        cout <<"\nSumma S = " << s <<"\n";
        for(i = 0; i < n; ++i)
        delete[] a[i];
        delete[] a;
        system("Pause");
        return 0;
}
Serjant0007 вне форума   Ответить с цитированием

Старый 29.03.2012, 19:12
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Советую вам обратить внимание на похожие темы

Сумма бесконечного ряда, Pascal
Найти номера последних положительных элементов каждой строки
Паскаль. Сумма цифр числа
Монтаж чип-элементов
Сумма числового ряда
Сумма числового ряда. Найдите ошибку

Старый 31.03.2012, 14:00   #2 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Вот вам сумма положительных элементов на и под главной диагональю:
Код:
#include <iostream>
using namespace std;
int main() {
    int sum=0, mas[5][5];
    for (int i=0; i<6; i++){
        for (int j=0; j<6; j++){
        mas[i][j] = rand()%20-10;
        cout<<mas[i][j]<<"\t";
        if (i<=j&&mas[i][j]>0) sum+=mas[i][j];
        }
    cout<<endl;
}
    cout<<"Summa="<<sum<<endl;
getchar();
}
shrek=) вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 08:16.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.