From b4b5157490c15311c02ceae025c53f13084beebf Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Tue, 17 May 2022 22:29:15 +0100 Subject: - Added guest contributions by Eric Cheung. --- challenge-165/eric-cheung/python/ch-1.py | 30 +++++++++++++++++++++ challenge-165/eric-cheung/python/ch-2.py | 45 ++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100755 challenge-165/eric-cheung/python/ch-1.py create mode 100755 challenge-165/eric-cheung/python/ch-2.py diff --git a/challenge-165/eric-cheung/python/ch-1.py b/challenge-165/eric-cheung/python/ch-1.py new file mode 100755 index 0000000000..153c2273e7 --- /dev/null +++ b/challenge-165/eric-cheung/python/ch-1.py @@ -0,0 +1,30 @@ + +import os + +strOuputHTMLFile = "OutputSVG.html" + +if os.path.exists(strOuputHTMLFile): + os.remove(strOuputHTMLFile) + +os.system("echo ^ >> " + strOuputHTMLFile) +os.system("echo ^ >> " + strOuputHTMLFile) + +os.system("echo ^ >> " + strOuputHTMLFile) + +while True: + objPoints = input("Input: ") + + if not objPoints: + break + + arrPoints = objPoints.split(",") + ## print (len(arrPoints)) + + if len(arrPoints) == 2: + os.system("echo ^ >> " + strOuputHTMLFile) + elif len(arrPoints) == 4: + os.system("echo ^ >> " + strOuputHTMLFile) + +os.system("echo ^ >> " + strOuputHTMLFile) +os.system("echo ^ >> " + strOuputHTMLFile) +os.system("echo ^ >> " + strOuputHTMLFile) diff --git a/challenge-165/eric-cheung/python/ch-2.py b/challenge-165/eric-cheung/python/ch-2.py new file mode 100755 index 0000000000..5cb4b0ea51 --- /dev/null +++ b/challenge-165/eric-cheung/python/ch-2.py @@ -0,0 +1,45 @@ + +import os + +strOuputHTMLFile = "OutputLineBestFit.html" + +arrX_Points = [333, 39, 140, 292, 393, 160, 362, 13, 341, 320, 109, 203, 343, 225, 23, 282, 284, 205, 297, 292, 339, 327, 253, 61, 128, 346, 316, 124, 65, 159, 212, 337, 215, 153, 390, 100, 76, 77, 69, 92, 275, 250, 34, 213, 186, 189, 361, 363] + +arrY_Points = [129, 189, 156, 134, 52, 166, 122, 193, 104, 113, 177, 152, 100, 110, 186, 102, 98, 133, 114, 126, 112, 79, 136, 169, 176, 72, 103, 162, 181, 137, 116, 86, 136, 137, 104, 180, 188, 181, 195, 186, 96, 147, 174, 134, 129, 154, 82, 89] + +nNumElem = len(arrX_Points) +nSumX = sum(arrX_Points) +nSumY = sum(arrY_Points) +nSumXX = sum([xElem * xElem for xElem in arrX_Points]) +nSumXY = sum([xElem * yElem for xElem, yElem in zip(arrX_Points, arrY_Points)]) + +dBestFitSlope = (nNumElem * nSumXY - nSumX * nSumY) / (nNumElem * nSumXX - nSumX * nSumX) +dBestFitIntercept = (nSumY - dBestFitSlope * nSumX) / nNumElem + +nBestFit_X_01 = min(arrX_Points) +nBestFit_Y_01 = int(dBestFitSlope * nBestFit_X_01 + dBestFitIntercept) + +nBestFit_X_02 = max(arrX_Points) +nBestFit_Y_02 = int(dBestFitSlope * nBestFit_X_02 + dBestFitIntercept) + +## print (dBestFitSlope) +## print (dBestFitIntercept) + +if os.path.exists(strOuputHTMLFile): + os.remove(strOuputHTMLFile) + +os.system("echo ^ >> " + strOuputHTMLFile) +os.system("echo ^ >> " + strOuputHTMLFile) + +os.system("echo ^ >> " + strOuputHTMLFile) + +## All Points +for indx in range(0, nNumElem): + os.system("echo ^ >> " + strOuputHTMLFile) + +## Best Fit Line +os.system("echo ^ >> " + strOuputHTMLFile) + +os.system("echo ^ >> " + strOuputHTMLFile) +os.system("echo ^ >> " + strOuputHTMLFile) +os.system("echo ^ >> " + strOuputHTMLFile) -- cgit