24.05.2017, 03:30 [+3 UTC]
в нашей команде: 1 981 чел. | участники онлайн: 3 (рекорд: 21)

:: РЕГИСТРАЦИЯ

:: консультации

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.41 (25.02.2017)

Общие новости:
23.02.2017, 09:51

Форум:
20.05.2017, 22:36

Последний вопрос:
23.05.2017, 22:38

Последний ответ:
23.05.2017, 10:43

Последняя рассылка:
23.05.2017, 20:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
24.11.2009, 22:41 »
Костяев Владимир Николаевич
Все пошло! Большое спасибо! [вопрос № 174495, ответ № 256890]
03.07.2011, 18:42 »
korsar
Спасибо за ссылки, тут он даже на 31р. дешевле, но заказ уже сделал на другом сайте. [вопрос № 183740, ответ № 267877]

РАЗДЕЛ • Basic

Создание программ на языке Basic.

[администратор рассылки: Андреенков Владимир (Профессор)]

Лучшие эксперты в этом разделе

Megaloman
Статус: Академик
Рейтинг: 518
mklokov
Статус: 5-й класс
Рейтинг: 80
PsySex
Статус: Профессионал
Рейтинг: 27

Перейти к консультации №:
 

Консультация онлайн # 190780
Раздел: • Basic
Автор вопроса: lexabossa (Посетитель)
Отправлена: 24.03.2017, 23:09
Поступило ответов: 1

Уважаемые эксперты! Пожалуйста, ответьте на вопрос:

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

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

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

Приложение:

Состояние: Консультация закрыта

Ответ # 274838 от mklokov (5-й класс)

Здравствуйте, 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


Консультировал: mklokov (5-й класс)
Дата отправки: 25.03.2017, 11:20

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 190780

Megaloman
Академик

ID: 137394

# 1

= общий = | 25.03.2017, 19:34 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

в 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

=====
Нет времени на медленные танцы

• Отредактировал: Megaloman (Академик)
• Дата редактирования: 25.03.2017, 20:21

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.13274 сек.

© 2001-2017, Портал RFPRO.RU, Россия
Авторское право: ООО "Мастер-Эксперт Про"
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.41 от 25.02.2017
Бесплатные консультации онлайн