cheremetdiana
?>

Дан целочисленный массив из 30 элементов. элементы массива могут принимать целые значения от 0 до 100. опишите на языке или на одном из языков программирования алгоритм , позволяющий найти и вывести произведение двузначных элементов массива, которые не делятся на 6.гарантируется, что в исходном массиве есть хотя бы один такой элемент. исходные данные объявлены так, как показано ниже. запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них. исходные данные всегда подобраны так, что результат произведения не выходит за пределы объявленных типов данных. паскаль: const n=30 var a : array [1..n] of longint; i, j, p: longint; begin for i : = 1 to n do readln(a[i]) ; end.

Информатика

Ответы

Olga-Lev1160
Const n=30; var a : array [1..n] of longint;           i, j, p: longint; begin for i: =1 to n do readln(a[i]); {} p: =1; for i: =1 to n do    if a[i] div 10 < > 0 then    if a[i] mod 6 < > 0 then p: =p*a[i];   writeln('произведение двухзначных элементов массива, которые не делятся на 6 = ',p); end.  
sigidinv
Var input,output: text; n,i,j,g,nm,ans,t: integer; ara: array[0..1000] of integer; ar,arq: array[0..1000] of integer; ts,sum,a: integer; beginassign(input,'f.in'); reset(input); assign(output,'f.out'); rewrite(output); readln(input,a,n); ans: =10000; for i: =1 to n do begin read(input,ar[i]); ts: =ts+2*ar[i]; end; if ts< a then writeln(output,'-1') else begin ara[1]: =3; for i: =2 to 15 do begin ara[i]: =3*ara[i-1]; end; for i: =1 to ara[n] do begin if arq[n]< 2 then begin inc(arq[n]); sum: =sum+ar[n]; inc(nm); end else begin g: =n; while arq[g]> 1 do begin sum: =sum-ar[g]*arq[g]; dec(nm,arq[g]); arq[g]: =0; dec(g); end; inc(arq[g]); sum: =sum+ar[g]; inc(nm); end; if sum=a then begin if nm< ans then ans: =nm; end; end; if ans> 1000 then writeln(output,'0') else writeln(output,ans); end; close(output); close(input); end.
alisapavlushina
Var input,output: text; n,i,j,g,nm,ans,t: integer; ara: array[0..1000]  of integer; ar,arq: array[0..1000] of integer; ts,sum,a: integer; beginassign(input,'f.in'); reset(input);   assign(output,'f.out'); rewrite(output); readln(input,a,n); ans: =10000; for i: =1 to n do beginread(input,ar[i]); ts: =ts+2*ar[i]; end;   if ts< a then writeln(output,'-1') else   begin ara[1]: =3; for i: =2 to 15 do begin ara[i]: =3*ara[i-1]; end;   for i: =1 to ara[n] do begin if arq[n]< 2 then begin  inc(arq[n]); sum: =sum+ar[n]; inc(nm);   end  else  begin    g: =n; while arq[g]> 1 do begin sum: =sum-ar[g]*arq[g]; dec(nm,arq[g]); arq[g]: =0; dec(g); end;   inc(arq[g]); sum: =sum+ar[g]; inc(nm); end; if sum=a then begin if nm< ans then ans: =nm; end; end;   if ans> 1000 then writeln(output,'0') else writeln(output,ans);   end; close(output); close(input); end.

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

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

Дан целочисленный массив из 30 элементов. элементы массива могут принимать целые значения от 0 до 100. опишите на языке или на одном из языков программирования алгоритм , позволяющий найти и вывести произведение двузначных элементов массива, которые не делятся на 6.гарантируется, что в исходном массиве есть хотя бы один такой элемент. исходные данные объявлены так, как показано ниже. запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них. исходные данные всегда подобраны так, что результат произведения не выходит за пределы объявленных типов данных. паскаль: const n=30 var a : array [1..n] of longint; i, j, p: longint; begin for i : = 1 to n do readln(a[i]) ; end.
Ваше имя (никнейм)*
Email*
Комментарий*

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

kettikis
mgrunova
Екатерина
veraplucnika
tgeraskina
Chutaeva381
Дмитрий74
andrey00713
faberlic0168
versalmoda2971
zaravshan20134
mariapronina720126
bellaalya13862
Дмитрий1974
Zolotnik974620