Нахождение двух неизвестных в прогрессии перебором - VB

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

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

Здравствуйте! Как решить уравнение на перебор, надо найти a и b, если по условию: a*(b^7 – 1) = 233991 Бегло и прикидочно ввёл ограничения, составил программу, ниже.
Ворох проблем... Как долго мой VB6 будет считать? Может неправильно составил алгоритм? Как оптимизировать? Запустил программу в 10:18 мск, результатов пока никаких. Уже три четверти часа прошло. Вроде бы считает, а что — неизвестно. Как бы теряем время на неопределённость. Что посоветуете? Шучу: послали VB6 за пивом… и с концом. Не пива, не VB6. Помогите, пожалуйста. VB6 должен найти, угадать: 384*(2,5^7 – 1) = 233991; a = 384 и b = 2,5

Решение задачи: «Нахождение двух неизвестных в прогрессии перебором»

textual
Листинг программы
Option Explicit
 
Private Sub Command1_Click()
Dim a, b, k As Integer
 
'...................поставить в свойствах
'Text1.MultiLine = True
'Text1.ScrollBars = 2
'.........................................
 
Text1.Text = ""
For a = 350 To 400
b = (233991 / a + 1) ^ (1 / 7)
 ' For b = 1 To 3
        'If a * (b ^ 7 - 1) = 233991 Then
        k = k + 1
       Text1.Text = Text1.Text & k & ") a=" & a & "; b= " & b & vbNewLine
 
    'End If
  
  'Next b
Next a

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


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

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

8   голосов , оценка 4.25 из 5
Похожие ответы