עזרה בבדיקת קלט.| וגם שאלה על פונקציית scanf. - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

עזרה בבדיקת קלט.| וגם שאלה על פונקציית scanf.


amd@ati

Recommended Posts

שלום,

אני צריך לצרף בדיקת קלט לתכנית האמורה לקבל מספרים שלמים בלבד.

צירפתי בדיקת קלט בדיוק כפי שהופיע בהנחיות.

מה שקורה זה שאם אני מכניס מספר שלם ואחריו מספר ממשי, הוא לא מזהה את הבעיה.

(אם המספר הראשון שאני מכניס הוא ממשי הוא כן מודיע על כך.)

היכן שוכנת הבעיה?

[attachment deleted by admin]

קישור לתוכן
שתף באתרים אחרים

scanf קורא עד שהוא נתקל בתו שלא מתאים למה שאתה מנסה לקרוא כרגע.

כלומר, אם אתה מנסה לקרוא את הקלט "123.45" בתור מספר שלם (d%) אז הוא יעצור ברגע שהוא יגיע לנקודה.

אם הקלט הוא כזה:

123 456.78

אז בהתחלה הוא יקרא את 123 בהצלחה, ואחר כך הוא יקרא את 456 וייעצר בנקודה.

אם הקלט הוא כזה:

456.78 123

אז המספר הראשון שהוא יקרא יהיה 456, והוא ייעצר בנקודה. אחר כך הוא שוב ינסה להמשיך לקרוא מהנקודה, ולא יצליח.

קישור לתוכן
שתף באתרים אחרים

בהמשך לבדיקת הקלט, הייתי רוצה לדעת באופן כללי מה מחזירה הפונקצייה scanf, כלומר מה היא מחזירה במקרה הזה למשתנה number,

וכמו כן כיצד זה מתקשר לבדיקת הקלט.

[attachment deleted by admin]

קישור לתוכן
שתף באתרים אחרים

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

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

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

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...