הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   איזה משתנה צריך לעשות ב C# כדי לחלק והתשובה תיצא שברים? (https://hosts.co.il/forums/showthread.php?t=32354)

Ori The Man 07-10-06 17:04

איזה משתנה צריך לעשות ב C# כדי לחלק והתשובה תיצא שברים?
 
אם אני מחלק 3 ב 1 זה רושם לי 0
הגדרתי את המשתנים של המספרים בתור int ואת הסימני פעולה בתור char

מה צריך לעשות כדי שזה יכתוב גם שברים

Gal Shafrir 07-10-06 17:08

אני לא בטוח אבל אולי ככה:

int a,b;
a = 3;
b = 1;
c = a / b;

Ori The Man 07-10-06 17:09

זה הקוד שעשיתי

קוד:

  Console.WriteLine("Calculator C#");
            Console.WriteLine("");

            int A;
            int B;
            char C;
           

            Console.Write("input one number  :");
            A = int.Parse(Console.ReadLine());

            Console.WriteLine("");
            Console.Write("insert action ( *  / - +)  :");

            C = char.Parse(Console.ReadLine());

            Console.Write("input second number  :");
            B = int.Parse(Console.ReadLine());

            switch(C)
            {
                case '+':
                    Console.WriteLine("The Result: {0} {1} {2} = {3}", A, C, B, A+B);
                    Console.ReadLine();
                    break;

                case '-':
                    Console.WriteLine("The Result: {0} {1} {2} = {3}", A, C, B, A-B);
                    Console.ReadLine();
                    break;

                case '*':
                    Console.WriteLine("The Result: {0} {1} {2} = {3}", A, C, B, A*B);
                    Console.ReadLine();
                    break;

                case '/':
                    Console.WriteLine("The Result: {0} {1} {2} = {3}", A, C, B, A / B);
                    Console.ReadLine();
                    break;


Balrog 07-10-06 17:10

אתה כנראה מתכוון שאם אתה מחלק 1 ב-3 (לא 3 ב-1, 3 חלקי 1 = 3)

מה שמתבצעת זוהי חלוקת שלמים.
אם למשל תדאג שאחד המספרים יהיה לא שלם, לדוגמא תעשה 1.0 חלקי 3 , תקבל את התוצאה בשבר.

דרך אחרת היא להמיר את המספר השלם לשבר, באמצעות casting:
לא בטוח איך זה מתבצע ב-c#, אבל ב-C הייתה רושם בסוגריים את הסוג שאליו אתה רוצה להעביר :
קוד:

(float)var
ותמיד אתה יכול מראש לעבוד עם משתנה מסוג שבר - וכאן שוב אנחנו חוזרים לשם שלו ב-C#
תנסה float או double (בתקווה שC# דומה ל-C).

Eye-Soft 07-10-06 18:12

כדי שיצא שבר חובה על המשתנה שמקבל את הערך להיות מסוג float.

Alter 07-10-06 18:15

אורי את a,b,c תחליף לfloat ..
זה מספר עם נקודה אחרי..
int זה מספר שלם ..
char זה אות..

יכלת לדבר איתי והייתי אומר לך =)

opsite 07-10-06 18:37

char - תו כמו !@#$%^&*)(_

וכן אתה חייב שזה יהיה מסוג float
זה אומר שזה נקודה עשרונית..

בידיוק השבוע למדתי על זה בבית ספר

omaniusd 07-10-06 19:03

מה שאתה מחפש זה הטיפוס float (כפי שהוא מכונה ב C#) או decimal

Alon.R 07-10-06 19:16

ציטוט:

נכתב במקור על ידי omaniusd
מה שאתה מחפש זה הטיפוס float (כפי שהוא מכונה ב C#) או decimal

כשאתה אומר טיפוס float זה יעני סוג משתנה כמו int?

ולמה לא דאבל?

Balrog 07-10-06 19:35

float זה סוג משתנה, בדומה לint
אבל float זה מספר עם נקודה צפה (=מספר עם חלק שהוא שבר)

ההבדל הוא בגודל של המשתנה (= טווח הערכים שהמשתנה יכול להכיל)
double משמש למספרים שיותר גדולים ממה שfloat יכול להכיל.


כל הזמנים הם GMT +2. הזמן כעת הוא 14:32.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ