powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Нужна ваша помощь!
19 сообщений из 19, страница 1 из 1
Нужна ваша помощь!
    #33405313
печаль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем приветик!
Помогите мне решить задачки по VB!Надо их сдать преподу,если не сдам,то меня не допустят к экзамену,а сама я не могу решить их! (
Плз помогите!

1) Дан массив из N чисел.Не изменяя состояния этого массива, напечатать номера элементов, в соответствии с убыванием их значения.
2) Таблица футбольного чемпионата задана в виде квадратной матрицы, в которой представлены результаты матчей команд. За победу - 3 очка, за ничью - 1, за поражение - 0. Вывести итоговую таблицу: команда, место, очки.
3) Дана строка символов, состоящая из слов, разделенных пробелами. Вывести эту строку, удалив, стоящие на четных местах и перевернув оставшиеся.

Help me!

Заранее большое спасибо!
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405340
Фотография Mix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Девушка, вы бв лучше обратились к своим однокурсникам, сделавшим уже это:) Хотя бы за тортик:)
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405370
печаль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В том то и дело,что большая часть у нас это не сделал! И пытаются сами каким нить способом эти задачки сдать! Сама я не могу решить и поэтому я прошу вас мне помочь!
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405402
Фотография Mix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И опять-таки: каждая задача - отдельная программа.
На этом форуме обычно обсуждаются какие-то конкретные решения или проблемные ситуации, чаще всего в коде или в подходе.

А написанием и объяснением программ наверняка занимается кто-то у Вас в вузе, наверняка не бесплатно.

Могу, кстати, сразу сказать, что для человека, понимающего принципы программирования и знакомого с синтаксисом VB написать эти проги - дело максимум 1-2 часов :)
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405434
печаль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эх.....жалко что вы мне не можите помочь! (( ну ладно придется на пересдачу приходить!
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405458
Фотография Mix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да найдите Вы кого-нить за умеренную плату в виде поцелуя и будет вам счастье:))

Или в раздел "Работа" этого форума выложите Ваше предложение:)
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405538
В третьей задачке пробелы учитывать? Если да, то так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Function ReverseWords( _
  strData As String) As String
    Dim intI As Integer
    Dim strTemp1 As String
    Dim strTemp2 As String
    
    For intI =  1  To Len(strData) Step  2 
        strTemp1 = strTemp1 & Mid(strData, intI,  1 )
    Next
            
    For intI = Len(strTemp1) To  1  Step - 1 
        strTemp2 = strTemp2 & Mid(strTemp1, intI,  1 )
    Next
        
    ReverseWords = strTemp2
End Function

Код: plaintext
1.
?ReverseWords("Test Test")
te sT

Остальные посмотрю после обеда.
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405823
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) сортировка массива
Код: plaintext
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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
Public Sub Sort()
    Dim a() As Integer      'данный массив
    Dim tmp() As Integer    'временный
    
    Dim i As Integer
    Dim j As Integer
    
    Dim x As Single
    
    
    ReDim a( 10 )
    
    'заполняем массив (может быть задан как параметр процедуры и поэтому этот код можно пропустить)
    Randomize
    For i =  1  To UBound(a)
        a(i) = Int(( 6  * Rnd) +  1 )
    Next i
    
    
    'НАЧАЛО сортировки
    'переносим массив во временный массив
    ReDim tmp(UBound(a))
    For i =  1  To UBound(a)
        tmp(i) = a(i)
    Next i
    
    'сортировка "пузырьковым" методом
    For i =  1  To UBound(tmp)
        x = tmp(i)
        For j =  1  To UBound(tmp) -  1 
            If tmp(j) < tmp(j +  1 ) Then
                x = tmp(j)
                tmp(j) = tmp(j +  1 )
                tmp(j +  1 ) = x
            End If
        Next j
    Next i

    'выводим результат
    'исходный
    Debug.Print "Исходный массив"
    For i =  1  To UBound(a)
        Debug.Print a(i)
    Next i
    
    'сортированный
    Debug.Print "Сортированный массив"
    For i =  1  To UBound(tmp)
        Debug.Print tmp(i)
    Next i
    
End Sub
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405891
Bolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не это надо?
На форму кидаем Listbox1, CommandButton1

Private Sub CommandButton1_Click()
Dim MyArray(5), Arr(5) As Integer ' Описываем массив (у меня 5 элементов)
MyArray(1) = 5
MyArray(2) = 7
MyArray(3) = 1
MyArray(4) = 2
MyArray(5) = 10
'
For I = 1 To 5
Arr(I) = MyArray(I)
Next I

'*******************************************************
N = 5 ' размерность массива
For I = 1 To N

For J = 1 To N - I

If Arr(J) >= Arr(J + 1) Then

Tmp = Arr(J)

Arr(J) = Arr(J + 1)

Arr(J + 1) = Tmp

End If
Next J

Next I
'Arr(J) - отсортированный по возрастанию массив

For I = 5 To 1 Step -1
For J = 5 To 1 Step -1
If Arr(I) = MyArray(J) Then
Me.ListBox1.AddItem J
End If
Next J
Next I
'Получаем столбец порядковых номеров по убыванию значений MyArray()
End Sub
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33405969
печаль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKot,
а что будет располагаться на форме????

И у меня вопросик к Bolt
А если нужно не 5 элементов, а n-элементов,то что изменится в программном коде???
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33406192
Первый вопрос:

Код: plaintext
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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
Public Sub Question1()
    Dim intI As Integer
    Dim intJ As Integer
    Dim avarArray() As Variant
    Dim col As New Collection
    Dim bln As Boolean
    Dim cls As Class1
    
    ReDim avarArray( 1  To  10 )
    
    Randomize
    
    For intI =  1  To  10 
        avarArray(intI) = Int(Rnd *  99 ) +  1 
    Next
    
    Debug.Print "Исходный массив"
    
    For intI =  1  To  10 
        Debug.Print avarArray(intI)
    Next
    
    Debug.Print "============================="

    For intI =  1  To  10 
        Set cls = New Class1
        cls.lngValue = avarArray(intI)
        cls.intIndex = intI
        bln = False
        For intJ =  1  To col.Count
            If avarArray(intI) < col.Item(intJ).lngValue Then
                col.Add cls, , intJ
                bln = True
                Exit For
            End If
        Next intJ
        If Not bln Then
            col.Add cls
        End If
        Set cls = Nothing
    Next intI
    
    Debug.Print "Номера улементов по убыванию:"
    
    For intI = col.Count To  1  Step - 1 
        Debug.Print "Индекс: " & col.Item(intI).intIndex; _
          " Значение: " & col.Item(intI).lngValue
    Next
End Sub

Модуль класса Class1.

Код: plaintext
1.
Public lngValue As Long
Public intIndex As Integer
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33406324
печаль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибки большое!!!!!!!! Теперь осталось форму соответствующую сделать и все!
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33406361
печаль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибки большое!!!!!!!! Теперь осталось форму соответствующую сделать и все!
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33406405
Третья задачка подошла?
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33406803
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПеЧаЛЬHandKot,
а что будет располагаться на форме????

И у меня вопросик к Bolt
А если нужно не 5 элементов, а n-элементов,то что изменится в программном коде???

а что хочешь то и располагай, к примеру, ТекстБокс - сюда заносят размерность массива
и кнопка, по которой вызывается процедура, параметром которой передается введенная размерность массива
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33407373
А-а, так вот кому Злой Препод Бэйсик преподает!:о)|||
Хотя, чья бы корова мычала, а моя...
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33408010
Второй вопрос:

Код: plaintext
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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
Public Sub Question2()
    Dim intI As Integer
    Dim intJ As Integer
    Dim intK As Integer
    Dim avarArray() As Variant
    Dim avarArrayTemp() As Variant
    Dim avarArrayOutput() As Variant
    Dim col As New Collection
    Dim bln As Boolean
    Dim cls As Class2
    
    ReDim avarArray( 1  To  4 ,  1  To  4 )
    ReDim avarArrayTemp( 1  To  8 ,  1  To  2 )
    ReDim avarArrayOutput( 1  To  4 ,  1  To  2 )
    
    avarArray( 1 ,  1 ) = "Команда1"
    avarArray( 1 ,  3 ) = "Команда2"
    avarArray( 2 ,  1 ) = "Команда1"
    avarArray( 2 ,  3 ) = "Команда3"
    avarArray( 3 ,  1 ) = "Команда2"
    avarArray( 3 ,  3 ) = "Команда3"
    avarArray( 4 ,  1 ) = "Команда4"
    avarArray( 4 ,  3 ) = "Команда1"
    
    Randomize

    For intI =  1  To  4 
        For intJ =  2  To  4  Step  2 
            avarArray(intI, intJ) = Int(Rnd *  5 ) +  1 
        Next intJ
    Next intI
    
    Debug.Print "Футбольные матчи"
    Debug.Print "==================================="
    Debug.Print "Команда1   Голы    Команда2    Голы"
    Debug.Print "==================================="
    
    For intI =  1  To  4 
        For intJ =  1  To  4 
            Debug.Print avarArray(intI, intJ); vbTab;
        Next intJ
        Debug.Print ""
    Next intI
    
    intJ =  1 
    intK =  1 
    
    For intI =  1  To  4 
        If avarArray(intI,  2 ) = avarArray(intI,  4 ) Then
            avarArrayTemp(intK, intJ) = avarArray(intI,  1 )
            avarArrayTemp(intK, intJ +  1 ) =  1 
            avarArrayTemp(intK +  1 , intJ) = avarArray(intI,  3 )
            avarArrayTemp(intK +  1 , intJ +  1 ) =  1 
        ElseIf avarArray(intI,  2 ) > avarArray(intI,  4 ) Then
            avarArrayTemp(intK, intJ) = avarArray(intI,  1 )
            avarArrayTemp(intK, intJ +  1 ) =  3 
            avarArrayTemp(intK +  1 , intJ) = avarArray(intI,  3 )
            avarArrayTemp(intK +  1 , intJ +  1 ) =  0 
        ElseIf avarArray(intI,  2 ) < avarArray(intI,  4 ) Then
            avarArrayTemp(intK, intJ) = avarArray(intI,  1 )
            avarArrayTemp(intK, intJ +  1 ) =  0 
            avarArrayTemp(intK +  1 , intJ) = avarArray(intI,  3 )
            avarArrayTemp(intK +  1 , intJ +  1 ) =  3 
        End If
        intK = intK +  2 
    Next intI
    
    intK =  1 
    bln = False
        
    For intI = LBound(avarArrayTemp,  1 ) To UBound(avarArrayTemp,  1 )
        For intJ = LBound(avarArrayOutput,  1 ) To UBound(avarArrayOutput,  1 )
            If avarArrayTemp(intI,  1 ) <> avarArrayOutput(intJ,  1 ) Then
                bln = False
            Else
                bln = True
                Exit For
            End If
        Next intJ
        If Not bln Then
            avarArrayOutput(intK,  1 ) = avarArrayTemp(intI,  1 )
            avarArrayOutput(intK,  2 ) = avarArrayTemp(intI,  2 )
            intK = intK +  1 
        Else
            avarArrayOutput(intJ,  2 ) = avarArrayOutput(intJ,  2 ) + _
              avarArrayTemp(intI,  2 )
        End If
    Next intI
        
    Debug.Print "==================================="

    For intI =  1  To  4 
        Set cls = New Class2
        cls.strTeam = avarArrayOutput(intI,  1 )
        cls.intPoints = avarArrayOutput(intI,  2 )
        bln = False
        For intJ =  1  To col.Count
            If avarArrayOutput(intI,  2 ) < col.Item(intJ).intPoints Then
                col.Add cls, , intJ
                bln = True
                Exit For
            End If
        Next intJ
        If Not bln Then
            col.Add cls
        End If
        Set cls = Nothing
    Next intI

    Debug.Print "Итоговая таблица"
    Debug.Print "==================================="
    
    intJ =  1 

    For intI = col.Count To  1  Step - 1 
        Debug.Print "Место: " & intJ; _
          " Команда: " & col.Item(intI).strTeam; _
          " Очки: " & col.Item(intI).intPoints
        intJ = intJ +  1 
    Next
End Sub

Модуль класса Class2.

Код: plaintext
1.
Public strTeam As String
Public intPoints As Integer

P.S. Может кто проще предложит. :)
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33415084
печаль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И снова здравствуйте! Предложила ей ваше решение задач, но она не приняла их! ((
В задачах где массивы, она сказала использовать ввод массива, сортировку (если она там есть), функцию и программу командной кнопки!!! Вообще жуть!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
...
Рейтинг: 0 / 0
Нужна ваша помощь!
    #33416274
Интересно, что она (по-видимому, преподавательница) сказала. :)

Третья задачка подошла?

По-поводу массивов, HandKot и Bolt показали как сортировать массивы.
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Нужна ваша помощь!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]