Giải giúp em câu này ạ

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • vuhoalam
    Thành viên mới
    • Mar 2013
    • 25

    #1

    Giải giúp em câu này ạ

    void main ()
    {
    int n,i,s;
    s=0;
    n=5;
    i=1;
    while(i<n)
    {
    s=s+i;
    i++;
    }
    }
    cho biet gia tri cua n,i,s khi chay xong chuong trinh tren.
    mấy anh ơi chỉ giúp em cách tính ra giá trị của 3 biến trên với, em mới học c nên còn yếu lắm ạ. mong các anh em giúp đỡ , cảm ơn anh em rất nhiều
  • ngoanrazor
    Thành viên tích cực
    • Jun 2012
    • 272

    #2
    n= 5
    s= 1+2+3+4
    i=5


    Comment

    • vuhoalam
      Thành viên mới
      • Mar 2013
      • 25

      #3
      Nguyên văn bởi ngoanrazor Xem bài viết
      n= 5
      s= 1+2+3+4
      i=5
      anh ơi, i<n mà sao i=5 được hả anh, còn s=s+i thì sao s=1+2+3+4 được hả anh, em ko hiểu chỗ này , anh giải thích dùm em nha,
      cảm ơn anh nhiều lắm

      Comment

      • phantom86
        Thành viên chính thức
        • Dec 2010
        • 48

        #4
        Đầu tiên cho s=0, n=5 , i=1
        thực hiện vòng lăp ( nếu i còn nhỏ hơn 5 thì thực hiện s=s+i , i=i+1)
        vl1 : i=1,s=0,n=5 , thoa man điều kiện nên , s=s+i=1 , i=i+1 =2
        vl2 : i=2 , s=1,n=5 , vẫn thoản mẫn điều kiện vòng lặp nên s=s+i = 1+2 , i=i+1=3
        vl3 : i=3, s=3,n=5 , . ................................................. s= 1+2+3 , i= i+1=4
        vl4 ; i=4 , s=1+2+3, n=5 , ............................................ s= 1+2+3+4 , i=i+1 =5
        giờ đên i=5 không nhỏ hơn n nên vòng lặp được thoát
        và kết quả cuối cùng i=5, s= 1+2+3+4 , n=5

        Comment

        • vuhoalam
          Thành viên mới
          • Mar 2013
          • 25

          #5
          Đầu tiên cho s=0, n=5 , i=1
          thực hiện vòng lăp ( nếu i còn nhỏ hơn 5 thì thực hiện s=s+i , i=i+1)
          vl1 : i=1,s=0,n=5 , thoa man điều kiện nên , s=s+i=1 , i=i+1 =2
          vl2 : i=2 , s=1,n=5 , vẫn thoản mẫn điều kiện vòng lặp nên s=s+i = 1+2 , i=i+1=3
          vl3 : i=3, s=3,n=5 , . ................................................. s= 1+2+3 , i= i+1=4
          vl4 ; i=4 , s=1+2+3, n=5 , ............................................ s= 1+2+3+4 , i=i+1 =5
          giờ đên i=5 không nhỏ hơn n nên vòng lặp được thoát
          và kết quả cuối cùng i=5, s= 1+2+3+4 , n=5
          cảm ơn anh nhiều lắm, bây giờ em đã hiểu.

          Comment

          • vuhoalam
            Thành viên mới
            • Mar 2013
            • 25

            #6
            Đầu tiên cho s=0, n=5 , i=1
            thực hiện vòng lăp ( nếu i còn nhỏ hơn 5 thì thực hiện s=s+i , i=i+1)
            vl1 : i=1,s=0,n=5 , thoa man điều kiện nên , s=s+i=1 , i=i+1 =2
            vl2 : i=2 , s=1,n=5 , vẫn thoản mẫn điều kiện vòng lặp nên s=s+i = 1+2 , i=i+1=3
            vl3 : i=3, s=3,n=5 , . ................................................. s= 1+2+3 , i= i+1=4
            vl4 ; i=4 , s=1+2+3, n=5 , ............................................ s= 1+2+3+4 , i=i+1 =5
            giờ đên i=5 không nhỏ hơn n nên vòng lặp được thoát
            và kết quả cuối cùng i=5, s= 1+2+3+4 , n=
            anh ơi nhưng mà em hỏi anh kia ảnh nói là i cuối cùng bằng 4 thôi anh ạ, vì nó ko được bằng 5 , vậy phải làm sao bây giờ hả anh, cảm ơn anh nhiều lắm

            Comment

            • ngoanrazor
              Thành viên tích cực
              • Jun 2012
              • 272

              #7
              Nguyên văn bởi vuhoalam Xem bài viết
              anh ơi nhưng mà em hỏi anh kia ảnh nói là i cuối cùng bằng 4 thôi anh ạ, vì nó ko được bằng 5 , vậy phải làm sao bây giờ hả anh, cảm ơn anh nhiều lắm
              i= 5 em ah, anh làm bên cntt đây


              Comment

              • vuhoalam
                Thành viên mới
                • Mar 2013
                • 25

                #8
                i= 5 em ah, anh làm bên cntt đây
                dạ dậy em tin anh, cảm ơn anh nhiều lắm

                Comment

                • vuhoalam
                  Thành viên mới
                  • Mar 2013
                  • 25

                  #9
                  sẵn tiện mấy anh giúp dùm em câu này luôn ạ, cảm ơn mấy anh nhiều lắm
                  Viết 1 đoạn chương trình con có tên là DELAY_2ms thực hiện chức năng làm trễ 1 khoảng thời gian là 2ms. biết tần số dao động của thạch anh là 12mhz , các phép toán được sử dụng gần đúng,
                  mấy anh ơi, có phải là dùng timer ko ạ, em ko biết dùng delay là dùng cái gì nữa, mong mấy anh giúp đỡ,
                  em viết dạy có đúng ko mấy anh ơi
                  void delay 20us(void)
                  {
                  TMOD=0X01;
                  THO=0Xff;
                  TLO=0Xec;
                  TRO=1;
                  while(!TFO)
                  TFO=0;
                  TRO=0;
                  }

                  Comment

                  • ngoanrazor
                    Thành viên tích cực
                    • Jun 2012
                    • 272

                    #10
                    dùng timer thì chính xác hơn nếu không dùng thì em cho nó dô 1 vòng lập, ở đây ta biết thạch anh 12mhz thì xung clock 8051 là 1us(micro giây) mà 1ms(mili giây)= 1000us, em làm 1 vòng lập cho nó chạy không để qua 2000 lệnh là đc rồi ~ 2ms


                    Comment

                    • vuhoalam
                      Thành viên mới
                      • Mar 2013
                      • 25

                      #11
                      dùng timer thì chính xác hơn nếu không dùng thì em cho nó dô 1 vòng lập, ở đây ta biết thạch anh 12mhz thì xung clock 8051 là 1us(micro giây) mà 1ms(mili giây)= 1000us, em làm 1 vòng lập cho nó chạy không để qua 2000 lệnh là đc rồi ~ 2ms
                      nhưng mà anh ơi, đề bài yêu cầu là viết 1 đoạn chương trình con có tên là DELAY_2ms
                      viết sao cũng được miễn là có chương trình con đó là được rồi anh ạ,
                      anh viết dùm em một chương trình đó đi anh, mai em thi rồi, hix, cảm ơn anh nhiều lắm

                      Comment

                      • thangbk92
                        Thành viên tích cực
                        • Nov 2011
                        • 141

                        #12
                        Được voi đòi hai bà tưng

                        Comment

                        • vuhoalam
                          Thành viên mới
                          • Mar 2013
                          • 25

                          #13
                          trời em chỉ muốn học hỏi thêm thôi mà, đâu có ý gì đâu mà anh nói em như dậy, hixhix

                          Comment

                          Về tác giả

                          Collapse

                          vuhoalam Tìm hiểu thêm về vuhoalam

                          Bài viết mới nhất

                          Collapse

                          Đang tải...