前提・実現したいこと
プログラミング初心者です。
現在、「Swiftによるアプリケーション開発:入門編」を用いてswiftの勉強をしておりますが、
下記の演習問題の「STEP4」で詰まっているため、どのようなコードを書けばよいのかご教示.いただけませんでしょうか。
STEP4の問題に対する理解力が足りないため、正直どのような形を最終的に出力できればいいのかすらわかりません。
ご回答よろしくお願いいたします。
演習問題内容:票を数える
あなたは今、クラスの投票アプリケーションを開発しています。賛成/反対で答える基本的な質問の集計から始めます。最初に戻ってきた回答を以下の配列にパースしました。
データがたくさんありますね。でも、配列が長くなっても心配いりません。ループ処理を行う場合は、アイテム数が2つでも2,000でもコードの記述方法はまったく同じです。
let shouldMascotChangeVotes: [Bool] = [false, false, false, true, false, true, true, true, false, true, true, true, true, false, true, true, false, true, true, true, false, true, true, true, true, true, true, true, false] let shouldInstallCoffeeVendingMachineVotes: [Bool] = [true, true, false, false, false, true, true, false, true, true, true, true, false, true, false, false, true, false, true, false, true, true, false, false, false, false, false, true, true, true, false, false, true, true, false, true, true, true] let shouldHaveMorePollOptionsVotes: [Bool] = [false, false, true, true, false, true, false, false, false, false, false, false, true, false, true, true, false, true, true, false, false, true, true, false, false, false, false]
####STEP1
yesの票を数える変数とnoの票を数える変数の2つを作成します。それぞれ値はゼロから始まるようにします。
var yesVote = 0 var noVote = 0
####STEP2
for…inループを作成し、票のコレクションを1つずつ取って値をチェックさせます。票がtrueなら、ループはyesの変数に1票を追加します。票がfalseなら、noの変数に1票を追加します。
for vote in shouldMascotChangeVotes { if vote == true { yesVote += 1 } else { noVote += 1 } }
####STEP3
ループが完了した後に2つの値を比較するif文を記述し、可決と否決の場合で異なるメッセージを出力するようにします。
if yesVote > noVote { print("可決") } else { print("否決") }
####STEP4
投票対象の問題を説明する文字列と、問題のbool票の配列の2つの引数を取る関数を記述します。for…inループとif文を関数の中に移動し、特定の問題の引数を使って関数を呼び出すと結果が出力されるようにします。次のように関数を呼び出せるはずです。
(例): printResults(forIssue: "Should we change the mascot?", withVotes:shouldMascotChangeVotes)
コンソールに次のようなメッセージが出力されます。
Should we change the mascot? 54 yes, 23 no(マスコットを変えるべきか?賛成54、反対23)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/02 11:53