Announcement

Collapse
No announcement yet.

ถ้าเอาจะถามเรื่องการคำนวนสมการของ Java ในห้องนี้จะได้ป่าวคับ

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • ถ้าเอาจะถามเรื่องการคำนวนสมการของ Java ในห้องนี้จะได้ป่าวคับ

    พอดีเจอมากับตัวแล้วไม่เข้าใจเลยอยาก าถามผู้รู้อะคับ

  • #2
    X = 5 , Y = 3

    x + y * x - y / ( x - y ) * x

    ผมคำนวนในโปรแกรมแล้วได้คำตอบคือ 15 ผมเลยอยากรู้ว่าทำไมถึงได้ 15 ผู้รู้ช่วยอธิบายหน่อยคับ

    ปล. ผมนั่งคิดตามความสำคัญแล้วคือ คิดในวงเล็บก่อน แล้วคิดคูณ บวก ลบ จากซ้ายไล่ไปตามลำดับก็ยัง งง อยู่

    Comment


    • #3

      Comment


      • #4
        เพราะประกาศตัวแปร int หรือป่าวครับ int มันไม่เก็บทศนิยม มันเลยปัดเลข
        ลองเปลี่ยนเป็น float ดู

        Comment


        • #5
          ตามท่าน kelpiesza เลยครับ



          Comment


          • #6

            Comment


            • #7
              5 + 3 * 5 - 3 / ( 5 - 3 ) * 5
              5 + 3 * 5 - 3 / 2 * 5
              5 + 15 - 3 / 2 * 5
              5 + 15 - 1 * 5 <<< เพราะเป็น Int เลยถูกปัดเศษทิ้ง จาก 1.5 จึงกลายเป็น 1
              5 + 15 - 5
              20 - 5
              15

              Comment


              • #8
                ถ้าจะเลือกใช้ explicit type ต้องดูให้ดีครับ เพราะ int จะไม่เอาเศษ

                การใช้ operation บวก ลบ คูณ หาร ควรเลือก type ที่มีทศนิยมด้วย

                -----------------------------------------

                ถ้าในภาษาอื่นอย่าง C#, VB, Lua หรือ Javascript เองก็จะมี implicit อยู่

                แต่ก็ใช้ก็ควรระมัดระวังเช่นกัน ถึงแม้ว่าจะสะดวกก็ตาม

                Comment

                Working...
                X