Оператор for: если элемент последовательности кратен трём - вывести его на экран без изменения, иначе удвоить - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Вводится последовательность из N целых чисел. Если число кратно трём, то вывести его на экран без изменения, другие числа удвоить и также вывести на экран.

Решение задачи: «Оператор for: если элемент последовательности кратен трём - вывести его на экран без изменения, иначе удвоить»

textual
Листинг программы
#include <stdio.h>
 
int main() {
    int N;
    int i=1;
    puts("N?");
    scanf("%d", &N);
    for (;i<=N;++i) {
        int a;
        scanf("%d", &a);
        a= a%3 ? 2*a: a ; // a%3!=0
        printf("==> %d\n", a);
    }
    return 0;
}

Объяснение кода листинга программы

  1. Подключение стандартной библиотеки для работы с вводом/выводом
  2. Объявление переменной N типа int для хранения количества элементов последовательности
  3. Объявление переменной i типа int для итерации по элементам последовательности начиная с 1
  4. Вывод на экран сообщение N? для запроса количества элементов последовательности
  5. Считывание количества элементов последовательности в переменную N с помощью функции scanf
  6. Создание цикла for для итерации по элементам последовательности начиная с 1 и до N
  7. Внутри цикла объявление переменной a типа int для хранения текущего элемента последовательности
  8. Считывание текущего элемента последовательности в переменную a с помощью функции scanf
  9. Условие a%3 ? 2*a: a; проверяет, делится ли текущий элемент на 3 без остатка
  10. Если условие истинно, то текущий элемент удваивается, иначе остается без изменений
  11. Вывод на экран значение текущего элемента с помощью функции printf
  12. Увеличение значения переменной i на 1 после каждой итерации цикла
  13. Возвращение 0 в конце программы для успешного выполнения
  14. Пример использования программы: Введите количество элементов последовательности: 6 1 2 3 4 5 6 ==> 2 ==> 4 ==> 6

Оцени полезность:

12   голосов , оценка 4.333 из 5
Похожие ответы