23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
||||||
1 | ||||||
Среднее арифметическое в массиве15.11.2014, 17:50. Показов 1552. Ответов 21
Метки нет (Все метки)
Проверьте пожалуйста задачу:
Задано количество строк и столбцов, матрица не более 10 и действительные значения её элементов. Сформировать и вывести матрицу, каждый элемент которой равен среднему арифметическому исходных значений данного элемента и восьми соседних с ним. Значения элементов, находящихся за пределами заданной матрицы, считать равными нулю.
0
|
15.11.2014, 17:50 | |
Ответы с готовыми решениями:
21
Вычислить среднее арифметическое в массиве Найдите среднее арифметическое в массиве Найти среднее арифметическое значений в массиве Найти в массиве среднее арифметическое простых элементов |
4 / 4 / 2
Регистрация: 27.10.2014
Сообщений: 90
|
||||||
15.11.2014, 19:05 | 2 | |||||
сохраняете матрицу 10*10 в матрицу 11*11(матрица 10*10 будет "окружена" нулями) и проходите матрицу 11*11 циклом for (int i=1; i<a; i++){ for (int j=1; j<b; j++){ float summ+=arr[i][j]+arr[i-1][j-1]+....//тут ищем ср арифметическое 8 соседних элементов .... //тут присваиваем summ в новый массив } }
0
|
Вездепух
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
|
|
15.11.2014, 19:20 | 3 |
0
|
4 / 4 / 2
Регистрация: 27.10.2014
Сообщений: 90
|
|
15.11.2014, 19:21 | 4 |
Да 12*12, ошибся
0
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
|
16.11.2014, 11:49 [ТС] | 5 |
kessor, а моя матрица верная не?
Добавлено через 10 минут TheCalligrapher, а моя матрица верная не? Добавлено через 16 часов 14 минут Помогите кто-нибудь с задачей!!!
0
|
Вездепух
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
|
|
16.11.2014, 12:12 | 6 |
Все у вас вроде верно кроме одного: почему сумма и среднее арифметическое элементов вычисляется в типе 'int', в то время как матрицы состоят из элементов типа 'float'???
Также формат "%.f" в 'printf' будет печатать значения как целые числа, т.е. округленными. Зачем вы это делаете?
0
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
|
16.11.2014, 12:21 [ТС] | 7 |
TheCalligrapher, Я над этим тоже задумывался, почему матрица не выводит десятичные части, а именно округляет, я пробовал на 1 знак переносить, так для всех целых чисел, 0 торчит.
Добавлено через 3 минуты TheCalligrapher, Как тогда реализовать это?
0
|
Вездепух
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
|
|||||||||||
16.11.2014, 12:22 | 8 | ||||||||||
Сообщение было отмечено INSTINCT95 как решение
Решение
"Задумывался"? Так а почему тогда не исправлено?
Во-первых,
1
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
|
16.11.2014, 12:24 [ТС] | 9 |
TheCalligrapher, А как? Я же что говорю, он мне нули приписывает, если просто float, а если "1f" так там есть десятичная часть у чисел с этой частью, а у целых 0 торчит.
0
|
Вездепух
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
|
|
16.11.2014, 12:29 | 10 |
Ну и пусть приписывает.... Что, это так страшно? Ну напишите "%.3f" - пусть три знака после запятой выдает. А то сейчас же вообще ерунда пишется. В матрице - '-1.7', а на экран идет '-2'.
0
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
|
16.11.2014, 12:33 [ТС] | 11 |
TheCalligrapher, Полученная матрица заработала с десятичной частью, а с исходной как?
Она при f выводит много нулей, нельзя чтоли, к примеру есть: 5, 8, 3.5, -1.7, 7, 12, -32, 7, 5, -4 ????? так она выводит: 5, 8, 4, -2, 7, 12, -32, 7, 5, -4 Добавлено через 29 секунд TheCalligrapher, А ну тогда ок, спасибо.
0
|
Вездепух
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
|
|
16.11.2014, 12:34 | 12 |
Я не понимаю вопроса. Она выводит это потому, что вы сами ее попросили округлить числа до целых. Не надо ее просить округлять числа до целых. Для исходной матрицы используйте формат "%.1f" и дело с концом.
0
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
|
16.11.2014, 13:28 [ТС] | 13 |
TheCalligrapher, Ещё можете сказать, я тут считал вручную, проверял, половина совпадения в значениях, а какие-то нет, как он считает среднее ариф. в матрице?
Добавлено через 26 минут TheCalligrapher, Вы здесь?
0
|
Вездепух
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
|
|
16.11.2014, 18:59 | 14 |
Вы 'int sum' на 'float sum' исправили или нет? На каких именно значениях что-то не совпадает?
0
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
||||||
16.11.2014, 19:01 [ТС] | 15 | |||||
TheCalligrapher, Я исправил на float, мне просто нужно знать как он сумму считает!!!
Вот проверьте у себя:
0
|
Вездепух
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
|
|
16.11.2014, 19:05 | 16 |
У вас исходная матрица по-прежнему печатается с округлением до целого - "%.f". Вы для проверки какие исходные значения берете: настоящие из кода или округленные с экрана?
0
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
|
16.11.2014, 19:09 [ТС] | 17 |
TheCalligrapher, Как это с округлением?
У меня с десятичной частью, все норм. Мне надо просто знать какие элементы суммируются, сам принцип понять. Добавлено через 1 минуту TheCalligrapher, Я беру исходные, округленных нет.
0
|
Вездепух
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
|
|
16.11.2014, 19:12 | 18 |
Сорри, не заметил, что там "%.1f". Так на каких значениях считается неправильно?
0
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
|
16.11.2014, 19:30 [ТС] | 19 |
TheCalligrapher, ну вы говорили, что у меня верно построена программа, мне нужно проверить как он считает по первому элементу.
Почему вместо: 5.0 выходит 2.888889? как это получилось?
0
|
23 / 3 / 1
Регистрация: 03.11.2014
Сообщений: 73
|
|
16.11.2014, 19:32 [ТС] | 20 |
TheCalligrapher, Вот, взгляните
0
|
16.11.2014, 19:32 | |
16.11.2014, 19:32 | |
Помогаю со студенческими работами здесь
20
Найти среднее арифметическое простых чисел в массиве Найти среднее арифметическое простых чисел в массиве Определить среднее арифметическое отрицательных элементов в массиве Среднее арифметическое чисел между даными в массиве Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |