LoginSignup
4
4

More than 5 years have passed since last update.

ズンドコキヨシ with Swift 〜 たまには無限ループ

Last updated at Posted at 2016-03-14

はじめに

最近swiftを書いてなくての演習。

速度重視なのか、ロジックが画期的なのか、とりあえずやれればいいのか
いろんな要素を限定せずに考えさせる出題者は素晴らしいなと。

方針1

ループで溜まったら終わる。ズンとかどうでもいい

swift
import Foundation

let zundoko: [String] = [ "ズン", "ドコ" ]

var zundokoList:[String] = [];
while (true){
    let index = (Int)(arc4random_uniform(2))
    print("\(zundoko[index])")
    zundokoList.append(zundoko[index])
    //"ドコ"が来たら判定
    if (index == 1){
        if (zundokoList.count > 4){
            print("キ・ヨ・シ!")
            break
        } else {
            zundokoList.removeAll()
        }
    }
}

//確認用
print(zundokoList);

方針2

カウントで判定してみる

swift
import Foundation

let zundoko: [String] = [ "ズン", "ドコ" ]

var zundokoCounter = 0;
while (true){
    let index = (Int)(arc4random_uniform(2))
    print("\(zundoko[index])")
    //"ズン"がきたらカウント上げ
    if (index == 0){
        zundokoCounter++
   //"ドコ"がきたら判定
    } else {
        if (zundokoCounter < 4) {
            zundokoCounter = 0;
        } else {
            print("キ・ヨ・シ!")
            break
        }
    }
}

結果はこっちの方が流れがわかりやすい
スクリーンショット 2016-03-14 22.29.13.png

新人PGに向けて

新人プログラマ応援タグをつけたのは、
Mac使いのプログラマに取ってXcodeはObjective-Cやswiftに限定せず、別の言語でも活用できるわりとオールマイティな無料ツールだから。絶対に入れるべき。
playgroundの視覚効果は非常にわかりやすい。

無限ループにはお気をつけて。

さいごに

NSStringとか書かなくなってたんだ。playground面白い。

4
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4