עבור לתוכן

עזרה בשפת C- כתיבת קוד שנותן שגיאה

Featured Replies

פורסם
  • מחבר

סוף סוף זה עבד תודה רבה ! :s0817:

פורסם
  • מחבר

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

** מישהו יודע אם יש אפשרות שהמחשב יסמן לי בכללי במקרים דומים היכן הבעיה? תודה רבה לעוזרים :yelclap:


[LEFT]int num1,num2,divide,RestDiv,value_Letter,negative1,LastDigit;
double dou_div;
char capitalLetter,charSmallLetter,char_LastDigit;[/LEFT]



[LEFT]

printf("Enter a negative number (int) \n");
scanf("%d", &negative1);
negative1=0-negative1;
LastDigit=negative1-((negative1)/10)*negative1;
char_LastDigit=(char)LastDigit;
printf("The ASCII value of the last dibig is: %c \n", char_LastDigit);[/LEFT]


פורסם

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

פורסם
  • מחבר

אני בכוונה חתכתי הפעם לא היה צורך בכל התוכנית.. ולא הבנתי מזה הIDE הזה ?.. איפה הטעות בקוד?

פורסם

א. כששמים CODE לא צריך לשים LEFT (אפשר לראות ששמת את זה)

ב. IDE זה סביבת פיתוח.

ג. האם השגיאה היא בזמן הקימפול (הקומפיילר רושם שגיאה) או כשאת מריצה משהו לא עובד ?

ד. איך את מקמפלת / מריצה, באיזה סביבה ?

פורסם
  • מחבר

לא קימפלתי אני מריצה את זה בויזואל סטודיו, עדיף במקום אחר?

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

פורסם

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

פורסם
  • מחבר

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

פורסם

יש פה חוסר הבנה קל.

אם את לוקחת תו (char), ממירה אותו ל-int ומדפיסה את התוצאה, אז הוא ידפיס לך את ערך ה-ASCII של אותו תו. לדוגמה אם התו הוא 'A' אז זה ידפיס לך 65.

מצד שני, אם את לוקחת מספר (int), ממירה אותו ל-char ומדפיסה את התוצאה, אז הוא ידפיס לך את התו שמיוצג ע"י ערך ה-ASCII הזה. אם לדוגמה תקחי את המספר 65, תמירי אותו ל-char ותדפיסי, אז הוא ידפיס לך את התו 'A'. אם תקחי את המספר 5 ותדפיסי אותו באותו אופן, אז הוא לא ידפיס לך '5', אלא הוא ידפיס לך את התו שמיוצג ע"י הערך 5, שהוא בכלל לא תו דפיס (כל ערכי ה-ASCII בין 0 ל-31 הם ערכים מיוחדים, לדוגמה 10 מייצג ירידת שורה).

אם את רוצה להדפיס ספרה (שמיוצגת כ-int, לא כ-char) אז את צריכה להדפיס אותו כמו שהיית מדפיסה כל מספר אחר.

נ.ב. תלמדי על אופרטור מודולו (%), הוא יעשה לך את החיים קלים יותר.

נערך על-ידי שניצל

פורסם
  • מחבר

המון המון תודה! הצלחתי עכשיו :)

מעריכה את העזרה והמענה המהיר :xyxthumbs:

ארכיון

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

דיונים חדשים