timpavilion23
?>

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 1000 включительно. Найти количество двузначных элементов массива, сумма цифр которых кратна 5, а затем заменить каждый такой элемент на количество таких элементов. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки. Например, для исходного массива из шести элементов: 32 14 320 110 5 50 программа должна вывести следующий массив 3 3 320 110 5 3

Информатика

Ответы

Voronov434
Цикл с предусловием это такой цикл, в котором условие проверяется перед выполнением тела цикла.
А цикл с постусловием - на оборот, он сначала выполнит, а потом проверит условие и если условие true, то цикл завершится.

Цикл с постусловием, можно использовать в таких ситуациях, когда надо что-то сделать и если чего-то не хватает, то сделать еще раз. Напрмер отправить письмо на email, а если не отправилось, то повторить еще 3 раза. Сначала выполнится тело цикла, в котором находятся функции отправки письма и если отправка удачная, то сообщаем until() true. Иначе тело выполнится еще и еще и еще кучу раз, если мы не задали счетчик в теле цикла, как вариант...

Цикл с предусловием можно использовать, если надо проверять какое-то значение ПЕРЕД выполнением тела цикла и тебе не важно, должно ли оно хоть раз выполниться. Например запросить пароль у пользователя. Но если пользователь уже ввёл пароль, то зачем его запрашивать? Тут можно было бы использовать while
orange-salon-job77
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
  // Формируем массив A случайных чисел и выводим его
  var a:=ArrRandom(ReadInteger('n='),1,50); a.Println;
  // Формируем последовательность кортежей s из четных элементов A
  var s:=a.Select((x,i)->Rec(x,i+1)).Where(x->x.Item1.IsEven);
  Write('Четные элементы: ');
  s.Select(x->x.Item1+'['+x.Item2+']').Println;
  Write('Их количество равно ',s.Count,', произведение равно ',
    s.Select(x->x.Item1).Aggregate(1.0,(p,i)->p*i))
end.

Тестовое решение:
n= 15
6 28 32 37 21 34 37 24 1 22 21 16 10 1 2
Четные элементы: 6[1] 28[2] 32[3] 34[6] 24[8] 22[10] 16[12] 10[13] 2[15]
Их количество равно 9, произведение равно 30883184640

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

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

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 1000 включительно. Найти количество двузначных элементов массива, сумма цифр которых кратна 5, а затем заменить каждый такой элемент на количество таких элементов. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки. Например, для исходного массива из шести элементов: 32 14 320 110 5 50 программа должна вывести следующий массив 3 3 320 110 5 3
Ваше имя (никнейм)*
Email*
Комментарий*

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

tashovairina
evgeniy1988486
horst58
Dodkhobekovich1683
dddddd68
Кристина Валентиновна
Андреевна
Tochkamail370
Спиридонова
zrv85
denblacky
viktort889841
vallihhh
jamaltreid
demon8608