§ 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.