Консультация № 190780
24.03.2017, 23:09
0.00 руб.
0 2 1
Уважаемые эксперты! Пожалуйста, ответьте на вопрос:

Нужно сделать маленькую программку на Microsoft Visual Basic:

Дано четырехзначное число. Если сумма его цифр является четным значением определить, равна ли сумма первых двух цифр сумме последних двух цифр.

Например число
1441 сумма цифр 10 – четное значение. 1+4 = 4+1. Ответ ДА
1320 сумма цифр 6 – четное значение. 1+3 не равно 2 + 0. Ответ НЕТ


Приложение:
Microsoft Visual Basic

Обсуждение

давно
Студент
400828
51
25.03.2017, 11:20
общий
это ответ
Здравствуйте, lexabossa!
Вариант решения может выглядеть так:
Код:

Module Module1

Function DigSum(ByVal n As Integer) As Integer
Dim sum As Integer
sum = 0
While n <> 0
sum = sum + n Mod 10
n = n / 10
End While
DigSum = sum
End Function

Sub Main()
Dim n As Integer, s As String
Do
s = InputBox("Введите четырёхзначное число")
n = Val(s)
Loop Until (n >= 1000) And (n <= 9999)
If DigSum(n) Mod 2 = 0 Then
If DigSum(n Mod 100) = DigSum(n / 100) Then
MsgBox("Да")
Else
MsgBox("Нет")
End If
Else
MsgBox("Нет")
End If
End Sub

End Module
Об авторе:
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
давно
Модератор
137394
1850
25.03.2017, 19:34
общий
25.03.2017, 20:21
в VBA (в MS Excel -Microsoft Visual Basic у меня нет)
Код:
Dim sDano As String, Answer As String, Asign  As String
Dim Num(1 To 4) As Integer, i As Integer, j As Integer

Dim Summa As Integer

sDano = InputBox("Введите четырёхзначное число")
If sDano <> "" Then
If Len(sDano) = 4 And IsNumeric(sDano) Then

Summa = 0
For i = 1 To 4
Num(i) = CInt(Mid(sDano, i, 1))
Summa = Summa + Num(i)
Next

Answer = "В числе " + sDano + vbCrLf + "сумма цифр= " + CStr(Summa)
If Summa Mod 2 = 0 Then
Answer = Answer + " (чётная)" + vbCrLf + vbCrLf
i = Num(1) + Num(2)
j = Num(3) + Num(4)
If i = j Then Asign = "равна" Else Asign = "не равна"
Answer = Answer + "Сумма двух первых цифр= " + CStr(i) + vbCrLf
Answer = Answer + Asign + vbCrLf
Answer = Answer + "cумме двух последних цифр= " + CStr(j)
Else
Answer = Answer + " (нечётная)"
End If
Else
Answer = "Введены некорректные данные """ + sDano + """"
End If
MsgBox Answer
End If
Об авторе:
Понеже не словес красных бог слушает, но дел наших хощет
Форма ответа