На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: SCINER, B.V.
  
    > Поменять местами две переменные , без использования третьй
      ExpandedWrap disabled
        Dim A As Long, B As Long
        A = 3517
        B = 2498
        A = A * B
        B = A / B
        A = A / B
        Debug.Print A; Tab; B
        Зачем же тратить лишние машинные такты на умножение и деление, ведь можно же так:
        ExpandedWrap disabled
          Dim A As Long, B As Long
          A = 3517
          B = 2498
          A = A + B
          B = A - B
          A = A - B
          Debug.Print A; Tab; B
          А еще лучше сделать так:
          ExpandedWrap disabled
            Dim A As Long, B As Long
            A = 3517
            B = 2498
            A = A Xor B
            B = B Xor A
            A = A Xor B
            Debug.Print A; Tab; B
            А помойму лучше сделать такую процеДУРКУ:
            ExpandedWrap disabled
               
              Public Sub Swap (V1 As Variant, V2 As Variant)
                  Dim Mk As Variant
                  Mk = V2
                  V2 = V1
                  V1 = Mk
              End Sub

            Вставив раз забудешь, как делать по другому :yes:
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0260 ]   [ 16 queries used ]   [ Generated: 28.04.24, 07:30 GMT ]