Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
-3 / 4 / 0
Регистрация: 07.03.2014
Сообщений: 246
1

Дана целая квадратная матрица. Сформировать массив из суммы четных элементов каждой строки матрицы

24.06.2015, 15:34. Показов 1348. Ответов 8
Метки нет (Все метки)

Дана целая квадратная матрица. Сформировать массив из суммы четных элементов каждой строки матрицы.

Помогите, изучаю самостоятельно, что-то не могу догадаться, как делать.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.06.2015, 15:34
Ответы с готовыми решениями:

Дана квадратная матрица А, размером пхп. Сформировать одномерный массив, содержащий максимальные элементы каждой строки матрицы.
Дана квадратная матрица А, размером пхп. Сформировать одномерный массив, содержащий максимальные...

Дана действительная матрица. Сформировать одномерный массив из средних арифметических значений каждой строки матрицы
Дана действительная матрица mxn.сформировать одномерный массив из средних арифметических значений...

Дана матрица А(n,m). Сформировать одномерный массив В(n), элементами которого являются суммы элементов i-ой строки.
Дана матрица А(n,m). Сформировать одномерный массив В(n), элементами которого являются суммы...

Дана квадратная матрица вычесть последнюю строку из каждой строки матрицы за исключением последней строки
Дана квадратная матрица вычесть последнюю строку из каждой строки матрицы за исключением...

8
Заблокирован
25.06.2015, 14:25 2
C++
1
2
3
4
5
6
7
8
9
double A[100];
//...
for (int i=0; i<10; i++)
{
  for (int j=0; j<10; j++)
    {
       if (!(a % 2)) A[i]=A[i]+StrToFloat(StringGrid1->Cells[j][i]);
    }
}
Добавлено через 2 минуты
C++
1
if(i % 2 == 0)
замени то, что стоит в if выше на это. Это определение четное или нечетное i.

Добавлено через 1 минуту
% ищет остаток от деления. Если остаток от деления на 2 равен нулю, то число четное.
0
-3 / 4 / 0
Регистрация: 07.03.2014
Сообщений: 246
25.06.2015, 18:14  [ТС] 3
Вот, что я писал. Почему-то выводит массив без изменений.
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
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1 -> Clear();
Memo2 -> Clear();
int n,m,i,j,a[10][10], g, k;
String x;
n=StrToInt (Edit1->Text);
m=StrToInt (Edit2->Text);
 for(i=0;i<=n-1;i++)
{x=" ";
 for(j=0;j<=m-1;j++)
{a[i][j]=random(10);
x=x+" "+IntToStr(a[i][j]);}
Memo1->Lines->Add(x);}
for(i=0;i<=n-1;i++)
{k=0;
for(j=0;j<=m-1;j++)
if(i % 2 == 0)k++;
if(k<0)for(g=0;g<=m-1;g++)
a[i][g]=0;}
for(i=0;i<=n-1;i++)
{x=" ";
 for(g=0;g<=m-1;g++)
{
x=x+" "+IntToStr(a[i][g]);}
Memo2->Lines->Add(x);}
}
Добавлено через 48 минут
Можете залить проект, если не сложно?
0
Заблокирован
26.06.2015, 08:16 4
Вот:
Massiv.zip
1
-3 / 4 / 0
Регистрация: 07.03.2014
Сообщений: 246
27.06.2015, 13:26  [ТС] 5
В ответе какую-то ерунду выводит, а не сумму. Что-то с формулой не то.
0
Заблокирован
28.06.2015, 17:34 6
Лучший ответ Сообщение было отмечено Rphoenix как решение

Решение

Когда я проверял, все нармально он мне выводил.
В любом случае, сейчас билдера на этом компе у меня нет. Только завтра смогу посмотреть.
1
-3 / 4 / 0
Регистрация: 07.03.2014
Сообщений: 246
28.06.2015, 18:28  [ТС] 7
AntwortenSucher,
У вас работа с целыми а не с вещественными задана:
C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int x;
for (int i=0; i<5; i++)
{
  for (int j=0; j<5; j++)
    {
       x=StrToInt(StringGrid1->Cells[j][i]);
       if (x%2==0) A[i]+=x;
    } Memo1->Lines->Add(IntToStr(A[i]));
}
}
1
Заблокирован
29.06.2015, 08:22 8
С первой матрицей он нормально работает и массив правильно выводит.
А вот если хочешь вторую обсчитать, то возникают проблемы. Это из-за того, что программа помнит результаты первых расчетов и новые значения получаются как сумма того, что должно быть и того, что было до этого.
Нужно было сделать обнуление значений массива A[] перед каждым новым расчетом.
0
Заблокирован
29.06.2015, 08:38 9
Лучший ответ Сообщение было отмечено Rphoenix как решение

Решение

Цитата Сообщение от Rphoenix Посмотреть сообщение
int x;
Что-то этой строчки я у себя в коде вообще не нахожу.
Вот новый вариант, взгляните. Проверял его для разной размерности, у меня он считает без ошибок.Massiv(new).zip
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.06.2015, 08:38

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Из суммы положительных элементов каждой строки матрицы сформировать новый массив.
Дан двумерный массив целых чисел, состоящий из n строк и mстолбцов, заполненный случайным...

Дана матрица, построить массив, содержащий количество отрицательных элементов каждой строки матрицы
Здравствуйте. Помогите решить задачу. Дано матрицу размером n на m с действительными элементами....

Дана квадратная матрица. Подсчитать сумму значений элементов каждой строки
Дана квадратная матрица. Подсчитать сумму значений элементов каждой строки.

Дана квадратная матрица . Сформировать одномерный массив из элементов главной диагонали
Дана квадратная матрица . Сформировать одномерный массив из элементов главной диагонали.

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

Матрица: сформировать список, состоящий из суммы элементов каждой строки
помогите дилетанту......пожалуйста... Дана матрица M размером n*n. Сформировать новый список...


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

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

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