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

Произведение строк; максимум сумм диагоналей (исправить ошибки) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ цвет текста http://www.cyberforum.ru/cpp-beginners/thread280263.html
подскажите пожалуйсто как менять цвет текста и какие библиотеки подключать
C++ игра-ЛАБИРИНТ! Нужно написать игрушку-лабиринт, очень простую на С++! Она должна иметь несколько уровней (разных лабиринтов). Передвигается персонаж кнопками с клавиатуры. Лабиринт не должен представлен символами, нудно использовать графику но по минимуму. Подскажите с чего начать...какую то литературу где будет описан алгоритм на С++ или еще что-то.:wall: http://www.cyberforum.ru/cpp-beginners/thread280254.html
Выяснить, имеются ли однофамильцы в группе C (СИ)
Необходима помощь. Даны сведения о студентах, которые представлены в виде фамилии, имени, названия и номера группы. а)Выяснить, имеются ли однофамильцы.Если есть, то вывести список на экран б)Выяснить, имеются ли однофамильцы в группе.Если есть, вывести название и номер группы, в которой имеются однофамильцы и их список. в)Вывести на экран сведения о студентах специальности АСУ. P.S.На языке...
Запись в массив C++
Дана строка "tre,yt" Как записать в один массив {tre,yt} и в другой {,}
C++ Найти точку пересечения отрезка с прямой http://www.cyberforum.ru/cpp-beginners/thread280224.html
Найти точку пересечения отрезка, заданного точками (х1;y1) и (x2;y2) с прямой, перпендикулярной данному отрезку, проходящей через точку (x3;y3). Точки x1,y1,x2,y2,x3,y3 вводятся с клавиатуры.
 

Показать сообщение отдельно
rtpn
0 / 0 / 0
Регистрация: 05.10.2010
Сообщений: 22
20.04.2011, 19:17     Произведение строк; максимум сумм диагоналей (исправить ошибки)
Программа должна запрашивать размеры матрицы и самостоятельно заполнять ее с помощью генератора случайных чисел (динамический массив). Верхняя граница для значения элементов матрицы также вводится с клавиатуры.
Дана целочисленная прямоугольная матрица. Определить:
а) произведение элементов тех строк, которые не содержат ни одного нулевого элемента;
б) максимум среди сумм элементов диагоналей, параллельных главной диагонали.

Помогите исправить ошибки:
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
59
60
61
62
63
#include <iostream>
 using namespace std;
 int main(){
     int     **a;
     int     n,m,z,s,i,j;
     int     **proizv;
     cout<<"n: ";
     cin>>n;
     cout<<"m: ";
     cin>>m;
     cout << "vvedite maximalnoe znachenie elementa :";
     cin >> z;
 
     a=new int*[n];
     for(i=0;i<n;i++)
         a[i]=new int[m];
  proizv=new int*[n];
     for(i=0;i<n;i++)
         proizv[i]=new int[m];
  s=new int*[n];
     for(i=0;i<n;i++)
         s[i]=new int[m];
      for(i=0;i<n;i++)
         for(j=0;j<m;j++){
            a[i][j]=rand()%z;
         }
 
     for(i=0;i<n;i++){
         for(j=0;j<m;j++)
             cout<<a[i][j]<<" ";
         cout<<endl;
     }
//a
for (i=0;i<n;i++)
   {
       proizv[i]=1;
    for(j=0;j<n;j++)
    {
           if(a[i][j]!=0) proizv[i]*=a[i][j]; 
          else proizv[i]=0;                         
    }    
       if(proizv[i]>0) printf("Proizvedenie elementov stroki %d ravno %d\n",i+1,proizv[i]);     
   }
//b
 for (j=0;j<(2*n);j++) 
  s[j]=0;
   for (i=0;i<n;i++)
   {
       for (j=0;j+i<n;j++)
       {
           s[j]+=a[i][i+j];
           s[n+j]+=a[i+j][i]; 
       }      
   }
   for (j=0;j<n;j++) printf("%d\n",s[j]);
   for (j=n+1;j<(2*n);j++) printf("%d\n",s[j]);
  
 for(i=0;i<n;i++)
         delete []a[i];
 
     cin.get(),cin.get();
     return 0;
 }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru