Anonymous : |
וגם 1.41421356237 הוא לא השורש של 2 |
MeTH : |
מספר רציונלי הוא מספר, אשר ניתן להצגה כמנה של מספרים שלמים, הנקראים מונה ומכנה. ויקיפדיה.
שורש 2 אינו רציונלי ושווה ל-1.41421356237 גם אותו אפשר להציג בתור 1.41421356237*2 לחלק ל-2. 2.82842712475 _____________ 2 אז למה הוא לא נחשב רציונלי? |
Anonymous : |
וגם 1.41421356237 הוא לא השורש של 2 |
ציטוט: |
מספר רציונלי הוא מספר, אשר ניתן להצגה כמנה של מספרים שלמים, |
Anonymous : | ||
תבדוק במחשבון |
Anonymous : |
למספר רציונלי לעומת זאת יש הצגה אחת ויחידה בהצגה עשרונית. או שההצגה סופית, לדוגמא 3.0, או שההצגה אינסופית אבל היא מחזורית, לדוגמא: 0.999999999999999999=1 כאשר ה9 נמשך עד לאינסוף. |
קוד: |
0.3333... |
קוד: |
0.123123123... |
קוד: |
0.99999.... |
קוד: |
1.9999... |
Anonymous : | ||
תבדוק במחשבון |
קוד: |
$ python Python 2.7.16rc1 (default, Feb 18 2019, 11:05:09) [GCC 8.2.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> 1.41421356237 ** 2 1.9999999999912461 |
קוד: |
15:00:23:~$ bc bc 1.07.1 Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006, 2008, 2012-2017 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type `warranty'. scale=50 1.41421356237 * 1.41421356237 1.9999999999912458800169 |
ציטוט: |
הטענה נכונה, כלומר המספר הנתון אינו שורש 2, אך הבדיקה שלך לא נכונה, כי התוכנה בה אתה משתמש מחזירה תוצאה לא נכונה.
|
ציטוט: |
הריבוע של 1.41421356237 אינו 1.9999999999912461 קל לראות את זה, אם מכפילים גםאת הריבוע של 1.41421356237 וגם את 1.9999999999912461 ב-10 בחזקת 22. בשני המקרים מקבלים מספר שלם, אך בראשון הוא שקול ל-9 מודולו 10, ובשני הוא שקול ל-0 מודולו 10. |
עמית : |
לא צריך להסתבך. אפשר מייד לראות שאם מעלים בריבוע את המספר הזה (1.41421356237) הספרה הימנית ביותר של התוצאה תהיה 9 (כי 7*7=49). |
קוד: |
>>> 1.11111111111111111**2
1.234567901234568 |
ציטוט: |
דווקא כן, הרי לפי
https://www.wolframalpha.com/input/?i=1.41421356237%5E2 התוצאה היא 1.9999999999912458800169 ששונה מהתוצאה 1.9999999999912461 ביותר משגיאת עיגול (ככל הנראה עקב כך שפייתון משתמש ב-floating point שיכול לייצג מספר סופי של ערכים). |
קוד: |
x = 0.1 |
קוד: |
In [1]: import decimal
In [2]: decimal.getcontext().prec = 100 In [3]: d = decimal.Decimal('1.41421356237') In [4]: d * d Out[4]: Decimal('1.9999999999912458800169') |
קוד: |
In [12]: x = 0.1 # floating point In [13]: decimal.Decimal(x) Out[13]: Decimal('0.1000000000000000055511151231257827021181583404541015625') |