עבור לתוכן

אנשים אם אפשר קצת עזרה בC...

Featured Replies

פורסם

אם יש לכם זמן, אז אנא נסו לעזור לי בשאלות הבאות:

*כתבו תוכנית שקוראת מספר ממשי חיובי (המייצג מסה), ולאחריו מופרד ע"י רווח אחד מן התווים הבאים: k, c, o או p, המייצג את יחידת המידה (kilogram, carat, ounce או pound). התכנית מחשבת ומדפיסה את המסה ביחידות של גרמים, כאשר היא מבצעת את ההמרה על-פי הטבלה הבאה: kilogram = 1000 gr

carat = 0.2 gr

ounce = 28.34 gr

pound = 453.44 gr

לדוגמה (שימו לב לרווח המפריד):

קלט: 20.4 o

פלט: 578.136 gr

מלבד המקום בו אתם בודקים שהמסה חיובית, יש לכתוב את התכנית ללא שימוש ב- if-else !

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

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

המספר המקסימאלי.

המספר המינימאלי.

הסכום של כל המספרים.

הממוצע של המספרים.

*קירוב הבסיס הטבעי

כידוע לנו, הבסיס הטבעי (e = 2.71828 ) מוגדר על-ידי הגבול הבא:e=lim(1+1/n)^n, n->infinity

כתבו תכנית בשם שקוראת כקלט את מספר איטרציות הקירוב הנדרשות (מספר שנסמן N), ומדפיסה את כל ערכי הביטוי הנ"ל עבור כל ערכי n שבין 1 ל-N. דאגו להשתמש במשתנים מסוג double (ולא float), כדי להרוויח דיוק רב יותר.

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

הערה: בתכנית זו אין להשתמש בפונקציות עזר מן הספריה math.h (למי שמכיר).

***תודה על המאמץ!

פורסם
  • מחבר

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

#include <stdio.h>

int main(void)

{

double mass;

char letter;

printf("insert mass and first letter of mass unit\n");

scanf("%lf %c",&mass,&letter);

if (mass<0)

printf("Invalid input\n");

return 1;

switch (letter)

{

case 'o':

printf("%lf gr",mass*28.34);

break;

case 'c':

printf("%lf gr",mass/5);

break;

case 'k':

printf("%lf gr",mass*1000);

break;

case 'p':

printf("%lf gr",mass*435.44);

break;

default: printf ("Invalid input\n");

}

return 0;

}

פורסם

אתה לומד הנדסה באוניברסיטת תל אביב ?

פורסם

השאלה היתה מכוונת לפותח התרד.

פורסם
  • מחבר

פותח התרד אכן לומד באת"א...

*תודה על העזרה.

פורסם

point taken

ארכיון

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

דיונים חדשים