Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.70/37: Рейтинг темы: голосов - 37, средняя оценка - 4.70
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41

Выбрать элементы массива, встречающихся более одного раза

08.01.2010, 22:26. Показов 7403. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите, нужно срочно
Дан одномерный массив А(размерностью N).Разработать алгоритм выбора элементов,встречающихся в массиве А более одного раза.
Делаю на TurboPascal(ghbkj;t
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.01.2010, 22:26
Ответы с готовыми решениями:

Определить максимальное из чисел, встречающихся в заданной матрице более одного раза
Помогите с задачей пожалуйста Дана целочисленная прямоугольная матрица. Определить: Максимальное из чисел, встречающихся в заданной...

Найти максимальное из чисел, встречающихся в данной матрице более одного раза.
Помогите, пожалуйста >_< Оформить каждый пункт задания в виде функции. Задания: Дана целочисленная прямоугольная матрица....

Из массива удалить четные элементы, встречающиеся более одного раза
Из массива удалить четные элементы встречающиеся более одного раза. пример: массив a:9 3 4 9 1 0 0 => a:3 4 1

27
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
08.01.2010, 23:08
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
uses
  crt;
const
  N=10;
var
  a:array[1..N]of integer;
  i,j,k:integer;
  fl:boolean;
begin
  ClrScr;
  WriteLn('Array:');
  for i:=1 to N do
  begin
    a[i]:=random(10)-5;
    write(a[i],' ')
  end;
  WriteLn;
  WriteLn('Result:');
  for i:=1 to N-1 do
    for j:=i+1 to N do
      if a[i]=a[j] then
      begin
        fl:=true;
        for k:=i downto 1 do
          if (a[k]=a[i]) and (i<>k) then
          begin
            fl:=false;
            break
          end;
        if fl then
          Write(a[i],' ');
        break
      end;
  WriteLn
end.
1
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41
10.01.2010, 23:25  [ТС]
Программу написал, компиляцию проходит, но не запускается(экран мелькнет)
Делаю на TurboPascal(Version 7.0 Copyright<c> 1983,92 by Borland International, Inc.)
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
10.01.2010, 23:29
в строке 34 замените
Pascal
1
writeln;
на
Pascal
1
readln;
1
37 / 35 / 7
Регистрация: 18.04.2009
Сообщений: 435
10.01.2010, 23:35
Так и должно быть. вставь в конце программы readln;
И тогда программа должна ждать когда нажмешь Enter.
хотя я давно не пользовался паскалем. может и ошибаюсь
1
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41
11.01.2010, 00:01  [ТС]
Программа запускается, но мне нужно самим вводить числа а потом после нажатия Enter должны вывеститься те числа которые встречаются в введённой строке более одного раза

Задача:Дан одномерный массив А(размерностью N).Разработать алгоритм выбора элементов,встречающихся в массиве А более одного раза.

Её мне нужно сдать во Вторник.

P.S. Спасибо тем кто старался мне помочь в решении этой задачи
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
11.01.2010, 00:11
Изменённая программа на основе Inadequate
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
uses
  crt;
var
  a:array[1..100]of integer;
  i,j,k,n:integer;
  fl:boolean;
begin
  ClrScr;
  writeln('vvedite kol-vo elementov');
  readln(n);
  WriteLn('vvedite elementy:');
  for i:=1 to N do
  begin
    write('a[',i,']=');
    readln(a[i]);
  end;
  WriteLn('massiv');
  for i:=1 to N do
   write(a[i],' ');
    readln;
  WriteLn;
  WriteLn('Result:');
  for i:=1 to N-1 do
    for j:=i+1 to N do
      if a[i]=a[j] then
      begin
        fl:=true;
        for k:=i downto 1 do
          if (a[k]=a[i]) and (i<>k) then
          begin
            fl:=false;
            break
          end;
        if fl then
          Write(a[i],' ');
        break
      end;
  readln;
end.
2
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41
11.01.2010, 01:16  [ТС]
Извини, но немного так
Пример задачи должен выглядеть так:

Vvedite elementy
2 4 6 7 2 4 10 9 8 2
Result:
2 4


Выводить те числа которые встречаются в введенной строке чисел более одного раза
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
11.01.2010, 01:25
а что не так?
ввод что ли не поэлементный нужен а в ряд?
так исправь, руки есть
остальное всё, как заказывалось
Мало я таких капризных программистов видел
0
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41
11.01.2010, 01:33  [ТС]
Я плохо знаю TurboPascal
Целый месяц эту задачу никак не сделаю
Ну помоги, мне её завтра сдать нужно чтобы получить зачет за семестр
(месяц назад должен был сдать )
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
11.01.2010, 01:38
Так как я могу помочь, если ты внятно не можешь объяснить, что тебе надо?
То это не так, то это. Так задания не пишут
1
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41
11.01.2010, 01:51  [ТС]
Напиши мне пожалуста весь программный код задачи
Очень нужно
Я не шарю в программировании
Задачу ты видел, нужно сделать как в примере

Пример задачи должен выглядеть так:

Vvedite elementy
2 4 6 7 2 4 10 9 8 2
Result:
2 4


Те коды которые я получил почти то что надо но не то(извини)
Мне всего одну задачу решить и всё
Если что именно непонятно спроси
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
11.01.2010, 02:16
так я и спрашиваю, что именно не устраивает в последнем коде? Что надо изменить?

Добавлено через 23 минуты
Так что ли надо?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
uses
  crt;
var
  a:array[1..100]of integer;
  i,j,k,n:integer;
  fl:boolean;
begin
  ClrScr;
  writeln('vvedite kol-vo elementov');
  readln(n);
  WriteLn('vvedite elementy:');
  for i:=1 to N do
      read(a[i]);
      readln;
  WriteLn;
  WriteLn('Result:');
  for i:=1 to N-1 do
    for j:=i+1 to N do
      if a[i]=a[j] then
      begin
        fl:=true;
        for k:=i downto 1 do
          if (a[k]=a[i]) and (i<>k) then
          begin
            fl:=false;
            break
          end;
        if fl then
          Write(a[i],' ');
        break
      end;
  readln;
end.
1
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41
11.01.2010, 02:18  [ТС]
Жму Run
Появляется строка:

Vvedite elementy
Мы сами вводим различные числа сколько угодно, желательно если некоторые будут повторяться

Написали скажем 9(девять) чисел:
2 4 8 2 10 4 7 4 5

Жмем на кнопку Enter появляется:
Result:
2 4


В этой программе идет "проверка" каждого введенного числа, мы должны вывести те числа которые повторяются более одного раза

А что изменить в программном коде я не знаю, поэтому я обратился за помощью к этому форуму и лично я сейчас прошу мне помочь(знаю что сейчас поздно)
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
11.01.2010, 02:24
то есть ввод до нажатия enter?
Я не помню как это делается, обратитесь к форуму или поищите в поиске.
1
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41
11.01.2010, 02:27  [ТС]
Да, ввод до нажатия Enter
Я прошу помоги
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
11.01.2010, 02:28
Nell, я Вам написал абсолютно рабочий вариант. Что Вам еще нужно?

Добавлено через 1 минуту
Вот результаты
Array:
-4 0 4 4 3 1 -4 3 -5 3
Result:
-4 4 3
Что Вас в них не устраивает?
2
 Аватар для vad2211
119 / 119 / 41
Регистрация: 21.12.2009
Сообщений: 194
11.01.2010, 02:29
Nell, как-то туманно вы излагаете суть проблемы. И повторяете одно и то же все время: "вводишь цифры"... "после идет вывод чисел встречающихся более одного раза". Вам написали код уже, который работает и выводит повторяющиеся числа... А вот что вы еще хотите... Не понятно.
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
11.01.2010, 02:30
Да всё там у него работает, его не устраивает, что количество надо задавать, он хочет, чтобы ввод прерывался по нажатию enter
0
1 / 1 / 0
Регистрация: 21.12.2009
Сообщений: 41
11.01.2010, 02:31  [ТС]
Нужно по другому сделать
Я уже писал что не шарю в программировании TurboPascal
Жму Run
Появляется строка:

Vvedite elementy
Мы сами вводим различные числа сколько угодно, желательно если некоторые будут повторяться

Написали скажем 9(девять) чисел:
2 4 8 2 10 4 7 4 5
Жмем на кнопку Enter появляется:
Result:
2 4
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.01.2010, 02:31
Помогаю со студенческими работами здесь

В матрице А(N,N) найти элементы, встречающиеся не более одного раза
В матрице А(N,N) найти элементы, встречающиеся не более одного раза. Напечатать их значения, индексы и сумму S, а также исходную матрицу,...

В матрице А(N,N) найти элементы, встречающиеся более одного раза
. В матрице А(N,N) найти элементы, встречающиеся более одного раза. Из этих элементов составить и напечатать матрицу Х из двух столбцов. В...

Найти максимальный элемент массива, встречающийся более одного раза
2. Использовать подпрограммы (ввода, вывода, обрабатывающей части). Дан массив целых чисел А, где M,N&lt;=10. Найти максимальный...

Из массива удалить элементы, встречающиеся в массиве более одного раза
Из массива удалить элементы, встречающиеся в массиве более одного раза. Пример: из массива A: 9 3 4 9 1 0 0 должен получиться массив A: ...

Максимальное из чисел, встречающихся в заданной матрице более одного раза
Задание №3 1. Дана целочисленная прямоугольная матрица. Определить: 1) Количество строк, не содержащих ни одного нулевого элемента; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru