iOS App從零開始 / 作業05 /function應用,上數學課了XD

#1-算全部格子的總合

//算全部格子的總合
var sum = 0
for i in 0...7 {
for j in 0...7 {
sum += i*j
}
}
sum

#2-奇數行的數字總合

//奇數行的數字總合
var sum = 0
for i in 0...7 {
if i % 2 == 1 {
for j in 0...7 {
sum += i*j
}
}
}
sum

#3-所有格子的總合,除了列數>=行數的格子

//所有格子的總合,除了列數>=行數的格子
//i為列,j為行,設i<j
var sum = 0
for i in 0...7 {
for j in 0...7 {
if i < j {
sum += i*j
}
}
}
sum

#4-定義function,接受3個參數,起始值,最大值和決定數字倍數的number, 回傳運算結果 比方起始值3,最大值98,決定數字倍數的number為5時,(只包含5的倍數) 運算結果為 5 + 10 + 15 + ….. + 95

//定義function,接受3個參數,起始值,最大值和決定數字倍數的number, 回傳運算結果  比方起始值3,最大值98,決定數字倍數的number為5時,(只包含5的倍數)  運算結果為 5 + 10 + 15 + ..... + 95
func counttest(startNumber:Int,endNumber:Int,multipleNumber:Int) -> Int{
var sum = 0
for i in startNumber...endNumber {
if i % multipleNumber == 0 {
sum += i
}
}
return sum
}
counttest(startNumber: 3, endNumber: 98, multipleNumber: 5)
//這題設的第三個參數multipleNumber好像沒意義,因為題目寫死為5的倍數,那就是 if i % 5 == 0,那如果替換參數將只有能被整除的值才會計算。

#5-定義function,接受3個參數,起始值,最大值和決定數字倍數的number, 回傳運算結果 比方起始值3,最大值11,決定數字倍數的number為5時,(不包含5的倍數) 運算結果為 3 + 4 + 6 + 7 + 8 + 9 + 11

//定義function,接受3個參數,起始值,最大值和決定數字倍數的number, 回傳運算結果  比方起始值3,最大值11,決定數字倍數的number為5時,(不包含5的倍數)  運算結果為 3 + 4 + 6 + 7 + 8 + 9 + 11
func counttest(startNumber:Int,endNumber:Int,multipleNumber:Int) -> Int{
var sum = 0
for i in startNumber...endNumber {
if i % multipleNumber != 0 {
sum += i
}
}
return sum
}
counttest(startNumber: 3, endNumber: 11, multipleNumber: 5)
//這題只需將 if i % multipleNumber == 0 ,等於==的條件改為!=不等於,答案就可以出來了

#6-奇數行的數字總合, 定義function,接受2個參數,分別代表行數和列數

//奇數行的數字總合, 定義function,接受2個參數,分別代表行數和列數
//y行,x列
func counttest(iNumber:Int,jNumber:Int) -> Int{
var sum = 0
for x in 0...iNumber {
for y in 0...jNumber {
if y % 2 == 1 {
sum += x*y
}
}
}
return sum
}
counttest(iNumber: 7, jNumber: 7)
//疑問:一開始的疑問是如果 for iNumber in 0...7 是針對此題設計,那如果改成別的就無法直接套用。
//所以我改成for x in 0...iNumber 跟 for y in 0...jNumber 。

#7-所有格子的總合,除了列數>=行數的格子, 定義function,接受2個參數,分別代表行數和列數

//所有格子的總合,除了列數>=行數的格子, 定義function,接受2個參數,分別代表行數和列數
//y行,x列
func counttest(iNumber:Int,jNumber:Int) -> Int{
var sum = 0
for x in 0...iNumber {
for y in 0...jNumber {
if x>y {
sum += x*y
}
}
}
return sum
}
counttest(iNumber: 7, jNumber: 7)

#8-定義一個function,接受一個參數代表華式溫度 , 回到攝式溫度

//定義一個function,接受一個參數代表華式溫度 , 回到攝式溫度
//公式=>華氏=攝氏*(5/9)+32,攝氏=(華氏-32)*5/9
func temperatureConversion(tempF:Float ) ->Float {
var tempC = (tempF - 32)*5/9
return tempC
}
temperatureConversion(tempF: 80)