§ 12. Поиск элементов с заданными свойствами
Упражнения
1. Рост учащихся класса представлен в виде массива. Напишите программу, которая определит количество учащихся, рост которых больше среднего роста по классу.
2. Заданы фамилии и рост учащихся 10-го класса. Напишите программу, которая выведет фамилии учащихся, рост которых меньше среднего роста по классу.
3. Известны данные о площади n стран (в млн кв. км) и численности населения (в млн). Напишите программу, которая выведет номера тех стран, плотность населения в которых больше x.
4. Для упражнения 3 добавьте возможность вводить и выводить названия стран из текстового файла.
5. Напишите программу, которая определит, есть ли в линейном массиве хотя бы один элемент, который удовлетворяет указанному ниже свойству. Если да, то выведите его номер.
1. Является положительным числом.
2. Является четным числом.
3. Является нечетным, кратным 7 числом.
4. При делении на 7 дает в остатке 1, 2 или 3.
6. Написать программу, которая посчитает количество элементов массива, удовлетворяющих свойствам, описанным в упражнении 5.
7. Напишите программу, которая найдет в линейном массиве и выведет все простые числа с нечетной суммой цифр. Указать, сколько чисел вывели.
8. В примере 7.15 рассматривалась рекурсивная функция для разложения числа на простые множители. Измените функцию check в примере 12.11 на рекурсивную по аналогии с функцией из примера 7.15.
9. Написать программу, которая посчитает количество пар соседних (номера таких элементов отличаются на 1) элементов массива, удовлетворяющих указанному ниже свойству:
1. Оба числа в паре являются положительными.
2. Числа в паре имеют разные знаки.
3. Ни одно число из пары не равно нулю.
4. Числа имеют одинаковую четность (или оба четные, или оба нечетные).
10. Напишите программу, которая найдет в линейном массиве и выведет все числа Армстронга. Числом Армстронга называется такое число, которое равно сумме своих цифр, возведенных в степень, равную количеству его цифр. Например, числом Армстронга является число 371 = 33 + 73 + 13 = 27 + 343 + 1. Указать, сколько чисел вывели.
11. Задан одномерный массив из N строк. Каждая строка является предложением из слов, разделенных пробелами. Напишите программу, которая найдет и выведет те предложения, в которых есть слова, начинающиеся на гласную букву (строчную или прописную). Исходные данные прочитать из текстового файла input.txt. Результат записать в текстовый файл output.txt.