Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
3 / 3 / 1
Регистрация: 01.05.2013
Сообщений: 125
1

Отсортировать массив по возрастанию

23.11.2014, 22:08. Показов 1254. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задан массив А(20) целых случ-ых чисел от 0 до 9. Отсортировать массив по возрасстанию А(20). Выдать массив одинаковых чисел. Почему то выводит по несколько раз ответ. Помогите пожалуйста(
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Public Class Form1
    Dim A(20) As Integer
    Dim i, j As Integer
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim i As Integer
        TextBox1.Text = ""
        For i = 0 To 19
            A(i) = 8 * Rnd() + 1
        Next
        Array.Sort(A)
        For i = 0 To 19
            TextBox1.Text = TextBox1.Text + " " + CStr(A(i))
        Next
    End Sub
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i, j As Integer
        TextBox2.Text = ""
        For i = 0 To 19
            For j = 0 To 19
                If A(i) = A(j) Then
                    TextBox2.Text = TextBox2.Text + " " + CStr(A(i))
                End If
            Next
        Next
    End Sub
End Class
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.11.2014, 22:08
Ответы с готовыми решениями:

Отсортировать массив по убыванию, затем добавить недостающий элемент и отсортировать массив по возрастанию
2) В массиве a ...a встречаются по одному разу все целые числа от 0 до n, кроме одного. За n...

Дан массив чисел. Отсортировать массив по возрастанию с помощью сортировки пузырьком.
дан массив чисел. отсортировать массив по возрастанию с помощью сортировки пузырьком.

Массив: Отсортировать массив по возрастанию и определить количество элементов, больших B.
Дан массив А{50} элементов.Отсортировать массив по возрастанию и определить количество...

Дан двумерный массив a (m, n) отсортировать строки матрицы по возрастанию (массив вводить самой)
дан двумерный массив a ( m, n ) отсортировать строки матрицы по возрастанию ( массив вводить самой )

3
Заблокирован
24.11.2014, 07:35 2
Цитата Сообщение от wfall Посмотреть сообщение
Задан массив А(20) целых случ-ых чисел от 0 до 9
Цитата Сообщение от wfall Посмотреть сообщение
Dim A(20) As Integer
Цитата Сообщение от wfall Посмотреть сообщение
For i = 0 To 19 'почему до 19, а не до 20?
A(i) = 8 * Rnd() + 1 '0(ноль) не получите никогда, а вероятность получения 1 и 9 в два раза ниже получения остальных чисел
Next
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Public Class Form1
 
  Dim A(20) As Integer
  Dim i, j As Integer
  Dim r As New Random
 
  Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    Dim i As Integer
    For i = 0 To 19
      A(i) = r.Next(0, 10) '8 * Rnd() + 1
    Next
    Array.Sort(A)
    TextBox1.Text = ""
    For i = 0 To 19
      TextBox1.Text = TextBox1.Text + " " + CStr(A(i))
    Next
  End Sub
 
  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim i, j As Integer
    TextBox2.Text = ""
    For i = 0 To 18
      For j = i + 1 To 19
        If A(i) = A(j) Then
          TextBox2.Text = TextBox2.Text + " " + CStr(A(i))
        End If
      Next
    Next
  End Sub
End Class
Цитата Сообщение от wfall Посмотреть сообщение
Выдать массив одинаковых чисел
Поясните этот момент (как должен выглядеть и из чего состоять новый массив?)
0
3 / 3 / 1
Регистрация: 01.05.2013
Сообщений: 125
24.11.2014, 19:47  [ТС] 3
Апострофф, массив из одинаковых чисел
0
1590 / 663 / 225
Регистрация: 09.06.2011
Сообщений: 1,334
24.11.2014, 21:04 4
Лучший ответ Сообщение было отмечено wfall как решение

Решение

По аналогии с Вашим кодом - без создания массива, хотя в постановке задания о нем идет речь
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i As Integer, L As New List(Of Integer)
        TextBox2.Clear()
        For i = 0 To 18
            If L.Contains(A(i)) = False AndAlso Array.LastIndexOf(A, A(i)) > i Then
                L.Add(A(i))
                TextBox2.Text += CStr(A(i)) + " "
            End If
        Next
' для создания массива можно использовать: Dim Mas=L.ToArray
' Формирование содержимого текстового поля осуществлять в отдельном цикле по элементам массива Mas
    End Sub
Вариант 1 с созданием массива (без списка)
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i As Integer, L(9) As Integer, Count As Integer = -1
        TextBox2.Clear()
        For i = 0 To 18
            If (Count = -1 OrElse L.Contains(A(i)) = False) AndAlso Array.LastIndexOf(A, A(i)) > i Then
                Count += 1
                L(Count) = A(i)
            End If
        Next
        For i = 0 To Count
            TextBox2.Text += CStr(L(i)) + " "
        Next
    End Sub
Вариант 2
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i As Integer, L() As Integer = Nothing, Count As Integer = -1
        TextBox2.Clear()
        For i = 0 To 18
            If (Count = -1 OrElse L.Contains(A(i)) = False) AndAlso Array.LastIndexOf(A, A(i)) > i Then
                Count += 1
                ReDim Preserve L(Count)
                L(Count) = A(i)
            End If
        Next
        For i = 0 To Count
            TextBox2.Text += CStr(L(i)) + " "
        Next
    End Sub
1
24.11.2014, 21:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.11.2014, 21:04
Помогаю со студенческими работами здесь

создать массив из 212 случайных чисел лежащих в диапазоне от 3 до 7 и отсортировать этот массив по возрастанию
Нужно создать массив из 212 случайных чисел лежащих в диапазоне от 3 до 7 и отсортировать этот...

Разделить массив на два отдельных массива, отсортировать один массив по убыванию, а второй - по возрастанию
Помогите пожалуйста. Дан массив из 20 целых чисел, расположенных в случайном порядке. Половина...

Массив. Заполнить массив неповторяющимися числами. Отсортировать по возрастанию
Используя датчик случайных чисел заполнить массив из двадцати элементов неповторяющимися числами в...

Сформировать массив по формуле Yk=K*cos (Ak). Отсортировать массив по возрастанию
Дан массив размера N. Сформировать массив Yn, каждый элемент которого определяется по формуле...

Одномерный массив. Поменять местами первый и последний элементы и отсортировать массив по возрастанию методом выбора
Одномерный массив F(N) заполнен случайным образом поменять местами первый и последний элементы и...

Отсортировать массив по возрастанию
Добрый день. Условие в теле кода. Не получется запихнуть код в интрукцию for. Замену минимального...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru