|
1 / 1 / 0
Регистрация: 16.08.2011
Сообщений: 18
|
|
Определить когда массив меняет знак.16.08.2011, 19:17. Показов 3030. Ответов 17
Метки нет (Все метки)
Дан массив чисел, как положительных так и отрицательных.
Нужно определить номер элемента, который первым меняет знак с отрицательного на положительный и номер элемента, который последним меняет знак с положительного на отрицательный . Например: -1, 1, -4, 2, 5, -6, -7 Тут знак первым меняет второй элемент, а последним шестой. При этом если массив не меняет знак вообще, в ответы записывались бы "0". Пожалуйста, напишите циклы, которые позволят это сделать, очень нужно. На самом деле задача немного другая, нужно найти когда массив впервые превосходит определенный порог и когда последний раз падает ниже этого порога, но насколько я понимаю, если в цикле отнять от массива этот порог, то задача сводится к задаче со сменой знака. Заранее благодарю всех откликнувшихся.
0
|
|
| 16.08.2011, 19:17 | |
|
Ответы с готовыми решениями:
17
Определить сколько раз массив меняет знак Определить сколько раз массив меняет знак на противоположный (CИ)26. Определить сколько раз последовательность из N произвольных чисел меняет знак |
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
| 16.08.2011, 19:29 | ||||||
|
Ну просто нереально сложная задача
1
|
||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
| 16.08.2011, 19:40 | ||||||
|
Еще раз перечитал задание, нужно так:
1
|
||||||
|
|
||||||
| 16.08.2011, 20:05 | ||||||
|
Может тут лучше два раза пройтись по массиву, с начала и с конца?
Осторожно, плохой код!
1
|
||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 16.08.2011, 20:08 | |
|
А вообще, ИМХО, тут ничего от исходного массива отнимать не нужно, а нужно рассматривать исходный массив, сравнивая его элементы с пороговым значением. Условия сильно от этого измениться не должны.
1
|
|
|
1 / 1 / 0
Регистрация: 16.08.2011
Сообщений: 18
|
||||||
| 16.08.2011, 22:11 [ТС] | ||||||
|
Ребят, прошу прощения, я совсем начинающий и половину не понял((
У меня есть массив Ar[n] (n известно заранее) и мне нужно получить 2 значения , скажем n1 и n2, чтобы использовать их в дальнейшем в той-же программе с другой целью. И есть порог, скажем 10. Нужно определить 1) когда массив 1 раз превысит порог (n1) 2)когда массив последний раз станет ниже порога (n2). Если массив ни разу не становится выше 10, n1 и n2 сделать нулями Первая задача:
Еще раз прошу прощения, совсем не имел дела с программированием, пришлось столкнутся, вот пытаюсь разобраться.
0
|
||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
| 17.08.2011, 05:04 | ||||||
|
Отнимать тут пороговое значение от элементов массива - это лишняя работа.
1
|
||||||
|
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
|
||
| 17.08.2011, 08:53 | ||
|
1
|
||
|
1 / 1 / 0
Регистрация: 16.08.2011
Сообщений: 18
|
||||||
| 17.08.2011, 14:42 [ТС] | ||||||
|
Nameless One спасибо, но у меня все эти операции должны быть внутри других циклов и почему-то они не работают. Приведу свой код. Никак не пойму что не так. Заранее спасибо
Чуть не забыл, в последнем примере условия немного поменялись, но это уже не столь важно.
0
|
||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 17.08.2011, 16:27 | |
|
pistol, приведи полностью постановку задачи, а то я из твоего, хмм, кода ничего не понял
1
|
|
|
1 / 1 / 0
Регистрация: 16.08.2011
Сообщений: 18
|
|||||||||||
| 17.08.2011, 16:58 [ТС] | |||||||||||
|
Ну есть довольно длинная программа, в которой есть массивы Ar и Ar1, известны их размеры ArSize. Нужно определить номер элемента t1 когда массив Ar впервые превосходит 2300 и вычислить значение Ar2[t1]. Я делаю так, но цикл не выплняется (программа выдает ошибку).
0
|
|||||||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 17.08.2011, 17:44 | ||
|
Ну, насколько я понял, первый цикл у тебя ищет первое привышение порогового значения, а второй - последнее принижение (поправь, если я не прав). Так вот, если у тебя найдено первое привышение, то у тебя происходит возврат из функции и второе значение (т.е. последнее принижение) уже не ищется. Аналогично, даже если у тебя начался поиск последнего принижения, то если оно у тебя найдено (а по твоему коду я бы не сказал, что во втором цикле ищется именно оно), то опять происходит возврат из функции и значения Res1 и Res2 не устанавливаются.
1
|
||
|
1 / 1 / 0
Регистрация: 16.08.2011
Сообщений: 18
|
|
| 17.08.2011, 17:58 [ТС] | |
|
А как сделать, чтобы он останавливал цикл когда условие выполняется, значения t1 и t2 устанавливались, но программа не возвращалась из функции?
Никто не мешает тебе взять мой код и поместить его внутри твоих циклов Там у тебя массив задается в коде, не мог бы ты его написать для случая когда массив задан заранее, просто не могу разобраться? П.С. Да, задача немного изменилась, но как я уже написал второй цикл можно сделать по аналогии с первым, главное разобраться. Заранее спасибо
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|||
| 17.08.2011, 18:05 | |||
|
1
|
|||
|
1 / 1 / 0
Регистрация: 16.08.2011
Сообщений: 18
|
|
| 17.08.2011, 18:50 [ТС] | |
|
Спасибо большое, break помогло, всё оказалось банально просто. сори за глупость, совсем не имел опыта. Nameless One смотри личку.
0
|
|
|
1 / 1 / 0
Регистрация: 16.08.2011
Сообщений: 18
|
|
| 14.09.2011, 19:27 [ТС] | |
|
Ребят, помогите пожалуйста, задача немного усложнилась. Теперь в массиве надо найти самый большой участок, лежащий ниже порога (границы данного участка). Чтобы было немного понятнее, приложил рисунок. Чёт не знаю даже как приступить к задаче даже в теории((
Заранее спасибо
0
|
|
|
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
|
|
| 14.09.2011, 20:08 | |
|
pistol, уточни пожалуйста. Самых длинный по размеру отрезок или самый "глубокий" отрезок (то есть отрезок, где лежит минимум массива)?
Если первое, то надо найти первый отрезок. А потом по принципу поиска максимума искать отрезки более длинные.
0
|
|
|
1 / 1 / 0
Регистрация: 16.08.2011
Сообщений: 18
|
|
| 14.09.2011, 21:59 [ТС] | |
|
Самый длинный по размеру.
0
|
|
| 14.09.2011, 21:59 | |
|
Помогаю со студенческими работами здесь
18
Определить, сколько раз последовательность меняет знак
Определить, сколько раз последовательность меняет знак. Вводится последовательность из N целых чисел, отличных от нуля. Определить, сколько раз последовательность меняет знак Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|