Этот урок является завершающим по теме циклов. Он очень короткий. Две основные мысли, которые мы хотим до вас донести:
- Если задачу можно выполнить при помощи однократного прогона цикла, то ее нужно выполнять именно так – дополнительный цикл дополнительно загружает процессор и, как следствие, требует дополнительного времени на работу кода.
- Если задачу можно выполнить без использования цикла, необходимо выполнять ее именно так – в арсенале любого языка программирования уже есть готовые решения в виде встроенных функций для большинства задач, нужно просто их изучить.
Есть много задач, которые, на первый взгляд, потребуют для своего решения запустить цикл несколько раз. Однако, если подумать, очень часто можно обойтись одним циклом.
Примером замещения циклов встроенными функциями является, к примеру, функция STRING$, которая позволяет создать символьную строку определенного размера из одного какого-то символа. Эту же задачу можно решить и циклом, но зачем, если для этого есть готовое решение?
Для закрепления этих навыков на практике рекомендуем выполнить все задания.
------------------------------
Список уроков Программирование на Бейсике для начинающих
Следующий урок Создание игры "Виселица"
Предыдущий урок Циклы. Продолжение
------------------------------
Задания
1. Последовательно даны десять чисел. Найти их сумму.
2. Дано целое положительное число N и последовательно N чисел.
- Найти их сумму и произведение.
- Если в наборе есть отрицательные числа, то вывести TRUE.
- Вывести в том же порядке только четные числа.
- Вывести количество нечетных чисел.
3. Последовательно дан набор чисел. Признак окончания набора цифра 0.
- Вывести количество чисел в наборе.
- Вывести количество отрицательных нечетных чисел в наборе.
4. Дано целое число K и последовательно набор ненулевых чисел. Признак завершения набора цифра 0.
- Вывести номер первого числа в наборе, значение которого больше K. Если такого нет, то вывести 0.
- Вывести номер последнего числа в наборе, значение которого больше K. Если такого нет, то вывести 0.
5. Дано число B, целое число N и последовательно набор N чисел, упорядоченных по возрастанию. Вставить число B в набор чисел таким образом, чтобы сохранился порядок возрастания.
6. Дано целое положительное число N и последовательно N чисел, упорядоченных по возрастанию. В наборе могут присутствовать одинаковые числа. Вывести набор в том же порядке, содержащий только разные числа.
7. Дано целое положительное число N (N>1) и последовательно N чисел.
- Вывести те числа в наборе, которые меньше своего левого соседа.
- Вывести те числа в наборе, которые меньше своего правого соседа.
- Если числа введены по возрастанию, вывести TRUE.
- Если набор образует возрастающую последовательность, вывести TRUE.
8. Дано целое положительное число N (N>2) и последовательно N чисел. Если набор чисел является пилообразным, вывести 0, в противном случае – номер первого числа, не являющегося зубцом (пилообразным называется такой набор чисел, в котором каждый элемент больше либо меньше обоих своих соседей).
9. Дано целое положительное число N и последовательно N чисел, причем как минимум два нуля. Вывести сумму чисел, расположенных между последними двумя нулями.
10. Дано слово, в котором присутствуют как минимум две одинаковые буквы. Дана эта буква. Найти все ее позиции в слове.