Поиск
 
 

Результаты :
 


Rechercher Расширенный поиск

Кто сейчас на форуме
Сейчас посетителей на форуме: 1, из них зарегистрированных: 0, скрытых: 0 и гостей: 1

Нет

[ Посмотреть весь список ]


Больше всего посетителей (9) здесь было Вс Фев 11, 2018 12:54 pm
Самые активные пользователи за неделю
Ярослав
 


Старое ДЗ.

Перейти вниз

Старое ДЗ.

Сообщение автор Павел в Чт Мар 16, 2017 8:22 pm

Начались проблемы с пониманием происходящего Очень доволен  
Решил пройтись по старому ДЗ и разобраться в старых темах поподробней.

На одном задании возникла масса проблем.

Д/З №6
Задание 3.

Найти значения, повторяющиеся 2 или более раз в массиве, и напечатать их.

В прошлый раз я делал это задание задавая числа в массив руками.
Сейчас я решил попробовать зарандомить эти числа.

Код:
#include <iostream>
#include <stdlib.h>
#include <time.h>

using namespace std;

int main() {

   int A[10];
   srand(time(0));   

   for (int i = 0; i < 10; i++) {
      A[i] = rand() % 11;
      for (int y = 1; y < 10; y++) {
         A[y] = rand() % 11;
         if (A[i] == A[y] && i != y); {
            cout << endl << "4isla: ";
            cout << A[i] << " " << A[y] << endl;
            break;
         }
      }
   }
}

Проблемы:
1. Не получается вывести только повторы.
2. Без брейка пишет кучу лишей бурды.
3. Если использую брейк, то не могу задать else для случая без повторов.

Павел

Posts : 8
Join date : 2016-12-22
Age : 25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Старое ДЗ.

Сообщение автор Ярослав в Пт Мар 17, 2017 1:51 pm

Это очень странный цикл, потому что он перезаписывает все значения массива по много раз. Сначала a[i] записывает случайное значение; затем a[y] перезаписывает их. Причём действия во внутреннем цикле повторяются 10 * 10 раз, то есть каждый элемент будет перезаписан по 10 раз.

Обычно инициализация массива происходит один раз, заранее, отдельным циклом for (не вложенным). А только потом начинаем его обрабатывать.
avatar
Ярослав
Admin

Posts : 500
Join date : 2016-12-21
Location : Москва

Посмотреть профиль http://itstep.forum2x2.ru

Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения