עבור לתוכן

שאלה להגשה בשפת c בבקשה עזרה דחופה!!

Featured Replies

פורסם

ניסיתי לערוך את ההודעה , מקווה שככה יותר קריא,

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

יש לי עבודה להגשה ואחד מהשאלות היא זאת

כתוב פונקציה שמקבלת מספר שלם k (שיהווה את הפרמטר של הפונקציה)

וסדרת מספרים שלמים שמסתיימת בזקיף 1-.

הפונקציה תחזיר 1, אם קיים זוג מספרים שסכומם קטן מ-;k אחרת, הפונקציה תחזיר 0.

ניתן להניח כי בסדרה יש לפחות 2 מספרים.

על הפונקציה לעצור כאשר כבר נקלטו שני מספרים שסכומם קטן מ-k.

לדוגמא:

עבור k=8 והסדרה הבא:

,2,8,10,5,6,2,-1

הפונקציה צריכה לעצור אחרי נקלט מספר 5 (כי 2+5<8)

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

include<stdio.h> int series (int k]

{

int i;

int sum =k-1;

for (i=1;i<k;i++){

if (sum<k)

return 1;

elsereturn 0;

}

} void main ()

{

int a,b;

printf("Enter a number:\n");

scanf("%d\n", &a);

scanf("%d\n",&a);

scanf("%d\n",&a);

if (a+a>series (b));

printf("%d,", series (b));

}

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

תודה מראש לכול העוזרים הטובים והנחמדים על זמנכם ורצונכם לעזור!!!!

פורסם

שלום וברוכה הבאה לפורום.

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

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

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

בכל מקרה, כמה טיפים קטנים:

א. תשתמשי ב-int main במקום void main, ובסוף ה-main שימי את הפקודה ;return 0 (השימוש ב-void main אינו תקני, ולא אמורים לעבוד ככה).

ב. תמיד תמיד תמיד תשימי סוגריים מסולסלים אחרי if/for/while, גם אם זה רק עבור פקודה אחת. זה הופך את הקוד לקריא יותר, ומונע שגיאות בעתיד.

ארכיון

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

דיונים חדשים