Игоревна Худанов1150
?>

Оставить в массиве те элементы, которые не делятся ни на 2, ни на 3, ни на 5. массив сжать.

Информатика

Ответы

tsypant
// PascalABC.NET 3.2, сборка 1356 от 04.12.2016
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
  a:=a.Where(x->(x mod 2<>0) and (x mod 3<>0) and
    (x mod 5<>0)).ToArray;
  a.Println
end.

Пример
n= 20
18 3 19 -3 40 -27 43 -1 4 -21 -12 3 -14 3 -27 37 45 11 23 -28
19 43 -1 37 11 23
mmihail146
Type
  Digits=array[0..9] of byte;

procedure RD(n:integer; var ad:Digits; var f:boolean);
{ заполняет массив количеством повторений цифр числа n
  f=True, если хоть одна цифра повторяется }
var
  i,d:byte;
begin
  for i:=0 to 9 do ad[i]:=0;
  f:=False;
  while n>0 do begin
    d:=n mod 10;
    ad[d]:=ad[d]+1;
    if ad[d]>1 then f:=True;
    n:=n div 10
    end;
end;

var
  i,j,n,k:integer;
  a:Digits;
  f:boolean;
 
begin
  for i:=1 to 2 do begin
    Write('n = '); Read(n);
    n:=Abs(n); { против ввода отрицательных }
    RD(n,a,f);
    if f then begin
      Write('Встречаются больше одного раза цифры ');
      for j:=0 to 9 do
        if a[j]>1 then Write(j,' ');
      Writeln
      end
    else Writeln('Все цифры в числе уникальны')
    end
end.

Пример
n = 153632
Встречаются больше одного раза цифры 3
n = 1030041
Встречаются больше одного раза цифры 0 1

var
  s,sr:string;
  c:char;
  i,j,n,p:byte;
   
begin
  for i:=1 to 2 do begin
    Write('Введите строку: '); Readln(s);
    n:=Length(s);
    sr:='';
    for j:=1 to n do begin
      c:=s[j];
      if Pos(c,Copy(s,j+1,n-j))>0 then sr:=sr+c+' ';
      end;
    if Length(sr)>0 then Writeln('Встречаются больше одного раза символы ',sr)
    else Writeln('Все символы в строке уникальны')
    end
end.

Пример
Введите строку: информатика
Встречаются больше одного раза символы и а
Введите строку: проблема
Все символы в строке уникальны
Геннадьевна_Петр

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

Точно также производится готовка в мультиварке. Но когда требуется сделать что-то, чего не учитывает программа, делать приходится вручную.

При всей универсальности программа не может учесть всего. Всегда приходится что-то корректировать. Поэтому на практике приходится прибегать к обоим методам. Особенно, когда ручное управление затруднено. Так происходит, например при управлении марсоходом. Радиосигнал идет довольно долго и просто "порулить" марсоходом с земли в реальном времени не получится. Приходится отправлять блок команд и принимать сигнал о их выполнении.

В общем, вручную безусловно лучше, но не всегда возможно.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Оставить в массиве те элементы, которые не делятся ни на 2, ни на 3, ни на 5. массив сжать.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

whiskyandcola
Иванникова736
staskamolbio5152
Мельникова
horina12
Olesyamilenina8
vallium8354
qadjiyevaaynura
Plotnikovangav
АлександровнаВладлен243
antrotip
dentinnsmr467
basil69
zakaz6354
ss2911