開発環境
- OS X Mavericks - Apple(OS)
- Xcode 6.0 Beta
- Swift (プログラミング言語)
Head First C ―頭とからだで覚えるCの基本(David Griffiths (著)、Dawn Griffiths (著) 中田 秀基(監訳)(翻訳)、木下 哲也 (翻訳)、オライリージャパン)の1章(Cを始める: Cの世界に飛び込む)、エクササイズ(p.35)をSwiftで考えてみる。
エクササイズ(p.35)
コード(Xcode)
main.swift
//
// main.swift
// sample35
//
// Created by kamimura on 8/12/14.
// Copyright (c) 2014 kamimura. All rights reserved.
//
import Foundation
// 標準入力(STDIN)から読み込む
func input(msg:String = "") -> String {
print(msg)
var in_fh = NSFileHandle.fileHandleWithStandardInput()
var data = in_fh.availableData
var s = NSString(data: data, encoding: NSUTF8StringEncoding)
s = s.substringToIndex(s.length - 1)
return s
}
var name:NSString
var count:Int = 0
do {
println("カード名を入力してください:")
name = input()
var val:Int = 0
switch name.substringToIndex(1)! {
case "K", "Q", "J":
val = 10
case "A":
val = 11
case "X":
continue
default:
val = name.integerValue
if val < 1 || val > 10 {
println("整数は1から10の範囲を入力してください。")
continue
}
}
switch val {
case 3...6:
count += 1
case 10:
count -= 1
default:break
}
println("現在のカウント: \(count)")
} while name.substringToIndex(1) != "X"
入出力結果(Console Output)
カード名を入力してください: K 現在のカウント: -1 カード名を入力してください: Q 現在のカウント: -2 カード名を入力してください: J 現在のカウント: -3 カード名を入力してください: A 現在のカウント: -3 カード名を入力してください: 10 現在のカウント: -4 カード名を入力してください: 7 現在のカウント: -4 カード名を入力してください: 6 現在のカウント: -3 カード名を入力してください: 3 現在のカウント: -2 カード名を入力してください: 2 現在のカウント: -2 カード名を入力してください: 1 現在のカウント: -2 カード名を入力してください: 0 整数は1から10の範囲を入力してください。 カード名を入力してください: 10 現在のカウント: -3 カード名を入力してください: 11 整数は1から10の範囲を入力してください。 カード名を入力してください: X Program ended with exit code: 0
0 コメント:
コメントを投稿