Advertisement
Guest User

Untitled

a guest
Oct 8th, 2015
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 3.66 KB | None | 0 0
  1. object stringSession {
  2.   println("Welcome to the Scala worksheet")       //> Welcome to the Scala worksheet
  3.  
  4.   def isPal(word: String): Boolean = {
  5.     return (word == word.reverse)
  6.   }                                               //> isPal: (word: String)Boolean
  7.  
  8.   isPal("rotator")                                //> res0: Boolean = true
  9.   isPal("cat")                                    //> res1: Boolean = false
  10.  
  11.   def isPal2(words: String): Boolean = {
  12.     return isPal(words.toLowerCase.replaceAll("[^A-Za-z0-9]", ""))
  13.   }                                               //> isPal2: (words: String)Boolean
  14.  
  15.   isPal2("A man, a plan, a canal, Panama!")       //> res2: Boolean = true
  16.  
  17.   def mkPal(word: String): String = {
  18.     return word + word.reverse
  19.   }                                               //> mkPal: (word: String)String
  20.  
  21.   mkPal("mars")                                   //> res3: String = marssram
  22.   mkPal("3X@#")                                   //> res4: String = 3X@##@X3
  23.  
  24.   import scala.util.Random
  25.   def mkWord(len: Int = 10): String = {
  26.     var alphabet = "abcedfghijklmnopqrstuvwxyz"
  27.     var rand = Random
  28.     var i = 0
  29.     var end = ""
  30.     for (i <- 0 to len) {
  31.       end += alphabet.charAt(rand.nextInt(26))
  32.     }
  33.     return end
  34.   }                                               //> mkWord: (len: Int)String
  35.  
  36.   val a1 = mkWord()                               //> a1  : String = gbnwauwakrc
  37.   val a2 = mkWord()                               //> a2  : String = qqduqmrwnfv
  38.   val a3 = mkWord()                               //> a3  : String = drrjhctartg
  39.   val a4 = mkWord(20)                             //> a4  : String = fdrctjosdyarffeiquccs
  40.  
  41.   def mkSentence(words: Int = 10): String = {
  42.     var i = 0
  43.     var rand = Random
  44.     var end = ""
  45.     for (i <- 0 to words-1) {
  46.         end += mkWord(rand.nextInt(9) + 1)
  47.       if (i == words-1) {
  48.         end += "."
  49.       } else {
  50.         end += " "
  51.       }
  52.     }
  53.     return end.capitalize
  54.   }                                               //> mkSentence: (words: Int)String
  55.  
  56.   val sen1 = mkSentence()                         //> sen1  : String = Juldhishu xfsakk ltcyltqacz qmxhigovdg eoiaccfc bgruiwqkf
  57.                                                   //| ufwttzwsv il hytmbahx ivjs.
  58.   val sen2 = mkSentence()                         //> sen2  : String = Afvug aizu llxenjvzf xljyuomh ywfbcifd hcwm xr dhdsfeuajc
  59.                                                   //| hbeoqj qddtve.
  60.   val sen3 = mkSentence()                         //> sen3  : String = Surjtdrvl kqtqbdafk bspgfbrq zk dwdhdn kvhubky wxkai kvqo
  61.                                                   //| wifze ntf.
  62.   val sen4 = mkSentence(5)                        //> sen4  : String = Nxwi ajjzvclo soroghmho dkpb lfb.
  63.  
  64.   def shuffle(word: String): String = {
  65.   return word.substring(word.length/2, word.length) + word.substring(0, word.length/2)
  66.   }                                               //> shuffle: (word: String)String
  67.  
  68.   shuffle("abcdefghij")                           //> res5: String = fghijabcde
  69.   shuffle("abcdefghijk")                          //> res6: String = fghijkabcde
  70.  
  71.   def countSubstrings(sub: String, word: String): Int = {
  72.   return sub.r.findAllIn(word).length
  73.   }                                               //> countSubstrings: (sub: String, word: String)Int
  74.  
  75.   countSubstrings("is", "Mississippi")            //> res7: Int = 2
  76.  
  77.   def first(a: Array[String]):String = {
  78.   scala.util.Sorting.quickSort(a)
  79.   return a(0)
  80.   }                                               //> first: (a: Array[String])String
  81.  
  82.   first(Array("cat", "rat", "bat"))               //> res8: String = bat
  83.  
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement