Другие языки программирования и технологии
Помогите написать программу на Visual Basis
Не очень сложная программка)) Вопрос заключается в следующем... пользователь вводит числа, четные числа поменять на "1", нечетные на "2".. Должно быть так... Воодим 494, ответ 121..
Ещё вариант для VB5/6 . Тут элементы управления на форме не нужны, просто поместите следующий код в модуль формы:
' СОБЫТИЕ: загрузка формы
Private Sub Form_Load()
' описание переменных
Dim strInput As String ' строка для ввода
Dim intItem As Integer ' счётчик символов
Dim strRes As String ' результата
Dim intNum As Integer ' цифра
' цикл запросов чисел
Do While True
' запрос чисел
strInput = Trim(InputBox("Введите число: "))
' выход ищ цикла, если строка пуста
If Len(strInput) = 0 Then Exit Do
' определение результата
strRes = ""
For intItem = 1 To Len(strInput)
' определение цифры
intNum = Val(Mid(strInput, intItem, 1))
' замена цифры
intNum = IIf(Int(intNum / 2) = (intNum / 2), 1, 2)
' добавление цифры в результат
strRes = strRes & Format(intNum, "0")
Next
' вывод результата на экран
MsgBox "Результат: " & strRes
' конец цикла
Loop
' закрытие формы
Unload Me
End Sub
' СОБЫТИЕ: загрузка формы
Private Sub Form_Load()
' описание переменных
Dim strInput As String ' строка для ввода
Dim intItem As Integer ' счётчик символов
Dim strRes As String ' результата
Dim intNum As Integer ' цифра
' цикл запросов чисел
Do While True
' запрос чисел
strInput = Trim(InputBox("Введите число: "))
' выход ищ цикла, если строка пуста
If Len(strInput) = 0 Then Exit Do
' определение результата
strRes = ""
For intItem = 1 To Len(strInput)
' определение цифры
intNum = Val(Mid(strInput, intItem, 1))
' замена цифры
intNum = IIf(Int(intNum / 2) = (intNum / 2), 1, 2)
' добавление цифры в результат
strRes = strRes & Format(intNum, "0")
Next
' вывод результата на экран
MsgBox "Результат: " & strRes
' конец цикла
Loop
' закрытие формы
Unload Me
End Sub
Эту программу я сам проверил в Visual Basic 6. Она работает.
Сначала делаешь форму с полем для ввода Text1, полем для вывода Text2 и кнопками "Старт" и "Выход".
1) Кнопка "Старт".
Свойство Default ставишь True, чтобы она нажималась при нажатии Enter на клавиатуре.
Вешаешь программу:
Private Sub btnStart_Click()
Dim i As Integer, Length As Integer, N As Long, Ost As Long, A As Integer
Text2.Text = "" ' Text2.Text - пустое поле
N = Text1.Text ' N - введенное число
Length = Len(Text1.Text) ' Length - количество цифр во введенном числе
For i = 1 To Length Step 1 ' Цикл наоборот, от старшего разряда к младшему
Ost = N Mod 10 ' Ost - остаток от деления на 10 в степени, то есть цифра очередного разряда.
If Ost Mod 2 = 0 Then A = 1 Else A = 2 ' A = 1 или 2 для вставки в Text2.Text
Text2.Text = A & Text2.Text
N = (N - Ost) / 10 ' отбрасываем младший разряд N
Next i
End Sub
2) Кнопка "Выход".
Свойство Cancel ставишь True.
Вешаешь программу:
Private Sub btnCancel_Click()
End
End Sub
Сначала делаешь форму с полем для ввода Text1, полем для вывода Text2 и кнопками "Старт" и "Выход".
1) Кнопка "Старт".
Свойство Default ставишь True, чтобы она нажималась при нажатии Enter на клавиатуре.
Вешаешь программу:
Private Sub btnStart_Click()
Dim i As Integer, Length As Integer, N As Long, Ost As Long, A As Integer
Text2.Text = "" ' Text2.Text - пустое поле
N = Text1.Text ' N - введенное число
Length = Len(Text1.Text) ' Length - количество цифр во введенном числе
For i = 1 To Length Step 1 ' Цикл наоборот, от старшего разряда к младшему
Ost = N Mod 10 ' Ost - остаток от деления на 10 в степени, то есть цифра очередного разряда.
If Ost Mod 2 = 0 Then A = 1 Else A = 2 ' A = 1 или 2 для вставки в Text2.Text
Text2.Text = A & Text2.Text
N = (N - Ost) / 10 ' отбрасываем младший разряд N
Next i
End Sub
2) Кнопка "Выход".
Свойство Cancel ставишь True.
Вешаешь программу:
Private Sub btnCancel_Click()
End
End Sub
тоже самое могу сделать в Алгоритме или Delphi...практики работы с визуалом у меня пока нет)
Похожие вопросы
- Помогите написать программу на Visual Basic (найти ошибку)
- Visual Basic.Помогите написать программу.
- Написать программу на Visual BasicВ каждом слове текста замените "а" на букву "е", если "а" стоит начетном месте, и заме
- Нужно СРОЧНО написать программу в Visual Basic!!!!Помогите, пожалуйста!!!
- Помогите написать программу со switch в СИ
- Помогите написать программу на С. Тема Составление программ с использованием массивов
- Что лучше для новичка, что бы написать программу? 1.Visual Basic 2.Delphi 3.C++ 4.Assembler
- Помогите написать программу выключения компьютера на С++
- Помогите написать программу на ассемблере, завтра экзамен а я в нём совсем не шарю.
- помогите написать программу на Delphi
intNum = IIf(Int(intNum / 2) = (intNum / 2), 1, 2)
То есть я понимаю, что это некий вариант команды If, но я нигде в хелпе не видел описание этой функции.