להפחית מס' שלא ידוע סוגו - js
-
יש לי מספר שיכול להיות שהוא שלילי ויכול להיות שלא
אני מעוניין להפחית אותו כך שאם הוא שלילי הוא יופחת בשלילי ואם הוא חיובי (לא נשמע טוב בימי קורונה... ) הוא יופחת במספר חיובי
כך:let number = ?100 number - 50
אם המספר הוא 100 הוא יהיה שווה 50
אם המספר הוא -100 הוא יהיה שווה -50 -
יש לי מספר שיכול להיות שהוא שלילי ויכול להיות שלא
אני מעוניין להפחית אותו כך שאם הוא שלילי הוא יופחת בשלילי ואם הוא חיובי (לא נשמע טוב בימי קורונה... ) הוא יופחת במספר חיובי
כך:let number = ?100 number - 50
אם המספר הוא 100 הוא יהיה שווה 50
אם המספר הוא -100 הוא יהיה שווה -50 -
function subTyped(number, toSub){ if(number < 0) toSub = toSub * -1; return number - toSub; }
שימוש:
subTyped(100, 50); //50 subTyped(-100, 50); //-50
אבל אולי יש נוסחה מתמטית שחוסכת את הקוד הזה.
-
@dovid כנראה התכוונת ככה:
function subTyped(number, absToSub){ if(number < 0) toSub = absToSub * -1; return number - toSub; }
מה זה יותר טוב מככה:
function subTyped(number, toSub){ if(number < 0) return number + toSub; return number - toSub; }
?
-
function subTyped(number, toSub){ if(number < 0) toSub = toSub * -1; return number - toSub; }
שימוש:
subTyped(100, 50); //50 subTyped(-100, 50); //-50
אבל אולי יש נוסחה מתמטית שחוסכת את הקוד הזה.
-
@dovid אמר בלהפחית מס' שלא ידוע סוגו - js:
if(number < 0)
הערה: יש לדון אם 0 נחשב כמספר חיובי... בכל אופן זה תלוי בדרישה הספציפית של הקוד.
ראה כאן.
-
function subTyped(number, toSub){ if(number < 0) toSub = toSub * -1; return number - toSub; }
שימוש:
subTyped(100, 50); //50 subTyped(-100, 50); //-50
אבל אולי יש נוסחה מתמטית שחוסכת את הקוד הזה.
-
@dovid אמר בלהפחית מס' שלא ידוע סוגו - js:
אבל אולי יש נוסחה מתמטית שחוסכת את הקוד הזה.
function subTyped (number, toSub) { return number - (toSub * (number / Math.abs(number))); }