Напишите программу начинающихся на 7 - QBasic
Формулировка задачи:
Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, начинающихся на 7. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется двухзначное число, начинающееся на 7. Количество чисел не превышает 200. Введенные числа по модулю не превышают 10000. Программа должна вывести одно число: сумму двузначных чисел, начинающихся на 7.
Помогите, не знаю как решать. Если есть легкое решение, то можете показать?
Решение задачи: «Напишите программу начинающихся на 7»
textual
Листинг программы
CLS RANDOMIZE TIMER DIM SUM AS LONG DIM a7 AS INTEGER DO INPUT "kol = "; kol LOOP UNTIL kol <= 200 SUM = 70 + INT(10 * RND) FOR i = 2 TO kol A = 1 + INT(10000 * RND) SELECT CASE A CASE IS >= 1000: a7 = A \ 1000 CASE IS >= 100: a7 = A \ 100 CASE IS >= 10: a7 = A \ 10 CASE ELSE: a7 = A END SELECT IF a7 = 7 THEN SUM = SUM + A NEXT PRINT "SUM ="; SUM
Объяснение кода листинга программы
- CLS - очистка экрана
- RANDOMIZE TIMER - инициализация генератора случайных чисел
- DIM SUM AS LONG - создание переменной типа LONG с именем SUM
- DIM a7 AS INTEGER - создание переменной типа INTEGER с именем a7
- DO - начало цикла
- INPUT
kol =
; kol - запрос на ввод числа (количество итераций) - LOOP UNTIL kol <= 200 - условие цикла, которое выполняется до тех пор, пока введенное число не превышает 200
- SUM = 70 + INT(10 * RND) - вычисление значения переменной SUM как суммы 70 и случайно сгенерированного числа от 0 до 10
- FOR i = 2 TO kol - начало цикла FOR, который выполняется от 2 до числа, введенного пользователем
- A = 1 + INT(10000 * RND) - вычисление случайного числа от 1 до 10000
- SELECT CASE A - начало условного оператора CASE, который проверяет значение переменной A
- CASE IS >= 1000: a7 = A \ 1000 - присваивание переменной a7 значения переменной A, разделенного на 1000, если A больше или равно 1000
- CASE IS >= 100: a7 = A \ 100 - присваивание переменной a7 значения переменной A, разделенного на 100, если A больше или равно 100
- CASE IS >= 10: a7 = A \ 10 - присваивание переменной a7 значения переменной A, разделенного на 10, если A больше или равно 10
- CASE ELSE: a7 = A - присваивание переменной a7 значения переменной A, если ни одно из предыдущих условий не выполнено
- IF a7 = 7 THEN SUM = SUM + A - проверка, является ли значение переменной a7 равным 7, и если да, то добавление значения переменной A к переменной SUM
- NEXT - переход к следующей итерации цикла FOR
- PRINT
SUM =
; SUM - вывод значения переменной SUM на экран
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д