Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 27.10.2015
Сообщений: 8

Найти минимальный по абсолютному значению элемент массива

29.10.2015, 10:12. Показов 1041. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите решить задачу, пожалуйста
Разработать блок схему и написать программу на языке программирования QBASIC
Дан двумерный массив А из 4 строк и 7 столбцов, все элементы которого отличны от 0. Найти минимальный по абсолютному значению элемент массива
Заранее спасибо
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.10.2015, 10:12
Ответы с готовыми решениями:

Найти минимальный по абсолютному значению и отличный от нуля элемент
Задан одномерный массив А. Найти минимальный по абсолютному значению и отличный от нуля элемент; образовать новый одномерный массив В ,...

Найти наибольший по абсолютному значению элемент массива V
Найти наибольший по абсолютному значению элемент массива V, сумму элементов, что ему предшествуют, и произведение положительных элементов....

Найти наибольший по абсолютному значению элемент массива v
Найти наибольший по обсолютныму значению элемент массива v, суму елементов, что ему передают, и произведение положительных элементов....

12
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
29.10.2015, 13:00
Могу предложить только программу.
Она выдает числовое значение самого
первого минимального по модулю элемента
(вообще таких элементов может быть несколько)
Например. При проверке программы мне попалось
два таких элемента -1 и 1. Программа выдала -1.
(оно было первым). В условии задачи не было сказано,
что требуется искать все такие элементы или произвести
их подсчет. Сосчитать нетрудно.
(Надо добавить еще двойной цикл для подсчета)

QBasic/QuickBASIC
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
CLS
RANDOMIZE TIMER
DIM A(1 TO 4, 1 TO 7) AS INTEGER
 
FOR i = 1 TO 4
FOR j = 1 TO 7
   A(i, j) = 80 * RND - 40
   IF A(i, j) = 0 THEN A(i, j) = 40
   PRINT USING "####"; A(i, j);
NEXT j: PRINT
NEXT i
PRINT
 
min = ABS(A(1, 1))
e = SGN(A(1, 1))
 
FOR i = 1 TO 4
FOR j = 1 TO 7
   IF min > ABS(A(i, j)) THEN
      min = ABS(A(i, j))
      e = SGN(A(i, j))
   END IF
NEXT j
NEXT i
 
PRINT "|MIN| = "; e * min
END
Удачи вам!
1
133 / 148 / 64
Регистрация: 27.06.2013
Сообщений: 536
29.10.2015, 13:51
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Cls
Randomize Timer
Dim A(1 To 4, 1 To 7) As Integer
 
For i = 1 To 4
For j = 1 To 7
   A(i, j) = 80 * Rnd - 40
   If A(i, j) = 0 Then A(i, j) = 40
   If i = 1 And j = 1 Then Min = A(i, j)
   If Min > Abs(A(i, j)) Then Min = Abs(A(i, j))
   Print USING; "####"; A(i, j);
Next j: Print
Next i
Print
Print "Минимальный по абсолютному значению элемент = "; Min
End
1
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
29.10.2015, 14:53
Kapytan,
В целом неплохо. Но (строка 9) - это лучше
вынести из цикла. Она выполняется один раз
А в цикле будет проверка условия каждый раз.
1
133 / 148 / 64
Регистрация: 27.06.2013
Сообщений: 536
29.10.2015, 15:08
geh, согласен, спасибо
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
30.10.2015, 21:57
Цитата Сообщение от geh Посмотреть сообщение
В целом неплохо. Но (строка 9) - это лучше
вынести из цикла. Она выполняется один раз
А в цикле будет проверка условия каждый раз.
Цитата Сообщение от Kapytan Посмотреть сообщение
geh, согласен, спасибо
Непонятно, за что спасибо. Эту строчку из цикла вынести нельзя, потому что значение А(1,1) формируется в цикле.
Надо было вместо этой строки просто написать
QBasic/QuickBASIC
1
Min=A(1,1)
, а ещё лучше до начала цикла написать
QBasic/QuickBASIC
1
min=32767
1
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
31.10.2015, 12:27
кот Бегемот,
Непонятно, за что спасибо. Эту строчку из цикла вынести нельзя, потому что значение А(1,1) формируется в цикле.
.........
Да. Значение А(1, 1) формируется в цикле.
Но его можно сформировать и вне цикла.
Автор это понял ...
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
31.10.2015, 13:16
Цитата Сообщение от geh Посмотреть сообщение
его можно сформировать и вне цикла.
Может, покажете как?
1
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
31.10.2015, 14:45
кот Бегемот,
Я внимательно изучил код. Конечно можно вынести.
Но лучше не будет. Появятся дополнительные условия,
чтобы не допустить повторной инициализации. В общем
Вы правы. Это мой прокол. И очень крупный.
0
133 / 148 / 64
Регистрация: 27.06.2013
Сообщений: 536
01.11.2015, 09:00
кот Бегемот, geh , лучший вариант в строке 4 : Min(1,1)=32768, а строку 9 убрать.
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
01.11.2015, 09:10
Kapytan,
Да. Для Вашей программы это самый лучший выход.
PS.
В моей программе иначе. Там действует принцип: разделяй и властвуй.
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
01.11.2015, 13:41
Цитата Сообщение от Kapytan Посмотреть сообщение
Min(1,1)=32768
какой min(1,1)?
Я всё уже написал выше, читайте внимательнее:
Цитата Сообщение от кот Бегемот Посмотреть сообщение
а ещё лучше до начала цикла написать

QBasic/QuickBASIC
1
min=32767
1
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
01.11.2015, 13:59
кот Бегемот,
Спасибо!
PS
Я тут после предупреждения
совсем перестал соображать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.11.2015, 13:59
Помогаю со студенческими работами здесь

Найти максимальный по абсолютному значению элемент массива и вывести его на экран.
Дан A (N,M). Найти максимальный по абсолютному значению элемент массива и вывести его на экран.

Матрица. Найти равные элементы и вывести индексы этих элементов. Найти максимальный по абсолютному значению элемент
Дана матрица размера M*N. Найдите в ней равные элементы и выведите индексы этих элементов. Найти максимальный по абсолютному значению...

Найти отличный от нуля минимальный по абсолютному значением элемент
При написание программы нужно использовать функции и массив (соответствено с заданиями)! Дано одномерный массив A. Найти отличный от...

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

Найти сумму вещественных элементов массива, которые больше по абсолютному значению предыдущих им элементов
Всем привет, помогите решить данную задачу. Или подскажите, как сравнивать в массиве элементы между собой. Найти сумму вещественных...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru