diff --git a/.idea/libraries/openjfx_javafx_base.xml b/.idea/libraries/openjfx_javafx_base.xml
index 90e7dbd..6f47257 100644
--- a/.idea/libraries/openjfx_javafx_base.xml
+++ b/.idea/libraries/openjfx_javafx_base.xml
@@ -3,7 +3,7 @@
-
+
diff --git a/.idea/libraries/openjfx_javafx_controls.xml b/.idea/libraries/openjfx_javafx_controls.xml
index 5956572..52406f3 100644
--- a/.idea/libraries/openjfx_javafx_controls.xml
+++ b/.idea/libraries/openjfx_javafx_controls.xml
@@ -3,11 +3,11 @@
-
+
-
+
-
+
diff --git a/.idea/libraries/openjfx_javafx_graphics.xml b/.idea/libraries/openjfx_javafx_graphics.xml
index 8fdcc88..0cfcecc 100644
--- a/.idea/libraries/openjfx_javafx_graphics.xml
+++ b/.idea/libraries/openjfx_javafx_graphics.xml
@@ -3,9 +3,9 @@
-
+
-
+
diff --git a/WS23_24/Anwendungsentwicklung/Anwendungsentwicklung.iml b/WS23_24/Anwendungsentwicklung/Anwendungsentwicklung.iml
index a993c1c..bd5bf97 100644
--- a/WS23_24/Anwendungsentwicklung/Anwendungsentwicklung.iml
+++ b/WS23_24/Anwendungsentwicklung/Anwendungsentwicklung.iml
@@ -11,5 +11,6 @@
+
\ No newline at end of file
diff --git a/WS23_24/Anwendungsentwicklung/src/Klausur_ueb/Lambda.scala b/WS23_24/Anwendungsentwicklung/src/Klausur_ueb/Lambda.scala
index 510d4dd..0dc6941 100644
--- a/WS23_24/Anwendungsentwicklung/src/Klausur_ueb/Lambda.scala
+++ b/WS23_24/Anwendungsentwicklung/src/Klausur_ueb/Lambda.scala
@@ -2,13 +2,16 @@ package Klausur_ueb
object Lambda {
def main(args: Array[String]): Unit = {
- val a = Array(1, 2, 3, 4, 5)
- val summe = a.reduce((x: Int, y: Int) => x + y)
+ val a = Array(1.0, 2.0, 3.0, 4.0, 5.0)
+ val summe = a.reduce((x: Double, y: Double) => x + y)
val summeKuerzer = a.reduce((x, y) => x + y)
- val summeNochKuerzer = a.reduce(_ * _)
+ val prodNochKuerzer = a.reduce(_ * _)
+ val qNochKuerzer = a.reduce(_ / _)
val summeGanzKurz = a.sum //vordefiniert
println(summeGanzKurz)
- println(summeNochKuerzer)
+ println(prodNochKuerzer)
+ println(qNochKuerzer)
+ println(1.0/120.0)
}
}
diff --git a/WS23_24/Anwendungsentwicklung/src/P10/FrenchDude.scala b/WS23_24/Anwendungsentwicklung/src/P10/FrenchDude.scala
index 8e02047..76d5338 100644
--- a/WS23_24/Anwendungsentwicklung/src/P10/FrenchDude.scala
+++ b/WS23_24/Anwendungsentwicklung/src/P10/FrenchDude.scala
@@ -4,19 +4,47 @@ import scala.annotation.tailrec
object FrenchDude {
def main(args: Array[String]): Unit = {
-
+ startPascal(5)
+ println(" ")
+ startPascal2(5)
}
- def pascalTriangle(c: Int, r: Int): Int = {
- @tailrec
- def loop(c0: Int, r0: Int, pred: Array[Int], cur: Array[Int]): Int = {
- cur(c0) = (if (c0 > 0) pred(c0 - 1) else 0) + (if (c0 < r0) pred(c0) else 0)
- if ((c0 == c) && (r0 == r)) cur(c0)
- else if (c0 < r0) loop(c0 + 1, r0, pred, cur)
- else loop(0, r0 + 1, cur, new Array(_length = r0 + 2))
+ def startPascal(n:Int):Unit={
+ pascal(Array(1),n)
+ }
+ def startPascal2(n:Int):Unit={
+ pascal2(Array(1),n)
+ }
+
+ //Endrekursiv
+ @tailrec
+ def pascal (arr:Array[Int],n:Int): Unit = {
+ arr.foreach(v => print(v+" "))
+ var newArr = Array[Int]()
+ newArr = newArr :+ 1
+ for (i <- arr.indices){
+ if (i print(v+" "))
+ var newArr = Array[Int]()
+ newArr = newArr :+ 1
+ for (i <- arr.indices){
+ if (i= containArr.length)
+ println("end")
+ else {
+ println(containArr(index).toString + ": " + searchArr.count(_==containArr(index)))
+ count(searchArr, containArr, index+1)
+ }
+ }
+
+ //Rekursiv, aber nicht Endrekursiv
+ def count2(searchArr: Array[?], containArr: Array[?], index:Int): Unit = {
+ if (index >= containArr.length)
+ println("end")
+ else {
+ count2(searchArr, containArr, index+1)
+ println(containArr(index).toString + ": " + searchArr.count(_==containArr(index)))
+ }
+ }
+}
diff --git a/WS23_24/Anwendungsentwicklung/src/P9/Numbers.scala b/WS23_24/Anwendungsentwicklung/src/P9/Numbers.scala
deleted file mode 100644
index 530cd1f..0000000
--- a/WS23_24/Anwendungsentwicklung/src/P9/Numbers.scala
+++ /dev/null
@@ -1,10 +0,0 @@
-package P9
-
-object Numbers {
- def main(args: Array[String]) {
- println()
- }
-
-
-
-}
diff --git a/WS23_24/Anwendungsentwicklung/src/P9/Palindrom.scala b/WS23_24/Anwendungsentwicklung/src/P9/Palindrom.scala
deleted file mode 100644
index 5971f56..0000000
--- a/WS23_24/Anwendungsentwicklung/src/P9/Palindrom.scala
+++ /dev/null
@@ -1,12 +0,0 @@
-object Palindrom {
- def main(args: Array[String]) {
- println(startCheck("ABCCBA"))
- }
-
- def startCheck(word: String): Boolean = {
- check(0, word)
- }
- def check(i: Int, word: String): Boolean = {
- if((word.length/2)<=i) true else if (word.charAt(i)==word.charAt(word.length-i-1)&&check(i+1,word)) true else false
- }
-}
\ No newline at end of file
diff --git a/WS23_24/Anwendungsentwicklung/src/P9/Palindrome.scala b/WS23_24/Anwendungsentwicklung/src/P9/Palindrome.scala
new file mode 100644
index 0000000..16f1627
--- /dev/null
+++ b/WS23_24/Anwendungsentwicklung/src/P9/Palindrome.scala
@@ -0,0 +1,28 @@
+package P9
+
+import scala.annotation.tailrec
+
+object Palindrome {
+ def main(args: Array[String]): Unit = {
+ val word = "ABCDCBA"
+ println(startCheck(word))
+ println(startCheck2(word))
+ }
+
+ private def startCheck(word: String): Boolean = {
+ check(0, word)
+ }
+
+ private def startCheck2(word: String): Boolean = {
+ check2(0, word)
+ }
+
+ @tailrec
+ private def check(i: Int, word: String): Boolean = {
+ ((word.length / 2) <= i) || (word.charAt(i) == word.charAt(word.length - i - 1) && check(i + 1, word)) //endrekursiv i guess
+ }
+
+ private def check2(i: Int, word: String): Boolean = {
+ ((word.length / 2) <= i) || check2(i + 1, word) && (word.charAt(i) == word.charAt(word.length - i - 1)) //rekursiv, aber nicht endrekursiv
+ }
+}
\ No newline at end of file
diff --git a/out/production/Anwendungsentwicklung/Klausur_ueb/Lambda$.class b/out/production/Anwendungsentwicklung/Klausur_ueb/Lambda$.class
index fdc1e3d..6a163ee 100644
Binary files a/out/production/Anwendungsentwicklung/Klausur_ueb/Lambda$.class and b/out/production/Anwendungsentwicklung/Klausur_ueb/Lambda$.class differ
diff --git a/out/production/Anwendungsentwicklung/P10/FrenchDude$.class b/out/production/Anwendungsentwicklung/P10/FrenchDude$.class
index 94140bb..90ef9a0 100644
Binary files a/out/production/Anwendungsentwicklung/P10/FrenchDude$.class and b/out/production/Anwendungsentwicklung/P10/FrenchDude$.class differ
diff --git a/out/production/Anwendungsentwicklung/P10/FrenchDude.class b/out/production/Anwendungsentwicklung/P10/FrenchDude.class
index a0472c0..d5d1a20 100644
Binary files a/out/production/Anwendungsentwicklung/P10/FrenchDude.class and b/out/production/Anwendungsentwicklung/P10/FrenchDude.class differ
diff --git a/out/production/Anwendungsentwicklung/P9/Numbers$.class b/out/production/Anwendungsentwicklung/P9/Numbers$.class
index 12d9dd3..cca3c7d 100644
Binary files a/out/production/Anwendungsentwicklung/P9/Numbers$.class and b/out/production/Anwendungsentwicklung/P9/Numbers$.class differ
diff --git a/out/production/Anwendungsentwicklung/P9/Numbers.class b/out/production/Anwendungsentwicklung/P9/Numbers.class
index deb8a30..1014937 100644
Binary files a/out/production/Anwendungsentwicklung/P9/Numbers.class and b/out/production/Anwendungsentwicklung/P9/Numbers.class differ
diff --git a/out/production/Anwendungsentwicklung/P9/Palindrome$.class b/out/production/Anwendungsentwicklung/P9/Palindrome$.class
new file mode 100644
index 0000000..56739ab
Binary files /dev/null and b/out/production/Anwendungsentwicklung/P9/Palindrome$.class differ
diff --git a/out/production/Anwendungsentwicklung/P9/Palindrome.class b/out/production/Anwendungsentwicklung/P9/Palindrome.class
new file mode 100644
index 0000000..cad8ebf
Binary files /dev/null and b/out/production/Anwendungsentwicklung/P9/Palindrome.class differ
diff --git a/out/production/Anwendungsentwicklung/Palindrom$.class b/out/production/Anwendungsentwicklung/Palindrom$.class
deleted file mode 100644
index 6c538b5..0000000
Binary files a/out/production/Anwendungsentwicklung/Palindrom$.class and /dev/null differ
diff --git a/out/production/Anwendungsentwicklung/Palindrom.class b/out/production/Anwendungsentwicklung/Palindrom.class
deleted file mode 100644
index 23f3132..0000000
Binary files a/out/production/Anwendungsentwicklung/Palindrom.class and /dev/null differ