М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
pomogiplizplizpliz
pomogiplizplizpliz
04.01.2020 19:37 •  Информатика

Дан целочисленный массив из 30 элементов. элементы массива могут принимать целые значения от 0 до 100. опишите на языке программирования паскаль алгоритм, позволяющий найти и вывести произведение элементов массива, которые имеют чётное значение и не оканчиваются на 0. гарантируется, что в исходном массиве есть хотя бы один элемент, значение которого чётно и не оканчиваются на 0.

👇
Ответ:
valuchska
valuchska
04.01.2020
//PascalABC.Net 3.2 сборка 1318

Var
  res:BigInteger = 1;
begin
  var ar:=ReadArrInteger(30);
  var armod:=ar.Where(x -> x mod 10 <> 0).Where(x -> x mod 2=0);
  foreach var x in armod do
    res*=x;
  writeln(res);
end.
4,5(11 оценок)
Ответ:
максим885б
максим885б
04.01.2020
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(30,0,100); a.Println;
  var s:=a.Where(x->x.IsEven and (x mod 10<>0));
  if s.Count>0 then Writeln(s.Aggregate(BigInteger(1),(x,y)->x*y))
  else Writeln('Нет элементов, удовлетворяющих условию')
end.

Пример
68 6 20 51 68 38 45 92 74 95 85 12 46 75 88 31 80 35 38 42 98 50 34 76 35 65 18 73 58 10
147111268420451335057440768
4,6(94 оценок)
Открыть все ответы
Ответ:
Лёха142002
Лёха142002
04.01.2020
VAR
   mx, ind: Integer;
   n, m, i, j: Integer;
   b: Array of Integer;
   a: Array of Array of Integer;
BEGIN
   Read(n); SetLength(a, n+1); 
   For i := 1 to n do SetLength(a[i], n+1);

   For i := 1 to n do
      For j := 1 to n do Read(a[i][j]);

   SetLength(b, n+1);
   For i := 1 to n do b[i] := a[i][i];

   mx := b[1]; ind := 1;
   For i := 2 to n do 
      If (mx < b[i]) then begin 
         mx := b[i]; ind := i; End;

   Write('Макс. элемент гл. диагонали - B[',ind,'] = ', mx);
END.

Или намного проще (если нужен только ответ):
VAR
   mx, ind, el: Integer;
   n, m, i, j: Integer;
BEGIN
   Read(n);

   // Присваем макс. элементу самое минимальное число,
   // которое точно не встретится в массиве
   mx := -999999999;

   For i := 1 to n do
      For j := 1 to n do begin  
         Read(el);
         If (i <> j) then Continue;
         If (mx < el) then begin 
            mx := el; ind := i; End; End;

   Write('Макс. элемент гл. диагонали - B[',ind,'] = ', mx);
END.
4,5(36 оценок)
Ответ:
oljkejik
oljkejik
04.01.2020
Для начала считаем кол-во цифр в данном сообщении: 7. Значит получается, что максимальное кол-во букв с двойным обозначением (тобиш в и г) тут 3, т.к 4 - уже 8 цифр. Можно рассмотреть все 4 случая:
1) все 7 - буквы буквы с одной цифрой (а и б) - 1 вариант расположения (очевидно)
2) 1 буква - в или г: эту одну букву можно расположить 7-1 = 6 вариантами, то есть еще + 6
3) 2 буквы - в или г. Для выбора местоположения первой из этих букв есть 6 вариантов расположения (как мы уже поняли из 2) ), а для второго остается 7-2= 5 цифр, а значит 4 позиции. Итого 5*4 = 20 и делим это пополам, ибо половина случаев - симметрична (просто меняются местами двойные буквы - а нам без разницы). Получается 20/2= 10
4) 3 буквы - буквы в или г: Рассмотрим от оставшейся одиночной буквы: у нее есть 7 вариантов расположения, вот и все.
1+6+10+7 = 24
4,8(53 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ