Обмен значений - VB
Формулировка задачи:
Помогите, пожалуйста, решить задачу:
если сумма 3ёх разных действительных чисел х, у, z меньше единицы, то наименьшее из этих чисел заменить полуразностью двух других значений, в противном случае заменить меньшее из них полусуммой двух оставшихся значений.
Знаю, что задача не особо сложная, понятие об алгоритме решения есть, но с этим языком программирования и средой не работали, а времени дали мало. Не успеваю сама разобраться. Заранее огромное спасибо!
Решение задачи: «Обмен значений»
textual
Листинг программы
Sub An() Dim x#, y#, z#, s# Randomize Do x = Round(Rnd * 0.7, 1): y = Round(Rnd * 0.7, 1): z = Round(Rnd * 0.7, 1) Loop Until x <> y And x <> z And y <> z s = x + y + z Debug.Print x, y, z, "sum="; s Select Case -(x < y) - 2 * (x < z) - 4 * (y < z) Case 3, 7 'x=min If s < 1 Then x = (y - z) / 2 Else x = (y + z) / 2 Case 4, 6 'y=min If s < 1 Then y = (x - z) / 2 Else y = (x + z) / 2 Case Else 'z=min If s < 1 Then z = (y - x) / 2 Else z = (y + x) / 2 End Select Debug.Print x, y, z; vbLf End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д