ipKAV85
?>

Найти пятую по счету единицу в массиве из 0 и 1

Информатика

Ответы

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

begin
  var a:=ArrRandom(ReadInteger('n='),0,1);
  a.Println;
  var b:=a.Select((x,i)->(x,i)).Where(x->x[0]=1).Select(x->x[1]).ToArray;
  if b.Count>=5 then
    Writeln('Номер пятой по порядку единицы в массиве равен ',b[4]+1)
  else Writeln('В массиве меньше пяти единиц')
end.

Пример
n= 17
1 0 1 0 1 1 0 0 1 0 0 1 1 0 0 0 1
Номер пятой по порядку единицы в массиве равен 9
Pavel_Olegovna1601
Const n=10;
var a:array[1..n] of integer;
i,k:integer;
begin
Randomize;
for i:=1 to n do
 begin
 a[i]:=random(2);
 write(a[i]:2);
 end;
writeln;
k:=0; i:=1;
while (i<=n)and(k<5) do
 begin
 if a[i]=1 then k:=k+1;
 i:=i+1;
 end;
if k=5
 then writeln('5-я единица - ',i-1,'-ый элемент массива')
 else writeln('В массиве меньше 5 единиц');
end.

Пример:
 0 1 1 0 1 1 1 0 0 1
5-я единица - 7-ый элемент массива
Елизавета Александр2011
Program pr;
uses crt;

Var mas:array[1..1000, 1..1000] of integer;
N,M,i,j,k:integer;

Begin
Writeln('Введите размер матрицы N*M');
Write('N = ');
readln(N);
Write('M = ');
readln(M);

if (M>1000) or (N>1000) or (M<1) or (N<1)
then  
Writeln('Ошибка, указанные значения выходят за пределы матрицы')   else   
        Begin      
 Writeln('Введите элементы матрицы');      

k:=0; 
 for i:=1 to N do     
  for j:=1 to M do     
    Begin     
      readln(mas[i,j]);       
      if (mas[i,j] mod 2 = 0) then k:=k+1;     
    end; 
  
    Writeln();   
    Writeln('Исходная матрица');
   
   for i:=1 to N do   
     Begin     
       for j:=1 to M do     
          Begin     
             Write(mas[i,j], ' ')     
           end;     
      Writeln();   
     end;         

Writeln();   
Writeln('Количество четных элементов = ',k);      
 end;

readln;
end.
stendpost
Var
  arr: array[1..27] of integer;
  summ: integer;
begin
  Randomize;
  for var i := 1 to 27 do
  begin
    arr[i] := random(-5, 5);
    summ := summ + arr[i];
  end;
  writeln('Массив: ',arr);
  writeln('Сумма всех элементов массива = ',summ);
  for var i := 1 to 27 do if arr[i] = 0 then arr[i] := summ;
  writeln('Массив: ',arr);
end.

пример работы:
Массив: [5,-1,1,5,4,-2,-3,0,3,5,-3,-4,3,0,-1,-4,5,-2,1,-4,5,2,-4,5,4,-5,-1]
Сумма всех элементов массива = 14
Массив: [5,-1,1,5,4,-2,-3,14,3,5,-3,-4,3,14,-1,-4,5,-2,1,-4,5,2,-4,5,4,-5,-1]

var
  arr: array of integer;
  n,k,m: integer;
begin
  write('Введи n: ');
  readln(n);
  Randomize;
  arr:= new integer[n];
  for var i := 0 to n-1 do arr[i] := random(-5, 5);
  writeln('Массив: ',arr);
  for var i := 0 to n-1 do
  begin
    if arr[i]<0 then inc(k);
    if (i>=1) and (i<=6) then inc(m);
    if (i>=6) and (arr[i]>=0) then arr[i]:=1;
  end;
  writeln('Количество отрицательных элементов массива = ',k);
  writeln('Количество элементов массива в интервале [2..7] = ',m);
  writeln('Массив: ',arr);
end.

Пример работы:
Введи n: 5
Массив: [0,1,-4,1,3]
Количество отрицательных элементов массива = 1
Количество элементов массива в интервале [2..7] = 4
Массив: [0,1,-4,1,3]

Введи n: 15
Массив: [0,1,4,3,-3,5,-4,-1,1,-2,3,1,-4,1,3]
Количество отрицательных элементов массива = 5
Количество элементов массива в интервале [2..7] = 6
Массив: [0,1,4,3,-3,5,-4,-1,1,-2,1,1,-4,1,1]

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

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

Найти пятую по счету единицу в массиве из 0 и 1
Ваше имя (никнейм)*
Email*
Комментарий*

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

qwert28027170
martabunova
victors
fancy-decor67
aleksandramir90
Adabir20156806
fishka-sokol14
ibarskova1542
katrin819
natakrechko
roman-fetisov2005
Марина555
egcuzn86
Ярослав
АлександрАлина