więc moim celem w tym kodebicie jest losowe rzucenie dwoma kośćmi, a jak wszyscy wiemy, twoja zwykła kość ma tylko 6 boków, więc zaimportowałem Foundation, aby uzyskać dostęp do arc4random_uniform (UInt32). Próbowałem użyć zakresu (1..7), aby uniknąć przypadkowego uzyskania 0, ale zwróciło to błąd, który nie podobał mi się zbytnio. Próbowałem to zrobić:
dice1 = arc4random_uniform(UInt32(1..7))
jednak to wróciło
Nie można znaleźć przeciążenia dla „init”, które akceptuje podane argumenty
Mam nadzieję, że to wystarczająca ilość informacji, aby mi pomóc niesamowite debi :)
Zwróć uwagę, że robię to na placu zabaw, aby ćwiczyć szybkość. Nie jest konieczne, żebym się tego nauczył; po prostu majstruję, zanim wskoczę do tworzenia rzeczywistych aplikacji: D
//imports random number function
import Foundation
//creates data storage for dice roll
var dice1: UInt32 = 0
var dice2: UInt32 = 0
//counter variable
var i = 0
//how many times snake eyes happens
var snakeeyes = 0
//how many times a double is rolled
var `double` = 0
//rolls dice 100 times
while i < 100{
//from here
//sets dice roll
Zwraca to błąd „Zakres $ T3” nie można zamienić na UInt32
dice1 = arc4random_uniform(1..7)
dice2 = arc4random_uniform(1..7)
//checks for snake eyes
if dice1 == 1 && dice2 == 1 {
snakeeyes = snakeeyes + 1
}
//checks for doubles
if dice1 == dice2{
`double` = `double` + 1
}
//increases counter
i = i + 1
//to here
}
println("You got Snake Eyes \(snakeeyes) times.")
println("You got Doubles, \(`double`) times.")
dice1 = arc4random_uniform(6) + 1
aby uzyskać zakres od 1 do 6. Nie wykonuję celu C w iOS ani nie mam żadnej wiedzy na temat szybkiego języka. Metoda losowa powinna zwrócić 0 - 5, a +1 będzie wynosić 1 - 6.