From 70c04c5b5c39754facd4db9f12289aed6be3f75f Mon Sep 17 00:00:00 2001 From: Belal Date: Tue, 8 Mar 2022 16:44:14 +0300 Subject: [PATCH] Belal Ahmad Dohal Swift --- .DS_Store | Bin 0 -> 6148 bytes Belal Dohal Exame.playground/Contents.swift | 39 +++++++++++++++++ .../contents.xcplayground | 4 ++ .../contents.xcworkspacedata | 7 +++ .../UserInterfaceState.xcuserstate | Bin 0 -> 15846 bytes README.md | 41 ++++++++++++++++++ 6 files changed, 91 insertions(+) create mode 100644 .DS_Store create mode 100644 Belal Dohal Exame.playground/Contents.swift create mode 100644 Belal Dohal Exame.playground/contents.xcplayground create mode 100644 Belal Dohal Exame.playground/playground.xcworkspace/contents.xcworkspacedata create mode 100644 Belal Dohal Exame.playground/playground.xcworkspace/xcuserdata/mr_belal.xcuserdatad/UserInterfaceState.xcuserstate diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..99e1e0e92ed5ce774ae60b8a1067d5123e1ea0cb GIT binary patch literal 6148 zcmeHKJ5EC}5S)b+K{P2-`UFVaz(g+v1x<1R6jBC-hW=HYi<`mhM~LW!28jmEO6#%L zJGMN<+qVF0^}4?W769gSN4)tkHQ#ri*hNK*Naq<3SmOrI*xw%}+2;e!y~2jPI}G3X z$EV%lxZ^I5wMKmTDC1lv1*Cu!kOERb3j9_9uf4SSb)rToAO)nrmjeEMXmrP3I3~uY zgG00c#2Le3oJTJ~Y#t!?!ZDE%nkAK(RI3)llFoRmyk0maCLIB@cO@||Iq)RlC+WnQs7@HV6$O6toWp=t&_)jt!?y2y63#p-8c^l nhbYIyD92oQIbKFm<~5&lzZZ^)L1#SZMEwl7E;1?b*9v?B7Tz35 literal 0 HcmV?d00001 diff --git a/Belal Dohal Exame.playground/Contents.swift b/Belal Dohal Exame.playground/Contents.swift new file mode 100644 index 0000000..15997ee --- /dev/null +++ b/Belal Dohal Exame.playground/Contents.swift @@ -0,0 +1,39 @@ +// MARK: Belal Ahmad Dohal +// Swift + +//Q1).Create a function that receives an integers array and returns the number that appeared only once. +func getOnlyOneNumber(arr:[Int]) -> [Int] { + var singleNumbers = [Int:Int]() + var result = [Int]() + for i in arr { + singleNumbers[i] = i + } + for i in singleNumbers { + result.append(i.key) + } + return result +} +//Q2).Create a function that receives a string then it converts uppercase letters into lowercase and vice versa. The function then should print the converted value. +func printConvertString(str:String) { + var result = "" + for i in str { + if i.isLowercase == true { + result += i.uppercased() + }else { + result += i.uppercased() + } + } + print(result) +} +//Q3).Create a function that receives an array of items & arrays and returns one flattened array with all items exluding null values. +func noNull(arr:[Any]) -> [Any] { + var result = [Any]() + for i in arr { + if i == nil { + result.append(i) + } + } + return result +} +//Q3).Create a function that receives a string that contains combination of parentheses, square brackets, and curly braces. Then, it returns true if every opening bracket has a closing pair. + diff --git a/Belal Dohal Exame.playground/contents.xcplayground b/Belal Dohal Exame.playground/contents.xcplayground new file mode 100644 index 0000000..cf026f2 --- /dev/null +++ b/Belal Dohal Exame.playground/contents.xcplayground @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Belal Dohal Exame.playground/playground.xcworkspace/contents.xcworkspacedata b/Belal Dohal Exame.playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..ca3329e --- /dev/null +++ b/Belal Dohal Exame.playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Belal Dohal Exame.playground/playground.xcworkspace/xcuserdata/mr_belal.xcuserdatad/UserInterfaceState.xcuserstate b/Belal Dohal Exame.playground/playground.xcworkspace/xcuserdata/mr_belal.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..00d5d238b728da09c4224359017dc64d4ffa449d GIT binary patch literal 15846 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
    ^19*G@R|fFJ0Im{-NhpTcKe6FX@M} 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 G?!N$ch#v$1 literal 0 HcmV?d00001 diff --git a/README.md b/README.md index debb56b..92ded6e 100644 --- a/README.md +++ b/README.md @@ -51,3 +51,44 @@ Create a function that receives a string that contains combination of parenthese +=============== +// MARK: Belal Ahmad Dohal +// Swift + +//Q1).Create a function that receives an integers array and returns the number that appeared only once. +func getOnlyOneNumber(arr:[Int]) -> [Int] { + var singleNumbers = [Int:Int]() + var result = [Int]() + for i in arr { + singleNumbers[i] = i + } + for i in singleNumbers { + result.append(i.key) + } + return result +} +//Q2).Create a function that receives a string then it converts uppercase letters into lowercase and vice versa. The function then should print the converted value. +func printConvertString(str:String) { + var result = "" + for i in str { + if i.isLowercase == true { + result += i.uppercased() + }else { + result += i.uppercased() + } + } + print(result) +} +//Q3).Create a function that receives an array of items & arrays and returns one flattened array with all items exluding null values. +func noNull(arr:[Any]) -> [Any] { + var result = [Any]() + for i in arr { + if let num = i { + result.append(num) + } + } + return result +} +//Q3).Create a function that receives a string that contains combination of parentheses, square brackets, and curly braces. Then, it returns true if every opening bracket has a closing pair. + +