Условие задачи: Массив А вводится с клавиатуры. Вывести только нечетные элементы. Размер произвольный. (Язык Паскаль)
Сложность: легкая.
Решение задачи
Для начала продумаем наше решение. Тут довольно всё просто. Сначала с помощью одного цикла заполним наш массив, потом с помощью другого выведем нечетные элементы.
Для того чтобы решить задачу нам понадобятся следующие переменные:
- Переменная A — для массива
- Переменная n — для количества элементов массива
- Переменная i — для цикла.
Начнем мы с каркаса нашей программы
1
2
3
4
5
6
7
8
9
10
11
|
type massiv = array [ 1..100 ] of integer ; // создаем свой тип данных для массива var n, i : integer ; // объявляем A : massiv; // переменные begin write ( 'Введите длину массива : ' );readln(n); // просим пользователя ввести длину массива readln; // чтобы программа не закрывалась end . |
Тут мы создали свой тип данных для массива, как и зачем читайте ( тут ), объявили переменные, попросили пользователя ввести кол-во элементов массива.
Теперь давайте заполним наш массив:
1
2
3
4
|
for i:= 1 to n do // пускаем цикл для заполнения массива begin write ( 'Введите ' ,i, ' элемент : ' ); readln(A[i]); // просим пользователя заполнить массив end ; |
Ну а теперь нам надо вывести именно нечетные элементы, тут нам поможет условие:
1
|
if (A[i] mod 2 <> 0 ) |
Это условие определяет число на нечетность с помощью операции mod, которая ищет остаток от деления, читайте подробнее ( тут ), мы пишем:
1
2
3
4
5
|
for i:= 1 to n do // пускаем цикл для вывода нечетных элементов begin if (A[i] mod 2 <> 0 ) then // если текущее число нечетное, то write (A[i], ' | ' ); // выводим его end ; |
Мы в цикле проверяем каждое число на нечетность и если оно нечетное то выводим его.
Всё решение задачи Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
type massiv = array [ 1..100 ] of integer ; // создаем свой тип данных для массива var n, i : integer ; // объявляем A : massiv; // переменные begin write ( 'Введите длину массива : ' );readln(n); // просим пользователя ввести пароль for i:= 1 to n do // пускаем цикл для заполнения массива begin write ( 'Введите ' ,i, ' элемент : ' ); readln(A[i]); // просим пользователя заполнить массив end ; write ( 'Нечетные элементы : ' ); // для красоты for i:= 1 to n do // пускаем цикл для вывода нечетных элементов begin if (A[i] mod 2 <> 0 ) then // если текущее число нечетное, то write (A[i], ' | ' ); // выводим его end ; readln; // чтобы программа не закрывалась end . |