Суммировать вводимые положительные числа - QBasic (27284)
Формулировка задачи:
Суммировать вводимые положительные числа так, что каждое число, порядковый номер которого кратен 3, игнорируется. Определить количество введенных и просуммированных чисел. При достижении текущей суммы значения К закончить работу. Заранее спасибо за помощь
Решение задачи: «Суммировать вводимые положительные числа»
textual
Листинг программы
- DECLARE SUB Vvod (sum!, kv!, ks!)
- CLS
- DIM SHARED k
- INPUT "K = "; k
- CALL Vvod(sum, kv, ks)
- PRINT "SUM ="; sum
- PRINT "VSEGO CHISEL ="; kv
- PRINT "SUM_CHISEL ="; ks
- END
- SUB Vvod (sum, kv, ks)
- IF sum >= k THEN EXIT SUB
- INPUT "N = "; n
- IF n > 0 AND n MOD 3 <> 0 THEN
- sum = sum + n
- ks = ks + 1
- END IF
- kv = kv + 1
- CALL Vvod(sum, kv, ks)
- END SUB
Объяснение кода листинга программы
- Установка начальных значений переменных:
sum
- текущая сумма вводимых чиселkv
- текущее количество введенных чиселks
- текущее количество чисел, которые делятся на 3
- Ввод числа
k
с клавиатуры, которое представляет собой границу для суммирования чисел - Вызов подпрограммы
Vvod(sum, kv, ks)
- Рекурсивный вызов подпрограммы
Vvod(sum, kv, ks)
с обновленными значениями переменныхsum
,kv
иks
- Проверка условия для прекращения рекурсии: если сумма текущего числа
n
большеk
, то происходит выход из подпрограммы - Ввод числа
n
с клавиатуры - Проверка условия для добавления числа
n
к сумме:n
больше 0n
не делится на 3 без остатка
- Обновление значений переменных
sum
,kv
иks
- Рекурсивный вызов подпрограммы
Vvod(sum, kv, ks)
с обновленными значениями переменныхsum
,kv
иks
- Вывод на экран значений переменных
sum
,kv
иks
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д