×
  • 1. Системы счисления
  • 2. Логические функции
  • 3. Анализ информационных моделей
  • 4. Файловая система и базы данных
  • 5. Кодирование и декодирование. Условие Фано
  • 6. Выполнение и анализ простых алгоритмов
  • 7. Адресация в электронных таблицах
  • 8. Анализ программ с циклами
  • 9. Скорость передачи, объем памяти, время передачи
  • 10. Кодирование, комбинаторика
  • 11. Рекурсивные алгоритмы
  • 12. Адресация в сетях TCP/IP
  • 13. Вычисление количества информации
  • 14. Анализ и выполнение алгоритмов для исполнителя
  • 15. Поиск путей в графе
  • 16. Позиционные системы счисления
  • 17. Запросы в поисковых системах
  • 18. Логические выражения и множества
  • 19. Анализ программы по работе с массивом
  • 20. Анализ программ с циклами
  • 21. Анализ программ с циклами и подпрограммами
  • 22. Динамическое программирование
  • 23. Системы логических уравнений
  • 24. Исправление фрагмента программы и ошибок
  • 25. Программа на обработку массива
  • Спасибо за внимание
  • Разбор задачи № 25. Программа на обработку массива

    Теория по задаче

    Разбор текущей задачи
    Цикл for Python
    Индексация списков
    Составление условий
    Обход элементов списка

    Условие задачи

    461) Дан целочисленный массив из 1000 элементов. Элементы массива могут принимать положительные значения до 10000 включительно. Опишите на одном из языков программирования алгоритм, который уменьшает все четные значения массива на одно и то же значение, при этом минимальный из них должен стать равным 2.

    В качестве результата необходимо вывести измененный массив, каждый элемент массива выводится с новой строчки.

    Например, для массива из шести элементов: 37 86 57 14 45 58

    программа должна вывести числа 37 74 57 2 45 46

    # допускается также  
    # использовать две 
    # целочисленные переменные j и k
    a = [ ] 
    n = 1000
    for i in range(0, n): 
       a.append(int(input()))
    ...
    const     
    n = 1000; 
    var     
    a: array [1..n] of integer;    
    i, j, k: integer;
    begin  
       for i := 1 to n do    
          readln(a[i]);   
       ...  
    end.
    #include <iostream> 
    using namespace std;
    const int n = 1000;
    int main() {    
       int a[n];  
       int i, j, k;  
       for (i = 0; i < n; i++)   
          cin >>  a[i];  
       ...   
       return 0; 
    }