第二周第四天

2016-08-06  本文已影响0人  theDeskmateOfSb

第二周

第四天

穷举法解决问题:穷尽所有可能直到解决问题
百钱买百鸡。母鸡5元一只公鸡3元一只小鸡1元三只花一百买一百只鸡

for x in 0...20{
    for y in 0...33{
        let z = 100 - x - y
            if 5*x + 3*y + z/3 == 100 && z % 3 == 0
            {
               print("公鸡:\(x),母鸡:\(y)小鸡:\(z)")
        }
    }
}

分鱼:五个人一起打鱼,第二天分鱼的时候第一个先醒,然后扔了一只鱼刚好把鱼分成一份,第二个人醒来不知道第一个人已经分了鱼,用第一个人的方法把鱼刚好分成五份,拿一份走,后面直到最后一个人也是这样,求他们至少打了多少鱼

var total = 1
//假设总共只有一条
while total>0{
//一个死循环,因为总数始终大于0
   var fish = total
   //鱼数等于总数
   //
    for _ in 1...5{
    //开始一个五次的循环
        if (fish - 1 )%5==0{
        //如果鱼数-1能分成五份就进来
            fish=(fish-1)/5*4
            //把鱼的总数重新赋值为原来减一的五分之四
       }
        else{
        //不然就把鱼数赋值为0并跳出for循环
            fish = 0
            break
       }
    }
    if fish != 0 {
    //如果鱼的数量不为0 也就是分好了,打印总数然后把总数赋值为1跳出while循环
        print(total)
       total = -1
  }
    total += 1//每次for循环结束后总数加一个
}

双重循环
打印一个九九乘法表

for i in 1...9{
    for j in 1...i{
       print("\(i)*\(j)=\(i*j)  ",terminator:"")
   }
    print("")//换行
}

上一篇下一篇

猜你喜欢

热点阅读