עבור לתוכן

בעיה בלולאה ב - c

Featured Replies

פורסם

יש לי בעיה בתוכנית עם הלולאה ורציתי לדעת איך לפתור אותה ,הבעיה היא שאני רוצה שבסוף התוכנית התוכנית תשאל אותי עם לצאת או לא .

הינה הקוד

#include <stdio.h>

void main()

{

int a;

int b;

char c;

printf("enter number: \n");

scanf("%d",&a);

printf("enter number: \n");

scanf("%d",&b);

printf("the sum is : %d \n",a+b);


do{
printf("do you want to quit ? \n");

scanf("%c",&c);

}while (c=='y');

}

פורסם

מה הבעיה?

פורסם

אם אני מבין נכון (וזוכר משהו ב- C... ;) ), ה- do צריך להיות בין הכרזת ה- char וה- printf הראשון - אתה רוצה שהתוכנית תחשב סכום חדש אם המשתמש בחר שלא לצאת ולא רק לשאול שוב ושוב האם הוא רוצה לצאת, נכון? כמו-כן התנאי צריך להיות

c!='y'

במקום

c=='y'

הרי אתה רוצה שהלולאה תמשיך אם המשתמש בחר לא לצאת ולא להיפך.

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

const==var

על פני

var==const

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

ארכיון

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

דיונים חדשים