要件定義
- 数字をソートアルゴリズムを使ってソートする(Swiftのソート関数は使わない)
- 日本語ひらがな、アルファベット小文字の1文字をソートする
- インプットは数字の場合と、文字の場合がある
(ただし、文字と数字の組み合わせはない、どちらか1種類のみの羅列が入力される) - 最後に昇順 or 降順の指定がある
- ユーザーは決まった手順を守るとは限らないので、その場合の例外の対応方法の組み込み
(無理矢理処理しても、エラーを返してもいい)
システム設計
- 文字列を「数字」か「文字」で区別する
- 「文字」の場合Unicode文字に変換を行う
- バブルソートを行う
- 文字列の場合はソート後再び文字列に変換を行う
- 昇順の場合はそのまま出力し、降順の場合は逆順出力を行う
参考記事
▽【Swift 5】文字列を数値として処理(map)し、また文字列に戻す方法
https://www.ohitori.fun/entry/how-to-map-string-as-int