ABA


"|עזרה| צריך עזרה בC"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #11008 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 11008
אבוקדוש
חבר מתאריך 5.4.12
125 הודעות, דרג אמינות חבר זה
   17:38   15.11.12   
אל הפורום  
  |עזרה| צריך עזרה בC  
 
   ערכתי לאחרונה בתאריך 15.11.12 בשעה 17:45 בברכה, אבוקדוש
 
יש לי תרגיל כזה:

כתוב תכנית אשר תקלוט מספרים ממשיים עד לקליטה של מספר 0 . התוכנית תדפיס את המספר אשר חלק הממשי שלו מקסימלי וגם כן את המספר הסידורי שלו בקלט.
למשל,
נקלטו 560.45 67.9 8.98 0
הפלט : 8.98 – 3 (שלישי לפי הסדר)

מה שאני עשיתי הוא כזה (הלולאה עובדת לי רק התצוגה לא)
(אני ממש חדש בC ואני לא מבין מה אני עושה כל כך)

||
#include <stdio.h>
void main ()
{
float a;
int loopcount=0;

while (loopcount<1)
{
printf("Enter float numbers, enter 0- for exit: ");
scanf("%f",&a);
loopcount++;
if(a!=0)
loopcount=0;
else if (a==0)
loopcount=1;
}
printf("Number - %f , Float Part - %f , Counter= %d", a,a,loopcount);
}


עזרה בבקשהההההה


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  תכניס את התצוגה לתוך הלולאה dvir8 15.11.12 19:24 1
  סוף סוף שואלים על משהו בC :) asco88  15.11.12 23:51 2
     תודה אבוקדוש 16.11.12 12:32 3
         אתה צריך 2 משתנים בשביל זה inno3D 16.11.12 13:51 4
             אתה יכול בקצרה להראת לי אבוקדוש 16.11.12 16:48 5
                 דוגמה בסיסית: asco88  18.11.12 00:14 7
                     אואה אבוקדוש 18.11.12 00:38 8
                         זאת בסהכ השוואה asco88  18.11.12 01:55 9
                             גאוני! אבוקדוש 18.11.12 13:04 10
                             אז לפי התרגיל ששמתי שיניתי לככה: אבוקדוש 18.11.12 13:06 11
                                 אתה מערבב פה מלא int ו- float inno3D 18.11.12 15:31 12
                                     כן בדיוק asco88  18.11.12 16:15 13
                                         a מוגדר אצלי כfloat...עדיין לא יוצא לי כמו שצריך אבוקדוש 19.11.12 14:11 14
                                             תעלה את הקוד inno3D 19.11.12 17:34 15
  עזרהההההההה אבוקדוש 17.11.12 20:00 6

       
dvir8
חבר מתאריך 13.5.02
5929 הודעות, דרג אמינות חבר זה
   19:24   15.11.12   
אל הפורום  
  1. תכניס את התצוגה לתוך הלולאה  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
asco88 
חבר מתאריך 17.6.04
26757 הודעות, דרג אמינות חבר זה
   23:51   15.11.12   
אל הפורום  
  2. סוף סוף שואלים על משהו בC :)  
בתגובה להודעה מספר 0
 
לענייננו, בעצם מבקשים ממך לעבור על כל המספרים שנכנסים ובסוף לקבוע מי היה המספר שהחלק הממשי שלו הגדול ביותר, ומה האינדקס שלו.
למעשה הדרך היא משהו כזה:
הלולאה תחכה שידלק איזשהו "דגל" שאומר שנקלט 0.
המשתמש יתבקש להכניס מספר.
נקלוט את המספר ונעלה את מונה הלולאה.
עד כאן פשוט.

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

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

אני יכול לכתוב לך כמובן את הפיתרון, אבל אז איך תלמד

אם יש לך עוד שאלות אתה מוזמן לשאול

בהצלחה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
אבוקדוש
חבר מתאריך 5.4.12
125 הודעות, דרג אמינות חבר זה
   12:32   16.11.12   
אל הפורום  
  3. תודה  
בתגובה להודעה מספר 2
 
   השאלה שלי איך אני בוחר את המספר המקסימלי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
inno3D
חבר מתאריך 21.4.02
4533 הודעות, דרג אמינות חבר זה
   13:51   16.11.12   
אל הפורום  
  4. אתה צריך 2 משתנים בשביל זה  
בתגובה להודעה מספר 3
 
   משתנה max שישמור את המספר המקסימלי
משתנה maxCount משתנה שישמור את המספר הסידורי של המספר המקסימלי

מה שאתה צריך לעשות
זה לשים את המספר הראשון שאתה קורא לתוך max ולאתחל את maxCount ל 1
וכל פעם לבדוק אם המספר החדש שנקלט גדול מ max
אם כן, לשנות את max ולקדם את maxCount


שאני אומר גדול - אתה צריך לחשוב איך להעיף את מה שמשמאל לנקודה ולהשוות את החלק הממשי

בנוסף אתה צריך עוד משתנה index שישמור את המספר הסידורי הנוכחי של המספר שקלטת


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
אבוקדוש
חבר מתאריך 5.4.12
125 הודעות, דרג אמינות חבר זה
   16:48   16.11.12   
אל הפורום  
  5. אתה יכול בקצרה להראת לי  
בתגובה להודעה מספר 4
 
   או להשלים לי? כי אין לי מושג ואני יומיים רב עם זה ולא מצליח


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
asco88 
חבר מתאריך 17.6.04
26757 הודעות, דרג אמינות חבר זה
   00:14   18.11.12   
אל הפורום  
  7. דוגמה בסיסית:  
בתגובה להודעה מספר 5
 

int a = 1;
int big = 1;
int flag = 1;

while (a != 0)
{
printf("Enter number: ");
scanf("%d", &a);
if (big < a)
big = a;
}

printf("Biggest number entered is %d", big);


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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
אבוקדוש
חבר מתאריך 5.4.12
125 הודעות, דרג אמינות חבר זה
   00:38   18.11.12   
אל הפורום  
  8. אואה  
בתגובה להודעה מספר 7
 
   איזה יופי ואיזה פשוט! תודה אחי!
רק תגיד לי משהו... אפשר הסביר מילולי רק בקטע
		if (big < a)
big = a;


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
asco88 
חבר מתאריך 17.6.04
26757 הודעות, דרג אמינות חבר זה
   01:55   18.11.12   
אל הפורום  
  9. זאת בסהכ השוואה  
בתגובה להודעה מספר 8
 
המשתנה שומר את הערך הכי גדול שנקלט עד כה, וכל פעם בודק אם החדש יותר גדול ואם כן הוא מכניס למשנה את הערך החדש


נשלח ע"י הסלולרי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
אבוקדוש
חבר מתאריך 5.4.12
125 הודעות, דרג אמינות חבר זה
   13:04   18.11.12   
אל הפורום  
  10. גאוני!  
בתגובה להודעה מספר 9
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
אבוקדוש
חבר מתאריך 5.4.12
125 הודעות, דרג אמינות חבר זה
   13:06   18.11.12   
אל הפורום  
  11. אז לפי התרגיל ששמתי שיניתי לככה:  
בתגובה להודעה מספר 9
 
  
#include <stdio.h>
void main ()
{
int a = 1;
int big = 1;
int flag = 1;
while (a != 0)
{
printf("Enter number: ");
scanf("%f", &a);
if (big < a%10)
big = a%10;
}

printf("Biggest number entered is %f", big);

}

וזה מראה לי 0000 בתוצאה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
inno3D
חבר מתאריך 21.4.02
4533 הודעות, דרג אמינות חבר זה
   15:31   18.11.12   
אל הפורום  
  12. אתה מערבב פה מלא int ו- float  
בתגובה להודעה מספר 11
 
   לא הייתי עושה את זה ככה
תגדיר איזה משתנים int ואיזה float


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
asco88 
חבר מתאריך 17.6.04
26757 הודעות, דרג אמינות חבר זה
   16:15   18.11.12   
אל הפורום  
  13. כן בדיוק  
בתגובה להודעה מספר 12
 
שים לב שאני עבדתי עם INT רק כי הרבה יותר פשוט להבין את זה, אבל אתה זקוק לFLOAT אז אתה לא יכול להכניס מספר לא שלם לתוך BIG או לתוך a,
לכן אתה חייב להגדיר אותם כFLOAT.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
אבוקדוש
חבר מתאריך 5.4.12
125 הודעות, דרג אמינות חבר זה
   14:11   19.11.12   
אל הפורום  
  14. a מוגדר אצלי כfloat...עדיין לא יוצא לי כמו שצריך  
בתגובה להודעה מספר 13
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
inno3D
חבר מתאריך 21.4.02
4533 הודעות, דרג אמינות חבר זה
   17:34   19.11.12   
אל הפורום  
  15. תעלה את הקוד  
בתגובה להודעה מספר 14
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
אבוקדוש
חבר מתאריך 5.4.12
125 הודעות, דרג אמינות חבר זה
   20:00   17.11.12   
אל הפורום  
  6. עזרהההההההה  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net