VB Visual Basic  ·  20 вопросов  ·  ~55 мин  ·  ⏱ Таймер 55:00  ·  Лёгкий  · 

Операторы, условия и циклы

Тест по теме «Операторы, условия и циклы» состоит из 20 вопросов: нужно читать код, сравнивать близкие решения, находить границы применимости правил и разбирать последствия ошибок. Заданий с кодом — 12; после каждого ответа открывается объяснение.

Отвечено: 0 из 20
⏱ --:--
0%
💡 Инструкция: Выберите один ответ из пяти. На тест отведено 55 минут; после ответа можно открыть объяснение.
Вопрос 1 из 20
Раздел «Сравнения»: код использует сравнения. Какой вывод останется верным при других допустимых входных данных?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Module Demo
    Sub Main()
        Dim a As String = New String("x"c, 2)
        Dim b As String = "xx"
        Console.WriteLine(a = b)
        Console.WriteLine(a Is b)
    End Sub
End Module
Вопрос 2 из 20
После рефакторинга код стал короче. Какое условие по теме «Сравнения» нельзя потерять?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Option Strict On
Namespace ReviewCase2_1
    Module Demo
        Sub Main()
            Dim a As String = New String("x"c, 3)
            Dim b As String = "xx"
            Console.WriteLine(a = b)
            Console.WriteLine(a Is b)
        End Sub
    End Module
End Namespace
Вопрос 3 из 20
Раздел «Сравнения»: какое правило нельзя считать проверенным одним обычным примером?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Option Explicit On
Option Infer On
Namespace BoundaryCase2_1
    Module Demo
        Sub Main()
            Dim a As String = New String("x"c, 1)
            Dim b As String = "xx"
            Console.WriteLine(a = b)
            Console.WriteLine(a Is b)
        End Sub
    End Module
End Namespace
Вопрос 4 из 20
Раздел «Сравнения»: как уменьшить риск дефекта, не подменяя причину запасным значением?
Вопрос 5 из 20
Что можно считать надёжным рабочим правилом для раздела «Сравнения»?
Вопрос 6 из 20
Посмотрите на фрагмент по теме «Ветвления If и Select Case». Какое объяснение точнее всего связывает код с его поведением?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Module Demo
    Sub Main()
        Dim score = 82
        Select Case score
            Case 90 To 100 : Console.WriteLine("A")
            Case 75 To 89 : Console.WriteLine("B")
            Case Else : Console.WriteLine("C")
        End Select
    End Sub
End Module
Вопрос 7 из 20
Раздел «Ветвления If и Select Case»: перед объединением правки нужно проверить один принцип. Какой именно?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Option Strict On
Namespace ReviewCase2_2
    Module Demo
        Sub Main()
            Dim reviewScore = 83
            Select Case reviewScore
                Case 91 To 101 : Console.WriteLine("A")
                Case 76 To 90 : Console.WriteLine("B")
                Case Else : Console.WriteLine("C")
            End Select
        End Sub
    End Module
End Namespace
Вопрос 8 из 20
Какое свойство механизма «Ветвления If и Select Case» нужно проверить на редком, но допустимом сценарии?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Option Explicit On
Option Infer On
Namespace BoundaryCase2_2
    Module Demo
        Sub Main()
            Dim edgeScore = 81
            Select Case edgeScore
                Case 89 To 99 : Console.WriteLine("A")
                Case 74 To 88 : Console.WriteLine("B")
                Case Else : Console.WriteLine("C")
            End Select
        End Sub
    End Module
End Namespace
Вопрос 9 из 20
Раздел «Ветвления If и Select Case»: какое решение выдержит не только демонстрационный, но и отказный сценарий?
Вопрос 10 из 20
Какой принцип по теме «Ветвления If и Select Case» стоит закрепить в командных соглашениях?
Вопрос 11 из 20
Какой вывод о фрагменте по теме «Циклы For и For Each» технически обоснован?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Module Demo
    Sub Main()
        Dim values = New List(Of Integer) From {2, 4, 6, 8}
        For Each value In values
            If value = 4 Then values.Remove(value)
        Next
        Console.WriteLine(values.Count)
    End Sub
End Module
Вопрос 12 из 20
Раздел «Циклы For и For Each»: что должно остаться явным после переработки участка с values?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Option Strict On
Namespace ReviewCase2_3
    Module Demo
        Sub Main()
            Dim reviewValues = New List(Of Integer) From {3, 5, 7, 9}
            For Each value In reviewValues
                If value = 5 Then reviewValues.Remove(value)
            Next
            Console.WriteLine(reviewValues.Count)
        End Sub
    End Module
End Namespace
Вопрос 13 из 20
Раздел «Циклы For и For Each»: для фрагмента с values добавляют регрессионный тест. Какой контракт он должен защищать?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Option Explicit On
Option Infer On
Namespace BoundaryCase2_3
    Module Demo
        Sub Main()
            Dim edgeValues = New List(Of Integer) From {1, 3, 5, 7}
            For Each value In edgeValues
                If value = 3 Then edgeValues.Remove(value)
            Next
            Console.WriteLine(edgeValues.Count)
        End Sub
    End Module
End Namespace
Вопрос 14 из 20
Раздел «Циклы For и For Each»: как уменьшить риск дефекта, не подменяя причину запасным значением?
Вопрос 15 из 20
Что можно считать надёжным рабочим правилом для раздела «Циклы For и For Each»?
Вопрос 16 из 20
Раздел «Циклы Do и While»: код использует attempts. Какой вывод останется верным при других допустимых входных данных?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Module Demo
    Sub Main()
        Dim attempts = 0
        Do
            attempts += 1
        Loop While attempts < 4
        Console.WriteLine(attempts)
    End Sub
End Module
Вопрос 17 из 20
Раздел «Циклы Do и While»: какая претензия к возможной правке относится к поведению программы?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Option Strict On
Namespace ReviewCase2_4
    Module Demo
        Sub Main()
            Dim reviewAttempts = 0
            Do
                reviewAttempts += 1
            Loop While reviewAttempts < 8
            Console.WriteLine(reviewAttempts)
        End Sub
    End Module
End Namespace
Вопрос 18 из 20
Раздел «Циклы Do и While»: для фрагмента с attempts добавляют регрессионный тест. Какой контракт он должен защищать?
Visual Basic / VB.NETVisual Basic · Операторы, условия и циклы
Option Explicit On
Option Infer On
Namespace BoundaryCase2_4
    Module Demo
        Sub Main()
            Dim edgeAttempts = 0
            Do
                edgeAttempts += 1
            Loop While edgeAttempts < 2
            Console.WriteLine(edgeAttempts)
        End Sub
    End Module
End Namespace
Вопрос 19 из 20
Раздел «Циклы Do и While»: обычный сценарий в рабочем модуле проходит, но поведение ещё не закреплено проверкой. Какое решение не маскирует причину?
Вопрос 20 из 20
Раздел «Циклы Do и While»: какой вывод можно использовать как основание для ревью кода?

Ответьте на все 20 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу