12.5 (Программы 2)
Описание файла
Файл "12.5" внутри архива находится в папке "Программы 2". Документ из архива "Программы 2", который расположен в категории "". Всё это находится в предмете "практика расчётов на пэвм" из 2 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Онлайн просмотр документа "12.5"
Текст из документа "12.5"
Мария, добрый день!
Что за величины скрываются за переменными у1 и у2
[Македонская Мария Игоревна] Это приближенные значения функции y(xi+h) полученные при разных шагах h/n и h/2n соответственно.[Ермакова Елена Яковлевна] значения аргумента у этих значений функции одинаковые или разные?
[Македонская Мария Игоревна] одинаковые, так как значения функции ищутся в одной точке.
С уважением,
Ермакова Е. Я.
From: Македонская Мария Игоревна
Sent: Monday, May 16, 2011 11:51 AM
To: Ермакова Елена Яковлевна
Subject: Дифуры. Нахождение оптимального шага.12.5
Добрый день, уважаемая Елена Яковлевна.
Option Strict On
Module Module1
Function F(ByVal x As Double, ByVal y As Double) As Double
Return -0.1 * y
End Function
Sub Main()
Dim x0 As Double = 0
Dim y0 As Double = 1
Dim xk As Double = 20
Dim h As Double = 1
Dim m As Integer = CInt((xk - x0) / h)
Dim e As Double = 0.001
Dim x, y, y1, y2 As Double
Dim n As Integer
x = x0 : y = y0
Console.WriteLine(" x y y' h/2n 2n")
Console.WriteLine("---------------------------------------")
Console.WriteLine("{0,4} {1:f4} {2:e1}", x0, y0, F(x0, y0))
For i As Integer = 1 To m
n = 1
Do
y1 = y : y2 = y
For j As Integer = 0 To n - 1
x = x0 + (i - j) * h + h / n * j
y1 = y1 + h / n * F(x, y1)
Next j
For j As Integer = 0 To 2 * n - 1
x = x0 + (i - j) * h + h / (2 * n) * j
y2 = y2 + h / (2 * n) * F(x, y2)
Next j
n = 2 * n
Loop While Math.Abs((y2 - y1) / y1) >= e
Console.WriteLine("{0,4} {1:f4} {2:e1} {3:e1} {4}", x0 + i * h, y2, F(x, y2), h / n, n)
x = x0 + i * h
y = y2
Next i
Console.ReadLine()
End Sub
End Module