Задана последовательность из n целых чисел. Выведите все ее нечетные
элементы.
Вход. Первая
строка содержит число n (n
≤ 100). Вторая строка содержит n
целых чисел, каждое из которых по модулю не превышает 100.
Выход. Выведите
все нечетные элементы последовательности в порядке их появления во входных
данных.
Пример входа |
Пример выхода |
7 14 17 16 3 7 19 9 |
17 3 7 19 9 |
циклы
Будем
читать элементы последовательности по одному с помощью цикла и сразу выводить
нечётные. Число val является
нечетным, если val % 2 ≠ 0. Однако
условие val % 2 == 1 некорректно для
проверки нечётности отрицательных значений val.
В языке Си при делении отрицательного нечетного числа на 2 результатом будет
-1.
Реализация алгоритма – цикл
Читаем количество входных чисел.
scanf("%d",&n);
В цикле последовательно обрабатываем n чисел.
for(i = 0; i < n; i++)
{
scanf("%d",&val);
Если число val нечетное,
то выводим его.
//if (val % 2 == 1 || val % 2 == -1) printf("%d
",val);
if (val % 2 != 0) printf("%d
",val);
}
Реализация алгоритма – массив
Объявим рабочий массив.
int m[101];
Читаем входную последовательность целых чисел в массив m.
scanf("%d",&n);
for (i = 0; i < n; i++)
scanf("%d", &m[i]);
Перебираем числа в массиве. Если m[i] нечетное,
то выводим его.
for (i = 0; i < n; i++)
if (m[i] % 2 !=
0) printf("%d ", m[i]);
printf("\n");
Java реализация
import java.util.*;
class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
Читаем количество входных чисел n.
int n = con.nextInt();
Читаем входную последовательность из n целых
чисел.
for(int i = 0; i < n; i++)
{
int val = con.nextInt();
Если число val нечетное,
то выводим его.
if (val % 2 != 0) System.out.print(val + " ");
}
System.out.println();
con.close();
}
}
Python реализация
Читаем входные данные.
n = int(input())
lst = list(map(int,input().split()))
В цикле обрабатываем n чисел списка lst.
for x in lst:
Если число x нечетное, то выводим его.
if x % 2 != 0:
print(x, end = " ")
Python реализация – список
Читаем входные данные.
n = int(input())
lst = list(map(int,input().split()))
В цикле обрабатываем n чисел списка lst.
for i in
range(n):
Если число lst[i]
нечетное, то выводим его.
if
lst[i] % 2 != 0:
print(lst[i],end = " ")
Python реализация – создание списка
Читаем
входные данные.
n = int(input())
lst = list(map(int,input().split()))
Создадим список p, который содержит только нечетные числа.
p = [x for x in lst if x % 2 != 0]
Выводим ответ.
print(*p)