Составить программу, которая для натуральных чисел m и n вычисляет период десятичной дроби m/n - VB
Формулировка задачи:
Помогите пожалуйста сделать такую интересную программу(а то все перепробывал нифига не выходит)
Составить программу, которая для натуральных чисел m и n вычисляет период десятичной дроби m/n. Hапример, для дроби 1/7 периодом будет (142857), а если дробь конечная, то ее период состоит одной цифры 0.
Решение задачи: «Составить программу, которая для натуральных чисел m и n вычисляет период десятичной дроби m/n»
textual
Листинг программы
Function p$(n, m) Const L = 200 Dim tr%, i%, j%, k%, o% Dim t$, r$, r1r Dim nr nr = n: t = "" For i = 1 To L n = n - Int(n / m) * m t = t & Int(10 * n / m) n = n * 10 Next i For o = 1 To L \ 3 For j = o To L \ 3 + 1 For i = j To L \ 3 + 2 r = Mid(t, j, i - j + 1) tr = 0: r1 = 0 For k = i + 1 To L - (i - j + 1) Step Len(r) r1 = Mid(t, k, i - j + 1) If r1 <> r Then tr = 1 Exit For End If Next k If tr = 0 Then p = nr & "/" & m & " = " & nr \ m & "." & Mid(t, 1, j - 1) & "(" & r1 & ")" Exit Function End If Next i Next j Next o p = nr & "/" & m & " = " & nr \ m & "." & Mid(t, 1, j - 1) End Function Private Sub Command1_Click() m = Val(Text2.Text) n = Val(Text1.Text) If m <> 0 Then Label1 = p(n, m) End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д