Скачиваний:
1
Добавлен:
27.09.2023
Размер:
612.83 Кб
Скачать

Задание №1

  1. Постановка задачи:

    1. Словестное описание задачи:

Найти и напечатать значения и индексы первых K и последних N положительных элементов вектора G8 размерности M. Проанализировать выполнение программы на примере:

K=3; N=4; G8={-1; 3; 10; -8; 7; 0; 1; 20; -4; 6}

    1. Состав входных и выходных данных:

Входные данные:

K – количество первых положительных элементов, переменная целого типа,

N – количество последних положительных элементов, переменная целого типа,

M – размерность вектора, переменная целого типа,

G8={g8i}, i= – исходный вектор, массив вещественных чисел.

Выходные данные:

i – индексы положительных элементов, переменная целого типа,

g8i – значения положительных элементов, переменная вещественного типа.

  1. Математическая модель задачи:

Если K>0 и g8i>0, то напечатать i и g8i где i=

Если N>0 и g8i>0, то напечатать i и g8i где i=

  1. Схема алгоритма

  1. Код приложения

Private Sub Command1_Click()

Dim G8() As Single, i As Integer, K As Integer, N As Integer, M As Integer

K = InputBox("K=")

N = InputBox("N=")

M = InputBox("Введите размерность вектора")

ReDim G8(1 To M)

Print "G8=";

For i = 1 To M

G8(i) = InputBox("G8(" & i & ")=")

Print G8(i) & " ";

Next

Print

Print "Первые K положительных элементов:"

Print " i"; Tab; "G8(i)"

i = 1

Do While i <= M And K > 0

If G8(i) > 0 Then

K = K - 1

Print i; Tab; G8(i)

End If

i = i + 1

Loop

Print "Последние N положительных элементов:"

Print " i"; Tab; "G8(i)"

i = M

Do While i >= 1 And N > 0

If G8(i) > 0 Then

N = N - 1

Print i; Tab; G8(i)

End If

i = i - 1

Loop

End Sub

  1. Отладка программы

Задание №2

  1. Постановка задачи:

    1. Словестное описание задачи:

Определить наибольший элемент K-го столбца матрицы Q размерности N×L.

Для отладки программы значения N, L, K и Q выбрать самостоятельно.

    1. Состав входных и выходных данных:

Входные данные:

N – количество строк матрицы, переменная целого типа,

L – количество столбцов матрицы, переменная целого типа,

K – индекс заданного столбца, переменная целого типа,

Q={qij}, где i= j= – исходная матрица, массив вещественных чисел.

Выходные данные:

m – индекс строки наибольшего элемента в столбце K, переменная целого типа,

qm,K – значение наибольшего элемента, переменная вещественного типа.

  1. Математическая модель задачи:

m=1

Если qi,K>qm,K, то m=i где i=

  1. Схема алгоритма:

  2. Код приложения

Private Sub Command1_Click()

Dim Q() As Single, m As Integer, K As Integer, N As Integer, L As Integer, i As Integer, j As Integer

N = InputBox("N=")

L = InputBox("L=")

ReDim Q(1 To N, 1 To L)

Print "Q="

For i = 1 To N

For j = 1 To L

Q(i, j) = InputBox("Q(" & i & ", " & j & ")=")

Print Q(i, j) & " ";

Next

Print

Next

K = InputBox("K=")

m = 1

For i = 2 To N

If Q(i, K) > Q(m, K) Then

m = i

End If

Next

Print "Наибольший элемент " & K & "-го столбца: Q(" & m & ", " & K & ")="; Q(m, K)

End Sub

  1. Отладка программы

Соседние файлы в папке Программный элемент поиск