С Новым годом! Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/121: Рейтинг темы: голосов - 121, средняя оценка - 4.53
5 / 1 / 1
Регистрация: 19.01.2011
Сообщений: 34
1

Найти минимальный и максимальный элемент массива

26.01.2011, 21:21. Показов 23273. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как найти минимальный имаксимальный элемент?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.01.2011, 21:21
Ответы с готовыми решениями:

Найти минимальный и максимальный элементы массива и заменить первый элемент массива суммой минимального и максимального элементов
Доброго времени суток.. Случилось так, что требуется решить 2 задачи в ВБА на массивы, которые я...

Найти максимальный элемент массива на четных местах и минимальный - на нечетных
Написать программу на VBA, которая позволяет в одномерном массиве осуществлять поиск максимального...

Найти минимальный и максимальный элементы массива
Дан массив целых чисел K(n), найти в нем минимальный Kmin, и максимальный Kmax элементы. Вывести в...

Найти сумму элементов массива, максимальный и минимальный элемент массива
Дан массив из N элементов на отрезке из найти сумму элементов массива , максимальный и минимальный...

8
6644 / 1511 / 169
Регистрация: 09.01.2010
Сообщений: 4,298
26.01.2011, 22:02 2
Цитата Сообщение от cmpunk Посмотреть сообщение
Как найти минимальный имаксимальный элемент?
чего ?
0
Заблокирован
26.01.2011, 22:14 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Sub Макрос1()
Dim myArray() As Single
Dim i As Integer
Dim MinЗначение As Single
Dim MaxЗначение As Single
Dim MinЭлемент As Long
Dim MaxЭлемент As Long
MinЗначение = myArray(0)
MaxЗначение = myArray(0)
MinЭлемент = 0
MaxЭлемент = 0
For i = 0 To UBound(myArray())
    If myArray(i) < MinЗначение Then
        MinЗначение = myArray(i): MinЭлемент = i
    ElseIf myArray(i) > MaxЗначение Then
        MaxЗначение = myArray(i): MaxЭлемент = i
    End If
Next i
MinЭлемент
MaxЭлемент
End Sub
0
5 / 1 / 1
Регистрация: 19.01.2011
Сообщений: 34
26.01.2011, 22:15  [ТС] 4
1 7 3 4 6 2 Вывести максимальный т.е (7) либо минимальный(1)
0
Faustxi
01.02.2011, 16:34 5
Лучший ответ Сообщение было отмечено как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Option Explicit
Option Base 1
Sub Mass()
Dim M1() As Integer, M2() As Integer, n As Integer, i As Integer, max As Integer, min As Integer, _
Str1 As String, Str2 As String, Str3 As String, M3() As Integer
Dim MNO As Integer
n = InputBox("Введите количество элементов массива", "Определение размера массива")
ReDim M1(n), M2(n), M3(n)
 
Randomize
For i = 1 To n
M1(i) = Int(10 * Rnd + 1)
M2(i) = Int(10 * Rnd + 1)
Str1 = Str1 & M1(i) & " "
Str3 = Str3 & M2(i) & " "
Next
 
min = M2(1)
For i = 2 To n
If M2(i) < min Then min = M2(i)
Next
 
max = M1(1)
For i = 2 To n
If M1(i) > max Then max = M1(i)
Next
 
MsgBox "Массив: " & Str1 & Chr(13) & "Максимальный элемент: " & max & Chr(13) & _
"Минимальный элемент: " & min & Chr(13)
 
End Sub
695 / 236 / 18
Регистрация: 17.01.2011
Сообщений: 583
Записей в блоге: 1
01.02.2011, 18:26 6
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Неправильно немного тут.. У вас два разных массива переменных, и Минимальный элемент вы определяете в одном массиве а Максимальный элемент в другом. Определяете правильно, но в MsgBox выводите неправильно: максимальный элемент там из первого массива а минимальный из второго...И зачем обьявлять третий массив ?
Правильно будет так для двух разных массивов:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Option Explicit
Option Base 1
Sub Mass()
Dim M1() As Integer, M2() As Integer, n As Integer, i As Integer, max As Integer, min As Integer, _
Str1 As String, Str3 As String
n = InputBox("("Введите количество элементов массива", "Определение размера массива")
ReDim M1(n), M2(n), M3(n)
Randomize
For i = 1 To n
M1(i) = Int(10 * Rnd + 1)
M2(i) = Int(10 * Rnd + 1)
Str1 = Str1 & M1(i) & " "
Str3 = Str3 & M2(i) & " "
Next
max = M1(1)
min = M1(1)
For i = 2 To n
If M1(i) < min Then min = M1(i)
If M1(i) > max Then max = M1(i)
Next
MsgBox "Массив №1:   " & Str1 & Chr(13) & "Максимальный элемент: " & max & Chr(13) & _
"Минимальный элемент: " & min & Chr(13)
min = M2(1)
max = M2(1)
For i = 2 To n
If M2(i) > max Then max = M2(i)
If M2(i) < min Then min = M2(i)
Next
MsgBox "Массив №2:  " & Str3 & Chr(13) & "Максимальный элемент: " & max & Chr(13) & _
"Минимальный элемент: " & min & Chr(13)
End Sub
1
Заблокирован
02.02.2011, 07:32 7
А что бы нам не поюзать сортировку? Сама напрашивается! (За час уломал кое-как.)
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub BySorting() 'выводит максимум и минимум из колонки чисел в документе Word
Const n = 5     'количество чисел
Dim min, max, dano
    ActiveDocument.Content.Text = "" 'убрали (старый) текст
    
    For i = 1 To n
    Selection.TypeText Chr(13) & Round(100 * Rnd, 0) '«набиваем» n чисел
    Next
 
    dano = Replace(ActiveDocument.Content.Text, Chr(13), Space(2)) 'что дано
    
    Selection.Sort
 
    min = ActiveDocument.Paragraphs(2) '.First не подходит: 1-й абзац пустой
    max = ActiveDocument.Paragraphs.Last
    
    MsgBox "min = " & min & "max = " & max & vbCr & dano, vbInformation
    'для справки выводим также исходный ряд чисел, через пробелы (вместо абзацев)
    ActiveDocument.Undo 'возвратили исходный (случайный) порядок чисел
End Sub
Изображения
 
0
127 / 95 / 74
Регистрация: 18.01.2011
Сообщений: 227
28.02.2011, 22:27 8
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Sub f()
Dim n As Integer, i As Integer
Dim max As Double, min As Double
n = InputBox("Введите количество элементов массива", "Ввод")
max = 1
min = 1
ReDim mas(1 To n) As Double
For i = 1 To n
mas(i) = InputBox("Введите элемент <" & i & ">", "Ввод")
max = mas(i)
min = mas(i)
Next
For i = 1 To n
If mas(i) > max Then
max = mas(i)
End If
Next i
For i = 1 To n
If mas(i) < min Then
min = mas(i)
End If
Next i
MsgBox "max = " & max & " min = " & min, 64, "Ответ"
End Sub
1
6644 / 1511 / 169
Регистрация: 09.01.2010
Сообщений: 4,298
28.02.2011, 22:52 9
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

еще вариант
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 Sub m()
Dim i%, k%, p$
Dim arr, mx#, mn#, ar#
p = Trim(Replace(InputBox("вводим эл. массива через запятую"), ",", " "))
arr = Split(p, " ")
If UBound(arr) > 1 Then
ar = Val(Trim(Replace(arr(LBound(arr)), ",", ".")))
mx = ar: mn = mx
For i = 1 To UBound(arr)
ar = Val(Trim(Replace(arr(i), ",", ".")))
mx = IIf(mx > ar, mx, ar)
mn = IIf(mn < ar, mn, ar)
Next i
Print p: Print
Print "max="; mx; "    "; "min="; mn
Else
MsgBox "Error"
End If
End Sub
0
28.02.2011, 22:52
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.02.2011, 22:52
Помогаю со студенческими работами здесь

Как удалить максимальный и минимальный элемент массива
В задаче просят найти максимальный и минимальный элемент массива. Найти их не составило труда, но...

Ввести массив a(n). найти максимальный элемент массива. Четные элементы массива разделить на максимальный
Вывести полученный массив.

Найти минимальный и максимальный элемент матрицы
Найти минимальный и максимальный элемент матрицы С. Заменить ими элементы строки и столбца, в...

Определить минимальный элемент 1-го столбца массива, максимальный элемент 9-го столбца и поменять их местами
Сформировать массив 13 × 13 из чисел в диапазоне от –100 до 150. Определить минимальный элемент...

Oпределить минимальный элемент массива и его порядковый номер, найденный минимальный элемент поменять местами с последним элементом массива.
Обработать на компьютере одномерный массив E(N): определить минимальный элемент массива и его...

Найти минимальный каждой строки и максимальный элемент каждого столбца матрицы
Dim L(10, 5) For i = 1 To 10 For j = 1 To 5 L(i, j) = Int(Rnd * (72 - 27) + 27) Print L(i, j);...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Администрирован­­­ие Git, продвинутые техники работы с Git
InfoMaster 11.01.2025
Основы управления репозиторием Эффективное управление Git-репозиторием требует глубокого понимания механизмов контроля доступа и инструментов администрирования. Рассмотрим ключевые аспекты. . .
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru