Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Sbornik_zadach_-mogut_prigoditsya_pri_sdache_ek...docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
714.03 Кб
Скачать

43. Вычисление уравнения

Private Sub Command1_Click()

Dim X As Single, Y As Single, a As Single, b As Single, t As Single

X = Val(Text1.Text)

Y = Val(Text2.Text)

t = 5 * X * Y + X ^ 2

s = (Exp(Log(t) / Log(10)) + (Exp(t) + Exp(-(t))) / 2 + 25 * (X ^ 3) + 7.3) / ((t ^ 3) ^ (1 / 5) - (Exp(t) + Exp(-(t))) / 2 + 0.27)

Label1.Caption = Str(s)

End Sub

44. Решить уравнение , найти корни у.

Private Sub Command1_Click()

Dim x As Single, y As Double, a As Single, b As Single

x = -1.5

Do

y = a + Exp(x + 1) + Sin((x) ^ 2) + a * b

Print x, y

x = x + 0.5

Loop While x <= 3.5

Print "--------------------"

End Sub

45. Вычислить сумму при различных вариациях:

Private Sub Command1_Click()

Dim h As Single, x As Single, m As Single, n As Integer, p As Single, y As Single

If Check1.Value = 1 And Check2.Value = 0 Then GoTo Var1 Else

If Check2.Value = 1 And Check1.Value = 0 Then GoTo Var2 Else

If Check1.Value = 1 And Check2.Value = 1 Then GoTo error1 Else

If Check1.Value = 0 And Check2.Value = 0 Then GoTo error2

Var1: p = 0

For n = 1 To 12 Step 1

y = ((x ^ 2) * (2 * n + 1)) / (Exp(x * n) + (2 * (n ^ 2)) - 1)

x = 3.4

p = p + y

Print "вариант 1:", "x=3.4", "h=1", "m=12", "y"; "("; n; ")"; , y

Next n

Print "сумма всех значений"; p

Picture2.Picture = LoadPicture(App.Path & "\" & "ргр4(2).bmp")

GoTo sps

Var2: p = 0

h = 0

For n = 1 To 15 Step 2

y = ((x ^ 2) * (2 * n + 1)) / (Exp(x * n) + (2 * (n ^ 2)) - 1)

x = 1.65

p = p + y

h = h + 1

Print "вариант 2:", "x=1.65", "h=2", "m=15", "y"; "("; h; ")"; , y

Next n

Print "сумма всех значений"; p

Picture2.Picture = LoadPicture(App.Path & "\" & "ргр4(3).bmp")

GoTo sps

error1: Print "!!!Ошибка. Вы выбрали оба варианта!!!!!!"

GoTo sps

error2: Print "!!!Ошибка. Вы не выбрали ни одного из вариантов!!!!!!"

sps: Print ""

End Sub

46. На 2 массива – на максимальные элементы в столбцах (какая-то мутная задача из чужой ргр)

Dim x(1 To 7) As Long, y(1 To 3) As Long, z(1 To 7, 1 To 3) As Single, m As Single, k As Single, b As Single, c As Single, g As Single

Private Sub Command1_Click() 'Солодухин Виталий(VEL-Master) FOREVA!!!!!!

Print "элементы массива X" '

For i = 1 To 7

x(i) = 1 + Rnd * 9999999 'значения х от 1 до 10000000

Print x(i);

Next i

Print

Print "элементы массива Y"

For j = 1 To 3

y(j) = 1 + Rnd * 999 ' значения у от 1 до 1000

Print y(j);

Next j

Print

For i = 1 To 7

For j = 1 To 3

z(i, j) = ((Abs(x(i) - y(j))) ^ (1 / 5)) / ((1 + y(j)) ^ (1 / 2)) 'этот байсик не хочет считать корень отрицательного подкоренного выражения, даже если корень четной степени. Преподаватель разрешил использовать функцию ABS(). Преподаватель: Костромина Ирина Григорьевна.

Print z(i, j), "";

Next j

Print

Next i

Dim a As Single

For j = 1 To 3

a = z(1, j)

For i = 1 To 7

If a < z(i, j) Then a = z(i, j) Else GoTo 10

10 Next i

Print "максимальное значение столбца("; j; ")", a

Next j

For i = 1 To 7

g = 0

a = 1

For j = 1 To 3

If z(i, j) < 1 Then GoTo 20 Else a = a * z(i, j)

20 If z(i, j) > 1 Then g = g + 1 Else 'проверяет есть-ли вообще строки в которых все элементы <1

Next j

If g < 1 Then

Print "Все элементы строки "; "("; i; ")"; " < 1"

Else:

Print "произведение элементов больших 1 в каждой строке"; "("; i; ")"; a

End If

Next i

c = 0

For j = 1 To 3

k = 0

For i = 1 To 7

k = k + z(i, j)

Next i

If k < 6 Then GoTo 30 Else ' условие было изменено в силу разрешения преподавателем использовать функцию ABS()

c = c + 1

30 Next j

Print "число столбцов сумма которых больше (6)", c

End Sub

Private Sub Command2_Click()

Cls

End Sub

47. В массиве найти сумму отрицательных чисел

 Dim S As Double 'Сумма

S = 0

 For i = 1 To UBound(arrA) 'Step 2 - Если в массиве чисел найти сумму отрицательных чисел элементов с четными индексами

 If arrA(i) < 0 Then S = S + arrA(i)

 Next i

48. Получение случайного числа

Private Sub Command1_Click()  

    'генерирует случайное число от 0 до 99  

   Randomize 'перемешиваем счетчик относительно системного времени

   MsgBox Int(100 * Rnd)  

    End Sub  

49. Округление до десятых, сотых, тысячных и т.д.

  Public Function nasRound(Num As Double, d As Integer) As Double  

     Dim a As Double  

     Dim r As Double  

     Dim b As Double  

     a = Num Mod d  

     If a > (d / 2) Then  

      b = d - a  

      r = Num + b  

     Else  

      r = Num - a  

     End If  

     nasRound = r  

    End Function  

50. Подсчет количества определенных символов в тексте

    'nasGetCharCount(strText, strFindChar)  

   'где strText - текст, в котором ведется поиск;  

   'strFindChar - искомый символ  

   Public Function nasGetCharCount( _  

        ByVal strText As String, _  

        Optional strFindChar As String = " ") _  

        As Long  

     Dim gccArray() As String  

     If strText = vbNullString Then  

      nasGetCharCount = 0: Exit Function  

     End If  

     gccArray = Split(strText, strFindChar)  

     nasGetCharCount = UBound(gccArray)  

    End Function  

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]