Найти сумму и произведение цифр данного числа - QBasic
Формулировка задачи:
Во всех задачах
Имя входного файла:input.txt
Имя выходного файла:output.txt
Ограничение по времени:1 секунда
Ограничение по памяти:64 мегабайта
Сумма и произведение цифр Дано четырехзначное число. Найти сумму и произведение цифр данного числа.Входные данные:
Одно целое четырехзначное число N (1000≤N≤9999).Входные данные:
Вывести в первой строке сумму цифр числа N, а во второй строке произведение цифр числа N. Пример: input.txt 1234 output.txt 10 24 Как написать это в программе Basic? Напишите пожалуйстаРешение задачи: «Найти сумму и произведение цифр данного числа»
textual
Листинг программы
DECLARE FUNCTION M! (i!) CLS OPEN "input.txt" FOR INPUT AS #1 OPEN "output.txt" FOR OUTPUT AS #2 DIM SHARED n AS STRING INPUT #1, n p = 1 FOR i = 1 TO LEN(n) s = s + M(i) p = p * M(i) NEXT PRINT #2, s PRINT #2, p END FUNCTION M (i) M = VAL(MID$(n, i, 1)) END FUNCTION
Объяснение кода листинга программы
Выше представлен код на языке QBasic, который выполняет следующие действия:
- DECLARE FUNCTION M! (i!) - Эта строка объявляет функцию с именем M, которая принимает один параметр i.
- CLS - Очищает экран перед выводом результатов.
- OPEN
input.txt
FOR INPUT AS #1 - Открывает файлinput.txt
для чтения. - OPEN
output.txt
FOR OUTPUT AS #2 - Открывает файлoutput.txt
для записи. - DIM SHARED n AS STRING - Объявляет переменную n как строку и присваивает ей значение, которое будет получено из файла
input.txt
. - INPUT #1, n - Считывает строку из файла
input.txt
и присваивает ее значение переменной n. - p = 1 - Инициализирует переменную p единицей.
- FOR i = 1 TO LEN(n) - Начинает цикл, который будет выполняться для каждого символа в строке n.
- s = s + M(i) - Прибавляет значение функции M для каждого символа к переменной s.
- *p = p M(i)** - Умножает значение функции M для каждого символа на переменную p.
- NEXT - Переходит к следующему символу в цикле.
- PRINT #2, s - Выводит значение переменной s в файл
output.txt
. - PRINT #2, p - Выводит значение переменной p в файл
output.txt
. - END - Конец программы.
- FUNCTION M (i) - Объявляет функцию с именем M.
- M = VAL(MID$(n, i, 1)) - Функция M возвращает числовое значение первого символа в строке n, начиная с позиции i. Для этого используется функция MID$ для получения подстроки, а затем функция VAL для преобразования этой подстроки в число.
Таким образом, данный код считывает строку из файла
input.txt
, вычисляет сумму и произведение цифр этой строки и записывает результаты в файлoutput.txt
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д