Swiftで行こう…第4回「ハイアンドローゲーム2」(もちゃち)
1 2 3 4 5 6 7 8 9 |
@IBOutlet weak var Guide: UILabel! @IBOutlet weak var Input: UITextField! var randInt = Int(arc4random_uniform(10)) override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. Guide.text = "0~9の数字を入れてボタンを押して下さい" } |
1 |
Guide.text = "0~9の数字を入れてボタンを押して下さい" |
1 |
var randInt = Int(arc4random_uniform(10)) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
import UIKit class ViewController: UIViewController { @IBOutlet weak var Guide: UILabel! @IBOutlet weak var Input: UITextField! var randInt = Int(arc4random_uniform(20)) override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. Guide.text = "0~19の数字を入れてボタンを押して下さい" } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func TouchBtnGo(sender: AnyObject) { var val = Input.text.toInt()! if val > randInt { Guide.text = "もっと小さいです" } else if val < randInt { Guide.text = "もっと大きいです" } else { Guide.text = "当たりです" } } } |
1 2 3 |
} else { Guide.text = "当たりです" } |
1 2 3 4 5 6 7 8 9 |
} else { var alert = UIAlertView() alert.title = "当たり" alert.message = "当たりです" alert.addButtonWithTitle("OK") alert.show() randInt = Int(arc4random_uniform(10)) Guide.text = "0~9の数字を入れてボタンを押して下さい" } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
import UIKit class ViewController: UIViewController { @IBOutlet weak var Guide: UILabel! @IBOutlet weak var Input: UITextField! var randInt = Int(arc4random_uniform(10)) override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. Guide.text = "0~9の数字を入れてボタンを押して下さい" } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func TouchBtnGo(sender: AnyObject) { var val = Input.text.toInt()! if val > randInt { Guide.text = "もっと小さいです" } else if val < randInt { Guide.text = "もっと大きいです" } else { var alert = UIAlertView() alert.title = "当たり" alert.message = "当たりです" alert.addButtonWithTitle("OK") alert.show() randInt = Int(arc4random_uniform(10)) Guide.text = "0~9の数字を入れてボタンを押して下さい" } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
import UIKit class ViewController: UIViewController { @IBOutlet weak var Guide: UILabel! @IBOutlet weak var Input: UITextField! @IBOutlet weak var Count: UILabel! var randInt = Int(arc4random_uniform(10)) var cnt:Int = 0 override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. Guide.text = "0~9の数字を入れてボタンを押して下さい" } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func TouchBtnGo(sender: AnyObject) { cnt = cnt + 1 Count.text = cnt.description + "回目" var val = Input.text.toInt()! if val > randInt { Guide.text = "もっと小さいです" } else if val < randInt { Guide.text = "もっと大きいです" } else { var alert = UIAlertView() alert.title = "当たり" alert.message = cnt.description + "回目で当たりです" alert.addButtonWithTitle("OK") alert.show() randInt = Int(arc4random_uniform(10)) cnt = 0; Guide.text = "0~9の数字を入れてボタンを押して下さい" } } } |
1 |
cnt = 0; |
さて前回最後の問題は解けたでしょうか?
まだ解らない人の為にヒントです。
@IBOutlet weak var Guide: UILabel!
@IBOutlet weak var Input: UITextField!
@IBOutlet weak var BtnGo: UIButton!
var randInt = Int(arc4random_uniform(10))
override func viewDidLoad() {
super:viewDidLoad()
Guide.text = “0~9の数字を入れてボタンを押して下さい”
}
この中の2箇所です。
1箇所は表示の問題と書いたので、
Guide.text = “0~9の数字を入れてボタンを押して下さい”
の部分です。0〜9を0〜19とすれば良いのは解ったのではないでしょうか。
もう一箇所は難しかったかも知れません。
var randInt = Int(arc4random_uniform(10))
ここの10を20と変えれば良いのです。
10で0〜9、20で0〜19というのが難しかったかも知れませんね。
コンピュータでは、0から数えるので、10とした時は0〜9、20とした時は0〜19という事が良くあります。
さて、今回作ったプログラムでは、一度終了しないと次のゲームが出来ません。それでは不便です。何回も遊べるようにしましょう。
else {
Guide.text = “当たりです”
}
の部分を変更します。
else {
var alert = UIAlertView()
alert.title = “当たり”
alert.message = “当たりです”
alert.addButtonWithTitle(“OK”)
alert.show()
randInt = Int(arc4random_uniform(10))
Guide.text = “0~9の数字を入れてボタンを押して下さい”
}
として下さい。
実行してみましょう。何回も遊べるのが判ったと思います。
さて、今度は、当たるまで何回かかったか判るようにしたいと思います。ラベルを一つ追加して、Countという名前でプログラム中で呼べるようにします。
そしてコードを以下のように変更して下さい。
下線付きの最後
cnt = 0;
一番後ろについているセミコロンは余計でした。つい癖で付けてしまいました。無くても大丈夫です。
今何回目か、何回で当たったかが判るようになりました。