0 / 0 / 0
Регистрация: 13.01.2016
Сообщений: 4
|
||||||
1 | ||||||
Удалить из матрицы строки, где все числа, средние арифметические цифр которых больше 6, меньше всех простых13.01.2016, 17:21. Показов 1213. Ответов 6
Метки нет (Все метки)
Здравствуйте! Очень нужна помощь с задачей:
Вводятся размеры матрицы, состоящей из целых чисел, и её элементы. С этой матрицей произвести указанные действия и вывести результаты. Память для массивов должна выделяться динамически, потом память должна освобождаться. Обработку массива (но не вывод) вынести в отдельную функцию, в основной функции оставить ввод, обращение к той функции и вывод. Если в программе требуется нетривиальная (не в один if) проверка отдельных чисел (вроде проверки на простоту), вынести её в отдельную функцию. Все данные должны передаваться между функциями через результат и параметры, глобальные переменные использовать нельзя. Текст программы должен быть оформлен с использованием единообразных отступов. Требуется удалить из матрицы строки, где все числа, средние арифметические цифр которых больше 6, меньше всех простых. Программа косячная, выглядит пока так:
Заранее спасибо!
0
|
13.01.2016, 17:21 | |
Ответы с готовыми решениями:
6
Матрицы. Удалить все строки, все элементы которых больше 34 Найти n первых простых чисел, сумма цифр у которых меньше заданного числа Найти средние арифметические всех строк матрицы Вывести на печать исходный массив в виде матрицы и средние арифметические каждой строки матрицы с указанием номера строки |
103 / 82 / 78
Регистрация: 11.05.2015
Сообщений: 201
|
||||||
13.01.2016, 19:22 | 2 | |||||
Не знаю почему у Вас ошибка только в 43 строке, у меня проект вообще не скомпилился.
В этой строчке ошибка при выделении памяти для двумерного массива. Правильнее так:
1
|
0 / 0 / 0
Регистрация: 13.01.2016
Сообщений: 4
|
||||||
13.01.2016, 19:52 [ТС] | 3 | |||||
Спасибо за ответ!
У меня программа тоже не действует, просто ближайшую ошибку компилятор видит на 43 строке и вырубается. До исправления del пока дойти не удалось, теперь поправлено, выделение памяти тоже.
0
|
103 / 82 / 78
Регистрация: 11.05.2015
Сообщений: 201
|
|||||||||||||||||||||
13.01.2016, 21:56 | 4 | ||||||||||||||||||||
Все равно ещё есть ошибки. Вот смотрите (немного теории):
есть две операции * - это взятие значения по указателю, & - это получение адреса переменной. Всегда остается верным следующее тождество (a == *(&a)). Допустим есть переменные
n, m - целочисленные переменные resultat - указатель Тогда функция вызывается следующим образом
sa - служит для нахождения строк среднее арифметическое которых больше 6, а что выполняет pr?
0
|
0 / 0 / 0
Регистрация: 13.01.2016
Сообщений: 4
|
||||||
14.01.2016, 15:28 [ТС] | 5 | |||||
Функция pr должна найти минимальное простое число в массиве, но, подозреваю, она крайне корявая и ничего нужного не выполняет.
Начинаю понемногу разбираться в указателях, завтра попробую еще раз перекроить программу. Добавлено через 15 часов 36 минут Не дано мне нормально что-то сделать... вроде теорию, что да как с указателем в функции, понимаю, а на практике ее применить не получается. В сороковой строке выдает по две следующих ошибки на функцию: warning: assignment makes pointer from integer without a cast (эту еще выдает на пятьдесят седьмой строке) warning: assignment makes integer from pointer without a cast, т. е., там перепутаны целые с указателями. Никак не могу это исправить...
0
|
103 / 82 / 78
Регистрация: 11.05.2015
Сообщений: 201
|
||||||
14.01.2016, 16:40 | 6 | |||||
Сообщение было отмечено Stockhausen как решение
Решение
Вот так можно сделать, если я задание правильно понял.
0
|
0 / 0 / 0
Регистрация: 13.01.2016
Сообщений: 4
|
||||||
14.01.2016, 23:53 [ТС] | 7 | |||||
Большое спасибо за помощь! Программа теперь иногда даже работает. Правда, условия немного не такие были, требовалось удалить строку, где все числа, среднее арифметическое цифр которых больше шести, меньше всех простых. Сейчас пытаюсь сделать, чтобы она не иногда, а всегда работала
Добавлено через 14 минут Странно, почему-то работает только с квадратной матрицей 2х2 Добавлено через 4 часа 43 минуты Все, удалось найти и исправить все неполадки. Работает.
0
|
14.01.2016, 23:53 | |
14.01.2016, 23:53 | |
Помогаю со студенческими работами здесь
7
Найти и вывести все числа в интервале от 1 до N-1, где сумма всех цифр совпадает с суммой цифр данного числа Найти и вывести все числа в интервале от 1 до N-1, у которых сумма всех цифр совпадает с суммой цифр данного числа. Найти и вывести все числа в интервале от 1 до N–1, у которых произведение всех цифр совпадает с произведением цифр данного числа Найти и вывести все числа в интервале от 1 до N - 1, у которых сумма всех цифр совпадает с суммой цифр данного числа Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |