Skip to content

Instantly share code, notes, and snippets.

@Binary-Finery
Created October 13, 2018 08:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Binary-Finery/3f7823b5ca8a09db8b25f5d9135d84c8 to your computer and use it in GitHub Desktop.
Save Binary-Finery/3f7823b5ca8a09db8b25f5d9135d84c8 to your computer and use it in GitHub Desktop.
random uk lotto number generator
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.widget.RadioButton
import kotlinx.android.synthetic.main.activity_main.*
import java.util.*
/*
random UK lottery number generator.
generates a specified quantity of random numbers
in the range of 1 to 59 (inclusive).
quantity of random numbers is selected by the user
using radio buttons inside a radio group
*/
class MainActivity : AppCompatActivity() {
var qty = 6
val max = 59
val list = mutableListOf<Int>()
lateinit var str: String
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
supportActionBar?.hide()
r5.isChecked = true
radio_group.setOnCheckedChangeListener({ group, radio_id ->
val radio: RadioButton = findViewById(radio_id)
qty = Integer.parseInt(radio.text.toString())
})
button.setOnClickListener { gen() }
}
fun gen(){
list.clear()
str = ""
button.isEnabled = false
while (list.size < qty) {
val n = Random().nextInt(max) + 1
if (!list.contains(n)) list.add(n)
}
list.sort()
for (i in 0 until list.size)
str += "${list[i]} "
text_view.text = str
button.isEnabled = true
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment