Приступая к решению задач, ознакомьтесь со статьями Массивы в C++ и Генератор случайных чисел rand(), если еще не читали их. Постарайтесь решать предложенные задачи самостоятельно и смотреть наши решения только в крайнем случае.
1. Создать массив типа int на 10 элементов и заполнить его случайными числами от 7 до 14. После заполнения перезаписать все числа, которые больше десяти: от хранимого значение отнять 10. Например в ячейке хранится число 12: 12 – 10 = 2. Записать в эту ячейку 2 Записывая новое значение, используйте составные (комбинированные) операторы.
2. Заполнить массив из 50-ти элементов нечётными числами от 1 до 99. (используйте операцию остаток от деления, чтобы проверить число на чётность)
3. Объявить три массива. Первые два заполнить случайными значениями от 10 до 30. В элементы третьего массива записать сумму соответствующих элементов первых двух массивов. (в нулевую ячейку третьего – сумму нулевых ячеек первого и второго массивов и так далее). Затем найти среднее арифметическое элементов третьего массива, максимальное значение и минимальное значение, которые он хранит.
извиняюсь!за не правильно заданный вопрос, есть решение к 3 ей задаче по одномерному массиву, где можно отобразить код, чтобы его можно было проверить и указать на недостатки?
А зачем?
Здесь не начальная школа, никто смотреть ваш код не станет.
Да и комментарии здесь не приспособлены и искажают код, если вы его сюда впишите.
А критерием качества кода для вас всегда должны быть результаты выполнения программы: если они соответствуют поставленным условиям, то всё отлично.
в универе смотрят именно код
Типичный быдло-программер.
ideone.com
спс за ответ.
Подскажите пожалуйста, в чем моя ошибка (минимальное значение выдает 0)
Нашел другой способ)
какой же я дебил…
Когда ищем среднее значение, это же float? Если да, то в 3 задаче ошибка. Хоть она и не значительная, но мне кажется, что это не лучшая привычка округлять))
Это грубая ошибка:
– переменная averageValue должна быть объявлена как float / double (лучше double);
– выражение вычисления averageValue должно быть переписано так, чтобы вычислялось с вещественными значениями, например так:
averageValue = (double)sum / SIZE;
2 задача же не правильно решена?
вот же
#include
using namespace std;
int main(int argc, const char * argv[]){
int arr[50] = {};
for (int i = 0; i<50; i++){
do
arr[i] = 1 + rand() % 100;
while (arr[i] % 2 !=1);
cout << arr[i] << " ";
}
cout << endl;
system("pause");
return 0;
}