Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
gematogenka
1 / 1 / 1
Регистрация: 20.10.2011
Сообщений: 29
#1

Определить номер строки матрицы с наименьшей характеристикой - C++

26.10.2011, 23:48. Просмотров 753. Ответов 14
Метки нет (Все метки)

Характеристикой строки целочисленной матрицы назовем сумму ее элементов c четными номерами столбцов.
Определить номер строки с наименьшей характеристикой.
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
{
int n, m;
cout<<"n = ";  cin>>n;
cout<<"m = ";  cin>>m;
int** matr = new int*[n];
time_t t; srand((unsigned) time(&t));
 
for (int i=0; i<n; i++)
{ matr[i] = new int[m];
  for (int j=0; j<m; j++)
     { matr[i][j] = rand()%10;
       cout<<matr[i][j]<<" ";
     }
    cout<<endl;
}
 
  int harmin, s, ns;
  harmin = 9999;
  {
 
    for (int i=0; i<n; i++)
    {
      {for (int j=0; j<m; j++)
         if (j%2==0)
           {s+=n;}
         else
           {s=0;}
       if (s<harmin)
        {harmin=s; ns=i;}
      }
   }
}
cout<<"Nomer stroki s min xarakteristikoy: "<<ns<<endl;
 
 system("PAUSE");
return 0;
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2011, 23:48
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Определить номер строки матрицы с наименьшей характеристикой (C++):

Определить номер строки с наибольшей характеристикой
Доброго времени суток ! Помогите пожалуйста с программкой, вот задание: ...

Определить номер строки с наименьшей суммой модулей элементов
дана задача:В матрице вещественных чисел размерностью 7х3 определить номер...

Динамический массив. Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы
#include &lt;iostream.h&gt; #include &lt;math.h&gt; #include &lt;string.h&gt; int...

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

Определить номер строки и номер столбца матрицы, на пересечении которых находятся требуемые элементы
В двумерном массиве определить номер строки и номер столбца, на пересечении...

Для каждой заданной матрицы определить местоположение (номер строки и номер столбца) минимального элемента
Даны массивы А, В, С. Для каждого определить местоположение (номер строки и...

14
kazak
3057 / 2378 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
27.10.2011, 00:02 #2
В чем, собственно, заключается ошибка?
0
gematogenka
1 / 1 / 1
Регистрация: 20.10.2011
Сообщений: 29
27.10.2011, 00:08  [ТС] #3
постоянно выводит 0
0
kazak
3057 / 2378 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
27.10.2011, 00:11 #4
Цитата Сообщение от gematogenka Посмотреть сообщение
i
C++
1
2
3
4
if (j%2==0)
 {s+=n;}
 else
 {s=0;}
C++
1
2
if (j%2 == 1)
   {s+=matr[i][j];}
0
MrGluck
Модератор
Эксперт CЭксперт С++
8022 / 4865 / 1425
Регистрация: 29.11.2010
Сообщений: 13,251
27.10.2011, 00:14 #5
Ну так это логично. 1%2 != 0, сл. s = 0 Т.к. 0<9999, harmin = 0, ns = 0, а потом ничто не является больше чем 0 и сл. ns не меняет свое значение.
0
gematogenka
1 / 1 / 1
Регистрация: 20.10.2011
Сообщений: 29
27.10.2011, 00:16  [ТС] #6
Цитата Сообщение от kazak Посмотреть сообщение
C++
1
2
if (j%2 == 1)
   {s+=matr[i][j];}
пробовала, все равно 0
0
kazak
3057 / 2378 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
27.10.2011, 00:19 #7
Ага, еще фигурные скобки не мешало бы расставить как полагается
Цитата Сообщение от gematogenka Посмотреть сообщение
{for (int j=0; j<m; j++)
for (int j=0; j<m; j++){
0
MrGluck
Модератор
Эксперт CЭксперт С++
8022 / 4865 / 1425
Регистрация: 29.11.2010
Сообщений: 13,251
27.10.2011, 00:19 #8
C++
1
2
3
4
5
6
7
8
9
10
11
    for (int i=0; i<n; i++)
    {
      sum = 0;
      {
       for (int j=0; j<m; j++)
         if (j%2==0)
           sum+=matr[i][j];
      }
      if (sum<harmin)
        {harmin=s; ns=i;}
   }
1
kazak
3057 / 2378 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
27.10.2011, 00:20 #9
Не, вру, она там вообще лишняя.
0
MrGluck
Модератор
Эксперт CЭксперт С++
8022 / 4865 / 1425
Регистрация: 29.11.2010
Сообщений: 13,251
27.10.2011, 00:33 #10
И еще столбцы со строками спутали

C++
1
if (i%2==0)
1
gematogenka
1 / 1 / 1
Регистрация: 20.10.2011
Сообщений: 29
27.10.2011, 00:45  [ТС] #11
но считает все равно не правильно
0
MrGluck
Модератор
Эксперт CЭксперт С++
8022 / 4865 / 1425
Регистрация: 29.11.2010
Сообщений: 13,251
27.10.2011, 01:00 #12
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Цитата Сообщение от MrGluck Посмотреть сообщение
И еще столбцы со строками спутали

C++
1
if (i%2==0)
Это я тут сам напутал, у вас все верно было
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
#include<iostream>
#include<conio.h>
#include<clocale>
#include<ctime>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Russian");
    int n, m;
    cout<<"n = ";  cin>>n;
    cout<<"m = ";  cin>>m;
    int** matr = new int*[n];
    time_t t; 
    srand((unsigned) time(&t)); 
    for (int i=0; i<n; i++)
    { 
      matr[i] = new int[m];
      for (int j=0; j<m; j++)
      { 
          matr[i][j] = rand()%10;
          cout<<matr[i][j]<<" ";
      }
      cout<<endl;
    } 
    int harmin, s, ns;
    harmin = 9999;
    {
 
    for (int i=0; i<n; i++)
    {
      s = 0;
      {
       for (int j=0; j<m; j++)
         if (j%2==0)
           s+=matr[i][j];
      }
      if (s<harmin)
        {harmin=s; ns=i;}
    }
    }
    cout<<"Íîìåð ñòðîêè Г± ìèГ*ГЁГ¬Г*ëüГ*îé ГµГ*Г°Г*êòåðèñòèêîé: "<<ns<<endl;
    for(int i = 0; i < n; i++)
        delete [] matr[i]; 
    delete [] matr;
 
    getch();
    return 0;
}
0
gematogenka
1 / 1 / 1
Регистрация: 20.10.2011
Сообщений: 29
27.10.2011, 01:19  [ТС] #13
Определить номер строки матрицы с наименьшей характеристикой
билдер уже закипает
а прога все ещё не правильно считает
0
MrGluck
Модератор
Эксперт CЭксперт С++
8022 / 4865 / 1425
Регистрация: 29.11.2010
Сообщений: 13,251
27.10.2011, 01:42 #14
а вы память очищаете?
C++
1
2
3
for(int i = 0; i < n; i++)
        delete [] matr[i]; 
    delete [] matr;
Добавлено через 15 минут
Код
danila@danila-VX6:~$ g++ /home/danila/"Рабочий стол"/1.cpp
danila@danila-VX6:~$ ./a.out
n = 10
m = 9
7 7 6 4 4 4 2 7 1 
2 6 5 4 1 8 5 0 5 
0 9 6 4 3 5 7 5 0 
7 3 4 1 0 4 7 4 8 
3 8 7 4 1 3 2 7 6 
0 2 9 7 2 8 5 6 1 
3 5 6 3 2 9 9 5 9 
3 4 6 3 0 4 0 4 5 
6 8 4 2 1 6 1 0 0 
9 6 8 2 1 3 8 6 8 
Номер строки с минимальной характеристикой: 8
0
kazak
3057 / 2378 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
27.10.2011, 11:07 #15
MrGluck, характеристика строки матрицы это больше математическое понятие, а в математике принято начинать нумеровать элементы матрицы с еденицы, в отличие от языка С, где нумерация начинается с нуля. Мысль улавливаете?


Цитата Сообщение от gematogenka Посмотреть сообщение
билдер уже закипает
А билдер, случаем, не под семеркой запускается?
0
27.10.2011, 11:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.10.2011, 11:07
Привет! Вот еще темы с решениями:

Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов
Нужно для кода сделать &quot; Характеристикой строки целочисленной матрицы ...

Определить максимальный элемент матрицы А, номер его строки и номер его столбца
Помогите написать программу)Не могу сформировать одномерный массив из строки((...

Определить номер строки, содержащей наибольший элемент матрицы
Задание. Определить номер строки, содержащей наибольший элемент матрицы. Вот...

Определить номер строки матрицы С (N, N), сумма элементов которого наибольшая
Массив должен передаваться в функцию как параметр. Ранее я уже делал...


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

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

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