Запрашивает с клавиатуры три целых числа и отображает сумму этих чисел на экране

Обновлено: 20.11.2024

Сортировка трех чисел

Задайте три целых числа, отобразите их в порядке возрастания. Например, если вводятся 2, 3 и 1, эта программа должна отобразить 1, 2 и 3.

Решение

Обсуждение

Это хороший пример использования трюка с коробкой. Основная идея состоит в том, что если мы знаем наименьшее число, то одно сравнение между оставшимися двумя даст второе наименьшее и наибольшее число. Поиск наименьшего из трех чисел обсуждался во вложенных ЕСЛИ.

Итак, начнем с :

a a может быть наименьшим
b может быть наименьшим

Для верхнего прямоугольника нам нужно знать, меньше ли a, чем c , а для нижнего прямоугольника нам нужно знать, меньше ли b, чем c :

Для верхнего прямоугольника нам нужно еще одно сравнение b, а для прямоугольника в третьей строке нам нужно a . Вот наш окончательный результат:

a a a — наименьший , связь между b и c неизвестна
c здесь, отсортировано.
b b — наименьшее, отношение между a и c неизвестно
c здесь, отсортировано.
a a b здесь, отсортировано.
здесь, отсортировано
c здесь, отсортировано.
b a b здесь, отсортировано.
b здесь, отсортировано.
c здесь, отсортировано.

Вышеописанное можно немного упростить, если использовать ЛОГИЧЕСКИЕ операторы, как обсуждалось во вложенных ЕСЛИ. Вот блок-схема:

Пользовательские функции

Как следует из названия, эти функции определяются и создаются пользователями. Функции в C++ согласуются с понятием функций в математике. Например, они допускают функциональную композицию, такую ​​как f(f(p),q,f(f)). Однако функции C++ либо возвращают одно значение, либо не возвращают никакого значения. Рассмотрим следующий пример. Это определяемая пользователем функция, которая вычисляет значение факториала небольшого целого числа.

Целочисленная переменная n является входом функции и также называется параметром функции.

Если функция определена после функции main(), то ее прототип должен быть указан int fact (int);

вверху, чтобы компилятор не помечал ошибку прямой ссылки. В определении прототипа указывается имя функции, количество и тип каждого параметра, а также тип выходных данных.

Все фрагменты кода, такие как прототип функции, вызывающая основная программа и полное определение функции, показаны ниже

Обычные результаты выполнения этого кода показаны ниже:

Примеры функций
Пример 1

Напишите функцию для определения максимума двух целых чисел x и y. Ответ:

Эта функция принимает на вход два целых числа x и y. Он выбирает x как результат, если x больше, чем y; в противном случае для результата выбирается y.

Пример 2:

Напишите функцию, которая находит максимальное из трех целых чисел x, y и z. Ответ:

Чтобы начать с x, предполагается, что это результат. Затем результат сравнивается с y и z. если y или z больше, чем результат, y или z выбирается для результата соответственно.

Одна и та же функция может состоять из функции max2, как показано ниже:

Этот расчет показывает использование функциональной композиции max(x, y, z) = max(x, max(y,z))

Пример 3

Напишите функцию, которая возвращает количество трехзначных натуральных чисел, которые делятся либо на 4, либо на 5, но не на оба числа.

Ответ: эта функция сначала просматривает все возможности для трехзначных чисел, затем проверяет, делится ли это текущее значение «i» на 4 ИЛИ 5, и в то же время проверяет, не является ли оно двойным подсчетом другого числа. .

Пример 4

Напишите функцию, которая будет возвращать истину, если заданное число n является простым, иначе она должна возвращать ложь.

Ответ: Эта функция проверяет все делители от 2 до n/2 -1 включительно. Он выйдет заранее, если найдет делитель до завершения цикла. Если код завершает цикл, это означает, что число не имеет делителя и, следовательно, является простым числом.

Пример 5

Напишите функцию, которая будет возвращать true, если заданное число является палиндромом, в противном случае она должна возвращать false.Число называется палиндромом, если оно читается одинаково независимо от того, просматривается ли оно слева направо или наоборот. Например, 506605 — это палиндром, а 5123 — нет.

Ответ: Логика палиндрома состоит в том, чтобы перевернуть заданное число n. Это делается циклом while. Заданное число n является палиндромом тогда и только тогда, когда исходное n и его обращение идентичны.

Читайте также: