mod vba



Mod basic

Автор Ўля Ч задал вопрос в разделе Другие языки и технологии

Помогите! Как в visual basic проверить число на четность, не используя команду x mod 2= 0? и получил лучший ответ

Ответ от Ev[гуру]
В общем, вариантов куча. Предыдущий ответ на 5++. Наглядно, компактно, быстро.
Ещё можно использовать Fix (). То же достаточно компактно получается.
number / 2 - Fix(number / 2)
Пример в консольке на Visual Basic .NET
.
mod vba

Ответ от Андрей Севастьянов[гуру]
Проверьте принадлежность последней цифры множеству [0 2 4 6 8].

Ответ от Пишу гадости[гуру]
дели на 2 float значения и смотри число после точки, если нет то это тот же нуль при использовании мода, соответственно число после точки есть остаток

Ответ от BloodKad[новичек]
в basic не знаю но на с++ это будет так if(x%2==0){}, попробуй может зароботает))

Ответ от Александр Погребняк[гуру]
1. Умножить число на 5
2. Преобразовать в строковую переменную
3. Если последний символ равен нулю, тогда четное
Только зачем эти извращения?
Sub chet()
Dim n As Integer
Dim m As Integer
Dim s As String
n = InputBox("Введите целое число")
m = n * 5
s = Str(m)
If Mid(s, Len(s), 1) = "0" Then
MsgBox (n & " четное")
Else
MsgBox (n & " нечетное")
End If
End Sub

Ответ от ...[гуру]
В VBA никто не отменял AND (соотв. проверка последнего бита). Операция быстрее чем деление.
Число AND 1 даст 0, если число четное, 1 если нечетное. Проще и быстрее ИМХО невозможно.
Пример:
Dim i as Integer
i = 11
MsgBox IIf(i And 1, "Нет", "Да")
P.S: Да я знаю про Little и Big Endian, но не припомню, чтобы MSO пакет да ещё и с VBA работал на чем-то отличном от Little Endian.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Помогите! Как в visual basic проверить число на четность, не используя команду x mod 2= 0?
Деление с остатком на Википедии
Посмотрите статью на википедии про Деление с остатком
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*