Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
1
Добавлен:
27.09.2023
Размер:
150.46 Кб
Скачать

Задание №1

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

Определить, в каком из одномерных массивов А, В и С одинаковой размерности n наибольшее количество положительных элементов.

Для отладки программы значения n, А, В и С выбрать самостоятельно.

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

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

A – массив вещественного типа,

B – массив вещественного типа,

C – массив вещественного типа.

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

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

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

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

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

3. Разработка алгоритма

4. Разработка визуальной части проекта

На форме располагаем только командную кнопку Command1. В свойстве Caption запишем «Решить задачу».

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

Private Sub Command1_Click()

Dim A() As Single, An As Integer, B() As Single, Bn As Integer, C() As Single, Cn As Integer, n As Integer, i As Integer

n = InputBox("n=")

ReDim A(1 To n), B(1 To n), C(1 To n)

Print "{A}=";

For i = 1 To n

A(i) = InputBox("A(" & i & ")=")

Print A(i);

Next

Print

Print "{B}=";

For i = 1 To n

B(i) = InputBox("B(" & i & ")=")

Print B(i);

Next

Print

Print "{C}=";

For i = 1 To n

C(i) = InputBox("C(" & i & ")=")

Print C(i);

Next

Print

For i = 1 To n

If A(i) > 0 Then

An = An + 1

End If

If B(i) > 0 Then

Bn = Bn + 1

End If

If C(i) > 0 Then

Cn = Cn + 1

End If

Next

If (An > Bn) And (An > Cn) Then

Print "{A} имеет наибольшее количество элементов: " & An

ElseIf (Bn > An) And (Bn > Cn) Then

Print "{B} имеет наибольшее количество элементов: " & Bn

ElseIf (Cn > An) And (Cn > Bn) Then

Print "{C} имеет наибольшее количество элементов: " & Cn

ElseIf (An = Bn) And (An > Cn) Then

Print "{A} и {B} имеют наибольшее количество элементов: " & An

ElseIf (Bn = Cn) And (Cn > An) Then

Print "{B} и {C} имеют наибольшее количество элементов: " & Bn

ElseIf (An = Cn) And (An > Bn) Then

Print "{A} и {C} имеют наибольшее количество элементов: " & An

Else

Print "Массивы имеют равное количество элементов: " & An

End If

End Sub

6. Отладка приложения

**

Ручной счет:

Наибольшее количество положительных элементов содержится в массиве B

Задание №2

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

В матрице А размерности m×k определить номер столбца с наименьшей суммой элементов. Для отладки программы матрицу выбрать самостоятельно.

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

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

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

A() – массив вещественных чисел.

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

jm – номер столбца с наименьшей суммой, переменная целого типа.

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

3. Разработка алгоритма

4. Разработка визуальной части проекта

На форме располагаем только командную кнопку Command1. В свойстве Caption запишем «Решить задачу».

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

Private Sub Command1_Click()

Dim A() As Single, m As Integer, k As Integer, S As Single, Sm As Single, i As Integer, j As Integer, jm As Integer

m = InputBox("m=")

k = InputBox("k=")

ReDim A(1 To m, 1 To k)

For i = 1 To m

For j = 1 To k

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

Print A(i, j),

Next

Print

Next

jm = 1

For i = 1 To m

Sm = Sm + A(i, 1)

Next

For j = 2 To k

For i = 1 To m

S = S + A(i, j)

Next

If S < Sm Then

jm = j

Sm = S

End If

Next

Print "Наибольшую сумму имеет столбец " & jm

End Sub

6. Отладка приложения

**

Ручной счет:

Наименьшая сумма у 1 столбца

Соседние файлы в папке Синтез алгоритмических структур