Основы программирования на С++ для начинающих

Задачи: Одномерные массивы C++

Приступая к решению задач, ознакомьтесь со статьями Массивы в C++  и Генератор случайных чисел rand(), если еще не читали их.   Постарайтесь решать предложенные задачи самостоятельно и смотреть наши решения только в крайнем случае.

1. Создать массив типа int на 10 элементов и заполнить его случайными числами от 7 до 14. После заполнения перезаписать все числа, которые больше  десяти:  от хранимого значение отнять 10.  Например  в  ячейке хранится число 12: 12 – 10 = 2. Записать в эту ячейку 2 Записывая новое значение, используйте составные (комбинированные) операторы.

2. Заполнить массив из 50-ти элементов нечётными числами от 1 до 99. (используйте операцию остаток от деления, чтобы проверить число на чётность)

3. Объявить три массива. Первые два заполнить случайными значениями  от 10 до 30. В элементы третьего массива записать сумму соответствующих элементов первых двух массивов. (в нулевую ячейку третьего – сумму нулевых ячеек первого и второго массивов и так далее). Затем найти среднее арифметическое элементов третьего массива, максимальное значение и минимальное значение, которые он хранит.

110 thoughts on “Задачи: Одномерные массивы C++

  1. извиняюсь!за не правильно заданный вопрос, есть решение к 3 ей задаче по одномерному массиву, где можно отобразить код, чтобы его можно было проверить и указать на недостатки?

    1. А зачем?
      Здесь не начальная школа, никто смотреть ваш код не станет.
      Да и комментарии здесь не приспособлены и искажают код, если вы его сюда впишите.

      А критерием качества кода для вас всегда должны быть результаты выполнения программы: если они соответствуют поставленным условиям, то всё отлично.

  2. Подскажите пожалуйста, в чем моя ошибка (минимальное значение выдает 0)

  3. Нашел другой способ)

  4. Когда ищем среднее значение, это же float? Если да, то в 3 задаче ошибка. Хоть она и не значительная, но мне кажется, что это не лучшая привычка округлять))

    1. Это грубая ошибка:
      – переменная averageValue должна быть объявлена как float / double (лучше double);
      – выражение вычисления averageValue должно быть переписано так, чтобы вычислялось с вещественными значениями, например так:

      averageValue = (double)sum / SIZE;

  5. 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;
    }

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *