ЕГЭИнформатикаАлгоритмы и программированиеПовышенный

Задание №9084: Алгоритмы и программирование

Страница появится в поиске после публикации подробного проверенного решения.
Условие

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит количество элементов массива, больших 50 и при этом оканчивающихся на 0, а затем заменяет каждый такой элемент на число, равное найденному количеству. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки. Например, для исходного массива из семи элементов: 48 51 160 80 71 40 210 программа должна вывести следующий массив: 48 51 3 3 71 40 3 Исходные данные объявлены так, как показано ниже на примерах для пяти языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных. Бейсик Python CONST N AS INTEGER = 30 DIM A (1 TO N) AS LONG DIM I AS LONG, J AS LONG, K AS LONG FOR I = 1 TO N INPUT A(I) NEXT I ... END # допускается также # использовать две # целочисленные переменные j и k a = [] n = 30 for i in range(0, n): a.append(int(input())) ... Алгоритмический язык Паскаль алг нач цел N = 30 целтаб a [1: N ] цел i , j , k нц для i от 1 до N ввод a[i] кц ... кон const N = 30; var a: array [1..N] of longint; i, j, k: longint; begin for i := 1 to N do readln(a[i]); ... end. C ++ #include < iostream > using namespace std; const int N = 30; int main() { long a[N]; long i, j, k; for (i = 0; i < N; i++) cin >> a[i]; ... return 0; } В качестве ответа Вам необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Free Pascal 2.6). В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на Алгоритмическом языке).

Что проверяет это задание

Задание относится к теме «Алгоритмы и программирование». Для решения понадобятся:

  • формализация задачи
  • построение алгоритма
  • проверка граничных случаев

Источник: ФИПИ — открытый банк заданий

Качество материала

Показываем, из чего состоит страница и можно ли проверить материал по первоисточнику.

Условиеполное
Первоисточникуказан
Подробное решениеготовится
Проверка дублейосновная версия

Происхождение задания

Банк заданий
ФИПИ — открытый банк заданий
Организатор
ФИПИ
Материалы
0 файла
Открыть официальный архив ↗

Связанные понятия

ИнформатикаАлгоритмы и программированиеформализация задачипостроение алгоритма

План самостоятельного решения

  1. Перепишите известные данные и отдельно сформулируйте, что требуется найти или доказать.
  2. Свяжите условие с темой «Алгоритмы и программирование» и выберите подходящее правило, формулу или способ рассуждения.
  3. Запишите промежуточные шаги: это помогает заметить потерянный знак, случай или логический переход.
  4. Сверьте результат со всеми ограничениями условия и только затем откройте подробный разбор.

Ориентировочное время: 25 минут.

Закрепить тему

После разбора попробуйте решить ещё десять заданий по предмету «Информатика». Вариант формируется заново, а ответы можно сразу проверить.

Собрать тренировочный вариант → Все задания по теме

Подробный разбор

Решение по шагам

Решение проверяется редакцией.

Самопроверка после решения

  • Я использовал все данные из условия и не добавил неподтверждённых предположений.
  • Каждый переход в рассуждении объяснён правилом, формулой или ранее доказанным фактом.
  • Ответ соответствует вопросу, а обозначения и единицы измерения записаны однозначно.
  • Я сравнил свой ход решения с разбором и понял причину каждого отличия.

Типичные ошибки

  • Перепутать основание системы счисления.
  • Не учесть границы диапазона.
  • Проверить алгоритм только на одном примере.
Сложность: Повышенный