Guest User

Untitled

a guest
Mar 22nd, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.30 KB | None | 0 0
  1. Option Explicit On
  2. Option Strict On
  3. Option Infer On
  4. Option Compare Text
  5. Imports System.Windows.Forms
  6. Imports System.IO
  7.  
  8. Module FizzBuzz
  9.  
  10. Sub Main()
  11. Dim arrayOfStrings As String() = GetInput("C:tempfizzbuzz.txt")
  12. Dim arrayOfIntegers = ConvertMe(arrayOfStrings)
  13. arrayOfStrings = FizzBuzzMe(arrayOfStrings, arrayOfIntegers)
  14. Dim concatenatedArray As String = WillYouBeMine(arrayOfStrings)
  15. WriteFizzBuzzFile(concatenatedArray)
  16. End Sub
  17.  
  18. Private Function GetInput(ByVal path As String) As String()
  19. Dim returnText As String = File.ReadAllText(path)
  20. Dim returnArray As String() = returnText.Split(New String() {","}, StringSplitOptions.None)
  21. Return returnArray
  22. End Function
  23.  
  24. Private Function ConvertMe(ByVal arrayOfStrings As String()) As Integer()
  25. Return Array.ConvertAll(arrayOfStrings, Function(str) Int32.Parse(str))
  26. End Function
  27.  
  28. Private Function FizzBuzzMe(ByVal arrayOfStrings As String(), ByVal arrayOfIntegers As Integer()) As String()
  29. Dim i As Integer
  30. For i = 0 To arrayOfStrings.Length - 1
  31. If Not arrayOfIntegers(i) Mod 15 = 0 Then
  32. If arrayOfIntegers(i) Mod 3 = 0 Then
  33. arrayOfStrings(i) = "fizz"
  34. ElseIf arrayOfIntegers(i) Mod 5 = 0 Then
  35. arrayOfStrings(i) = "buzz"
  36. End If
  37. Else : arrayOfStrings(i) = "fizzbuzz"
  38. End If
  39. Next
  40. Return arrayOfStrings
  41. End Function
  42.  
  43. Private Function WillYouBeMine(ByVal stringArray As String()) As String
  44. Return String.Join(",", stringArray)
  45. End Function
  46.  
  47. Private Sub WriteFizzBuzzFile(ByVal concatenatedArray As String)
  48. Const NEW_FILE As String = "C:Tempfizzbuzzreturn.txt"
  49. Dim fileAuthor As New StreamWriter(NEW_FILE)
  50. If Not File.Exists(NEW_FILE) Then File.CreateText(NEW_FILE)
  51. fileAuthor.WriteLine(concatenatedArray)
  52. fileAuthor.Close()
  53. End Sub
  54.  
  55. End Module
  56.  
  57. Private Function FizzBuzzMe(ByVal arrayOfIntegers As Integer()) As String()
  58. Dim arrayOfStrings As New String(arrayOfIntegers.Length)
  59. Dim i As Integer
  60. For i = 0 To arrayOfStrings.Length - 1
  61. If Not arrayOfIntegers(i) Mod 15 = 0 Then
  62. If arrayOfIntegers(i) Mod 3 = 0 Then
  63. arrayOfStrings(i) = "fizz"
  64. ElseIf arrayOfIntegers(i) Mod 5 = 0 Then
  65. arrayOfStrings(i) = "buzz"
  66. End If
  67. Else : arrayOfStrings(i) = "fizzbuzz"
  68. End If
  69. Next
  70. Return arrayOfStrings
  71. End Function
  72.  
  73. Private Sub WriteFizzBuzzFile(ByVal concatenatedArray As String)
  74. Const NEW_FILE As String = "C:Tempfizzbuzzreturn.txt"
  75. Using fileAuthor As New StreamWriter(NEW_FILE)
  76. fileAuthor.WriteLine(concatenatedArray)
  77. End Using
  78. End Sub
  79.  
  80. Private Function ConvertMe(ByVal arrayOfStrings As String()) As Integer()
  81. Return Array.ConvertAll(arrayOfStrings, Function(str) Integer.Parse(str))
  82. End Function
  83.  
  84. Sub Main()
  85. Dim arrayOfStrings As String() = GetInput("C:tempfizzbuzz.txt")
  86. Dim arrayOfIntegers = ConvertMe(arrayOfStrings)
  87. arrayOfStrings = FizzBuzzMe(arrayOfIntegers)
  88. Dim concatenatedArray As String = String.Join(",", arrayOfStrings)
  89. WriteFizzBuzzFile(concatenatedArray)
  90. End Sub
  91.  
  92. Private Function FizzBuzzMe(ByVal arrayOfIntegers As Integer()) As String()
  93. Dim arrayOfStrings(arrayOfIntegers.Length) As String
  94. Dim i As Integer
  95. For i = 0 To arrayOfStrings.Length - 1
  96. arrayOfStrings(i) = ""
  97.  
  98. If i Mod 3 = 0 Then
  99. arrayOfStrings(i) &= "fizz"
  100. End If
  101.  
  102. If i Mod 5 = 0 Then
  103. arrayOfStrings(i) &= "buzz"
  104. End If
  105. Next
  106. Return arrayOfStrings
  107. End Function
  108.  
  109. Private Function GetInput(ByVal path As String) As String()
  110. Return File.ReadAllText(path).Split(New String() {","}, StringSplitOptions.None)
  111. End Function
  112.  
  113. For i As Integer = 0 To arrayOfStrings.Length - 1
  114.  
  115. Private Iterator Function FizzBuzzMe(ByVal arrayOfIntegers As Integer()) As IEnumerable(Of String)
  116. For i As Integer = 0 To arrayOfIntegers.Length - 1
  117. Dim line As String = ""
  118.  
  119. If i Mod 3 = 0 Then
  120. line &= "fizz"
  121. End If
  122.  
  123. If i Mod 5 = 0 Then
  124. line &= "buzz"
  125. End If
  126.  
  127. Yield line
  128. Next
  129. End Function
  130.  
  131. Sub Main()
  132. Dim arrayOfStrings As String() = GetInput("C:tempfizzbuzz.txt")
  133. Dim arrayOfIntegers = ConvertMe(arrayOfStrings)
  134. arrayOfStrings = FizzBuzzMe(arrayOfIntegers).ToArray()
  135. Dim concatenatedArray As String = String.Join(",", arrayOfStrings)
  136. WriteFizzBuzzFile(concatenatedArray)
  137. End Sub
  138.  
  139. Private Function FizzBuzzMe(ByVal arrayOfIntegers As Integer()) As IEnumerable(Of String)
  140. Return arrayOfIntegers.Select(Function(x)
  141. Dim value As String = ""
  142. If x Mod 3 = 0 Then value &= "fizz"
  143. If x Mod 5 = 0 Then value &= "buzz"
  144. Return value
  145. End Function)
  146. End Function
  147.  
  148. Private Function FizzBuzzMe(ByVal arrayOfIntegers As Integer()) As IEnumerable(Of String)
  149. Return arrayOfIntegers.Select(Function(x)
  150. Return If(x Mod 3 = 0, "fizz", "") & If(x Mod 5 = 0, "buzz", "")
  151. End Function)
  152. End Function
  153.  
  154. Private Function FizzBuzzMe(ByVal arrayOfIntegers As Integer()) As IEnumerable(Of String)
  155. Return arrayOfIntegers.Select(Function(x) If(x Mod 3 = 0, "fizz", "") & If(x Mod 5 = 0, "buzz", ""))
  156. End Function
  157.  
  158. Sub Main()
  159. Dim arrayOfStrings As String() = GetInput("C:tempfizzbuzz.txt")
  160. Dim arrayOfIntegers = ConvertMe(arrayOfStrings)
  161. arrayOfStrings = FizzBuzzMe(arrayOfIntegers).ToArray()
  162. Dim concatenatedArray As String = String.Join(",", arrayOfStrings)
  163. WriteFizzBuzzFile(concatenatedArray)
  164. End Sub
  165.  
  166. Private Function GetInput(ByVal path As String) As String()
  167. Return File.ReadAllText(path).Split(New String() {","}, StringSplitOptions.None)
  168. End Function
  169.  
  170. Private Function ConvertMe(ByVal arrayOfStrings As String()) As Integer()
  171. Return Array.ConvertAll(arrayOfStrings, Function(str) Integer.Parse(str))
  172. End Function
  173.  
  174. Private Function FizzBuzzMe(ByVal arrayOfIntegers As Integer()) As IEnumerable(Of String)
  175. Return arrayOfIntegers.Select(Function(x)
  176. Return If(x Mod 3 = 0, "fizz", "") & If(x Mod 5 = 0, "buzz", "")
  177. End Function)
  178. End Function
  179.  
  180. Private Sub WriteFizzBuzzFile(ByVal concatenatedArray As String)
  181. Const NEW_FILE As String = "C:Tempfizzbuzzreturn.txt"
  182. Using fileAuthor As New StreamWriter(NEW_FILE)
  183. fileAuthor.WriteLine(concatenatedArray)
  184. End Using
  185. End Sub
  186.  
  187. 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
  188.  
  189. ,,fizz,,buzz,fizz,,,fizz,buzz,,fizz,,,fizzbuzz
  190.  
  191. If arrayOfIntegers(i) Mod 15 = 0 Then
  192. arrayOfStrings(i) = "fizzbuzz"
  193. ElseIf arrayOfIntegers(i) Mod 3 = 0 Then
  194. arrayOfStrings(i) = "fizz"
  195. ElseIf arrayOfIntegers(i) Mod 5 = 0 Then
  196. arrayOfStrings(i) = "buzz"
  197. End If
  198.  
  199. Dim returnArray As String() = returnText.Split({","c})
  200.  
  201. If Not File.Exists(NEW_FILE) Then File.CreateText(NEW_FILE)
  202.  
  203. Dim fileAuthor As New StreamWriter(NEW_FILE, true)
  204.  
  205. Sub WriteResults(inFile As String, outFile As String)
  206. Using inStream As New System.IO.StreamReader(inFile)
  207. Using outStream As New System.IO.StreamWriter(outFile, False)
  208. Do Until inStream.EndOfStream
  209. Dim test As Integer = 0
  210. '44 is ASCII code for the comma
  211. Do Until inStream.Peek = 44 OrElse inStream.EndOfStream
  212. test += inStream.Read - 48
  213. Dim pek As Integer = inStream.Peek
  214. If pek <> 44 AndAlso Not inStream.EndOfStream Then
  215. test *= 10
  216. test += inStream.Read - 48
  217. pek = inStream.Peek
  218. End If
  219. Loop
  220. inStream.Read()
  221. If test Mod 3 = 0 Then
  222. outStream.Write("fizz")
  223. End If
  224. If test Mod 5 = 0 Then
  225. outStream.Write("buzz")
  226. End If
  227. If Not inStream.EndOfStream Then
  228. outStream.Write(",")
  229. End If
  230. test = 0
  231. Loop
  232. End Using
  233. End Using
  234.  
  235. End Sub
Add Comment
Please, Sign In to add comment