import scala.annotation.tailrec object Main5 extends App { type Pred[A] = A => Boolean; @tailrec def forall[A](a : Seq[A])(pred: (A) => Boolean) : Boolean = { if (a.isEmpty) true; else if (!pred(a.head)) false else forall(a.tail)(pred) } val (nieparzyste : Pred[Int]) = (x : Int) => x % 2 != 0; var a = Seq(1,3,5,7); var b = Seq(1,3,6,7); println("Dla " + a.mkString("[", ", ", "]") + ": " + forall(a)(nieparzyste)); println("Dla " + b.mkString("[", ", ", "]") + ": " + forall(b)(nieparzyste)); }