Exercise 07 - Functions

console.log("function exercise 1");
// -- ------------------------------------------------------ --
// -- 1) Beispiel - Funktionen
// -- ------------------------------------------------------ --
// Schreiben Sie eine Funktion die für ein Aray das Reverse (= Array in umgekehrter Reihenfolge)
// berechnet
 
 
// Funktionskopf: reverse(values)
 
// Funktionsdeklaration:
 
function reverse(values)
 
 
var result = reverse([4,3,2,4,5]);
console.log("reverse", ...result);
 
 
// Beispiel: var v = [23,3,2,3,2]
//           var k = reverse(v)         ->   [2,3,2,3,23]
 
 
 
 
// -- ------------------------------------------------------ --
// -- 1) Beispiel - Funktionen
// -- ------------------------------------------------------ --
// Schreiben Sie eine Funktion die prueft ob ein array Werte
// speichert.
//
// Funktionskopf  isEmpty(values);
//
// z.B.: var v1 = ["Hallo"];
//       var result = isEmpty(v1);   -> Ergebnis: false
//      
//       var v2 = [];
//       console.log(isEmpty(v2));   -> Ergebnis: true
 
// a) Funktionsdefinition
 
 
// b) Funktionsaufruf
 
 
// -- ------------------------------------------------------ --
// -- 2) Beispiel - Funktionen
// -- ------------------------------------------------------ --
// Schreiben Sie eine Funktion die von 2 Werten den kleineren
// zurückgibt
//
// Funktionskopf  min(x, y);
//
// z.B.: var v1 = 3;
//       var v2 = 5;
 
//       var result = min(v1, v2); ->  3;
//      
 
// a) Funktionsdefinition
 
function min(x, y)
 
 
// b) Funktionsaufruf
console.log(min(4,2));
 
 
// -- ------------------------------------------------------ --
// -- 3) Beispiel - Funktionen
// -- ------------------------------------------------------ --
// Schreiben Sie eine Funktion die bestimmte Elemente aus einem
// Array in ein anderes Array kopiert. Es wird dazu der index
// des gewünschten Elements, zusammen mit der Anahl wieviele
// Elemente kopiert werden sollen.
//
// Hinweis: Hat das Array keine Elemente wird ein leeres Array
//          zurückgegeben.
//
// Hinweis: Ist im Array nicht die gewünschte Zahl von Elementen
//          vorhanden, werden soviele Elemente wie möglich
//          kopiert
//
// Hinweis: Ist für den angegebenen index kein Element gespeichert
//          wird ebenfalls ein leeres Array zurückgegeben
//
//
// Funktionskopf  subArray(values, index, count);
//
//
// z.B.:  var v1 = [3,2,5,2,1,6,3,1,4];
//        var v2 = subArray(v1, 7, 4);
//
//        console.log(...v2);  ->   [2,1,6,3]
//
//        // Spezialfall 1
//        v1 = [];
//        console.log(subArray(v1, 3, 2));   -> []
//
//        // Spezialfall 2
//        v1 = [4,2,3,5,2,1,5,3];
//        console.log(subArray(v1, 3, 10));   -> [5,2,1,5,3]
//
//        // Spezialfall 3
//        v1 = [4,2,3];
//        console.log(subArray(v1, 3, 2));    -> []
 
 
 
function subArray(values, index, count)
 
 
// -- ------------------------------------------------------ --
// -- 4) Beispiel - Funktionen
// -- ------------------------------------------------------ --
// Schreiben Sie eine Funktion  die die Elmente eines Arrays
// in ein anderes Array kopiert. Es wird dabei ein index
// angegeben ab welcher Stelle die neuen Elemente eingefügt
// werden sollen.
//
// Hinweis: Ist das values Array leer werden keine Werte
//          eingefügt
//        
// Hinweis: Hat das array Array weniger Elemente als der
//          gewünschte index, werden die Elemente am Ende
//          des arras angefügt.
 
// Funktionskopf:  insert(array, values, index)
//
//                 var result = insert([3,2,5,3], [3,2], 1);
//                 console.log(result)   -> [3,3,2,2,5,3]
//
//                 var result = insert([3,2,5,4,3], [3,2], 3);
//                 console.log(result)   -> [3,2,5,3,2,4,3];
//
//                 // Spezialfall
//                 var result = insert([3,2,5,4,3], [3,2], 10);
//                 console.log(result)   -> [3,2,5,4,3,3,2];
//
//                 // Spezialfall
//                 var result = insert([3,2,5,4,3], [], 10);
//                 console.log(result)   -> [3,2,5,4,3];
 
 
function insert(array, values, index)
 
 
/*var result = insert([3,2,5,3,7], [3,2], 1);
console.log(...result);
 
var result = insert([3,2,5,4,3], [3,2], 3);
console.log(...result);
 
// Spezialfall
var result = insert([3,2,5,4,7], [3,2], 10);
console.log(...result)
 
//Spezialfall
var result = insert([3,2,5,4,3], [], 10);
console.log(...result);*/