0 / 0 / 0
Регистрация: 09.06.2015
Сообщений: 6
1

Есть массив из 20 чисел, нужно вывести в одну строчку числа которые повторялись, а в другую неповторяющиеся

15.06.2015, 16:48. Показов 872. Ответов 4
Метки нет (Все метки)

Есть массив из 20 чисел, нужно вывести в одну строчку числа из этого массива которые повторялись, а в другую которые не повторялись.Вот программа которую надо переделать:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
uses crt;
var
A:array[1..20] of integer;
d,j,i:integer;
begin
clrscr;
for i:=1 to 20 do begin
A[i]:=random(21)-10;
write(A[i]:4)
end;
for i:=1 to 20 do begin
d:=A[i];
for j:=1 to 20 do
if d=A[j] then
write(d:4);
end;end.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.06.2015, 16:48
Ответы с готовыми решениями:

Нужно отсортировать список и убрать числа которые повторялись (Python)
Задается случайный список чисел с клавиатуры. Нужно убрать из списка числа которые в этом списке...

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

Как вывести массив в одну строчку (по порядку и в обратном порядке)
Доброго времени суток. Я сейчас прохожу короткий курс java прогромирования и у меня мне дали вот...

Вывести в одну колонку все числа от 1 до 10, а в другую - числа от 10 до 1 в степени 3
Вывести в одну колонку все числа от 1 до 10, а в другую числа от 10 до 1 в степени 3. Помогите не...

4
Эксперт Pascal/Delphi
2373 / 1288 / 1488
Регистрация: 29.08.2014
Сообщений: 4,617
17.06.2015, 07:09 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
const n=20;
var
  a,d,p:array[1..n] of integer;
  i,j,k,l:integer;
  ok:boolean;
begin
  randomize;
  write('A:');
  for i:=1 to n do begin a[i]:=random(20)-10; write(a[i],' '); end;
  writeln;
  for i:=1 to 20 do begin
    ok:=false;
    for j:=1 to 20 do if (a[i]=a[j]) and (i<>j) then  ok:=true;
    if ok then begin
      ok:=false;
      for j:=1 to l do if p[j]=a[i] then ok:=true;
      if not ok then begin l:=l+1;p[l]:=a[i];end;
    end else begin k:=k+1;d[k]:=a[i];end;
  end;
  write('Повторяющиеся числа:');for i:=1 to l do write(p[i],' ');
  writeln;
  write('Уникальные числа:');for i:=1 to k do write(d[i],' ');
end.
0
Модератор
Эксперт по электронике
7701 / 3856 / 1493
Регистрация: 01.02.2015
Сообщений: 11,904
Записей в блоге: 2
17.06.2015, 08:28 3
А я так вижу (строк - не жалею, если не хватает, разбавляю пустыми)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
program tak;
 
const
  n = 20;
type
  TArray = array[1..n] of integer;
 
  procedure Sort(var A: TArray);
  var
    i, j: integer;
    temp: integer;
  begin
    for i := 1 to n do
      for j := i + 1 to n do
        if A[i] < A[j] then
        begin
          temp := A[i];
          A[i] := A[j];
          A[j] := temp;
        end;
  end;
 
  procedure Show(const A: TArray);
  var
    i: integer;
  begin
    for i := 1 to n do
      Write(A[i]: 4);
    writeln;
  end;
 
var
  A: TArray;
  i, j: integer;
begin
  randomize;
  for i := 1 to n do
    a[i] := random(20) - 10;
 
  Writeln('Исходный массив:');
  Show(A);
 
  Sort(A);
  Writeln('Исходный массив после сортировки:');
  Show(A);
 
  {вывод повторяющихся чисел}
  Write('Повторяющиеся числа:');
  i := 1;
  while i <= n do
  begin
    j := i + 1;
    while j <= n do
      if A[i] = A[j] then
        Inc(j)
      else
        break;
    if (j > i + 1) then
      Write(A[i]: 4);
    i := j;
  end;
  writeln;
 
  {вывод неповторяющихся чисел}
  Write('Уникальные числа:');
  i := 1;
  while i <= n do
  begin
    j := i + 1;
    while j <= n do
    begin
      if A[i] = A[j] then
        Inc(j)
      else
        break;
    end;
    if (j = i + 1) then
      Write(A[i]: 4);
    i := j;
  end;
  writeln;
end.
0
Почетный модератор
64069 / 47481 / 32732
Регистрация: 18.05.2008
Сообщений: 115,185
17.06.2015, 09:02 4
А я понимаю буквально
Цитата Сообщение от SuperMan123 Посмотреть сообщение
нужно вывести в одну строчку числа из этого массива которые повторялись, а в другую которые не повторялись.
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;
const n = 20;
var a:array[1..n] of integer;
    i,j,k,kp,kn:integer;
begin
randomize;
for i := 1 to n do
 begin
  a[i]:=random(20);
  write(a[i]:3);
 end;
writeln;
kp:=-1;
kn:=-1;
for i:=1 to n do
 begin
  k:=0;
  for j:=1 to n do
  if (a[i]=a[j])and(i<>j) then k:=1;
  if k=1 then
   begin
    inc(kp);
    gotoXY(1+kp*3,2);
    write(a[i]:3);
   end
  else
   begin
    inc(kn);
    gotoXY(1+kn*3,3);
    write(a[i]:3);
   end;
 end
end.
0
ФедосеевПавел
17.06.2015, 09:47     Есть массив из 20 чисел, нужно вывести в одну строчку числа которые повторялись, а в другую неповторяющиеся
  #5

Не по теме:

Есть задачка для Супермена (SuperMan123) - выбрать один из вариантов!!!
Появится ли новый топик - "есть три варианта - помогите выбрать"?

Интриги! Скандалы! Расследования!
Читаем сообщения в этой теме! Не отходим от экранов!

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.06.2015, 09:47

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Ввести одномерный статический массив из n чисел и вывести все неповторяющиеся элементы.
Ввести одномерный статический массив из n чисел и вывести все неповторяющиеся элементы.Помогите...

Нужно вывести одну запись из базы. Обязательно нужно ее через цикл или есть более лучший способ?
У меня есть функция, которая все записи прогоняет и возращает массив, стоит ли с помощью нее мне...

Дан массив из 20 вещественных чисел. Определить, есть ли в массиве одинаковые числа и вывести их на экран
Дан массив из 20 вещественных чисел. Определить, есть ли в массиве одинаковые числа и вывести их на...

Сформировать массив В из 16 чисел и вывести его в строчку
сформировать массив В из 16 чисел и вывести его в строчку

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

С клавиатуры ввести 10 целых чисел и вывести в строчку все числа большие 5
1.С клавиатуры ввести 10 целых чисел и вывести в строчку все числа большие 5


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.