Triangular coded msg in file

Decodes message from file based on number in each line of text.

Attached file ... coding_qual_input.txt
has lines of text, each line has number, then space, then text
The goal is to read these lines and create full statements based on numbers in each line
The numbers are as below, triangular number, meaning
1, 3, 6, 10, 15, 21, 28, ....


Found formula online
n = any integer
xn = number found in text
xn = n (n + 1) / 2
n = (sqr(8 * xn + 1) - 1) / 2
Result from attached file
    huge wish electric lot visit offer all our system now card current way check parent whole design skill wait man people deal planet moment

This one was part of longer task I was told to fix today.

CodeFunctionName
What is this?

Public

Tested

Original Work
Function FileSpecialDecode(message_file)
    Open message_file For Input As #1
    mssg = Input(LOF(1), #1)
    outmsg = ""
    For Each line1 In Split(mssg, vbCrLf)
    If line1 > "" Then
        line1_1 = CInt(Left(line1, InStr(line1, " ") - 1))
        line1_2 = Mid(line1, InStr(line1, " ") + 1)
        line1_3 = (8 * line1_1) + 1 ' [ n = \frac{{\sqrt{{8x_n + 1}} - 1}}{2} ]
        line1_3 = Sqr(line1_3) - 1
        line1_3 = line1_3 / 2
        If line1_3 = CInt(line1_3) Then outmsg = outmsg & line1_2 & " "
    End If
    Next
    FileSpecialDecode = outmsg
    Close
End Function

message_file

Views 329

Downloads 58

CodeID
DB ID