завдання і рішення з ++, практика програмування

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

Завдання: Одномерные массивы C
4 (80%) 3 голосів

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

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




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




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

Щоб підтримати наш сайт – натисніть на скарбничку і виберіть будь-який зручний для Вас спосіб.

Нові уроки з програмування:

58 думки про "Завдання: Одномерные массивы C

  1. Начебто простіше вийшло, строго за умовою зробив

  2. Вітаю. Чи не зрозуміла один момент з приводу другого завдання. завдання було: заповнити масив, що складається з непарних чисел від 1 до 99.
    У відповіді на завдання я побачила інше. Був створений масив[50] з парними і непарними числами від 1 до 99. А потім, за допомогою умови if на екран виводяться тільки непарні елементи. Але це не означає, що був створений масив тільки з непарними числами. cout не записує нові елементи в масив, а тупо виводить на екран непарні числа. Якщо ми зараз знову попросимо вивести на екран масив ourArr[i], він виведе масив і з парними і непарними числами. Задача, на мою думку, вирішена не коректно. Якщо я не права, будь ласка, Поясніть мені…
    Спасибо)

    1. Як мені здається, у 2-й задачі неправильно сформульовано умова задачи, а не її рішення. Повинно бути якось так:
      – заповнити 50-елементний масив випадковими непарними числами з діапазону [1…100].

      І рішення такого завдання наведено правильне (одне з можливих).

    2. Завдання вирішена правильно. Крок в циклі змінюється тільки якщо число в масиві парне, інакше цикл буде повторюватися до тих пір поки число не буде парних( i ++ тільки при парному числі)

    3. Вірно там є тільки один масив , але його значення поверни, так як функція рандом, є тим же масивом тільки уявним. І в наш масив закладіваем тільки числа строго по умів. І коли вдруге будемо виводу, він теж віведет його вірно, так як ми поклали туди 50 Значення, сподіваюся ви зрозуміли)
      Перепрошую за зламав російський)

  3. хлопців, як ви собі уявляєте рішення першого завдання, як в вашій відповіді, якщо ви до цього не показували як робити рандомний числа. то есть, це завдання має на увазі в собі те, що ще не проходили. і це не перший випадок між іншим. програмування засноване на логіці, але в цьому випадку її не спостерігається.

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

      1. да, просто. спасибі за відповідь. хоча помилок все одно вистачає, звичайно.

    2. А ви скиньте посилання,де зрозуміліше і краще пояснюють основи і якщо говорите про помилки,то викладайте!Одну помилку вже вказали…

      1. tpojuh, хто б за нас так заступався, що не ти )) Спасибо, що коментуєш статті і відповідаєш на коментарі користувачів.

      2. якщо навіть і немає ніде зрозуміліше, це ж не означає, що не потрібно прагнути до хорошого, а варто залишити, мовляв, і так зійде. + вона, вище, помилку вже вказали. формулювання у другій задачі неправильна. але взагалі не зрозумійте перекручено, я говорю це все не тому що проти, а тому що за. просто хотілося б, що б було краще.

      3. Aytekin, все нормально. На тебе ніхто не ображається )
        По можливості і при наявності вільного часу будемо покращувати.

  4. Реалізував все на Java. Раптом кому цікаво.
    1 завдання:

    2 завдання:

    3 завдання:

  5. Мені здається, во второй задаче проще сделать так:
    do{
    ourArr[i] = 1 + rand() % 100;
    }while(ourArr[i] % 2 == 0);

  6. Зраствуйте. Я хотела узнать как вставить перед каждым положительным элементом массива нулевое значение

    1. В C/C++ незьзя “вставити” элементы в массив.
      Можно только переписать значения в другой массив, большего размера, где, переписывая, вы будете некоторым элементам присваивать нулевые значения.

    1. srand() – это инициализация начального значения генератора последовательности (псевдо)случайных значений.
      В качестве инициализирующего значения используется текущее время time( NULL ).
      Такие вещи делаются для того, чтобы последующие запуски программы давали не повторяющиеся (случайные) значения. Это очень плохо для отладки такого кода.

  7. Привет всем! скажите почему не получается добавить код сюда, делаю все как описано выше.

    1. Если “сюди” – это комментарии, то сюда и не можно и не нужно помещать ваш код.
      Эти комментарии не для того!

залишити коментар

Код розміщуйте в тегах: <pre class="lang:C ++ декодуванням:true ">ВАШ КОД</заздалегідь>