一畳のくつろぎタイム

このブログでは紹介する商品画像をAmazonアソシエイトより借りています。画像やリンクにはアフィリエイト広告が含まれる事があります

2018年6月18日月曜日

Swift3,Swift4で乗算のループ

Swift3以上?Swift4でObjective-Cで書いたfor文1000まで10倍の乗算ループを書こうとしたら
for( int i=1; i<1000; i*=10 ) {
    NSLog(@"Hello %d",i);
}
予想以上に面倒で困った、詳細は不明だが、こうかけば期待通りに動いた
参照先https://code-examples.net/ja/q/2636c3a
// 乗算ループの書き方
let num = 1000
for i in sequence(first: 1, next: { $0 * 10 }).prefix(while: { num/$0 > 0 }) {
    print(i)
}
while文が残っていて本当によかったと感じる、Swift4以降でもうちょっと簡単な構文を期待したい。
var i = 1

while( i <= 1000 ) {
    print(i)
    i *= 10
}