SORU
11 NİSAN 2010, Pazar


Aşağıya doğru veya döngü azaltılması için Scala?

Scala, sık sık gibi artan sırada for bir döngü yapmak için bir yineleyici kullanın:

for(i <- 1 to 10){ code }

Nasıl 1 den 10 a kadar gidiyor yani bunu yapar mıydın? 10 to 1 boş bir yineleyici (normal aralığı matematik gibi) verir sanırım?

Yineleyici ters arayarak çözer Scala bir script yaptım, ama benim görüşüme göre iyi değil, aşağıdaki gitmek için yolu nedir?

def nBeers(n:Int) = n match {

    case 0 => ("No more bottles of beer on the wall, no more bottles of beer."  
               "\nGo to the store and buy some more, "  
               "99 bottles of beer on the wall.\n")

    case _ => (n   " bottles of beer on the wall, "   n  
               " bottles of beer.\n"  
               "Take one down and pass it around, "  
              (if((n-1)==0)
                   "no more"
               else
                   (n-1))  
                   " bottles of beer on the wall.\n")
}

for(b <- (0 to 99).reverse)
    println(nBeers(b))

CEVAP
11 NİSAN 2010, Pazar


scala> 10 to 1 by -1
res1: scala.collection.immutable.Range = Range(10, 9, 8, 7, 6, 5, 4, 3, 2, 1)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Caroline Martin

    Caroline Mar

    19 EYLÜL 2008
  • edwin maldonado

    edwin maldon

    28 Mart 2009
  • MW Technology

    MW Technolog

    28 EKİM 2009