Помогите разобраться с программой
Из массива X(N) все положительные элементы записать в массив Y(K), а все отрицательные элементы - в массив Z(m).Найти в каждом массиве максимальный по модулю элемент.Удалить в каждом массиве первый элемент. В программе написать функцию формирования массивов Y и Z, определения максимального по модулю элемента,удаление элемента.Мой друг написал ее,а комментарии нет.Помогите разобраться.С++
Код:
#include <iostream> |
Написать-то друг написал, только ошибок насажал...
Первая грубейшая ошибка в функции maximum() - числа массива используются "как есть", хотя, в задании сказано, что их надо брать по модулю. Вторая ошибочка - цикл нужно начинать не с 0, а с 1. Какой смысл сравнивать нулевой элемент массива сам с собой? Да и пременную i было бы неплохо объявить, а то компилятор заругается... Описание простое: - функция maximum() должна возвращать максимальное значение ПО МОДУЛЮ преданного в неё массива. - подпрограмма deleted() удаляет первый элемент со здвигом массива. Если честно, я бы не стал вообще ничего удалять и сдвигать. Достаточно просто увеличить на единицу указатель на массив. - подпрограмма run() разделяет исходный массив на два по заданному условию. Только вот непонятно, что она должна делать с нулевыми значениями? В том виде, что есть, она их просто игнорирует. - функция main() является основной программой - она объявляет и заполняет массивы, запускает другие подпрограммы и функции. Вот как-то-так.... |
Часовой пояс GMT +4, время: 04:04. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.