Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / помогите решить 2 легкие задачки / 4 сообщений из 4, страница 1 из 1
15.05.2011, 22:31
    #37261682
Velasha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите решить 2 легкие задачки
Извините что отвлекаю но подруге требуется помощь.Дала 2 задачки:
Задача 1
А. Составить процедуру сортировки по убыванию значений элементов массива А(К) (К - заданное число).
В. Используя процедуру рассортировать по убыванию значения элементов каждого столбца массива С(5,4).
Задача 2
А. Составить функцию для вычисления:
У = 1 -х2/2!-х4/4!-х6/6!-...
принимая, что аргумент X по модулю меньше единицы. Вычисления продолжать, пока модуль разности между слагаемым и его предыдущим значением не меньше малой заданной величины (точности вычислений).
В. Напечатать таблицу значений функции У для аргумента X, изменяющегося от заданного начального значения до заданного конечного с заданным шагом.
...
Рейтинг: 0 / 0
16.05.2011, 00:19
    #37261773
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите решить 2 легкие задачки
Извините, VB ставить лень, проверяю на VBA.
Ну вот, типа раз:
Задача 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.
Sub SortDown(ByRef A())
    Dim t As Boolean
    Dim i, j As Long
    Dim a0 As Variant
    t = True
    i = LBound(A)
    While t
        t = False
        i = i +  1 
        For j = UBound(A) To i Step - 1 
            If A(j) < A(j -  1 ) Then
                a0 = A(j)
                A(j) = A(j -  1 )
                A(j -  1 ) = a0
                t = True
            End If
        Next
    Wend
End Sub


Sub test()

Dim C As Variant
C = Range("A1:D5")

Dim i, j As Long
ReDim c0(LBound(C,  1 ) To UBound(C,  1 ))

For j = LBound(C,  2 ) To UBound(C,  2 )
    For i = LBound(C,  1 ) To UBound(C,  1 )
        c0(i) = C(i, j)
    Next
    SortDown c0
    For i = LBound(C,  1 ) To UBound(C,  1 )
        C(i, j) = c0(i)
    Next
Next
Range("A11:D15") = C

End Sub
...
Рейтинг: 0 / 0
16.05.2011, 00:32
    #37261788
помогите решить 2 легкие задачки
AndreTM,

огромное спасибо.Вы нас с девушкой спасли))
...
Рейтинг: 0 / 0
16.05.2011, 00:54
    #37261802
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите решить 2 легкие задачки
Ну и, типа два, по-быстрому, без типизации:
Код: 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.
Function Xnext(Xprev, x, n) As Double
    Xnext = Xprev * x ^  2  / (n * (n -  1 ))
End Function

Function Y(x, d) As Double
    Y =  1 
    X0 =  1 
    n =  0 
    Do
        n = n +  2 
        Xn = Xnext(X0, x, n)
        If Abs(Xn - X0) > d Then
            Y = Y - Xn
            X0 = Xn
        Else
            Exit Do
        End If
    Loop
End Function

Sub test()
    
    d =  10  ^ - 10 
    
    i =  1 
    For x = - 0 . 5  To  0 . 5  + d Step  0 . 1 
       Cells(i,  1 ) = x
       Cells(i,  2 ) = Y(x, d)
       i = i +  1 
    Next
    
End Sub
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / помогите решить 2 легкие задачки / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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