Кто хорошо знает С++?
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Начал изучать, нет ни какого понимания. Есть кто хорошо разбирается в с+++ ?? Нужен наставник =) к кому можно было бы обращаться с вопросами.
http://prntscr.com/63b8pw вот ссылка на мою скрин моей работы
Нужно больше знаков вопроса богу знаков вопроса :)
На платной основе я занимаюсь обучением.
e-mail: misterfake@live.ru
Задан массив целых чисел A(n). Найти
• среднее арифметическое элементов массива;
• минимальный элемент и его индекс в первой половине массива.
Из данного массива и некоторого массива того же типа, но другой
размерности B(m), сформировать общий массив С, в который переписать
удвоенные положительные значения элементов исходных массивов.
Удалить из массива С последний четный элемент.
Помогите плиз
Данил, сначала читаем Массивы в C++ на практике. Затем пишем программу. А потом задаём вопросы, если таковые будут.
Данил, а массив какого размера нужен?
Написано же A(n) и B(m)
Динамический — это пока для меня сложновато.
Данил, вот, написал программу, работает, как ты описал. С удовольствием выслушаю критику.
Ну, для начала, если используете system, то включите заголовок cstdlib.
Далее, необходимо исправить void main() на int main(). Тип возвращаемого значения функции main должен быть именно int. Любой другой — непереносим!
Далее:
Изначально i можно сделать равной 1, т.к. элемент a[0] уже учтен и первая итеррация бессмыслена.
Если запоминаете индекс, то можно не запоминать min, т.к. у нас есть индекс элемента. Хотя тут скорее на вкус и цвет...
Еще тут:
Кол-во положительных элементов можно считать сразу при вводе, чтобы не проходить лишний раз по массиву. В принципе, искать минимум можно там же.
А тут,
не нужно вычитать 1, т.к. при этом отпадет вывод последнего элемента из массива, а нужно
Спасибо за feedback, но появилось несколько вопросов:
1)Программа функционирует и без этого, зачем требуется эта библиотека?
2)Почему нельзя использовать void main(){}? Так я просто сокращаю программу на строчку «return 0;».
3)И последнее: я вывожу на один элемент массива меньше и таким образом удаляю последний четный элемент, так как последний элемент в любом случае будет четным (т.к. массив образуется удвоением чисел).
На одном компиляторе — да, на другом, нет. Функиция system объявлена в cstdlib. Если у Вас работает, значит в Вашем компиляторе в iostream неявно подключается cstdlib или имеется объявление функции system. В другом компиляторе может в iostream этого не быть.
стандарт определяет только два вида функции main:
Реализация компилятора может предоставлять и другие, но при этом теряется переносимость кода и на другом компиляторе может не скомпилироваться. Что касается return 0, то в конце функции main эта инструкция не обязательна. Если в конце main нет инструкции return 0, то поведение такое, как будто она там есть. Из Стандарта:
...
ну да, это я не досмотрел. Но в любом случае это вывод на один элемент меньше, а не удаление его из массива. Думаю, лучше просто уменьшить g, но это уж как автору вопроса вздумается.