Форум программистов, компьютерный форум, киберфорум
Fortran
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 10.12.2019
Сообщений: 27

даны целые числа a1,a2,. Известно,что a1>0

10.12.2019, 12:20. Показов 1569. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Даны целые числа a1, a2, … Известно, что а1 > 0 и что среди
а2, a3, … есть хотя бы одно отрицательное число. Пусть а1, …, аn –
члены данной последовательности, предшествующие первому
отрицательному члену (n заранее неизвестно). Получить: max(a1,...,an)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.12.2019, 12:20
Ответы с готовыми решениями:

Даны целые числа а1,а2,.Известно что а1>0
Даны целые числа а1,а2,...Известно что а1>0 и что среди а2,а3,... есть хотя бы одно отрицательное число. Пусть а1,...,аn-члены данной...

Даны целые числа а1,а2,.Известно что а1>0
Даны целые числа а1,а2,...Известно что а1>0 и что среди а2,а3,... есть хотя бы одно отрицательное число. Пусть а1,...,аn-члены данной...

даны целые числа a1,a2,. Известно,что a1>0 Pascal
даны действительные числа а1,а2,... Известно,что а1>0 и что среди а2,а3,... есть хотя бы одно отрицательное число.пусть а1,..,аn-члены...

6
 Аватар для chessman2
162 / 142 / 10
Регистрация: 21.10.2012
Сообщений: 481
10.12.2019, 12:59
Если эта последовательность размещена в массиве
можно использовать встроенные функции maxloc и maxval
Fortran
1
2
3
4
5
6
7
8
9
10
11
program main
  implicit   none
integer :: i(1), n(1)
integer :: arr(6)
arr = (/1, 4, -1, 2, 77, 5/)
 
n = maxval(arr, mask = arr > 0)
i = maxloc(arr, mask = arr > 0)
 
write (*,*) n, i
end program main
0
WH
1589 / 817 / 192
Регистрация: 10.09.2013
Сообщений: 3,283
Записей в блоге: 3
10.12.2019, 14:05
chessman2, если я правильно понял условие задачи, то нужно найти число 4 (исходя из значений Вами приведенного массива).
0
 Аватар для chessman2
162 / 142 / 10
Регистрация: 21.10.2012
Сообщений: 481
10.12.2019, 14:13
Возможно я не понял задачу,
или вопрос не ясно изложен автором.
Тогда нужно найти minloc
и применить maxval к сечению массива.
Жду комментария автора.
1
WH
1589 / 817 / 192
Регистрация: 10.09.2013
Сообщений: 3,283
Записей в блоге: 3
10.12.2019, 17:15
Ну, у него написано:

Цитата Сообщение от KeepSter Посмотреть сообщение
Пусть а1, …, аn –
члены данной последовательности, предшествующие первому отрицательному члену
т.е. исходя из Вашего массива n это как раз 4. И из первых двух элементов массива нужно найти максимальное число. Оно и получится 4.

Добавлено через 2 часа 57 минут
Fortran
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
program main
implicit   none
integer :: arr(10), maximum, i
logical :: l
 
 arr = (/1, 4, 5, 2, 7, 5, 2, 6, -70, 10/)
 
 do i=1,10
    l = arr(i) < 0
    if (l) then
        maximum = maxval (arr(1:i-1))
        exit
    end if
 end do
 
 if (l) then
    print*, maximum
 else
    print*, "Нет отрицательных элементов массива"
 end if
 
end program main
1
0 / 0 / 0
Регистрация: 10.12.2019
Сообщений: 27
17.12.2019, 11:42  [ТС]
Если обьяснять, есть числа, случайное количество, допустим 1 27 25 -6 3 24 12, мне нужно, что-бы нашло максимальное значение, но только, которое будет после "-", к примеру, данны числа 3 8 -1 7 6 5, максимальное число должно быть 7, у меня есть код, который находит максимальное число, но его нужно переделать, что-бы он находил число, которое находится после "минусового числа."
Сам код:
Fortran
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    Program lr6
    dimension x(100)
    Print*, 'Vvedit` k=st n ta elementi a'
    Read(5,*) n,(x(i),i=1,n)
    xmax=x(1)
    do i=2,n
    if (x(i)<0)then
    xmax=x(i)
    k=1
    endif
    enddo
    Print*, 'Rezyltat'
    Print*, 'xmax', xmax
    end
0
 Аватар для chessman2
162 / 142 / 10
Регистрация: 21.10.2012
Сообщений: 481
17.12.2019, 13:36
Цитата Сообщение от KeepSter Посмотреть сообщение
число должно быть 7
Fortran
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
program test
  implicit   none
    integer, parameter :: N  = 6
    integer :: i, minInd, j(1)
    integer, dimension(N) :: arr
    
    arr = (/3, 8, -1, 7, 6, 5/)
    
    do i =1,N
        if (arr(i) < 0) then
            minInd = i
            exit
        end if
    end do
    j = maxloc (arr(minInd+1:N), mask = arr > 0 )
    write (*,*) "IndMaxVal=", j+minInd
    write (*,*) "maxValue=", arr(j+minInd)
end program test
Как то так

Добавлено через 34 минуты
Более короткий вариант на встроенных функциях
без использования DO...
Fortran
1
2
3
4
5
6
7
8
9
10
11
12
13
program test
  implicit   none
    integer, parameter :: N  = 6
    integer :: minInd(1), j(1)
    integer, dimension(N) :: arr
    
    arr = (/3, 8, -1, 7, 6, 5/)
    
    minInd = minloc (arr, mask = arr < 0)
    j = maxloc (arr(minInd(1)+1:N), mask = arr > 0 )
    write (*,*) "IndMaxVal=", j+minInd
    write (*,*) "maxValue=", arr(j+minInd)
end program test
Этот оператор ищет максимум на срезе массива после отрицательного элемента
j = maxloc (arr(minInd(1)+1:N), mask = arr > 0 )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.12.2019, 13:36
Помогаю со студенческими работами здесь

Даны целые числа a1, a2, … Известно, что а1 > 0 и что среди
Даны целые числа a1, a2, … Известно, что а1 &gt; 0 и что среди а2, a3, … есть хотя бы одно отрицательное число. Пусть а1, …, аn – члены...

Даны целые числа а1,а2,.Известно что а1>0 и что среди а2,а3,. есть хотя бы одно отрицательное число
Даны целые числа а1,а2,...Известно что а1&gt;0 и что среди а2,а3,... есть хотя бы одно отрицательное число. Пусть а1,...,аn-члены данной...

Даны целые числа а1,а2,.Известно что а1>0 и что среди а2,а3,. есть хотя бы одно отрицательное число
Даны целые числа а1,а2,...Известно что а1&gt;0 и что среди а2,а3,... есть хотя бы одно отрицательное число. Пусть а1,...,аn-члены данной...

Даны целые числа а1, а2,. Известно,что а1>0 и что среди а1, а2,.есть хотя бы одно отрицательное число
Помогите,при запуске выдает ошибку Даны целые числа а1, а2,... Известно, что а1&gt;0 и что среди а1, а2,... есть хотя бы одно...

Даны числа a,b,c. Найти число d, если известно что оно равно большему из чисел a,b,c.
Доброго времени суток! нужна помощь в решении задачи элементарной конечно, но все же нужна т.к. бэйсик не довелось мне изучать, в общем...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Сумматор с применением элементов трёх состояний.
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. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru