Другие языки программирования и технологии
Как решать задачи по VBA
Дали задание по VBA. Не знаю как решать. Кто может, помогите пожалуйста. Определите значение переменных по фрагменту программы с помощью трассировки a)Dim L1 As Boolean, L2 As Boolean, L3 As Boolean L1 = 3*3 = 6 L2 = 8 < 12 L3 = L1 Or L2 L1 = L2 / L3 b)Dim a As Integer, b As Long Const c As Integer = 1000 a = 100000 b = a * c a = a mod c b = b / 200 c)Dim a As String, b As String, c As String a = “Что-то ” b = “стало” b = “с памятью моей” & b с = a & b
Вот письменно:
a) Dim L1 As Boolean, L2 As Boolean, L3 As Boolean (L1, L2, L3 все равны False сначала, т. к. они пусты, т. е. равны 0. Но так как тип у них Boolean(логический) - то False(так в логике Ложь обозначается) )
L1 = False, т. к. 3*3 не равно 6
L2 = True, т. к. 8<12
L3 = True, т. к. False Or True = True (или 0 + 1 = 1)
L1 = 1, т. к. True/True = 1
b) Dim a As Integer, b As Long (a = 0, b = 0 - числовым переменным в бэйсике изначально 0 приписывается при объявлении. )
Cоnst c As Integer = 1000 (ну здесь все ясно c = 1000)
a = 100000 (здесь у вас вероятно ошибка. a имеет тип Integer он принимает значения от -32768 до 32767, т. е. имеет 2^16=65536 значений. Будем думать, что вы лишний нуль ошибочно приписали. Поэтому пусть a = 10000)
b = a * c (b = 10000000, т. к. b типа Long, т. е. длинные числа)
a = a mod c (a = 0, т. к. a mod b, т. е. остаток от деления = 0. Делится нацело)
b = b / 200 (b = 50000, т. к. 10000000 / 200 = 50000)
c) Dim a As String, b As String, c As String (здесь a, b, c все равны "", т. е. пустые строки без символов)
a = "Что-то " (a = "Что-то ")
b = "стало" (b = "стало")
b = "с памятью моей" & b (b = "с памятью моейстало", т. к. "с памятью моей" + "стало"="с памятью моейстало". & - знак объединения строк, т. е. + или сложение)
с = a & b (b = "Что-то с памятью моейстало", т. к. "Что-то " + "с памятью моейстало"="Что-то с памятью моейстало")
На всякий случай запустил VB и проверил - все верно.
Вот описания типов переменных в VB6 на всякий случай.
a) Dim L1 As Boolean, L2 As Boolean, L3 As Boolean (L1, L2, L3 все равны False сначала, т. к. они пусты, т. е. равны 0. Но так как тип у них Boolean(логический) - то False(так в логике Ложь обозначается) )
L1 = False, т. к. 3*3 не равно 6
L2 = True, т. к. 8<12
L3 = True, т. к. False Or True = True (или 0 + 1 = 1)
L1 = 1, т. к. True/True = 1
b) Dim a As Integer, b As Long (a = 0, b = 0 - числовым переменным в бэйсике изначально 0 приписывается при объявлении. )
Cоnst c As Integer = 1000 (ну здесь все ясно c = 1000)
a = 100000 (здесь у вас вероятно ошибка. a имеет тип Integer он принимает значения от -32768 до 32767, т. е. имеет 2^16=65536 значений. Будем думать, что вы лишний нуль ошибочно приписали. Поэтому пусть a = 10000)
b = a * c (b = 10000000, т. к. b типа Long, т. е. длинные числа)
a = a mod c (a = 0, т. к. a mod b, т. е. остаток от деления = 0. Делится нацело)
b = b / 200 (b = 50000, т. к. 10000000 / 200 = 50000)
c) Dim a As String, b As String, c As String (здесь a, b, c все равны "", т. е. пустые строки без символов)
a = "Что-то " (a = "Что-то ")
b = "стало" (b = "стало")
b = "с памятью моей" & b (b = "с памятью моейстало", т. к. "с памятью моей" + "стало"="с памятью моейстало". & - знак объединения строк, т. е. + или сложение)
с = a & b (b = "Что-то с памятью моейстало", т. к. "Что-то " + "с памятью моейстало"="Что-то с памятью моейстало")
На всякий случай запустил VB и проверил - все верно.
Вот описания типов переменных в VB6 на всякий случай.
Запускаете Microsoft Office - Microsoft Word
Далее в меню: Сервис - Макрос - Макросы.. .
В поле Имя пишите что-либо, например Prog1, нажимаете кнопку Создать.
В появившемся окне вставляете код своей задачи после комментариев (зеленый текст) .
Выполняете трассировку (выполнение по шагам) клавишей F8.
При необходимости откройте окно для просмотра значений переменных View - Watch Window. И в нём Add Watch.
Это при условии, что вам это не в ручную на бумаге нужно сделать.
Далее в меню: Сервис - Макрос - Макросы.. .
В поле Имя пишите что-либо, например Prog1, нажимаете кнопку Создать.
В появившемся окне вставляете код своей задачи после комментариев (зеленый текст) .
Выполняете трассировку (выполнение по шагам) клавишей F8.
При необходимости откройте окно для просмотра значений переменных View - Watch Window. И в нём Add Watch.
Это при условии, что вам это не в ручную на бумаге нужно сделать.
Похожие вопросы
- Как вы решаете задачи?
- Простая задача на VBA ! Помогите советом ...
- Как научиться решать задачи по программированию?
- Help!!! Помогите решить задачу по VBA MS Excel!
- Если человеку было сложно решать задачи по математике, то как это может отразиться на работе программиста?
- Вопрос программистам. Умение решать задачи.
- Помогите до решать задачу на паскале
- Программерам умеющим решать задачи на паскале
- решаю задачи по прагромированию. неорого
- Нужен простой ЯП как для хобби, так и вспомогательный в работе, что то на замену VBA.