![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 03.10.2011
Сообщений: 93
|
![]()
Помогите написать программу.
Дано N чисел. Вывести числа встречающие более одного раза. Последний раз редактировалось Анастасия12; 19.01.2012 в 17:09. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
два вложенных цикла.
первый от 1 до N-1 второй до I+1 до N во вложенном цикле перебирать и сравнивать, если совпало A[i] = A[j] выводить A[i] и прерывать вложенный цикл. такой простой подход позволит легко вывести все числа, встречающиеся в массиве более одного раза. НО! Числа будут выведены столько раз, сколько они встречаются. Если хочется выводить число по одному разу, то в тот кусок кода, где нашли совпадение, нужно вставить ещё один цикл переборать числа от 1 до I-1. искать совпадение с A[i]. если ничего не нашлось - только в этом случае печатать найденное число. (другими словами - число-дубликат должно быть найдено ПОСЛЕ текущего числа и не должно быть найдено ДО него же.. ) |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 03.10.2011
Сообщений: 93
|
![]()
Спасибо огромное, очень полезная для меня информация.
Извини пожалуйста что утруждаю тебя, но можешь написать эту задачу в Паскале. Если не сложно?? ![]() |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 19.11.2009
Сообщений: 155
|
![]() Код:
По всем вопросам связанным с Делфи или Паскаль обращайтесь, чем смогу тем и помогу.
Помог жми на весы!!! dmi83206389@mail.ru |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 03.10.2011
Сообщений: 93
|
![]()
Огромное спаисбо)
|
![]() |
![]() |
![]() |
#6 |
Новичок
Джуниор
Регистрация: 15.01.2012
Сообщений: 2
|
![]()
Правильнее вот так:
Код:
Последний раз редактировалось tema12t; 19.01.2012 в 18:07. |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 15.01.2012
Сообщений: 46
|
![]()
Эта программа выведет ВСЕ повторяющиеся числа!(например, если число 2 встречается 5 раз, то программа и выведет его 5 раз). А как сделать, чтобы она выводила только 1 раз повторяющееся число?
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
![]()
Дык вроде бы написано как.
Еще есть такой вариант решения задачи если известен диапазон значений чисел в массиве, т.е. например в массиве генератором псевдослучайных чисел генерируются числа от 0 до 50: создаем другoй массив [0..50], заполняем его например нулями (по-моему в паскале и так заполняется либо есть функция fillchar, ну или самое простое просто циклом по всему массиву), проходим первый массив в цикле и элемент второго массива под номером = значению в первом массиве увеличиваем на единицу (т.е. b[a[i]] := b[a[i]] + 1). Потом проходим его и если значение элемента больше единицы, выводим его номер. т.е. примерно так, код похожей задачи: Код:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
![]() |
![]() |
![]() |
#9 | |
Новичок
Джуниор
Регистрация: 15.01.2012
Сообщений: 2
|
![]() Цитата:
Код:
|
|
![]() |
![]() |
![]() |
#10 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
мда... а моим алгоритмом никто не захотел воспользоваться..
ладно. тогда ловите мой вариант решения этой простенькой задачки: Код:
___________ tema12t не теряйте Randomize; - это важно, чтобы последовательность случайных чисел была разной! Цитата:
if (a[i]>=0) and (a[i]<=9) then Inc( k[a[i]] ); |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача на массив | serg93 | Помощь студентам | 2 | 19.10.2011 16:50 |
Задача на массив | Casper098 | Помощь студентам | 1 | 18.10.2011 14:44 |
задача на массив | кира1005 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 25.06.2011 19:33 |
Задача на МАССИВ | Новичок1 | Помощь студентам | 3 | 11.12.2010 13:41 |
Задача на массив | foxzibit123 | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 25.07.2010 21:16 |