Задачи с использованием циклов

Задачи с использованием циклов

Найти наибольшую цифру натурального числа

С клавиатуры вводится натуральное число. Найти его наибольшую цифру.

Например, введено число 764580. Наибольшая цифра в нем 8.

Вероятность четных случайных чисел

Проверить корректность работы генератора псевдослучайных чисел языка программирования с помощью оценки вероятности выпадения четных чисел на выборке не меньше 1000 случайных чисел.

Докажите, что для множества натуральных чисел верно 1+2+. +n = n(n+1)/2

Напишите программу, доказывающую или проверяющую, что для множества натуральных чисел выполняется равенство:
1+2+. +n = n(n+1)/2, где n — любое натуральное число.

Угадать случайное число

В программе генерируется случайное целое число от 0 до 100. Пользователь должен его отгадать не более чем за 10 попыток. После каждой неудачной попытки должно сообщаться больше или меньше введенное пользователем число, чем то, что загадано. Если за 10 попыток число не отгадано, то вывести загаданное число.

Вывод таблицы символов ASCII на экран

Вывести на экран коды и символы таблицы ASCII, начиная с символа под номером 32 и заканчивая 127-м включительно. Вывод выполнить в табличной форме: по десять пар "код-символ" в каждой строке.

Таблица значений функции

Вывести таблицу значений функции y = -0.23x 2 + x . Значения аргумента ( x ) задаются минимумом, максимумом и шагом. Например, если минимум задан как 1, максимум равен 3, а шаг 0.5. То надо вывести на экран изменение x от 1 до 3 с шагом 0.5 (1, 1.5, 2, 2.5, 3) и значения функции ( y ) при каждом значении x .

Сумма и произведение цифр числа

Найти сумму и произведение цифр, введенного натурального числа. Например, если введено число 325, то сумма его цифр равна 10 (3+2+5), а произведение 30 (3*2*5).

Вычислить факториал числа

Вычислить факториал введенного числа.

Сумма элементов ряда чисел

Найти сумму n элементов следующего ряда чисел:
1 -0.5 0.25 -0.125 .
Количество элементов ( n ) вводится с клавиатуры.

Посчитать четные и нечетные цифры числа

Посчитать четные и нечетные цифры введенного натурального числа. Например, если введено число 34560, то у него 3 четные цифры (4, 6 и 0) и 2 нечетные (3 и 5).

Читайте также:  Принтер самсунг ml 1210 как подключить

Ряд Фибоначчи

Вывести на экран столько элементов ряда Фибоначчи, сколько указал пользователь. Например, если на ввод поступило число 6, то вывод должен содержать шесть первых чисел ряда Фибоначчи: 1 2 3 5 8 13.

Вывести ряд чисел в диапазоне с шагом

Вывести на экран ряд натуральных чисел от минимума до максимума с шагом. Например, если минимум 10, максимум 35, шаг 5, то вывод должен быть таким: 10 15 20 25 30 35. Минимум, максимум и шаг указываются пользователем (считываются с клавиатуры).

Переворот числа

Сформировать из введенного числа обратное по порядку входящих в него цифр и вывести на экран. Например, если введено число 3486, то надо вывести число 6843.

Простейший калькулятор

Написать программу, которая будет складывать, вычитать, умножать или делить два числа. Числа и знак операции вводятся пользователем. После выполнения вычисления программа не должна завершаться, а должна запрашивать новые данные для вычислений. Завершение программы должно выполняться при вводе символа ‘0’ в качестве знака операции. Если пользователь вводит неверный знак (не ‘0’, ‘+’, ‘-‘, ‘*’, ‘/’), то программа должна сообщать ему об ошибке и снова запрашивать знак операции. Также сообщать пользователю о невозможности деления на ноль, если он ввел 0 в качестве делителя.

Задача табулированиянекоторой функцииy=f(x) сводится к вычислению значений этой функции при параметре циклах, изменяющемся в заданных пределах с постоянным шагом. На печать при этом выводится множество пар значений аргументахи функцииус помощью оператора печати, расположенного внутри тела цикла.

В рассмотренных выше примерах тело цикла реализовывалось одним или несколькими простыми операторами (присвоения, печати). Однако в общем случае внутри цикла могут использоваться любые операторы, в том числе и другие операторы цикла, условные операторы, операторы безусловного перехода.

Вычисление суммы

Вычисление конечной суммысводится к нахождению суммы заданного количества слагаемых:

Читайте также:  Ошибка 3101 kyocera при сканировании на почту

,

где i– номер слагаемого;f(i) – слагаемое с номеромi.

Вычисление организуется в виде циклического алгоритма, когда при каждом прохождении цикла номер слагаемого iувеличивается на 1, а сумма изменяется на величинуi-го слагаемого:

.

Цикл повторяется до тех пор, пока не будут просуммированы все nслагаемых. Для того, чтобы начальное содержимое ячейки суммы не исказило результат, сумма предварительно должна быть обнулена (). Вывод результата, поскольку он является единственным, осуществляется после окончания работы цикла.

Алгоритм нахождения суммы представлен на рис. 2.

Рис. 2. Вычисление суммы

Рис. 3. Вычисление произведения

Пример.Вычислить сумму рядаNнатуральных чисел.

Dim i As Integer

Dim sStart, sEnd As Integer

Dim Sum As Long

sEnd = InputBox("Введите длину ряда:", "Запрос программы")

For i = sStart To sEnd

MsgBox "Сумма чисел от " & sStart & " до " & sEnd & " равна " & Sum, , "Решение задачи"

Решим эту же задачу с использованием цикла DoLoop.

Dim i As Integer

Dim sStart, sEnd As Integer

Dim Sum As Long

sEnd = InputBox("Введите длину ряда:", "Запрос программы")

Цикл с пердусловием реализуется в языке программирования Pascal с помощью оператора WHILE … DO.
Синтаксис:

  • Оператор while состоит из заголовка и тела цикла. Операторы, находящиеся в теле цикла, обязательно заключаются в операторные скобки begin и end.
  • “Условие выполнения цикла” – это выражение логического типа (булевское выражение) выражение отношения или логическое выражение, принимающее одно из двух значений: true или false.
  • Если проверяемое условие ложно изначально, то операторы входящие в тело цикла не выполняются, проход по телу цикла не осуществляется и выполняются инструкции, находящиеся после операторной скобки end.
  • Служебные слова while и do означают “пока” и “делай”.

Блок-схема

Пример задачи на использование цикла с предусловием

Пример №1
Постановка задачи:

    Дано целое число N (> 0). Найти наименьшее целое положительное число K, квадрат которого превосходит N: K 2 > N. Функцию извлечения квадратного корня не использовать.
Читайте также:  Как вытащить фотки из облака

Пример №2
Постановка задачи:

    Дано натуральное число: верно ли утверждение, что в данном числе N нет такой цифры A (цифра A вводится с клавиатуры).

  • Входные данные: a – искомая цифра, n – данное число, k, x – вспомогательные переменные (целочисленного типа); f – логическая переменная для проверки предположения.
  • Выходные данные: вывод на экран сообщения о присутствии цифры в числе.
  • Описание алгоритма
  • Предположим, что цифра есть в числе. Тогда, используя цикл с предусловием, выполняющий последовательное целочисленное деление числа на 10 и выделяя остатки, мы проверяем условным оператором наличие цифры в числе. Если таковое найдется, мы немедленно выходим из цикла и выводим сообщение, что число найдено. Если цифра не будет обнаружена, то, по завершении цикла, выводится сообщение, что цифра в числе не обнаружена.

    Тестирование

    Пример №3
    Постановка задачи:

      Найти наибольший общий делитель (НОД) двух натуральных чисел A и B

  • Входные данные: a,b – два натуральных числа, переменные целочисленного типа
  • Выходные данные: a – НОД.
  • Описание алгоритма:
  • Для решения поставленной задачи воспользуемся алгоритмом Евклида. Если M > N, то НОД(М,N)=НОД(M-N,N). Будем уменьшать каждый раз большее из чисел на величину меньшего до тех пор, пока оба значения не станут равными.

    1. (While1) Даны положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Не используя операции умножения и деления, найти длину незанятой части отрезка A.
    2. (While3) Даны целые положительные числа N и K. Используя только операции сложения и вычитания, найти частное от деления нацело N на K, а также остаток от этого деления.
    3. Дополнительное задание:(While11) Поменять порядок цифр на обратный. Например, было 1234567, стало 7654321
    4. Дополнительное задание:Дано целое число N (> 1). Вывести наименьшее из целых чисел K, для которых сумма 1 + 2 + … + K будет больше или равна N, и саму эту сумму.
    Ссылка на основную публикацию
    Днепровский канал в крыму на карте
    Первым автором идеи использования днепровской воды для орошения крымских земель в 1833 г. был действительный статский советник, инспектор южнороссийского сельского...
    Где находится облачное хранилище на андроиде самсунг
    Не все владельцы мобильных устройств Samsung знают, что в их распоряжении есть полезный сервис Samsung Cloud. В данной статье мы...
    Где находятся сервера steam
    Please complete the security check to access youhack.ru Why do I have to complete a CAPTCHA? Completing the CAPTCHA proves...
    Документ ворд стал в клеточку как убрать
    Лист в клетку можно увидеть в документах Word, если нажать всего на одну клавишу. Это фоновый рисунок, который виден только...
    Adblock detector