Well, actually, that statement is producing a "random" pointer into the alphabet. It then uses that random number and compares it to the pointer in the alphabet for the letter it is seeking. For instance "T" is the 20th letter, "O" is the 15th letter, so on. If it matches it prints the letter and goes on to the next letter. If it does not match it loops and gets another number. The consequence is that each letter is preselected and only a "random" period is generated until the letter is printed.
The only variable on each run of the program is the number of attempts required to get the desired pointer (or index number) for the character in a sequential, predetermined, position.
And the odds are merely 1 in 26 for each attempt!