Есть ответ 👍

Дан целочисленный массив размера n. преобразовать массив, увеличив его последнюю серию наибольшей длины на один элемент. паскаль

214
384
Посмотреть ответы 3

Ответы на вопрос:


Type   v = array of integer; var   i, n, ic, nc, kc, imax, nmax, kmax: integer;   a: v; begin   write('введите количество чисел n ');   readln(n);   setlength(a, n + 1);   writeln('вводите числа');   for i : = 0 to n - 1 do read(a[i]);   writeln;   nmax : = -32768;   kmax : = 0;   imax : = 0;   nc : = a[0];   kc : = 1;   ic : = 1;   for i : = 1 to n - 1 do   begin       if a[i] = nc then kc : = kc + 1       else begin           if kc < 3 then begin               kc : = 1;               nc : = a[i];               ic : = i           end           else           if kmax < = kc then begin               kmax : = kc;               nmax : = nc;               imax : = ic;               kc: =1;               nc: =a[i];               ic: =i           end           else begin               kc : = 1;               nc : = a[i];               ic : = i           end       end   end;   if kmax < = kc then begin       kmax : = kc;       nmax : = nc;       imax : = ic   end;   writeln('самая длинная серия содержит ', kmax, ' чисел ', nmax);   for i: =n downto imax+kmax+1 do a[i]: =a[i-1];   a[imax+kmax]: =nmax;   writeln('модифицированная строка');   for i: =0 to n do write(a[i]: 2) end. тестовое решение введите количество чисел n 30 вводите числа 1 2 2 3 4 4 4 5 5 5 6 8 6 6 6 4 8 8 8 8 8 8 3 3 3 3 1 2 3 3 3 самая длинная серия содержит 6 чисел 8 модифицированная строка   1 2 2 3 4 4 4 5 5 5 6 8 6 6 6 4 8 8 8 8 8 8 8 3 3 3 3 1 2 3 3

Program   array129; var a:   array   [1..40]  of   integer; b:   array   [1..20]  of   integer; c:   array   [1..20]  of   integer; temp,m,n,i,j: integer; begin writeln('введите n (n< =20)'); readln(n); writeln('значения массива а'); for   i: =1  to   n  do  begin   write('a[',i,']='); readln(a[i]); b[i]: =i;   end; // решение  temp: =0; m: =0; // формируем из исходного массива a[] два с длиной серий b[] и значением серий c[]  for   i: =2  to   n  do begin inc(temp); if   a[i]< > a[i-1]  then begin inc(m); b[m]: =temp; c[m]: =a[i-1]; temp: =0; end; end; inc(temp); inc(m); b[m]: =temp; c[m]: =a[i]; // складываем массив a[] согласно .  temp: =1; for   i: =1  to   m  do begin if   b[i]> =b[temp]  then begin temp: =i; end; end; inc(b[temp]); temp: =0; for   i: =1  to   m  do begin for   j: =1  to   b[i]  do begin inc(temp); a[temp]: =c[i]; end; end; writeln; writeln('ответ'); write(' a[]: ');   for   i: =1  to   temp  do   write(a[i],' '); end.
3toH
4,4(7 оценок)

ответ:

> > > import string

> > > string.ascii_letters

'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz'

> > > import random

> > > random.choice(string.ascii_letters)

'j'

объяснение:

- string.ascii_letters возвращает строку, содержащую строчные и прописные буквы в соответствии с текущей локалью.

- random.choice возвращает один случайный элемент из последовательности.

Популярно: Информатика