Дан упорядоченный целочисленный массив. Сформировать второй массив всех таких различных значений, которые в первом массиве встречаются по два и более раза. type Massiv=array[1..100] of integer; var a,b:Massiv; j,i,n,g,buf,k,...

Дан упорядоченный целочисленный массив. Сформировать второй массив всех таких различных значений, которые в первом массиве встречаются по два и более раза. type Massiv=array[1..100] of integer; var a,b:Massiv; j,i,n,g,buf,k,c:integer; begin randomize; write('Ввод n='); read(n); writeln('Ввод массива:'); for i:=1 to n do a[i]:=random(20)-5; write('('); for i:=1 to n do write(a[i],';'); write(')'); writeln; j:=1; for i:=1 to n do for k:=i+1 to n do while j<=n do begin if a[i]=a[k] then inc(c); if c>=2 then begin c:=0; buf:=a[i]; b[j]:=buf; inc(j); end; end; writeln('Новый массив:'); for j:=1 to n do write(b[j]:4); readkey End. //Что не так в этом коде?(((Q
Гость
Ответ(ы) на вопрос:
Гость
type Massiv=array[1..100] of integer; var  a,b:Massiv; n,i,j,p:integer; begin randomize; write('Ввод n='); readln(n); writeln('Нужно неубывание (1) или невозрастание (2)?'); readln(p); if p=2 then p:=-1;  writeln('Массив:'); a[1]:=random(20)-5; for i:=2 to n do a[i]:=a[i-1]+p*random(5); write('('); for i:=1 to n do write(a[i],' '); write(')'); writeln; i:=1; j:=0; while i
Гость
// PascalABC.NET 3.2, сборка 1385 от 14.02.2017 // Внимание! Если программа не работает, обновите версию! begin   var a:=ArrRandom(ReadInteger('n='),1,9); a.Println;   var d:=new dictionary;   foreach var e in a do d[e]:=d.Get(e)+1;   var s:=d.Where(x->x.Value>1).Select(x->x.Key);   if s.Count=0 then Writeln('Нет дублирующихся элементов')   else begin     Write('Дублирующиеся элементы: '); s.Println;     Write('В порядке возрастания:  '); s.Sorted.Println     end end. Пример n= 20 6 8 7 3 8 6 4 9 9 3 6 1 6 6 9 7 2 5 9 9 Дублирующиеся элементы: 6 8 7 3 9 В порядке возрастания:  3 6 7 8 9
Не нашли ответ?
Ответить на вопрос
Похожие вопросы