C++.Дана матрица С(6,6). Определить количество "особенных" элементов массива, считаяэлемент
C++.Дана матрица С(6,6). Определить количество "особенных" частей массива, считая
элемент "особенным", если он больше суммы других частей собственного столбца.
Напечатать индексы "особенных" элементов.
1 ответ
Кира Паркая
include lt;iostreamgt;
include lt;cstdlibgt;
include lt;iomanipgt;
using namespace std;
int const n=6;
int const m=6;
int main()
int a[n][m];
int sm;
// установка генератора случайных чисел
srand(time(NULL));
// генерация массива и вывод на экран
for (int i=0; ilt;n; i++)
for (int j=0; jlt;m; j++)
a[i][j]=rand()%50-20;
coutlt;lt;setw(7)lt;lt;a[i][j];
coutlt;lt;endl;
// обработка массива
for (int i=0; ilt;m; i++)
sm=0;
for (int j=0; jlt;n; j++) sm+=a[j][i];
for (int j=0; jlt;n; j++)
if (2*a[j][i]gt;sm) coutlt;lt;j+1lt;lt;" "lt;lt;i+1lt;lt;endl;
system("pause");
return 0;
-16 -2 15 4 7 3
-13 16 3 16 -13 3
0 19 20 6 20 -18
-19 7 1 10 -11 25
5 4 3 21 28 -13
26 -19 -7 12 -20 11
1 1
2 1
3 1
5 1
6 1
3 5
5 5
4 6
include lt;cstdlibgt;
include lt;iomanipgt;
using namespace std;
int const n=6;
int const m=6;
int main()
int a[n][m];
int sm;
// установка генератора случайных чисел
srand(time(NULL));
// генерация массива и вывод на экран
for (int i=0; ilt;n; i++)
for (int j=0; jlt;m; j++)
a[i][j]=rand()%50-20;
coutlt;lt;setw(7)lt;lt;a[i][j];
coutlt;lt;endl;
// обработка массива
for (int i=0; ilt;m; i++)
sm=0;
for (int j=0; jlt;n; j++) sm+=a[j][i];
for (int j=0; jlt;n; j++)
if (2*a[j][i]gt;sm) coutlt;lt;j+1lt;lt;" "lt;lt;i+1lt;lt;endl;
system("pause");
return 0;
-16 -2 15 4 7 3
-13 16 3 16 -13 3
0 19 20 6 20 -18
-19 7 1 10 -11 25
5 4 3 21 28 -13
26 -19 -7 12 -20 11
1 1
2 1
3 1
5 1
6 1
3 5
5 5
4 6
Деканова
Дарина
В вашем результате есть особенное число, его индекс 2,2. Беря во внимание то, что вы выводите с +1, то в выводе обязан быть итог 3,3, я его там не увидел.
Юлия Крамова
Согласен, необходимо исправить одну строку: if (a[j][i]>sm) cout<sm) cout<
Aleksuenko Aleksej
Вы то же самое и написали, перенесите из левой части в правую.
Кочиш
Ира
Всмысле то же?Вы умножаете на 2 ваш элемент. Не разумею почему.
Софья Вахромичева
Вас в школе плохо учили математике?
Светлана Лупсякова
Нет, я сам её плохо учил, но всё же, к чему это умножение на 2?
Яна Дзенскевич
Может быть я что-то не понимаю, но как помоему, лоничнее будет от сумы отнять проверяемый элемент, ежели множить его на 2.
Антонина Свирихина
sum - a[j][i] < a[j][i] то же самое, что sum < 2*a[j][i] переносите в правую часть с обратным знаком, если это не понятно, тогда тяжелый случай.
Денис Худый
А, вы умножаете элемент на 2, что-бы не вычетать его из суммы, дошло, но как помоему более правильно будет через sum-a[j][i] :)
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
выпиши в свою тетрадь те правила этикета которые тебе не были
Разные вопросы.
Анна хорошо учится у неё много подруг свободное от учёбы время
Обществознание.
10) Килограмм конфет дороже килограмма печенья на 52 р. За 8
Математика.
Облако тегов