• дан массив целых чисел (n=10), заполненный случайными числами из промежутка [-40,30]. 1. удалить из него все элементы, которые состоят из одинаковых цифр(включая однозначные числа). 2. вставить число k перед всеми элементами, в которых есть цифра 1(k вводить с клавиатуры). 3. переставить первые три и последние три элемента местами, сохраняя их следование.

Ответы 1

  • 1)

    var a: array[1..20] of integer; i, j, k: integer;

    begin for i := 1 to 10 do begin a[i] := random(71) - 40; write(a[i]:4); end; writeln; writeln('удалили элементы из одинаковых цифр включая однозначные'); i := 1; k := 10; while i <= k do begin if (abs(a[i]) < 10) or ((a[i] mod 10) = (a[i] div 10)) then begin if i = k then k := k - 1 else begin for j := i to k - 1 do a[j] := a[j + 1]; k := k - 1; end; end else i := i + 1; end; for i := 1 to k do write(a[i]:4);end.

    2)

    var a: array[1..20] of integer; i, j, k,n: integer;

    begin for i := 1 to 10 do begin a[i] := random(71) - 40; write(a[i]:4); end; writeln; writeln('введите k(не должно содержать 1)='); readln(k); writeln('вставляем k перед всеми элементами где есть цифра 1'); i := 1; n := 10; while i <= n do begin if (abs(a[i]) mod 10=1) or (abs(a[i]) div 10=1) then begin for j:=n+1 downto i+1 do a[j]:=a[j-1]; a[i]:=k; n:=n+1; i:=i+1; end; i := i + 1; end; for i := 1 to n do write(a[i]:4);end.

    3)

    var a: array[1..10] of integer; i, j, k: integer;

    begin for i := 1 to 10 do begin a[i] := random(71) - 40; write(a[i]:4); end; writeln; writeln('меняем местами три первых и три последних элемента'); for i:=1 to 3 do begin k:=a[i]; a[i]:=a[i+7]; a[i+7]:=k; end; for i := 1 to 10 do write(a[i]:4);end.

     

    • Автор:

      campbell
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years