icon
icon

繰り返し処理!Swiftで書くwhile/for文の使い方【初心者向け】

初心者向けにSwiftでwhile文・for文の書き方を解説しています。繰り返し処理は、基本的な知識として理解しておきたい内容ですが、開発現場でも頻出するので書き方を理解しましょう。実際にサンプルコードも紹介しています。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

監修してくれたメンター

nakamoto

アジマッチ有限会社代表取締役社長。書籍化歓迎。対応業務:PHP(Laravel)、機械学習、Vue.js、LAMP・AWS、越境EC、CTO、エンジニア採用、CTO、経営者の不安解決コンサルティング。

Swiftでの繰り返し処理の書き方について、テックアカデミーのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

ここでは、while文とfor文の書き方を実際にソースコードを書きながら紹介しています。

実務でも、iPhoneアプリ開発で繰り返し処理を行う際、while文やfor文を利用するので、ぜひ学習してみてください。

開発する中でも頻繁に使用するものなので、自分でも書いて理解してみましょう。

目次

1時間でできる無料体験!

繰り返し処理とは

繰り返し処理とは、Swiftで開発する場合、同じ処理を何度も繰り返し行うことです。

Swiftでは「ループ」と呼ばれる繰り返し操作をサポートする構文として、代表的に次の3つがあります。

  • while 文
  • repeat – while 文
  • for 〜 in 文

 

例えば、1 から 10 までを足した合計を計算するプログラムは、次のように実装します。

var total = 0
total += 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10
print(total) // => 55 と表示

 

10 ぐらいまでなら、このように 1 行で記述してもそれほど手間にはならないように見えます。

しかし、100 までの合計を出したいなど、合計する数が多ければ行数も多くなります。

また、プログラムを実行するまで、いくつ合計すればいいのか分からないという場合も繰り返し処理で対応できます。

繰り返し操作を行う構文を利用したプログラムを使うことで、より柔軟に変更への対応ができます。

次の、繰り返し処理のwhileを利用して1から10まで足すコードを利用することで、コードの一部を変更するだけで10回でも10,000回でも足し算することが可能です。

var count = 0
var total = 0
while count < 10 {
  count += 1
  total += count
}
print(total) // => 55 と表示

 

10,000 まで合計したい場合は、次のように実装します。

var count = 0
var total = 0
while count < 10000 {
  count += 1
  total += count
}
print(total) // => 50005000 と表示

プログラムは、変更の箇所が多くなれば多くなるほど、不具合が起きやすくなります。

繰り返し構文は、変更箇所を減らす重要なプログラムテクニックの1つです。

 

while 文 (while ループ) の書き方

ここではwhile文の書き方を解説します。

基本文法

while文は次のように条件と、繰り返し実行されるコードを記載します。

while に続けて条件式を記述して、 { } で繰り返し行う実行プログラムを記述します。

while の後の条件が満たされる限り、 { } 中のコードが繰り返し実行されます。

while 条件 {
  // 繰り返し実行されるコード
}

サンプルコード

サンプルコードを実行すると55と表示されます。

var count = 0
var total = 0
while count < 10 {
  count += 1
  total += count
}
print(total) // => 55 と表示

 

[PR] iPhoneアプリの開発で挫折しない学習方法を動画で公開中

repeat – while 文の書き方

ここではrepeat-while文の書き方を解説します。

基本文法

最初に repeat を置き、続けて { } で繰り返し行う実行プログラムを記述します。

末尾に while 条件 と繰り返し行うための条件を記述します。

while 文とは、最初に条件を見るか、後に条件を見るかが変わります。

repeat – while 文だと後に条件を見るので、状態に関わらず、必ず一度は { } の中のコードが実行されます。

repeat {
  // 繰り返し実行されるコード
} while 条件

サンプルコード

サンプルコードを実行すると55と表示されます。

var count = 0
var total = 0
repeat {
  count += 1
  total += count
} while count < 10
print(total) // => 55 と表示

 

コラム

コスパとタイパ、両方結果的に良くなる良くなる学び方とは?

「スクールは高いし時間も縛られて効率が悪い」と考える方は多いと思います。
もちろん、時間も費用もかかることは間違いありません。
ただ 結果的に無駄な学びにお金も時間もかける方がリスクが高いという考えもあります。

コスパ・タイパ最適化の参考として、 テックアカデミー卒業生がスクールを選んだ理由 をご紹介します。

  • ・困ったときに、質問や相談できる相手がいるため挫折しなかった
  • ・プロとして必要なスキルのみを深く学べたので無駄がなかった
  • ・副業案件の提供と納品までのサポートがあったので目的を達成できた

安価・短期間で広く浅く学んでも意味がありません。 本当に自分の目的が達成できるか、それが重要です。
自分にどのスキルや学び方が合っているか、どんな学習方法かなど、お気軽に 無料相談 に参加してみませんか?

カウンセラー・現役のプロへ、何でも気軽に無料相談可能。 30分か60分お好きな時間が選べて、かつ3回まで すべて無料で ご利用できます。
無理な勧誘は一切ない ので、お気軽にご参加ください。

今なら相談した方限定の割引・参加特典付き! 無料相談はこちら

for 〜 in 文 (for ループ、あるいは for – in ループ) の書き方

ここでは、for文について解説します。

基本文法

for 文では条件を記述する代わりに、繰り返しの元となる範囲や配列を in の後に記述します。

範囲は 0…10 や 0..<10 のように 「…」「..<」を使った記法を利用できます。

  • 前…後 : 「前」で始まり「後」まで続く範囲を指定します。「後」も範囲に含まれます。
  • 前..<後 : 「前」で始まり「後」の1つ前まで続く範囲を指定します。「後」は範囲に含まれません。

範囲や配列から元になる値が生成されて、それが for の後ろに記述した定数に代入されます。

for 定数 in 式 {
  // 繰り返し実行されるコード
}

サンプルコード

サンプルコードを実行すると55と表示されます。

var total = 0
for count in 0...10 {
  total += count
}
print(total) // => 55 と表示

for 〜 in 文のサンプルコードをみると、in 0…10 とあるので、 0 から 10 までの範囲で繰り返し処理を行うことが分かります。

for count とあるので、範囲の値 0 から 10 までが { } 内の繰り返し処理を行う前に count に代入されます。

{ } 内のコードでは 、count を定数として利用できます。

 

繰り返し構文に変換するために

繰り返し文を利用しないサンプルコードは次のコードでした。

var total = 0
total += 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10

 

繰り返し処理に変換する場合、どの部分で繰り返しが必要か考える必要があります。

例えば、繰り返しを利用しないサンプルコードは、次のように分解することが可能です。

つまり、total += の形で繰り返し処理されているため、繰り返し処理に変換できます。

var total = 0
total += 1
total += 2
total += 3
total += 4
total += 5
total += 6
total += 7
total += 8
total += 9
total += 10

 

1時間でできる無料体験!

繰り返し内の実行コードをスキップする・抜ける

ここでは、繰り返し実行中に処理を止めたり、処理を飛ばす場合を解説します。

break文で繰り返し処理を止める

break文を利用すると、繰り返し処理を途中で止めて、繰り返しを抜けることが可能です。

 

例えば、 100 までの数を合計する中で、合計が 100 を超えた時点で繰り返しを止めたい場合には、次のように実装します。

var count = 0
var total = 0
while count < 100 {   
  count += 1   
  total += count   
  if total > 100 {
    break
  }
}
print(total) // => 105 と表示

 

continue文で処理を飛ばす

ここでは、continue文を利用して、処理をスキップする方法を解説します。

 

例えば、 100 までの奇数の合計を求めたい場合には、次のように実装します。

var count = 0
var total = 0
while count < 100 {
  count += 1
  if count % 2 == 0 {
    // 偶数は足さずにスキップ
    continue
  }
  total += count
}
print(total) // => 2500 と表示

 

まとめ

今回は、Swiftで繰り返し処理について解説しました。

while文、repeat-while文、for-in文を利用することで繰り返し処理の実装ができました。

break文を利用することで、処理を止めることができました。

continue文を利用することで、処理を飛ばすことができました。

for文・while文は基本的な知識ですが、開発現場でも頻出するものなので、書き方を理解しておきましょう。

入門向けのSwift学習サイトもまとめているので、Swift習得を目指している方はご覧ください。

 

iPhoneアプリ開発を学習中の方へ

これで解説は終了です、お疲れさまでした。

  • つまずかず「効率的に」学びたい
  • 副業や転職後の「現場で使える」知識やスキルを身につけたい

プログラミングを学習していて、このように思ったことはありませんか?

テックアカデミーのiPhoneアプリコースでは、第一線で活躍する「プロのエンジニア」が教えているので、効率的に実践的なスキルを完全オンラインでしっかり習得できます。

合格率10%の選考を通過した、選ばれたエンジニアの手厚いサポートを受けながら、Swiftを学習・勉強して短期間でオリジナルのiOSアプリを開発できるようになります。

まずは一度、無料体験で学習の悩みや今後のキャリアについて話してみて、「現役エンジニアから教わること」を実感してみてください。

時間がない方、深く知ってから体験してみたい方は、今スグ見られる説明動画から先に視聴することをおすすめします!

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する