לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 30-10-2004, 23:27
  RunX RunX אינו מחובר  
 
חבר מתאריך: 25.10.04
הודעות: 551
שאלה ציור פרקטלים בכל שפת תכנות. (מאתגר...)

שלום, יש לי איזה אתגרון קטן.
שהוא בעייה שלי, אבל הוא יכול להיות אתגר בשביל כמה אנשים שדי מבינים פה.
מי שלא יודע, פרקטל זה הצורה שממנה נעשים גבישים בטבע..
הנה לכם דוגמא :
כפי שאפשר לראות בדוגמא, פרקטל זה למעשה משולש גדול, שעל כל צלע שלו יש עוד משולש, ועל כל צלע של המשולש יש עוד משולש, ועוד משולש ועוד משולש, וככה זה אין סופי. (בציור לא ציירתי את כל הפרקטל כי הוא אין סופי, אבל ציירתי חלק כדי להמחיש..)
האתגר שקיבלתי הוא איך לצייר פרקטל בכל שפת תיכנות שהי. (לא משנה איזה שפת תיכנות)
בכל אופן, קיבלתי רמז שזה צריך להיות רקורסיבי.
ואין לי מושג איך עושים את זה. ובכלל, זה שאלה של מחשבה רבה.
למישהו יש רעיון ?

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://grm.m.walla.co.il/briefcase/00f3/w/i/z/a/r/d/1/4/@/@/@/@/@/@/@/@/@/@/@/@/@/@/@/@/@/r/200306291650383933/200410310024293547/untitled.JPG]
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #2  
ישן 01-11-2004, 20:10
  the_reaper123 the_reaper123 אינו מחובר  
 
חבר מתאריך: 17.05.04
הודעות: 127
אני חושב שאתה יכול לנסות מימוש עם עץ
בתגובה להודעה מספר 1 שנכתבה על ידי RunX שמתחילה ב "ציור פרקטלים בכל שפת תכנות. (מאתגר...)"

בינארי - מכל משולש (מלבד הראשון) יוצאים שני משולשים נוספים....
הראשון יכול להוות עוגן בשביל כולם (לא חלק מהעץ הבינארי) ו"עליו" מוצבים 3 עצים בינאריים...
לפי דעתי מימוש של struct (מבנה) המכיל 3 עצים בינאריים יכול לתת את התוצאה שאתה רוצה.

עכשיו הבעיה היא אם אתה צריך שהתוכנית תמשיך בלי סוף (בלי שום הגבלה של המשתמש) זה יכול להיות קצת בעייתי כי אתה צריך שכל השלושה עצים ירוצו ביחד (אני למדתי בC# את נושא הthreads) ואני יודע איך אפשר לעשות את זה אבל אני לא יודע איך לעשות את זה בכל שפה....

מצד שני אם המשתמש יכניס את המספר המקסימלי זה ייקל כי תוכל לעבור עץ עץ (מה שיותר הגיוני כי בשביל לראות תוצאה כדאי שהתוכנית תסתיים מתישהו ולא תמשיך בלי סוף).

מקווה שעזרתי
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #5  
ישן 02-11-2004, 11:07
צלמית המשתמש של fat fish
  fat fish fat fish אינו מחובר  
 
חבר מתאריך: 20.06.03
הודעות: 5,616
עזרה פרקטלים
בתגובה להודעה מספר 1 שנכתבה על ידי RunX שמתחילה ב "ציור פרקטלים בכל שפת תכנות. (מאתגר...)"

אתה תארת סוג מסויים של פרקטל הנקרא פתית השלג של קוך, הנה דוגמה גרפית לשלבים של יצירתו:
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה


דוגמה לפרקטלים (פרקטלי מנדלברוט)
זוהי דוגמה לפרקטל ספציפי המתקבל מסוג משוואת quadratic recurrence עליהן ניתן ללמוד רבות בקישור הזה.
המשוואה:
קוד:
Zn <- Z^2 + C

כאשר הרכיבים Z ו-C הינם מספרים מרוכבים.
הפרקטל מראה את אוסף הנקודות שאינן בורחות לאינסוף לאחר מספר גדול של איטרציות.
בכל מחזור של איטרציה:
  • מונה האיטרציות מאופס.
  • גם החלק הממשי וגם המדומה של Z מאופסים.
  • הקבוע C מקבל ערך מתוך סידרת ערכים.
במהלך האיטרציה:
  • נבדוק את הערך |Z| אם ערכו גדול מ-2, אזי Cr ו-Ci (שעבורם אנו בודקים) גורמים לבריחה לאינסוף.
  • אם לאחר מספר נתון של איטרציות תנאי 1 אינו מתקבל, אזי Cr ו-Ci מגדירות נקודה במישור המורכב, שהוא חלק מאוסף נקודות דומות, היוצרות את חבורת מנדלברוט. נקודה זו נצבעת בצבע כלשהו.
דוגמת קוד (פסאודו קוד...או שחדי עיין יראו שזה basic )
קוד:
For Cr = -2.0 To 0.5 Step SomeStepX
For Ci = -1.25 To 1.25 Step SomeStepY
Zr = 0: Zi = 0: I = 0
Do
ZrN = Zr * Zr - Zi * Zi + Cr
ZiN = 2 * Zr * Zi + Ci
AbsZ = ZrN * ZrN + ZiN * ZiN
Zr = ZrN: Zi = ZiN
I = I + 1
Loop Until I = MaxIter Or AbsZ > 4
If I = MaxIter Then PSet (Cr, Ci), QBColor(0)
Next
Next


למידע נוסף:
http://library.thinkquest.org/26688/
http://www.tau.ac.il/~ecology/virtau/dbarel/leo.htm
http://math.bu.edu/DYSYS/index.html
http://classes.yale.edu/fractals/Welcome.html
http://www.elliottwave.com/response/
http://archive.ncsa.uiuc.edu/Edu/Fr...actal_Home.html
והמקור למה שכתבתי פה:
http://www.geocities.com/lipa_lot/ManJul.html
_____________________________________
[ זיו ]
[ fat fish ]

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 21:47

הדף נוצר ב 0.04 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר