![ישן](https://static.fresh.co.il/images/vBulletin/statusicon/post_old.gif)
28-02-2010, 13:01
|
![צלמית המשתמש של RP.](image.php?u=47921&dateline=1137858729) |
|
|
חבר מתאריך: 04.11.04
הודעות: 6,986
|
|
ציטוט:
במקור נכתב על ידי shay_bm
מספרים טבעיים החל מ-1 רשומים בשורה אחד אחרי השני (.....1234567891011121314)
פונקציה (f(n מוגדרת כספרה (מספר חד ספרתי) שעומד במקום מס' n בשורה זו.
חשב (f(100) f(1000.
איך פותרים את הדבר הזה?
תודה רבה על העזרה
|
לא יודע אם אמורה להיות דרך "חכמה" לעשות את זה, אבל לפי מה שיצא לי
[tex]f(100)=5[/tex]
[tex]f(1000)=3[/tex]
הדרך לפתרון:
מה שעשיתי זה פשוט לנסות ולחשוב איזה מספר יופיע איפה...עכשיו הדבר הראשון שצריך למצוא זה איזה איבר יופיע במקום ה-n, האם זה איבר המאות, אחדות או עשרות, 9 הספרות הראשונות הן כרגיל, אח"כ זה מתחיל להסתבך.
בספרה העשירית יופיע 1, ועל כל שתי ספרות במספר, אנחנו בעצם מתקדמים במספר אחד, אזי כל 20 ספרות מקבילות להתקדמות של 10 מספרים אצלנו. מכיוון שבין 10 ל-100 אנחנו עוברים 90 ספרות, אז לפי מה שאמרנו קודם אנחנו מתקדמים 4 עשרות, ומכיוון שאנחנו התחלנו בעשרייה השנייה אז הספרה ה n=100 היא 5 (ו n=101 היא גם 5).
עכשיו כדי למצוא את המקום ה-1000 נשתמש בטריק דומה, קודם כל אנחנו צריכים למצוא מתי אנחנו עוברים למספרים של 3 ספרות, וזה קורה ב- n=190. ועכשיו על כל 3 ספרות במספר אנחנו נתקדם בעצם במספר אחד בלבד, ולכן כדי להתקדם 100 מספרים נצטרך לקפוץ 300 ספרות בכל פעם.
התחלנו ב-190 ואנחנו רוצים להגיע ל-1000, אם נקפוץ 600 ספרות נהיה ב-n=790, ושם כבר מתחיל המספר 300. עכשיו [tex]1000-790=210[/tex], זה אומר שנשארו לנו עוד 210 ספרות, 210 מתחלק ב-3 ולכן האיבר במקום ה-1000 יהיה ספרת המאות ולכן הספרה ה- n=1000 היא 3...
מקווה שזה היה ברור.
|