'This file is named missquare.vb 'Generates random U[0, 1) variates by the MidSquare method (not very good, but good practice using loops) Imports System Public Module LoopIntro Sub Main() 'seed is a four-digit starting value (1000 <= seed <= 9999) 'n is the number of random variates to generate (n > 0) Dim n, seed As Integer 'read from user Dim i, sqr, mid As Integer System.Console.Writeline("This program was written by Kevin Jones. All rights reserved...") System.Console.Writeline() System.Console.Write("How many random numbers do you require? ") n = System.Console.Readline() System.Console.Write("Please enter the four-digit seed value (between 1000 and 9999): ") seed = System.Console.Readline() while not(seed >= 1000 and seed <= 9999) System.Console.Writeline("Sorry, the seed you entered is invalid. Try again.") System.Console.Write("Please enter the four-digit seed value (between 1000 and 9999): ") seed = System.Console.Readline() end while 'now seed is good mid = seed for i = 1 to n sqr = mid ^ 2 'square the four-digit number sqr = sqr \ 100 'lose the right-most 2 digits mid = sqr Mod 10000 'keep the new right-most 4-digits (chooses "middle 4" of sqr) System.Console.Writeline(mid / 10000.0) next i System.Console.Writeline("Thanks...Bye!") End Sub End Module