Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
0 / 0 / 0
Регистрация: 12.12.2018
Сообщений: 59

Подскажите как сделать максимальное отрицательное число

06.05.2019, 09:46. Показов 3688. Ответов 39
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
подскажите мне , как мне найти в массиве максимальное отрицательное число , как мне его найти и вывести?

C++
1
#include "pch.h" #include <iostream> #include <conio.h> #include <math.h> #include<ctime> #include <cmath> #include <iomanip> using namespace std; * int main() { * * setlocale(LC_ALL, "Russian"); * * int *A,v,T,n, i,max,imax; * * cout << "Задайте число * "; * * n=10; * * * * A = new int[n]; * * std::cin >> T; * * for (i = 0; i < n; i++) * * { * * * * * * * * if (i % 2 == 0) * * * * { * * * * * * *(A + i) = (rand() % 100); * * * * * * cout << *(A + i) << " "; * * * * } * * * * else * * * * { * * * * * * *(A + i) = (rand() % 100) / 2 - (rand() % 100); * * * * * * cout << *(A + i) << " "; * * * * } * * * } * * cout << " \n"; * * if (T > 0) * * { * * * * (A+i) < 0; * * } * * cout << (A + i); * * * system("pause"); }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.05.2019, 09:46
Ответы с готовыми решениями:

Найти максимальное отрицательное число
var a,b,c,mx:integer; begin writeln('Введите 3 целых числа'); readln(a,b,c); mx:=0; if a&lt;0 then begin mx:=a; if b&lt;0...

Односвязный список: найти максимальное отрицательное число
Дан не пустой односвязный список, в котором каждый элемент имеет тип: struct elem { int num; elem* next; } Написать функцию...

Найти минимальное положительное число и максимальное отрицательное число среди заданных
Дано N действительных случайных чисел в диапазоне от -100 до 100. Найти минимальное положительное число и максимальное отрицательное число.

39
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
06.05.2019, 22:46
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
да , понял
что-то я сомневаюсь. рабочие варианты - это когда сначала идут большие по модулю отрицательные, а затем небольшое. например -30 -77 -20 -54 -9 10 -70. Т=-15. Напишите результат работы кода при этих значениях и объясните почему он именно такой.
0
0 / 0 / 0
Регистрация: 12.12.2018
Сообщений: 59
07.05.2019, 13:50  [ТС]
-9 первое число больше T
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.05.2019, 14:02
Mr_kenioo, верно. Вы строки вставили в код ? можете выложить результат работы кода ?
0
0 / 0 / 0
Регистрация: 12.12.2018
Сообщений: 59
07.05.2019, 14:23  [ТС]
ну да вставил, но как я с консоли скину? скрином же нельзя здесь

Добавлено через 59 секунд
C++
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
32
33
34
35
36
37
38
39
40
41
42
43
#include"pch.h" 
#include <stdio.h>
#include <malloc.h>
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
        int n, index = -1, k = 0, max = 0, imax = 0,;
        double T;
        cout << "n="; cin >> n;
 
        int*a = new int[n];
 
        cout << "Enter " << n << " elements:\n";
        for (int i = 0; i < n; i++)
            cin >> a[i];
 
        cout << "T="; cin >> T;
 
        for (int i = 0; i < n; i++)
            if (a[i] > T) { index = i; break; }
 
        if (index == -1) cout << "Elements more than " << T << " are absent\n";
        else
        {
            if (index)
                for (int i = 0; i < index; i++)
                    if (a[i] < 0) { k = 1; break; }
 
            if (index == 0 || k == 0) cout << "Negative elements before the first number more than " << T << " are absent\n";
            else
            {
                for (int i = 0; i < index; i++)
                    if (a[i] < 0 && (max == 0 || a[i] > max)) { max = a[i]; imax = i; }
                cout << "number=" << imax + 1 << "\n";
            }
        }
        system("pause");
        return 0;
    }
0
0 / 0 / 0
Регистрация: 12.12.2018
Сообщений: 59
07.05.2019, 14:27  [ТС]
он мне выдает номер самого T
Миниатюры
Подскажите как сделать максимальное отрицательное число  
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.05.2019, 15:17
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
он мне выдает номер самого T
это не номер T. число T к массиву не имеет никакого отношения.
первое число больше T это число -2. перед ним числа -6 -5 -4 -3. максимальное из них -3. его номер 4.

Добавлено через 12 минут
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
как я с консоли скину? скрином же нельзя здесь
можно скрином. можно просто написать:
INPUT:
n=6
-6 - 5 - 4 -3 - 2 -1
T=-3
OUTPUT:
number=4

массив можете вводить не в столбик, а набрать все числа массива через пробел, затем нажать <Enter>

проверьте при таком вводе:
INPUT:
n=7
-6 - 1 5 4 -7 10 -1
T=9
0
0 / 0 / 0
Регистрация: 12.12.2018
Сообщений: 59
07.05.2019, 15:18  [ТС]
а тут почему он говорит что нету?
Миниатюры
Подскажите как сделать максимальное отрицательное число  
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.05.2019, 15:29
Mr_kenioo, спрашиваете в четвёртый раз одно и тоже.
но повторяю - надеюсь что рано или поздно поймёте
Т=-2. ОНО НЕ ОТНОСИТСЯ К МАССИВУ, ЭТО ПРОСТО ОТДЕЛЬНОЕ ЧИСЛО. первый элемент больший -2 это -1. перед -1 элементов нет.

что там с проверкой данных ?
0
07.05.2019, 15:32

Не по теме:

Yetty, похоже ТС просто не понимает как сравниваются отрицательные числа

0
0 / 0 / 0
Регистрация: 12.12.2018
Сообщений: 59
07.05.2019, 16:04  [ТС]
так мне нужен индекс -1 , то-есть 1 наибольшего что встретится
если наибольший встретился -1, то выводит индекс его

Добавлено через 35 секунд
и ненадо обзываться

Добавлено через 13 минут
я вроде бы сообразил что делать
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.05.2019, 16:14
Mr_kenioo,
внимательно читаем условие:
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
найти номер максимального элемента среди отрицательных элементов , расположенных до первого элемента. большего T
каждый элемент массива, начиная с самого первого сравниваем с числом T

какие могут быть варианты:
вариант 1: таких элементов (больших числа T) нет => выводим соответствующее сообщение №1
вариант 2: нашли такой элемент. но он в массиве первый или не первый, но перед ним нет отрицательных => выводим соответствующее сообщение №2
вариант 3: нашли такой элемент и перед ним есть отрицательные => выполняем то что требуется по условию задачи - находим номер максимального из отрицательных элементов, находящихся перед ним (перед элементом, который нашли).
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
07.05.2019, 19:52
C++
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
#include <iostream>
using namespace std;
int main()
{
    int T =-6;
 
    int arr[]={1, 2, -3, -25, -6, -3, -6, 45, -1 };//result is -3
   // int arr[]={1, 2, -6, -25, -3, -3, -6, 45, -1 };//no result is present
    //алгоритм состои из цикла и двух условий и пары переменных сохраняющих результат
    int found_result=0, candidate=INT_MIN;//подойдёт любое положительное число (которого не может дать результативный поиск)
    for(const auto a:arr)//цикл
    {
         if(a==T)break;//1-е условие
        if(a<0 && a>T && candidate<a)//второе условие
        {
            candidate=a;
            found_result=1;
        }
    }
    //вывод
  if(found_result) cout << "\nresult is" << candidate<<endl;
else cout<<"no result is present\n";
cin.get();
return 0;
}
}
Mr_kenioo, в мире чисел "больше/меньше" эквивалентно "правее/левее" на числовой прямой. То есть, условие написано (хоть и мучительно и не с первой попытки) и там написано всё что нужно. Если правильно написано и если, действительно, нужно.

Добавлено через 27 минут
Конечно, алгоритм не ищет то что нужно. Но назвать тему
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
Подскажите как сделать максимальное отрицательное число
и в посте это подтвердить;
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
подскажите мне , как мне найти в массиве максимальное отрицательное число , как мне его найти и вывести?
А потом выкатить вот такое:
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
прописать целочисленный массив a из n элементов. найти номер максимального элемента среди отрицательных элементов , расположенных до первого элемента. большего T
это значит что
Mr_kenioo, русским языка вы ни селны сказавыться.
Тут "обзываться" мало.
Ради интереса, напишите условие слово-в-слово, потому как
"прописать..."
это своими словами. И поверить в это нет ни какого смысла.
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.05.2019, 19:55
IGPIGP, можете рассказать что Вы находите ? в Вашем массиве первый элемент больший T=-6 это a[0]=1
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
07.05.2019, 20:01
Цитата Сообщение от Yetty Посмотреть сообщение
IGPIGP, можете рассказать что Вы находите ? в Вашем массиве первый элемент больший T=-6 это a[0]=1
В условии видно. Я нахожу первое по нумерации отрицательное число которое превышает T. Почему это так я написал. Последняя редакция отличается от начальной как земля и небо. Но это пол беды. Хуже то, что она нечленораздельна. А наблюдая диалог, нет ни какой уверенности в том, что её имеет смысл разгадать. Вот и прошу дать задание из методички. Если и там написано "прописать" то корни растут на кафедре и всё бесполезно.
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.05.2019, 20:06
IGPIGP, понятно. то есть Вы решаете такую задачу - добавил в условие слово 'отрицательного'
найти номер максимального элемента среди отрицательных элементов , расположенных до первого отрицательного элемента. большего T
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
07.05.2019, 20:10
Цитата Сообщение от Yetty Посмотреть сообщение
расположенных до первого отрицательного элемента. большего T
всё кроме этого. Это условие трансформировалось в "превышающее T и расположенное перед ним". Я написал уже.
Yetty, пока нет условия буква-в-букву я не вижу смысла говорить. Можно формулировать очень сложные синтаксические правила поиска, но делать это нужно точно.
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.05.2019, 20:23
IGPIGP, нормальное условие в принципе
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
прописать целочисленный массив a из n элементов. найти номер максимального элемента среди отрицательных элементов , расположенных до первого элемента. большего T
прописать - заполнить. суть ведь понятна.

я про другое спрашивал - почему Вы решили искать до отрицательного элемента, если в условии
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
до первого элемента. большего T
то есть искать до любого элемента большего T (не обязательно отрицательного)

и эта строка
Цитата Сообщение от IGPIGP Посмотреть сообщение
if(a==T)break;
что делает ? почему элемент равен T ?
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
07.05.2019, 21:39
Цитата Сообщение от Yetty Посмотреть сообщение
я про другое спрашивал - почему Вы решили искать до отрицательного элемента, если в условии
Я держал в уме заголовок темы, а условие которое вы считаете нормальным, в принципе, я не могу после таких трансформаций считать нормальным. слово прописать и точка внутри предложения говорят о крайней степени расслбления мускулатуры.
Есть ещё кое-что. Это N-страничный диалог в котором ТС односложен и невразумителен.
Цитата Сообщение от Yetty Посмотреть сообщение
что делает ?
Отсекает область поиска до элемента равного T. Yetty, я написал, что алгоритм не соответствует условию. Думаю, этого довольно. Но я не удовлетворён свободным пересказом условия. Может быть ТС не слишком торопится. Это его дело.
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
07.05.2019, 22:03
Цитата Сообщение от IGPIGP Посмотреть сообщение
Отсекает область поиска до элемента равного T.
а если такого элемента в массиве нет, но есть элемент больше T, будет ли такое условие корректным ?
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
07.05.2019, 22:34
Цитата Сообщение от Yetty Посмотреть сообщение
а если такого элемента в массиве нет, но есть элемент больше T, будет ли такое условие корректным ?
Я не провидец. Условие написано неряшливо, а учитывая предысторию я не вижу смысла применять такие слова как корректность к этому. Я боюсь представить, о том как нужно поступить с числом чтобы его сделать.
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
Подскажите как сделать максимальное отрицательное число
Потом
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
как мне найти в массиве максимальное отрицательное число , как мне его найти и вывести?
Не определить, но найти (позицию?). И всё таки
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
как мне его найти и вывести
Значит значение? Не-а :
Цитата Сообщение от Mr_kenioo Посмотреть сообщение
Нужен номер и само число максимального отрицательного
Добавлено через 41 секунду
Тоесть и индекс и число ,
То есть положение... И-и-и-и-число!! Человек не понимает, что положение даёт доступ к значению, тоже!
Я не верю условию, написанному своими словами ТС и пока оно не предоставлено, обсуждать больше не буду. А то, что есть не представляет сложности, тоже, но я бы посмотрел на оригинал условия. Хотя бы, чтобы сравнить с тем, что есть.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.05.2019, 22:34

Найти максимальное отрицательное число
Значит у меня сейчас модуль не пойму как решить данную задачу: Даны три числа a, b, c. Найти максимальное отрицательное число. Через...

Как отрицательное число сделать положительным
КАК ОТРИЦАТЕЛЬНОЕ ЧИСЛО СДЕЛАТЬ ПОЛОЖИТЕЛЬНЫМ Желательно показать на примере))

Как сделать отрицательное число в массиве
Есть array, нужно сделать чтоб в последней виводе в консоле числа дублирование виводились в отрицательном знаке Смотрите на sorting *= -1...

Найти максимальное отрицательное число в массиве
в массиве А(20).Найти максимальное отрицательное число.

Как из числа в двоичной СС сделать отрицательное число?
Есть число Прямом коде: ПК = 1000 0000 1 Перевожу его в Обратный: ОК = 1111 1111 0 И теперь нужно Обратный код записать, но с...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru