Найти сумму трёх наибольших из элементов массива - VB

Узнай цену своей работы

Формулировка задачи:

Добрый день, нужна помощь в написании программного кода. Вот задание:Ввести массив из десяти двузначных чисел. Найти и вывести на экран сумму трёх наибольших из этих чисел. Буду очень Вам благодарен.

Решение задачи: «Найти сумму трёх наибольших из элементов массива»

textual
Листинг программы
Public Class Form2
    'создаем массив из 10 двухзначных чисел
    Dim mass() As Integer = {15, 34, 45, 51, 13, 67, 10, 48, 82, 55}
    Dim max1 As Integer = mass(0) 'объявляем переменную первого наибольшего элемента массива
    Dim max2 As Integer = mass(0) 'второго
    Dim max3 As Integer = mass(0) 'третьего
    'для моего метода поиска нужно создать три переменных, в которых записаны индексы наибольших элементов массива
    Dim max1_index As Integer
    Dim max2_index As Integer
    Dim max3_index As Integer
    Dim max_summ 'ну и сама сумма
 
    'я делал приложение windows forms (не консольное), на форму тебе надо нацепить 4 лейбла.
    'все нужные действия происходят при загрузке формы
 
    Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'создаем цикл, который шерстит весь наш массив. предполагаем, что первый элемент массива - максимальный, и перебираем все элементы, сравниваем их
        ' и если текущий элемент больше, то принимаем его за максимальный
        For i = 0 To 9
            If max1 < mass(i) Then
                max1 = mass(i)
                max1_index = i
            End If
        Next
        'выводим на экран первый наиб.эл.
        Label1.Text = "Первый наибольший элемент массива = " + max1.ToString
 
        'теперь мы исключаем самый наибольший элемент, найденный в первом цикле, и создаем новый цикл, работает аналогично.
        For i = 0 To 9
            If i <> max1_index Then
                If max2 < mass(i) Then
                    max2 = mass(i)
                    max2_index = i
                End If
            End If
        Next
        'второй на экран
        Label2.Text = "Второй наибольший элемент массива = " + max2.ToString
 
        'последний цикл, работает также, как и остальные, только исключаем второй наибольший элемент.
        For i = 0 To 9
            If i <> max2_index And i <> max1_index Then
                If max3 < mass(i) Then
                    max3 = mass(i)
                    max3_index = i
                End If
            End If
        Next
        'третий на экран
        Label3.Text = "Третий наибольший элемент массива = " + max3.ToString
 
        'ищем сумму
        max_summ = mass(max1_index) + mass(max2_index) + mass(max3_index)
 
        'выводим на экран сумму
        Label4.Text = "Сумма трех наибольших элементов массива = " + max_summ.ToString
    End Sub
End Class

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.5 из 5
Похожие ответы