נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: בעיה במסמך של האתר..

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 27 December 2005 בשעה 13:38 | IP רשוּם
ציטוט dl25

אחים שלי יש לי בעיה ..

רשום במסמך אחד באתר (המסמך הראשון של C) ככה:

ציטוט מהמסמך של האתר.. כתב:

int a=2, b=2, c, d;

c = a++;

d = ++b;

קטע הקוד לעיל זהה לקטע הקוד הבא מבחינת פעולתו:

int a=2, b=2, c, d;

c = a;

a = a + 1;

b = b + 1;

d = b;

 

ורציתי לשאול אם זה נכון כי כבר הגדירו אותם כבר והם משנים אותם ..

טוב בקיצר יכול להיות שלא הבנתי את הקטע הזה אז אם מישהו יכול לתת לי הסבר + דוגמא על הנושא: האופרטורים ++/--

תודה לעוזרים..:)

(סליחה על כל השאלות פשוט אני רוצה להבין את זה טוב..)

חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
ניר
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 12 January 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 3296
נשלח בתאריך: 27 December 2005 בשעה 13:48 | IP רשוּם
ציטוט ניר

האופרטור ++ מגדיל לך את האיבר עליו הוא מופעל. אם a היה 3, בכל מקרה בשורה אחרי שתכתוב a++ או ++a הוא יהיה 4.
עכשיו השאלה היא כזו. אם אתה כותב:
קוד:
c = a++
כש-a היה 3 לפני שעשית את ה++ עליו. מה יהיה הערך של c?
והתשובה: אם ה++ בצד ימין, הוא יהיה 3. כלומר קודם c מקבל את הערך של a ורק אז מגדילים אותו. אם ה++ בצד שמאל, הערך של c יהיה 4.


__________________
מספר האייסיקיו שלי ו/או כתובת ה-MSN שלי אינם מהווים מוקד תמיכה
חזרה לתחילת העמוד הצג את כרטיס החבר של ניר חפש הודעות אחרות של ניר בקר בדף הבית של ניר
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 27 December 2005 בשעה 15:04 | IP רשוּם
ציטוט dl25

רגע אז אם a יהיה 3 ואתה כותב ככה:

קוד:
c = ++a

אז C =3

ואם זה ככה :

קוד:
c = a++

אז a שווה 4

?

אהה וגם  רשום שם

קוד:
a=2

ולמטה רשום ש

קוד:
a= a + 1

אז זה אומר ש a=3 אז..ואותו דבר ל B ..

רשום שם:

קוד:
b=2

ולמטה רשום:

קוד:
b= b + 1

אז כאילו b=3 אז.. וגם c..

רשום שם:

קוד:
c=a++

אז זה אומר ש c=3

ולמטה רשום :

קוד:
c=a

וזה אומר ש c=2 ..

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

תודה לעוזרים..

חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 27 December 2005 בשעה 16:01 | IP רשוּם
ציטוט AC-Milan

אני לא קראתי את המסמך שבאתר בגלל זה אני אענה לך אודות ++ו-- . משתמשים באופרטור ++ כדי להגדיל ב 1 ובאופרטור -- כדי להקטין ב 1 . [כמו שכבר ניר אמר , הוא הסביר לך מה ההבל בין אם לשים ++ אחרי ולפני]
דוגמה לשימוש ב ++ לפני ואחרי :
קוד:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b;
printf("Enter two numbers :");
scanf("%d",&a);
scanf("%d",&b);
printf("your first number  + 1 = %d \n",a,a++);
printf("your second number + 1 = %d \n",b,++b);
system("PAUSE");
return 0;
}
אם תריץ את הדוגמה תראה שגם כששמנו את האופרטור ++ לפני וגם כששמנו אחרי זה אותה תוצאה , אותו דבר בנוגע לאופרטור -- .
ניר כתב:
אם ה++ בצד ימין, הוא יהיה 3. כלומר קודם c מקבל את הערך של a ורק אז מגדילים אותו. אם ה++ בצד שמאל, הערך של c יהיה 4.
חזרה לתחילת העמוד הצג את כרטיס החבר של AC-Milan חפש הודעות אחרות של AC-Milan
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 27 December 2005 בשעה 17:42 | IP רשוּם
ציטוט dl25

AC-Milan כתב:
אני לא קראתי את המסמך שבאתר בגלל זה אני אענה לך אודות ++ו-- . משתמשים באופרטור ++ כדי להגדיל ב 1 ובאופרטור -- כדי להקטין ב 1 . [כמו שכבר ניר אמר , הוא הסביר לך מה ההבל בין אם לשים ++ אחרי ולפני]
דוגמה לשימוש ב ++ לפני ואחרי :
קוד:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b;
printf("Enter two numbers :");
scanf("%d",&a);
scanf("%d",&b);
printf("your first number  + 1 = %d \n",a,a++);
printf("your second number + 1 = %d \n",b,++b);
system("PAUSE");
return 0;
}
אם תריץ את הדוגמה תראה שגם כששמנו את האופרטור ++ לפני וגם כששמנו אחרי זה אותה תוצאה , אותו דבר בנוגע לאופרטור -- .
ניר כתב:
אם ה++ בצד ימין, הוא יהיה 3. כלומר קודם c מקבל את הערך של a ורק אז מגדילים אותו. אם ה++ בצד שמאל, הערך של c יהיה 4.

אז המסמך באתר טעה(לפי  מה שאתה אומר...)

ותגיד לי אם אני צודק..:

רגע אז אם a יהיה 3 ואתה כותב ככה:

קוד:
c = ++a

אז C =3

ואם זה ככה :

קוד:
c = a++

אז a שווה 4

?

(אוליי יש מישהו שיכול לעזור לי בשפת c באיסי?..

הנה האיסי שלי: 254553060

חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 27 December 2005 בשעה 18:38 | IP רשוּם
ציטוט AC-Milan

לא , בשני המקרים C שווה 4 . אתה יכול להריץ ולבדוק בעצמך .
חזרה לתחילת העמוד הצג את כרטיס החבר של AC-Milan חפש הודעות אחרות של AC-Milan
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 27 December 2005 בשעה 18:51 | IP רשוּם
ציטוט dl25

AC-Milan כתב:
לא , בשני המקרים C שווה 4 . אתה יכול להריץ ולבדוק בעצמך .

תודה .. אבל אז המסמך באתר צודק או לא?

חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 27 December 2005 בשעה 19:28 | IP רשוּם
ציטוט AC-Milan

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


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 27 December 2005 בשעה 19:52 | IP רשוּם
ציטוט dl25

הנה הקישור למסמך שיש באתר

http://www.underwar.co.il/document-details.asp?id=8

ועמודים :

סוף  23

ועד אמצע 24

אח שלי תודה על העזרה..



__________________
אוליי יש מישהו שיכול לעזור לי בשפת:
c
אז תוסיפו הנה האיסי שלי: 254553060
חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 27 December 2005 בשעה 22:05 | IP רשוּם
ציטוט AC-Milan

בדקתי , מה שכתוב במסמך נכון ב 100% .
חזרה לתחילת העמוד הצג את כרטיס החבר של AC-Milan חפש הודעות אחרות של AC-Milan
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 27 December 2005 בשעה 22:59 | IP רשוּם
ציטוט dl25

אבל רשום שם ככה:
a=2

ולמטה רשום :

a= a +1

אז כמה a שווה (בגלל זה הסתבכתי..)

 



__________________
אוליי יש מישהו שיכול לעזור לי בשפת:
c
אז תוסיפו הנה האיסי שלי: 254553060
חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 27 December 2005 בשעה 23:29 | IP רשוּם
ציטוט AC-Milan

a=3 .
חזרה לתחילת העמוד הצג את כרטיס החבר של AC-Milan חפש הודעות אחרות של AC-Milan
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 28 December 2005 בשעה 00:21 | IP רשוּם
ציטוט dl25

אבל רשום שם ככה:
a=2

אז  כמה a שווה?



__________________
אוליי יש מישהו שיכול לעזור לי בשפת:
c
אז תוסיפו הנה האיסי שלי: 254553060
חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
ניר
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 12 January 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 3296
נשלח בתאריך: 28 December 2005 בשעה 00:27 | IP רשוּם
ציטוט ניר

בהתחלה a=2 ואחרי זה אתה מגדיר את הערך ששמור ב-a ב-1.

שים לב שמשתנים אינם כמו משתנים במתמטיקה שיש להם ערך קבוע. משתנים זה "תאים" שיש בהם ערך שיכול להשתנות בכל רגע.


__________________
מספר האייסיקיו שלי ו/או כתובת ה-MSN שלי אינם מהווים מוקד תמיכה
חזרה לתחילת העמוד הצג את כרטיס החבר של ניר חפש הודעות אחרות של ניר בקר בדף הבית של ניר
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 28 December 2005 בשעה 00:51 | IP רשוּם
ציטוט dl25

 רגע אז..ככה:
קוד:

int a=2, b=2, c, d;

c = a;

a = a + 1;

b = b + 1;

d = b;

אז זה יוצא ש :

קוד:

a=2

b=2

c=a+1=3

d=b+1=3

אם זה נכון אז הבנתי .. 

מקווה לתשובה בהקדם..

תודה..



__________________
אוליי יש מישהו שיכול לעזור לי בשפת:
c
אז תוסיפו הנה האיסי שלי: 254553060
חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 28 December 2005 בשעה 09:57 | IP רשוּם
ציטוט AC-Milan

זה יוצא ש :
קוד:
a = 3
b = 3
c = 2
d = 3
חזרה לתחילת העמוד הצג את כרטיס החבר של AC-Milan חפש הודעות אחרות של AC-Milan
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 28 December 2005 בשעה 10:13 | IP רשוּם
ציטוט dl25

אבל... איך זה יכול להיות כי ככה זה רשום במסמך:


int a=2, b=2, c, d;

c = a++;

d = ++b;

קטע הקוד לעיל זהה לקטע הקוד הבא מבחינת פעולתו:

int a=2, b=2, c, d;

c = a;

a = a + 1;

b = b + 1;

d = b;

 

 

וזה לא זהה..

כי בקוד הראשון זה ככה :

קוד:

a=2

b=2

c=3

d=3

ובקוד השני זה ככה:

קוד:

a=3

b=3

c=2

d=3

אז זה לא זהה..מקווה לתשובה..

תודה לעוזרים..



__________________
אוליי יש מישהו שיכול לעזור לי בשפת:
c
אז תוסיפו הנה האיסי שלי: 254553060
חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 28 December 2005 בשעה 10:54 | IP רשוּם
ציטוט AC-Milan

אני לא חושב שהתוצאה אמורה להיות זהה , כי תראה מה רשמו במסמך :
ציטוט:
קטע הקוד לעיל זהה לקטע הקוד הבא מבחינת פעולתו
מבחינת הפעולה ולא מבחינת בתוצאה .
בקוד הראשון התוצאה היא :
קוד:
a=3
b=3
c=2
d=2
בקוד השני :
קוד:
a=4
b=4
c=3
d=4
בדקתי את התוצאות בכתיבת תוכנית זו :
קוד:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=2, b=2, c, d;
c = a++;
d = b++;
printf("In the first code , a = %d  b=%d  c=%d  d=%d \n\n",a,b,c,d);
c = a;
a = a + 1;
b = b + 1;
d = b;
printf("In the second code , a = %d  b=%d  c=%d  d=%d \n\n",a,b,c,d);
system("PAUSE");
return 0;
}
חזרה לתחילת העמוד הצג את כרטיס החבר של AC-Milan חפש הודעות אחרות של AC-Milan
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 28 December 2005 בשעה 11:32 | IP רשוּם
ציטוט dl25

מה זאת אומרת פעולה?...

אנחנו קימפלנו ..

לקמפל זאת לא פעולה?



__________________
אוליי יש מישהו שיכול לעזור לי בשפת:
c
אז תוסיפו הנה האיסי שלי: 254553060
חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
LoL
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 28 December 2005 בשעה 11:34 | IP רשוּם
ציטוט LoL

dl25 כתב:

מה זאת אומרת פעולה?...

אנחנו קימפלנו ..

לקמפל זאת לא פעולה?



lol :[
חזרה לתחילת העמוד הצג את כרטיס החבר של LoL חפש הודעות אחרות של LoL בקר בדף הבית של LoL
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 28 December 2005 בשעה 12:13 | IP רשוּם
ציטוט AC-Milan

פעולה זאת אומרת הדרך שבה הקוד עובד , תוצאה זה מה שאנחנו רואים אחרי הפעולה [פלט] .
חזרה לתחילת העמוד הצג את כרטיס החבר של AC-Milan חפש הודעות אחרות של AC-Milan
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 28 December 2005 בשעה 16:46 | IP רשוּם
ציטוט dl25

טוב..תודה..

__________________
אוליי יש מישהו שיכול לעזור לי בשפת:
c
אז תוסיפו הנה האיסי שלי: 254553060
חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 
AC-Milan
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 27 July 2005
משתמש: מנותק/ת
הודעות: 176
נשלח בתאריך: 28 December 2005 בשעה 17:07 | IP רשוּם
ציטוט AC-Milan

אין בעד מה , בכל זאת אתה יכול לחכות שניר יגיד לך אם לזה הוא התכוון במסמך .
חזרה לתחילת העמוד הצג את כרטיס החבר של AC-Milan חפש הודעות אחרות של AC-Milan
 
dl25
משתמש פעיל
משתמש פעיל


הצטרף / הצטרפה: 10 December 2005
משתמש: מנותק/ת
הודעות: 45
נשלח בתאריך: 28 December 2005 בשעה 19:39 | IP רשוּם
ציטוט dl25

טוב אז אני יחכה לניר...

__________________
אוליי יש מישהו שיכול לעזור לי בשפת:
c
אז תוסיפו הנה האיסי שלי: 254553060
חזרה לתחילת העמוד הצג את כרטיס החבר של dl25 חפש הודעות אחרות של dl25
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

קפיצה לפורום
אינך יכול/ה לשלוח נושאים חדשים בפורום זה
אינך יכול/ה להגיב לנושאים בפורום זה
אינך יכול/ה למחוק את הודעותיך ותגוביך בפורום זה
אינך יכול/ה לערוך את הודעותיך ותגובותיך בפורום זה
אינך יכול/ה לצור סקרים בפורום זה
אינך יכול/ה להצביע בסקרים בפורום זה