Другие языки программирования и технологии

Всем привет! Помогите, пожалуйста, создать блок - схему к следующему коду и заданию. Заранее большое спасибо!

Задание: Дано трехзначное целое число. Определить сумму и произведение первой и третьей цифры этого числа.
Вот код:
АЛГ Сум_произв
НАЧ
ЦЕЛ number, first, second, third, sum, product
ВЫВОД "Введите трехзначное число"
ВВОД number
ЕСЛИ number < 100 ИЛИ number > 999 ТО
ВЫВОД "Неверный ввод. Число должно быть трехзначным"
ИНАЧЕ
ВЫВОД "Верный ввод"
ВСЕ
first := number DIV 100
second := (number DIV 10) MOD 10
third := number MOD 10
sum := first + third
product = first * third
ВЫВОД "Сумма первой и третьей цифры числа: ", sum
ВЫВОД "Произведение первой и третьей цифры числа ", product
КОН
Петр Гасай
Петр Гасай
78
1. Начало
2. Объявление переменных: number, first, second, third, sum, product
3. Вывод на экран "Введите трехзначное число"
4. Ввод числа number
5. Если number < 100 ИЛИ number > 999, то
6. Вывод на экран "Неверный ввод. Число должно быть трехзначным"
7. Иначе
8. Вывод на экран "Верный ввод"
9. Вычисление первой цифры числа: first = number DIV 100
10. Вычисление второй цифры числа: second = (number DIV 10) MOD 10
11. Вычисление третьей цифры числа: third = number MOD 10
12. Вычисление суммы первой и третьей цифры числа: sum = first + third
13. Вычисление произведения первой и третьей цифры числа: product = first * third
14. Вывод на экран "Сумма первой и третьей цифры числа: " + sum
15. Вывод на экран "Произведение первой и третьей цифры числа: " + product
16. Конец
 Начало 
├─> Объявление переменных
├─> Вывод "Введите трехзначное число"
├─> Ввод number
├─> Если number < 100 ИЛИ number > 999
│ ├─> Вывод "Неверный ввод"
│ └─> Конец
├─> Иначе
│ ├─> Вывод "Верный ввод"
│ ├─> first = number DIV 100
│ ├─> second = (number DIV 10) MOD 10
│ ├─> third = number MOD 10
│ ├─> sum = first + third
│ ├─> product = first * third
│ ├─> Вывод "Сумма первой и третьей цифры числа: " + sum
│ └─> Вывод "Произведение первой и третьей цифры числа: " + product
└─> Конец
Вот ещё вариант:
┌──────┐ ┌──────────────────────┐ ┌───────┐
│ НАЧАЛО │ │ ВЫВОД "Введите трехзначное число" │ │
└──────┘ └──────────────────────┘ └───────┘
│ │ │
▼ ▼ ▼
┌──────┐ ┌──────────────────────┐ ┌───────┐
│ ВВОД │◀─────────┤ number < 100 ИЛИ number > 999 ├───────────▶│
└──────┘ └──────────────────────┘ └───────┘
│ │ │
▼ ▼ ▼
┌──────┐ ┌──────────────────────┐ ┌───────┐
│ ВЫВОД │◀─────────┤ "Неверный ввод. Число должно быть трехзначным" │ │
└──────┘ └──────────────────────┘ └───────┘


┌───────────────────────┐
│ ВЫВОД "Верный ввод" │
└───────────────────────┘


┌──────────────────────────────────────────────────────────────────────────────────────┐
│ АЛГ Сум_произв │
│ │
│ first := number DIV 100 │
│ second := (number DIV 10) MOD 10 │
│ third := number MOD 10 │
│ sum := first + third │
│ product = first * third │
│ ВЫВОД "Сумма первой и третьей цифры числа: ", sum │
│ ВЫВОД "Произведение первой и третьей цифры числа ", product │
└──────────────────────────────────────────────────────────────────────────────────────┘


┌──────┐ ┌──────────────────────┐ ┌───────┐
│ КОН │◀─────────┤ КОНЕЦ │ │ │
└──────┘ └──────────────────────┘ └───────┘
Roman Sarafanov
Roman Sarafanov
3 316
Лучший ответ
Roman Sarafanov Данный код написан на псевдокоде и содержит ошибки в строке "product = first * third". Вместо знака равенства нужно использовать знак двоеточия с символом присваивания (:=), чтобы переменной product было присвоено значение произведения первой и третьей цифры числа.

Кроме того, можно улучшить код, добавив проверку на ввод числа с помощью цикла, чтобы пользователь мог вводить число до тех пор, пока оно не будет трехзначным.
Roman Sarafanov Исправленный код с проверкой на ввод будет примерно такой:

АЛГ Сум_произв
НАЧ
ЦЕЛ number, first, second, third, sum, product
ПОВТОРИ
ВЫВОД "Введите трехзначное число"
ВВОД number
ЕСЛИ number < 100 ИЛИ number > 999 ТО
ВЫВОД "Неверный ввод. Число должно быть трехзначным"
ИНАЧЕ
ВЫВОД "Верный ввод"
КОН
ПОКА number < 100 ИЛИ number > 999
first := number DIV 100
second := (number DIV 10) MOD 10
third := number MOD 10
sum := first + third
product := first * third
ВЫВОД "Сумма первой и третьей цифры числа: ", sum
ВЫВОД "Произведение первой и третьей цифры числа ", product
КОН
Данный код представляет собой алгоритм, который позволяет решить задачу на определение суммы и произведения первой и третьей цифры трехзначного числа.

Алгоритм начинается с запроса ввода трехзначного числа. Если число не является трехзначным, выводится сообщение об ошибке и процесс завершается. Иначе, выводится сообщение о верном вводе и происходит разбиение числа на цифры – первую, вторую и третью.

Для этого используются операции деления и определения остатка от деления. Первая цифра получается путем целочисленного деления числа на 100, так как при делении на 100 удаляется два последних знака (в данном случае 00). Вторая цифра получается с помощью операции взятия остатка от деления числа на 10, так как при делении на 10 удаляется последняя цифра. Третья цифра получается путем определения остатка от деления числа на 10.

Затем вычисляются сумма первой и третьей цифры и произведение первой и третьей цифры.

Наконец, выводятся значения суммы и произведения первой и третьей цифры числа.

Код решает поставленную задачу. Однако, можно было бы добавить проверки на корректность вводимых данных, например, на то, что введенное число является целым, либо на то, что все цифры в числе различны. Также, можно было бы использовать сокращенную запись для вычисления второй цифры, используя операцию деления по модулю 10.