עזרה ב C

עזרה ב C

1. למה בכל פעם שאני משתמש ב getch() זה קולט רק אותיות בעברית וכשאני לוחץ alt+shift זה גם לא עוזר? 2. איפה אני יכול למצוא קוד של תוכנית שפותרת משוואות? (לא מצאתי בגוגול) תודה.
 

Zack DA

New member
אז ככה:

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

selalerer

New member
לגבי משוואות,

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

1. כן התכוונתי לעברית, וזה קורה לי רק בפונקציה getch(), בשאר פונקציות הקלט זה בסדר (רק באנגלית), מישהו יודע איך לפתור את זה? ואל תגידו לי להשתמש ב getchar() כי זה בכלל לא אותו דבר 2. אני רוצה לראות קוד של כזאת תוכנית כדי לראות איך לבנות כזה דבר כי ניסיתי ואני לא ממש יודע איך, זה צריך לקבל מחרוזת למשל: "2x+2=6" וזה יחזיר לי "2"
 

selalerer

New member
בקשר למשוואות.

יש לתוכנה כזאת שני חלקים: 1.ניתוח המחרוזת. 2.פתירת המשוואה. נתחיל מהחלק השני, הוא החלק העיבודי האמיתי. ניתוח המחרוזת זה חלק מהקלט למעשה (אפילו שזה מסובך לא פחות). נאמר שנעשה תוכנית שקולטת משוואה בנעלם אחד בפורמט קבוע, למשל AX=C (בכדי להתעלם מניתוח הקלט כרגע) זה יהיה משהו כזה:
const float eps=0.0001; float A,C; cout << "Enter the equation in format AX=C." ; cout << "\nEnter A:" ; cin >> A ; cout << "\nEnter C:" ; cin >> C ; cout << "\nThe equation : " << A << "X=" << C ;​
זה יהיה קטע הקלט. בכדי לעשות את העיבוד, נחלץ את X מהמשוואה וייצא לנו X=C/A וכך נחשב את התוצאה, כמובן עם להתחשב במקרי קצה (A!=0).
if(A<eps||A>-eps) // A==0 cout << "\nUnsolveable equation."; else { float X=C/A; cout << "\nX=" << X ; }​
זהו, זה לא כלכך מסובך (היות וזה משוואה פשוטה מאוד) אבל זה הרעיון הכללי. בקשר לניתוח המחרוזת, כאן אתה מתחיל להסתבך. כמה שאתה רוצה שזה יכיר יותר פורמטים אתה צריך לעבוד יותר קשה. אם אתה ממש רוצה שזה יוכל לקרוא כל משוואה כמו בנאדם, אז כאן אתה מתחיל להכנס לנושאים נוספים כגון כינוס איברים, פתירת סוגים רבים של משוואות (בשני נעלמים, במעלה שניה וכו'). בקשר לאלגוריתמים מוכנים, חפש ברשת, אני חושש שאני לא יודע להגיד לך איפה הם נמצאים. בהצלחה.
 
הקפצה?

הקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצההקפצה
 
למעלה