Вычислить 7 ^ 77 - QBasic

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. REM
  2. REM Контрольное вычисление
  3. REM 7 ^ 77 = 1.181 813 865 805 959 D+65
  4. REM
  5. DECLARE FUNCTION M! (i!)
  6. DECLARE FUNCTION ST$ (n!)
  7. DECLARE SUB Si7 ()
  8. CLS
  9. DIM SHARED S AS STRING
  10. S = "49"
  11. FOR i = 1 TO 75
  12. CALL Si7
  13. NEXT
  14. PRINT S
  15. END
  16. FUNCTION M (i)
  17. M = VAL(MID$(S, i, 1))
  18. END FUNCTION
  19. SUB Si7
  20. DIM t AS STRING
  21. FOR i = LEN(S) TO 1 STEP -1
  22. a = 7 * M(i) + p
  23. b = a MOD 10
  24. p = a \ 10
  25. t = ST(b) + t
  26. NEXT
  27. IF p THEN
  28. S = ST(p) + t
  29. ELSE
  30. S = t
  31. END IF
  32. END SUB
  33. FUNCTION ST$ (n)
  34. ST = LTRIM$(STR$(n))
  35. END FUNCTION

Решение задачи: «Вычислить 7 ^ 77»

textual
Листинг программы
  1. DIM i AS LONG, j AS LONG, l AS LONG, a(999) AS LONG, b AS LONG, c AS LONG
  2. a(0) = 1
  3. FOR i = 1 TO 77
  4.     j = -1
  5.     WHILE j < l OR c > 0
  6.         j = j + 1
  7.         b = a(j) * 7 + c
  8.         a(j) = b MOD 10
  9.         c = b \ 10
  10.     WEND
  11.     l = j
  12. NEXT i
  13. FOR i = 0 TO l
  14.     PRINT LTRIM$(STR$(a(l - i)));
  15. NEXT i
  16. PRINT

Объяснение кода листинга программы

  1. Установка начального значения переменной i равным 1.
  2. Установка начального значения переменной j равным -1.
  3. Установка начального значения переменной l равным -1.
  4. Установка начального значения переменной a(999) равным 1.
  5. Установка начального значения переменной b равным 0.
  6. Установка начального значения переменной c равным 0.
  7. Установка значения переменной a(0) равным 1.
  8. Цикл FOR для перебора значений i от 1 до 77.
  9. Установка начального значения переменной j равным -1.
  10. Условие WHILE для выполнения цикла, пока значение переменной j меньше значения переменной l или значение переменной c больше нуля.
  11. Увеличение значения переменной j на единицу.
  12. Вычисление значения переменной b как суммы произведения значения переменной a(j) на 7 и значения переменной c.
  13. Сохранение остатка от деления значения переменной b на 10 в переменной a(j).
  14. Вычисление значения переменной c как целой части от деления значения переменной b на 10.
  15. Повтор цикла WHILE до тех пор, пока значение переменной j меньше значения переменной l или значение переменной c больше нуля.
  16. Установка значения переменной l равным значению переменной j.
  17. Выход из цикла FOR.
  18. Цикл FOR для перебора значений i от 0 до значения переменной l.
  19. Вывод значения переменной a(l-i) с помощью функции PRINT.
  20. Выход из цикла FOR.
  21. Вывод символа новой строки с помощью функции PRINT.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.267 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут