Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
икт.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
137.22 Кб
Скачать
  1. Расчет суммы и произведения в цикле

Пример 2. Определить среднюю температуру за неделю

For i As Integer = 0 To 6 'Выполняем 7 раз

Console.WriteLine("Температура в {0}", i & " день" )

t = Console.ReadLine()

s = s + t

st = s/7

Console.WriteLine("Средняятемпература = {0}", st )

Console.ReadLine()

Next i

Работапрограммы. Цикл 7 раз выводит запрос о температуре t в

определенный день педели. Для удобства пользователя запрос

содержит номер дня. Полученные данные суммируются и после

окончания работы цикла делятся на 7. Результат присваивается

переменной st, которую выводит на экран метод WriteLine( ).

Вычисление суммы температур за неделю происходит в строке s = s + t.

Аналогично работают алгоритмы разности, произведения, подсчета

количества (n = n + 1) и многие другие.

Пример 3. Вычислить значение y = Σ x2 + Π x/2, если х = (5, 8, 6, 7, 9)

i=0 i=0

For i As Integer = 0 To 4 'Выполняем 5 раз

Console.WriteLine("Введите {0}", i& " элемент" )

x(i) = Console.ReadLine()

Next i

Dim s As Double = 0

Dim p As Double = 1

For iAs Integer = 0 To 4

s = s + x(i)^2

p = p * (x(i) / 2)

Next i

y = s + p

Console.WriteLine("y = {0}", y)

Console.ReadLine()

  1. Поиск максимума и минимума в одномерном массиве, сортировка массива.

Поиск максимума и минимума в одномерном массиве

Большой спектр задач связан с поиском минимального или

максимального значения из ряда величин. Алгоритм составления

таких программ основан на сравнении каждого элемента выборки с

каким-либо эталонным значением. Если рассматриваемое число

больше или, при поиске минимума, меньше эталона, то эталоном

становится величина данного элемента и проверка продолжается уже

относительно нового значения эталона.

Пример 6. Найти максимум Мax и минимум Min вектора d(20)

Dim max As Double = d(0)

Dim min As Double = d(0)

For i As Integer = 1 To 19 ‘Переборначинаемсо 2-го

элемента

If d(i) > max Then max = d(i)

If d(i) < min Then min = d(i)

Next i

Console.WriteLine("Max = {0}", max)

Console.WriteLine("Min = {0}", min)

Console.ReadLine()

Работа программы. Переменные Max и Min приравнивают к первому

элементу массива, для того чтобы задать начальное значение эталона,

относительно которого будет осуществляется поиск. Если величина

очередного элемента массива удовлетворяет условию в одном из

операторов If, то переменной Max или Min присваивается значение

этого элемента. Если условие не выполняется, то Next передает

управление в начало цикла, счетчик увеличивается на 1 и программа

рассматривает следующий элемент массива.

  1. Поиск порядкового номера элемента, удовлетворяющего условию.

Порядковый номер элемента, удовлетворяющего условию

Порядковый номер или координату элемента бывает нужно

определить в задачах, связанных с перемещением элементов внутри

массива, например в сортировке по возрастанию.

Суть алгоритма сводится к тому, что номер элемента присваивается

дополнительной переменной.

Пример 7. Найти порядковые номера максимального Nmax и ми-

нимальногоNmin элементов массива d(20)

Dim max As Double = d(0)

Dim min As Double = d(0)

Dim NmaxAs Integer = 0

Dim NminAs Integer = 0

For iAs Integer = 1 To 19

If d(i) > max Then

max = d(i)

Nmax = i

End If

If d(i) < min Then

min = d(i)

Nmin = i

End If

Next i

Console.WriteLine("Номер Max = {0}", Nmax)

Console.WriteLine("Номер Min = {0}", Nmin)

Console.ReadLine()

Работа программы. Номер итерации цикла (значение счетчика i)

равен номеру рассматриваемого элемента массива. Переменным Nmax

и Nmin присваиваются номера элементов, которые были больше (при

поиске минимума — меньше) эталона (Мax или Min). Счетчик i

увеличивается на 1 в каждой итерации цикла, a Nmax и Nmin меняют

значения только при выполнении условия, поэтому после окончания

цикла они хранят номера искомых элементов (номера элементов, зна-

чения которых последний раз присваивались эталонам).

  1. Вставка элемента в вектор и удаление.

Вставка элемента в вектор

Вставить элемент в вектор — значит раздвинуть вектор на одну

позицию. Например, вставить число 5 в третью позицию вектора V(l, 2,

3, 4, 5, 6). После вставки вектор станет на один элемент больше — V(l,

2, 5, 3, 4, 5, 6).

Пример 8. Вставить в k-ю позицию вектора b(n) новый элемент,

равный h

Dimh AsInteger= 101 ‘Любое число

Dimk AsInteger= 3 ‘Номер вставляемой позиции

Dim n As Integer = 5 ‘Размермассива

Dimm AsInteger= 6 ‘Значения элементов

Dim b(n) As Integer

For iAs Integer = 0 To n - 1

b(i) = m

Console.WriteLine("b({0}", i&") = " & b(i))

m = m * 2

Next i

Console.WriteLine(" ")

n = n + 1

ReDim Preserve b(n)

For iAs Integer = n - 1 To k - 1 Step -1

b(i) = b(i - 1)

Next

b(k-1) = h

For iAs Integer = 0 To n - 1

Console.WriteLine("b({0}", i&") = " & b(i))

Nexti

Console.ReadLine()