profile
Опубликовано 5 лет назад по предмету Информатика от annowikow2011

Дан массив целых чисел из 15 элементов, заполненный случайным образом числами из промежутка [ -20, 50 ].Удалить из него все элементы, в записи которых есть цифра 5.Вставить число k после всех элементов, кратных своему номеру (k вводится с клавиатуры).Поменять местами первый положительный и последний отрицательный элементы.

  1. Ответ
    Ответ дан TlknAnastasiya
    const n=20;
    var a:array[1..n]of integer;
    i,b,k,c,f,g,h:integer;
    begin
    for i:=1 to n do a[i]:=Random(70)-20;
    for i:=1 to n do
    write(a[i],' ');
    writeln;
    for i:=1 to n do begin
    if (a[i] mod 5 = 0) and (a[i] mod 10<>0) or (a[i]=50) then begin
    b:=i;
    for b:=i to (n-1) do
    a[i]:=a[i+1];
    end; end;
    for i:=1 to n do
    write(a[i],' ');
    write('введите к ');
    read(k);
    for i:=1 to n do begin
    if a[i] mod i = 0 then begin
    c:=i;
    for i:=n downto c+1 do begin
    a[i]:=a[i-1];
    a[c+1]:=k;
    end;end;end;
    for i:=1 to n do
    write(a[i],' ');
    writeln;
    f:=0; g:=0;
    for i:=n downto 1 do begin
    if (a[i]>0) then f:=i;
    end;
    if a[f]=0 then write('нет положительных ');
    for i:=n downto 1 do begin
    if (a[i]<0) then g:=i;
    end;
    if (a[g]=0) then write('нет отрицательных ');
    if (a[f]<>0) and (a[g]<>0) then begin
    h:=a[f]; a[f]:=a[g]; a[g]:=h; end;
    for i:=1 to n do
    write(a[i],' ');
    writeln;
    end.
Самые новые вопросы