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

Найти минимальный элемент массива А(20) и записать вместо него число 50

17.04.2019, 14:10. Показов 2348. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть задача "Найти минимальный элемент массива А(20) и записать вместо него число 50."
Есть мой вариант решения:
QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
DIM A(20)
min = A(0)
N = 0
FOR i = 0 TO 20
    IF A(i) <= min THEN N = i
NEXT
A(N) = 50
PRINT "A=", A(N)
PRINT "End"
END
Хотел бы узнать правильно ли я все написал)
И как мне показать число которое он заменил?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.04.2019, 14:10
Ответы с готовыми решениями:

Найти минимальный элемент массива и вставить вместо него 0
одномерный массив. найти минимальный элемент и вставить вместо него 0

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

Найти минимальное число и записать вместо него число N2+N
Ввести в память машины одномерный целочисленный массив, размерностью не более 50 элементов. 1. Найти минимальное число и записать...

6
1104 / 480 / 33
Регистрация: 05.07.2018
Сообщений: 1,870
Записей в блоге: 7
17.04.2019, 14:49
Уважаемый KpyAcaH,
вот программа решающая вашу задачу. У вас было сделано пара крупных ошибок.
1. вы задали массив, но не заполнили его
2. ваша программа не искала минимум
примечание:
вообще говоря в массиве может быть несколько минимумов (программа находит первый по счету минимум и заменяет его на число 50)

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
CLS
RANDOMIZE TIMER
DIM A(20)
 
FOR i = 0 TO 20
   A(i) = INT(40 * RND) - 20
   PRINT A(i);
NEXT
PRINT
 
min = A(0)
N = 0
 
FOR i = 0 TO 20
   IF min > A(i) THEN
      min = A(i)
      N = i
   END IF
NEXT
A(N) = 50
 
FOR i = 0 TO 20
   PRINT A(i);
NEXT
PRINT
PRINT "END"
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
17.04.2019, 14:53
Не обязательно начинать подсчёт элементов с 0, лучше с 1, иначе у Вас будет 21 элемент вместо 20. Просто вместо min=A(0) напишите min=A(1) и в цикле начинайте с 1
For i=1 to 20
Чтобы показать заменённое число, сначала напечатайте его
Print “zamenili chislo “;A(n)
а потом заменяйте
А(n)=50
И в цикле распечатывайте новый массив
For i=1 to 20
Print a(i);
next
Команда print”End” лишняя
1
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
17.04.2019, 18:46
Цитата Сообщение от кот Бегемот Посмотреть сообщение
Не обязательно начинать подсчёт элементов с 0, лучше с 1, иначе у Вас будет 21 элемент вместо 20.
Вот эту фразу не понял. В задании написано
Цитата Сообщение от KpyAcaH Посмотреть сообщение
Найти минимальный элемент массива А(20)
Т.о. задан массив из 21 элемента. Почему можно проверять только 20 элементов? А если минимальный элемент именно в прячется в нулевом индексе массива?
0
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
17.04.2019, 19:29
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Т.о. задан массив из 21 элемента
Немного не точно. Выделено место для 21 элемента, включая нулевой. Но нигде не указано, что элементов будет ровно 21, их может быть и 15. Но круглое число 20 подсказывает, что речь идёт именно о 20 элементах.
Формально Вы правы, конечно, но как-то ни разу за много лет я не видел задачу "найти минимальный элемент массива из 21 элемента", а 20 - сплошь и рядом. Число круглое.
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
18.04.2019, 05:56
Цитата Сообщение от кот Бегемот Посмотреть сообщение
Но круглое число 20 подсказывает, что речь идёт именно о 20 элементах.
Как то неубедительно, тут же в задании явно указана размерность массива A(20).
Если бы задание звучало таким образом:
"Найти минимальный элемент массива из 20 элементов"
или так
"Найти минимальный элемент массива A(1 TO 20)"
то Вы были бы совершенно правы.
Возможно Вы правы и сейчас, исходя из Вашего опыта и интуиции, но не технически.
1
Платежеспособный зверь
 Аватар для кот Бегемот
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
18.04.2019, 09:28
Это просто глупо сформулированное задание.
Представьте себе как глупо оно будет звучать в другой формулировке и Вам всё станет ясно:
«Найти минимальный элемент массива из 21 элемента»

Что это за странный массив? Почему 21, а не 23? Объяснения нет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.04.2019, 09:28
Помогаю со студенческими работами здесь

Найти минимальное число и вместо него записать значение N2
Найти минимальное число и вместо него записать значение N2.

Найти минимальный элемент массива Х[K], сменить у него знак и переместить в конец массива
Найти минимальный элемент массива Х, сменить у него знак и переместить в конец массива. Помогите пожалуйста с масивами этими) я в...

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

Записать элементы массива X, удовлетворяющие условию в массив Y; найти минимальный элемент массива X
4. Записать элементы массива X, удовлетворяющие условию Х, подряд в массив Y =. Определить минимальный элемент массива X.

Найти минимальный элемент массива, умножить на него все отрицательные элементы, стоящие слева
Вообщем условие такое: Среди отрицательных элементов массива найти минимальный, умножить на него все отрицательные элементы стоящие левее...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru