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

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

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

Сумма элементов в столбцах без отрицательных элементов - C++

23.01.2009, 22:37. Просмотров 1080. Ответов 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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <complex>
 
using namespace std;
 
int main()
{
    const int Nmax=10;
    int A[Nmax][Nmax],n,m,i,j,min,summa=0,summa1=0;
    bool flag=true;
 
    printf("vvedite kolichestvo strok: ");
    scanf("%d",&m);
    printf("vvedite kolichestvo stolbcov: ");
    scanf("%d",&n);
    printf("vvod elementov massiva\n");
    for (i=0; i<m; i++)
    {
        printf("vvedite elementi %d stroki\n",i+1);
        for (j=0; j<n; j++)
        scanf("%d",&A[i][j]);
    }   
    for(j=0;j<n;j++)
    {
        flag=true;
        for(i=0;i<m;i++)
        {
            if(A[i][j]<0)
            {
                flag=false;
                break;
            }
            summa1=summa1+A[i][j];
        }
    }
        summa=summa+summa1;
    printf("\nvvedennaya matrica\n");
    for (i=0; i<m;i++)
    {
        for (j=0; j<n; j++)
        {
            printf("%3d ",A[i][j]);
        }
        printf("\n");
    }
        printf("summa ravna %d ",summa);
    getch();
    return 0;
}
Уже несколько вариантов испробовала,в этом считает,только если отрицательный элемент в первой строке...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2009, 22:37     Сумма элементов в столбцах без отрицательных элементов
Посмотрите здесь:
C++ Сумма элементов в тех столбцах, которые не содержат отрицательных элементов.
Определить сумму элементов в тех столбцах, которые не содержат отрицательных элементов C++
Определить сумму элементов в тех столбцах, которые не содержат отрицательных элементов C++
Определить сумму элементов в тех столбцах, которые не содержат отрицательных элементов C++
C++ Найти сумму элементов заданной матрицы в столбцах не содержащих отрицательных элементов
Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов C++
C++ В квадратной целочисленной матрице найти сумму элементов в столбцах, не содержащих отрицательных элементов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Alexen
5 / 5 / 0
Регистрация: 14.11.2008
Сообщений: 77
23.01.2009, 23:20     Сумма элементов в столбцах без отрицательных элементов #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
#include <stdio.h>
#include <conio.h>
 
 
 
 
int main()
{
     const int Nmax=10;
     int A[Nmax][Nmax], m, n, Sum = 0, count = 0;
 
 
     printf("vvedite kolichestvo strok: ");
     scanf("%d",&m);
 
     printf("vvedite kolichestvo stolbcov: ");
     scanf("%d",&n);
     printf("vvod elementov massiva\n");
     for (int i=0; i<m; i++)
     {
          printf("vvedite elementi %d stroki\n",i+1);
          for (int j=0; j<n; j++)
          scanf("%d",&A[i][j]);
     }
 
 
     printf("\nvvedennaya matrica\n");
     for (i=0; i<m;i++)
     {
          for (int j=0; j<n; j++)
          {
                printf("%3d ",A[i][j]);
          }
          printf("\n");
     }
 
    for(i = 0; i< m ; i++)
     {
      for(int j = 0; j < n; j++)
         {
            count += A[j][i];
            if(A[j][i] < 0)
             {count = 0; break;}
         }
      Sum += count;
      count = 0;
     }
 
 
          printf("summa ravna %d ",Sum);
 
     getch();
     return 0;
}
Immes
0 / 0 / 0
Регистрация: 23.01.2009
Сообщений: 13
24.01.2009, 11:10  [ТС]     Сумма элементов в столбцах без отрицательных элементов #3
Спасибо.Но почему-то всё время выводит,что сумма равна нулю.А если сделать так,
C++
1
2
3
4
for(j = 0; j< n; j++)
    {
        for(i = 0; i < m; i++)
        {
то считает,если элемент отрицательный в третьем столбце...
Alexen
5 / 5 / 0
Регистрация: 14.11.2008
Сообщений: 77
24.01.2009, 18:38     Сумма элементов в столбцах без отрицательных элементов #4
вот код который по условию выводит сумму по положительным столбцам
C++
1
2
3
4
5
6
7
8
9
10
11
for(i = 0; i< m ; i++)
     {
      for(int j = 0; j < n; j++)
         {
            count += A[j][i];
            if(A[j][i] < 0)
             {count = 0; break;}
         }
      Sum += count;
      count = 0;
     }
Immes
0 / 0 / 0
Регистрация: 23.01.2009
Сообщений: 13
24.01.2009, 20:16  [ТС]     Сумма элементов в столбцах без отрицательных элементов #5
Если матрица квадратная,то считает правильно.А что делать,если количество столбцов отличается от количества строк?
Alexen
5 / 5 / 0
Регистрация: 14.11.2008
Сообщений: 77
24.01.2009, 22:16     Сумма элементов в столбцах без отрицательных элементов #6
Сори проглядел что есть столбцы а что строки (m, n ))) вот так должно работать
C++
1
2
3
4
5
6
7
8
9
10
11
for(i = 0; i< m ; i++)
     {
      for(int j = 0; j < n; j++)
         {
            count += A[j][i];
            if(A[j][i] < 0)
             {count = 0; break;}
         }
      Sum += count;
      count = 0;
     }
Immes
0 / 0 / 0
Регистрация: 23.01.2009
Сообщений: 13
25.01.2009, 12:04  [ТС]     Сумма элементов в столбцах без отрицательных элементов #7
А...тут что-то изменилось?
Alexen
5 / 5 / 0
Регистрация: 14.11.2008
Сообщений: 77
25.01.2009, 19:35     Сумма элементов в столбцах без отрицательных элементов #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
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
#include <stdio.h>
#include <conio.h>
 
 
 
 
int main()
{
     const int Nmax=10;
     int A[Nmax][Nmax], m, n, Sum = 0, count = 0;
 
 
     printf("vvedite kolichestvo strok: ");
     scanf("%d",&m);
 
     printf("vvedite kolichestvo stolbcov: ");
     scanf("%d",&n);
     printf("vvod elementov massiva\n");
     for (int i=0; i<m; i++)
     {
          printf("vvedite elementi %d stroki\n",i+1);
          for (int j=0; j<n; j++)
          scanf("%d",&A[i][j]);
     }
 
 
     printf("\nvvedennaya matrica\n");
     for (i=0; i<m;i++)
     {
          for (int j=0; j<n; j++)
          {
                printf("%3d ",A[i][j]);
          }
          printf("\n");
     }
 
    for(i = 0; i< n; i++)
     {
      for(int j = 0; j < m; j++)
         {
            count += A[j][i];
            if(A[j][i] < 0)
             {count = 0; break;}
         }
      Sum += count;
      count = 0;
     }
 
 
          printf("summa ravna %d ",Sum);
 
     getch();
     return 0;
}
Immes
0 / 0 / 0
Регистрация: 23.01.2009
Сообщений: 13
31.01.2009, 20:43  [ТС]     Сумма элементов в столбцах без отрицательных элементов #9
И ещё один вопрос:выводить надо сумму каждого столбца без отрицательных элементов. Но если в столбце есть отрицательный элемент,он должен выводить только то,что условие не выполняется. А он выводит ещё и то,что сумма равна нулю. Как сделать так,чтобы сумму он в этом случае не выводил?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for(j = 0; j< n; j++)
    {
        for(i = 0; i < n; i++)
        {
            sum += A[i][j];
            if(A[i][j] < 0)
            {
                printf("\nUslovie v stolbce %d ne vypolnjaetsja",j+1);
                sum = 0;
                break;
            }
        }
        printf("\nSumma elementov v stolbce %d = %d\n",j+1,sum);
        sum = 0;
    }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.02.2009, 20:18     Сумма элементов в столбцах без отрицательных элементов
Еще ссылки по теме:
C++ Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов
Найти сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов C++
Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов C++
C++ Определить сумму элементов в тех столбцах матрицы, которые не содержат отрицательных элементов
Найти количество отрицательных элементов столбца, у которого сумма четных элементов не больше 30. C++

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

Или воспользуйтесь поиском по форуму:
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
01.02.2009, 20:18     Сумма элементов в столбцах без отрицательных элементов #10
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
bool uslovie;
.....
 
for(j = 0; j< n; j++)
{   
   uslovie = true;
   for(i = 0; i < n; i++)
   {
      sum += A[i][j];
      if(A[i][j] < 0)
      {
         printf("\nUslovie v stolbce %d ne vypolnjaetsja",j+1);
         sum = 0;
         uslovie = false;
         break;
      }
   }
   if(uslovie!=false)
      printf("\nSumma elementov v stolbce %d = %d\n",j+1,sum);
   sum = 0;
}
Yandex
Объявления
01.02.2009, 20:18     Сумма элементов в столбцах без отрицательных элементов
Ответ Создать тему
Опции темы

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