דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. הבעיה היא לא הgoto

הבעיה היא לא הgoto

מתוזמן נעוץ נעול הועבר תכנות
51 פוסטים 8 כותבים 768 צפיות 7 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ח מנותק
    ח מנותק
    חוקר
    כתב ב נערך לאחרונה על ידי
    #9

    אמנם בשונה מ @שואף שכותב ישירות באסטריסק ע"י מימוש בPHP (או משהו כזה), ואני עדיין עובד עם הAPI מול ימות המשיח.
    אבל נראה לי שזה עדיין דומה.
    אני מבין את @שואף שבאמת זה מאוד קל לכתוב זאת בצורה כזו, ואתה שולט בקלות על הזרימה לאן להפנות את המאזין במידה והקיש כך או לא הקיש, ובכל מקרה כשמדובר ב 3 נתונים זה באמת לא מסובך.
    בעיני עיקר הסיפור שלו הוא בגלל שהוא רוצה לאפשר בכל שלב לחזור לשלב הקודם, ובשביל זה הוא משתמש בgoto, ולולי כן הוא היה יכול לעשות בקלות בתוך הפונקציה עצמה לולאה שלא משחררת את המאזין עד שהוא משחרר את הנתון המבוקש.
    אני אישית גם מתמודד עם זה, ואכן כמעט שאני לא מאפשר חזרה שלב בודד אחורה, והמקסימום הוא שאני מגדיר לפי הצורך בכל נתון בנפרד שאם הקיש 0 אני מחזיר אותו לתחילת השלוחה (זה לא נכון לעשות את זה אוטומטי לכל הערכים בגלל שבמקרים ואני דורש מהלקוח להזין נתון שיכול להיות אפס אז כמובן שאני לא יוכל להגדיר שיוחזר לשלב קודם, וא"כ עלי לעשות זאת בכוכבית, ולפעמים הכוכבית גם בשימוש וא"כ היה עלי להגדיר כל פעם משהו אחר, ולכן התרגלתי פשוט לכתוב ידני כעין מה ש @שואף שם בקוד שלו, וכל פעם לפי הצורך אני מעביר אותו לתחילת השלוחה או מה על ידי מעקב של מה הוא הקיש).
    אלא מאי? @dovid הוא כמלאך המכה ואומר גדל, ולא ניחא ליה בזה, הוא רוצה להביא אותנו שנוציא את המקסימום, ולכן הוא לא מרפה.
    אני חושב כעת, א. אני יכול להוסיף לפונקציית הread ערך כמו back שמקבל פרמטר שבמידה והוא קיים הוא יעביר אותו חזרה, וכל פעם אוכל להגדיר בו האם 0 או * או כל מקש אחר יבצע את הפעולה של חזרה לתחילת השלוחה.
    אז כבר פתרתי חלק אחד.
    אך מה שקורה כעת שהפונקציה של read שעד היום קיבל עד 7 פרמטרים יקבל 8, ולא תמיד חייבים הכל, זה יעריך את הקוד של הקריאה לפונקציה, אז אולי אצטרך לשנות שהפונקציה מקבלת אובייקט options ובו אכניס בשם את הפרמטרים הנדרשים, אך זה כבר גם אריכות שמסרבלת.
    {אלא שבאמת להכניס כל פעם תנאי באם הקיש 0/*/אחר בשורה נפרדת מתחת היא הרי גם מאריכה את הקוד.. אם לא לרוחב השורה אז לאורך המסך}.
    ולגבי חזרה שלב אחד אחורה בכל פעם, מה ששואף מרוויח עם הטוגו, במימוש שלי עם הAPI של ימות המשיח זה אותו דבר, והיות ואני לא חשבתי והתחברתי לגוטו אז פשוט כמעט ואני לא משתמש באופציה של חזרה שלב אחורה, ובמקרים שאני מוכרח את זה הייתי עושה פיתרון שמתאים לשלב אחד בודד אחורה, לא תהליך שלם בצעדים אחורה.
    זה באמת מורכב לעשות פיתרון לזה.
    אבל אולי בזכות @dovid אנסה שוב לחשוב על משהו ובעזה"י להגיע לתוצאה.

    WWWW תגובה 1 תגובה אחרונה
    2
    • שואףש שואף

      @dovid לראשונה עשיתי לך dislike.
      אין פיתרון אמיתי לבעייה הזו בPHP, ואם אתה חושב שיש, אז לא הבנת את הבעייה

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

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

      WWWW מנותק
      WWWW מנותק
      WWW
      כתב ב נערך לאחרונה על ידי
      #10

      @שואף אמר בהבעיה היא לא הgoto:

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

      איך זה שאני אף פעם לא השתמשתי בGOTO?
      אני עושה המון לולאות אינסופיות עם break 1, break 2 וכו'. אני חושב שזה יותר תקין.

      WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

      nigunN תגובה 1 תגובה אחרונה
      1
      • ח חוקר

        אמנם בשונה מ @שואף שכותב ישירות באסטריסק ע"י מימוש בPHP (או משהו כזה), ואני עדיין עובד עם הAPI מול ימות המשיח.
        אבל נראה לי שזה עדיין דומה.
        אני מבין את @שואף שבאמת זה מאוד קל לכתוב זאת בצורה כזו, ואתה שולט בקלות על הזרימה לאן להפנות את המאזין במידה והקיש כך או לא הקיש, ובכל מקרה כשמדובר ב 3 נתונים זה באמת לא מסובך.
        בעיני עיקר הסיפור שלו הוא בגלל שהוא רוצה לאפשר בכל שלב לחזור לשלב הקודם, ובשביל זה הוא משתמש בgoto, ולולי כן הוא היה יכול לעשות בקלות בתוך הפונקציה עצמה לולאה שלא משחררת את המאזין עד שהוא משחרר את הנתון המבוקש.
        אני אישית גם מתמודד עם זה, ואכן כמעט שאני לא מאפשר חזרה שלב בודד אחורה, והמקסימום הוא שאני מגדיר לפי הצורך בכל נתון בנפרד שאם הקיש 0 אני מחזיר אותו לתחילת השלוחה (זה לא נכון לעשות את זה אוטומטי לכל הערכים בגלל שבמקרים ואני דורש מהלקוח להזין נתון שיכול להיות אפס אז כמובן שאני לא יוכל להגדיר שיוחזר לשלב קודם, וא"כ עלי לעשות זאת בכוכבית, ולפעמים הכוכבית גם בשימוש וא"כ היה עלי להגדיר כל פעם משהו אחר, ולכן התרגלתי פשוט לכתוב ידני כעין מה ש @שואף שם בקוד שלו, וכל פעם לפי הצורך אני מעביר אותו לתחילת השלוחה או מה על ידי מעקב של מה הוא הקיש).
        אלא מאי? @dovid הוא כמלאך המכה ואומר גדל, ולא ניחא ליה בזה, הוא רוצה להביא אותנו שנוציא את המקסימום, ולכן הוא לא מרפה.
        אני חושב כעת, א. אני יכול להוסיף לפונקציית הread ערך כמו back שמקבל פרמטר שבמידה והוא קיים הוא יעביר אותו חזרה, וכל פעם אוכל להגדיר בו האם 0 או * או כל מקש אחר יבצע את הפעולה של חזרה לתחילת השלוחה.
        אז כבר פתרתי חלק אחד.
        אך מה שקורה כעת שהפונקציה של read שעד היום קיבל עד 7 פרמטרים יקבל 8, ולא תמיד חייבים הכל, זה יעריך את הקוד של הקריאה לפונקציה, אז אולי אצטרך לשנות שהפונקציה מקבלת אובייקט options ובו אכניס בשם את הפרמטרים הנדרשים, אך זה כבר גם אריכות שמסרבלת.
        {אלא שבאמת להכניס כל פעם תנאי באם הקיש 0/*/אחר בשורה נפרדת מתחת היא הרי גם מאריכה את הקוד.. אם לא לרוחב השורה אז לאורך המסך}.
        ולגבי חזרה שלב אחד אחורה בכל פעם, מה ששואף מרוויח עם הטוגו, במימוש שלי עם הAPI של ימות המשיח זה אותו דבר, והיות ואני לא חשבתי והתחברתי לגוטו אז פשוט כמעט ואני לא משתמש באופציה של חזרה שלב אחורה, ובמקרים שאני מוכרח את זה הייתי עושה פיתרון שמתאים לשלב אחד בודד אחורה, לא תהליך שלם בצעדים אחורה.
        זה באמת מורכב לעשות פיתרון לזה.
        אבל אולי בזכות @dovid אנסה שוב לחשוב על משהו ובעזה"י להגיע לתוצאה.

        WWWW מנותק
        WWWW מנותק
        WWW
        כתב ב נערך לאחרונה על ידי
        #11

        @חוקר ב API של ימות זה עוד יותר מסובך. כל העניין של חזרה אחורה.
        באסטריסק זה הרבה יותר קל.

        WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

        ח תגובה 1 תגובה אחרונה
        2
        • שואףש שואף

          @dovid לראשונה עשיתי לך dislike.
          אין פיתרון אמיתי לבעייה הזו בPHP, ואם אתה חושב שיש, אז לא הבנת את הבעייה

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

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

          nigunN מנותק
          nigunN מנותק
          nigun
          כתב ב נערך לאחרונה על ידי nigun
          #12

          @שואף
          לא הבנתי מה קורה בתוך הפונקציה readAGI?
          למה לא לעשות לולאה ולהעביר לפונקציה את מספר הפעמים שהלולאה אמורה לרוץ כל עוד לא התקבל תגובה?
          ואם אתה מעביר "0" הלולאה תרוץ לנצח.
          ואז מבחוץ זה יראה משהו כזה:

          $bankInputAkdama = 'ברוך הבא למערכת איתור חשבונות בנק מוגבלים';
          $bank = readAGI($bankInputAkdama . TEXT . 'הזן מספר בנק ולסיום סולמית', NUMBERSNOSTAR,1);
          if (!$bank) $bank = readAGI(TEXT . 'הזן מספר בנק ולסיום סולמית', NUMBERSNOSTAR,0);
          
          

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

          מייל: nigun@duck.com

          תגובה 1 תגובה אחרונה
          1
          • WWWW WWW

            @חוקר ב API של ימות זה עוד יותר מסובך. כל העניין של חזרה אחורה.
            באסטריסק זה הרבה יותר קל.

            ח מנותק
            ח מנותק
            חוקר
            כתב ב נערך לאחרונה על ידי
            #13

            @WWW אמר בהבעיה היא לא הgoto:

            @חוקר ב API של ימות זה עוד יותר מסובך. כל העניין של חזרה אחורה.
            באסטריסק זה הרבה יותר קל.

            אני לא מכיר עדיין אסטריסק אבל מקטע הקוד שהעתיק כאן @שואף אני לומד שגם שם זה לא קורה מחשבות של המתכנת.., ועדיין הוא צריך לכתוב קוד שמבצע מה יקרה במידה כזו או כזו, אם כן הקיש או לא הקיש.
            אז בזה אני לא רואה חילוק בין הAPI של ימות לאסטריסק.

            תגובה 1 תגובה אחרונה
            1
            • WWWW WWW

              @שואף אמר בהבעיה היא לא הgoto:

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

              איך זה שאני אף פעם לא השתמשתי בGOTO?
              אני עושה המון לולאות אינסופיות עם break 1, break 2 וכו'. אני חושב שזה יותר תקין.

              nigunN מנותק
              nigunN מנותק
              nigun
              כתב ב נערך לאחרונה על ידי nigun
              #14

              @WWW אמר בהבעיה היא לא הgoto:

              איך זה שאני אף פעם לא השתמשתי בGOTO?

              למעשה איך אתה עובר אחורה לנקודה ספציפית, בלי לקבל קוד ספגטי?

              מייל: nigun@duck.com

              dovidD תגובה 1 תגובה אחרונה
              1
              • nigunN nigun

                @WWW אמר בהבעיה היא לא הgoto:

                איך זה שאני אף פעם לא השתמשתי בGOTO?

                למעשה איך אתה עובר אחורה לנקודה ספציפית, בלי לקבל קוד ספגטי?

                dovidD מנותק
                dovidD מנותק
                dovid
                ניהול
                כתב ב נערך לאחרונה על ידי
                #15

                במקרה של שואף אפשר לעשות בלולאות
                אחת על הכל "לבדיקה חדשה הקש כוכבית"
                ועל כל מקטע ומקטע עד שהתשובה לא ריקה (והכי טוב להעביר לפוקנציה וכנאמר).
                אבל הgoto במקרה של flow של שיחה הוא הגיוני לחלוטין, מותר וצריך להשתמש בו לדעתי,
                הטענה שלי הייתה שיעשו משהו גנרי וקל לכאלה מקרים, אבל אני מסכים עם שואף שזה בקלות יכול להסתבך. אני חושב על קובץ כמו XML ששמה עושים את הסתעפויות, כולל תנאים וכו' והקוד יידע להריץ אתת הקובץ הזה ולנהל לפיו שיחה.

                • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                clickoneC תגובה 1 תגובה אחרונה
                3
                • dovidD dovid

                  במקרה של שואף אפשר לעשות בלולאות
                  אחת על הכל "לבדיקה חדשה הקש כוכבית"
                  ועל כל מקטע ומקטע עד שהתשובה לא ריקה (והכי טוב להעביר לפוקנציה וכנאמר).
                  אבל הgoto במקרה של flow של שיחה הוא הגיוני לחלוטין, מותר וצריך להשתמש בו לדעתי,
                  הטענה שלי הייתה שיעשו משהו גנרי וקל לכאלה מקרים, אבל אני מסכים עם שואף שזה בקלות יכול להסתבך. אני חושב על קובץ כמו XML ששמה עושים את הסתעפויות, כולל תנאים וכו' והקוד יידע להריץ אתת הקובץ הזה ולנהל לפיו שיחה.

                  clickoneC מנותק
                  clickoneC מנותק
                  clickone
                  כתב ב נערך לאחרונה על ידי
                  #16

                  @dovid כשאתה מבקש נתונים מהמשתמש באפליקציית קונסול, (CLI), איך תנהל את זה?
                  בעצם זה שקול לאותו דבר.....

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

                  אין טסט כמו פרודקשן.

                  המייל שלי urivpn@gmail.com

                  dovidD תגובה 1 תגובה אחרונה
                  1
                  • clickoneC clickone

                    @dovid כשאתה מבקש נתונים מהמשתמש באפליקציית קונסול, (CLI), איך תנהל את זה?
                    בעצם זה שקול לאותו דבר.....

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

                    dovidD מנותק
                    dovidD מנותק
                    dovid
                    ניהול
                    כתב ב נערך לאחרונה על ידי
                    #17

                    @clickone חזק! דימוי מצויין!
                    זה בעצם אומר שללא ספק יש כבר ספריות שעושות את זה.

                    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                    תגובה 1 תגובה אחרונה
                    3
                    • dovidD מנותק
                      dovidD מנותק
                      dovid
                      ניהול
                      כתב ב נערך לאחרונה על ידי
                      #18

                      הנה דוגמא בnodejs

                      $ node contact.js a 
                      # The Above command lauches a prompt
                      ? Enter firstname .. John
                      ? Enter lastname .. Doe
                      ? Enter phone number .. +145****
                      ? Enter email address .. john.doe@contacto.com
                      New contact added
                      

                      הכל אוטומטי וגנרי בזכות ספריות מתאימות, זה ההגדרה:

                      const questions = [
                        {
                          type : 'input',
                          name : 'firstname',
                          message : 'Enter firstname ..'
                        },
                        {
                          type : 'input',
                          name : 'lastname',
                          message : 'Enter lastname ..'
                        },
                        {
                          type : 'input',
                          name : 'phone',
                          message : 'Enter phone number ..'
                        },
                        {
                          type : 'input',
                          name : 'email',
                          message : 'Enter email address ..'
                        }
                      

                      זה הקוד! :

                      prompt(questions).then((answers) =>  addContact(answers));
                      
                      • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                      • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                      nigunN ח 2 תגובות תגובה אחרונה
                      5
                      • dovidD dovid

                        הנה דוגמא בnodejs

                        $ node contact.js a 
                        # The Above command lauches a prompt
                        ? Enter firstname .. John
                        ? Enter lastname .. Doe
                        ? Enter phone number .. +145****
                        ? Enter email address .. john.doe@contacto.com
                        New contact added
                        

                        הכל אוטומטי וגנרי בזכות ספריות מתאימות, זה ההגדרה:

                        const questions = [
                          {
                            type : 'input',
                            name : 'firstname',
                            message : 'Enter firstname ..'
                          },
                          {
                            type : 'input',
                            name : 'lastname',
                            message : 'Enter lastname ..'
                          },
                          {
                            type : 'input',
                            name : 'phone',
                            message : 'Enter phone number ..'
                          },
                          {
                            type : 'input',
                            name : 'email',
                            message : 'Enter email address ..'
                          }
                        

                        זה הקוד! :

                        prompt(questions).then((answers) =>  addContact(answers));
                        
                        nigunN מנותק
                        nigunN מנותק
                        nigun
                        כתב ב נערך לאחרונה על ידי
                        #19

                        @dovid
                        יפה
                        אבל איפה הוא יכניס את החזרה שלב אחד אחורה?
                        לא תמיד הכוכבית חוזרת להתחלה או דווקא לשלב אחד אחורה
                        זה יכול להיות למשל 3 שלבים אחורה

                        מייל: nigun@duck.com

                        תגובה 1 תגובה אחרונה
                        1
                        • dovidD dovid

                          הנה דוגמא בnodejs

                          $ node contact.js a 
                          # The Above command lauches a prompt
                          ? Enter firstname .. John
                          ? Enter lastname .. Doe
                          ? Enter phone number .. +145****
                          ? Enter email address .. john.doe@contacto.com
                          New contact added
                          

                          הכל אוטומטי וגנרי בזכות ספריות מתאימות, זה ההגדרה:

                          const questions = [
                            {
                              type : 'input',
                              name : 'firstname',
                              message : 'Enter firstname ..'
                            },
                            {
                              type : 'input',
                              name : 'lastname',
                              message : 'Enter lastname ..'
                            },
                            {
                              type : 'input',
                              name : 'phone',
                              message : 'Enter phone number ..'
                            },
                            {
                              type : 'input',
                              name : 'email',
                              message : 'Enter email address ..'
                            }
                          

                          זה הקוד! :

                          prompt(questions).then((answers) =>  addContact(answers));
                          
                          ח מנותק
                          ח מנותק
                          חוקר
                          כתב ב נערך לאחרונה על ידי
                          #20

                          @dovid אמר בהבעיה היא לא הgoto:

                          הנה דוגמא בnodejs

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

                          תגובה 1 תגובה אחרונה
                          2
                          • dovidD מנותק
                            dovidD מנותק
                            dovid
                            ניהול
                            כתב ב נערך לאחרונה על ידי
                            #21

                            עושים גם לזה משהו מוכן, תחשוב על משהו כזה

                             condition: x => x.input == '*', action: 'goToStep', param: 2
                            
                            • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                            • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                            nigunN תגובה 1 תגובה אחרונה
                            2
                            • dovidD dovid

                              עושים גם לזה משהו מוכן, תחשוב על משהו כזה

                               condition: x => x.input == '*', action: 'goToStep', param: 2
                              
                              nigunN מנותק
                              nigunN מנותק
                              nigun
                              כתב ב נערך לאחרונה על ידי
                              #22

                              @dovid
                              ומה קורה מאחורי הקלעים? GOTO?

                              מייל: nigun@duck.com

                              dovidD תגובה 1 תגובה אחרונה
                              1
                              • nigunN nigun

                                @dovid
                                ומה קורה מאחורי הקלעים? GOTO?

                                dovidD מנותק
                                dovidD מנותק
                                dovid
                                ניהול
                                כתב ב נערך לאחרונה על ידי
                                #23

                                @nigun מאה אפשרויות... goto לא תיתכן לדעתי באופן דינמי.

                                • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                nigunN תגובה 1 תגובה אחרונה
                                1
                                • dovidD dovid

                                  @nigun מאה אפשרויות... goto לא תיתכן לדעתי באופן דינמי.

                                  nigunN מנותק
                                  nigunN מנותק
                                  nigun
                                  כתב ב נערך לאחרונה על ידי
                                  #24

                                  @dovid
                                  אז מה כן? מערך?

                                  מייל: nigun@duck.com

                                  dovidD תגובה 1 תגובה אחרונה
                                  1
                                  • nigunN nigun

                                    @dovid
                                    אז מה כן? מערך?

                                    dovidD מנותק
                                    dovidD מנותק
                                    dovid
                                    ניהול
                                    כתב ב נערך לאחרונה על ידי
                                    #25

                                    @nigun כתבתי לך מאה אפשרויות, אתה מציק.
                                    אתה באמת רוצה שתחיל לפרט? הנה חשבת לבד על מערך, יופי יש לך תשובה אפשרית.

                                    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                    nigunN תגובה 1 תגובה אחרונה
                                    0
                                    • dovidD dovid

                                      @nigun כתבתי לך מאה אפשרויות, אתה מציק.
                                      אתה באמת רוצה שתחיל לפרט? הנה חשבת לבד על מערך, יופי יש לך תשובה אפשרית.

                                      nigunN מנותק
                                      nigunN מנותק
                                      nigun
                                      כתב ב נערך לאחרונה על ידי
                                      #26

                                      @dovid
                                      רציתי לדעת האם אני בכיוון?

                                      מייל: nigun@duck.com

                                      dovidD י 2 תגובות תגובה אחרונה
                                      0
                                      • nigunN nigun

                                        @dovid
                                        רציתי לדעת האם אני בכיוון?

                                        dovidD מנותק
                                        dovidD מנותק
                                        dovid
                                        ניהול
                                        כתב ב נערך לאחרונה על ידי
                                        #27

                                        @nigun אחד הכיוונים 🙂
                                        המימוש פה הוא החלק השולי.

                                        • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                        • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                        תגובה 1 תגובה אחרונה
                                        3
                                        • nigunN nigun

                                          @dovid
                                          רציתי לדעת האם אני בכיוון?

                                          י מנותק
                                          י מנותק
                                          יוסף בן שמעון
                                          כתב ב נערך לאחרונה על ידי
                                          #28

                                          @nigun לא נראה לי שזה אמור להיות מורכב, קח פונקציה כזו

                                          function buildQuestions (questions) {
                                              var answers = {};
                                              for (var i = 0; i < questions.length; i++) {
                                                  var question = questions[i];
                                                  var input = read(question);
                                                  answers[question.name] = input;
                                              }
                                              return answers;
                                          }
                                          function read (question) {
                                              var input = readAGI(question.massage, question.type);
                                              if (!input && question.isRequired && question.tryAgain) {
                                                  --question.tryAgain;
                                                  return read(question);
                                              }
                                              return input;
                                          }
                                          

                                          ותעביר לה גייסון כמו שדוד הציע, תוסיף לגייסון שדות כמו isRequired tryAgain ויש לך קוד שיתאים לכל השיחות

                                          תגובה 1 תגובה אחרונה
                                          2
                                          תגובה
                                          • תגובה כנושא
                                          התחברו כדי לפרסם תגובה
                                          • מהישן לחדש
                                          • מהחדש לישן
                                          • הכי הרבה הצבעות


                                          • 1
                                          • 2
                                          • 3
                                          בא תתחבר לדף היומי!
                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום