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

Найти наибольшее значение отрицательных элементов

03.08.2021, 14:17. Показов 720. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Найти наибольшее значение отрицательных элементов двумерного массива A[6,6], расположенных ниже главной диагонали
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.08.2021, 14:17
Ответы с готовыми решениями:

Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов
Нужно найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов. Но без использования операции...

Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов
Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов Добавлено через 12 минут Дан массив...

Описать функцию, которая найдет количество отрицательных элементов массива и наибольшее из отрицательных
Проинициализировать массив. Описать функцию, которая найдет количество отрицательных элементов массива. Описать функцию, которая найдет...

9
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6142 / 2835 / 1040
Регистрация: 01.06.2021
Сообщений: 10,338
03.08.2021, 15:16
maks-aues, т.е.всего проверить 15 элементов?
0
0 / 0 / 0
Регистрация: 07.04.2021
Сообщений: 15
03.08.2021, 15:23  [ТС]
да.
0
Модератор
Эксперт CЭксперт С++
 Аватар для Volga_
5208 / 2925 / 1509
Регистрация: 14.12.2018
Сообщений: 5,266
Записей в блоге: 1
03.08.2021, 16:30
maks-aues, массив с случайной генерацией:
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
#include<iostream>
#include<iomanip>
#include<cstdlib>
#include<ctime>
using namespace std;
 
int main()
{
    srand(time(0));
    int A[6][6], flg = 0, maxNeg;
    cout << "2D-array:" << endl;
    for (int i = 0; i < 6; i++)
    {
        for (int j = 0; j < 6; j++)
        {
            A[i][j] = rand() % 201 - 100;
            cout << setw(5) << A[i][j];
            if ((i > j && A[i][j] < 0) && (!flg || (flg && maxNeg < A[i][j])))
            {
                flg = 1;
                maxNeg = A[i][j];
            }
        }
        cout << endl;
    }
    if (flg)
        cout << "Max of negative elements under.....: " << maxNeg;
    else
        cout << "Nooooooo result !";
 
    return 0;
}
1
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6142 / 2835 / 1040
Регистрация: 01.06.2021
Сообщений: 10,338
03.08.2021, 16:58
Volga_, а не лучше вместо rand() % 201 - 100 написать rand() / (RAND_MAX / 201) - 100 ?
В справочнике нашел, что ваш метод "is biased".
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38163 / 21098 / 4306
Регистрация: 12.02.2012
Сообщений: 34,686
Записей в блоге: 14
03.08.2021, 17:12
Цитата Сообщение от Royal_X Посмотреть сообщение
а не лучше
- не лучше. Ибо здесь диапазон значений роли не играет. Никакой.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6142 / 2835 / 1040
Регистрация: 01.06.2021
Сообщений: 10,338
03.08.2021, 17:17
Цитата Сообщение от Catstail Посмотреть сообщение
Ибо здесь диапазон значений роли не играет. Никакой.
дело не в этом детском коде. Просто когда помогаешь новичку (а ТС точно новичок, раз сам не может написать), то нужно писать очень осторожно, ибо потом новичок на всю жизнь запомнит и будет применять этот метод, потому что он увидел его в коде опытного программиста.

Добавлено через 2 минуты
А лучше вообще писать код с комментариями.
1
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
03.08.2021, 17:23
Цитата Сообщение от Royal_X Посмотреть сообщение
ибо потом новичок на всю жизнь запомнит
Он че, развиваться вообще не планирует?
2
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38163 / 21098 / 4306
Регистрация: 12.02.2012
Сообщений: 34,686
Записей в блоге: 14
03.08.2021, 17:32
Цитата Сообщение от Royal_X Посмотреть сообщение
ибо потом новичок на всю жизнь запомнит и будет применять этот метод, потому что он увидел его в коде опытного программиста.
- я против такого ригористического подхода. Пусть человек видит разные решения и думает сам. А если начинающий с самого начала находится в плену чьих-то предпочтений - это, по-моему, плохо.
2
Гвоздь Задиров
 Аватар для Folian
1718 / 1117 / 337
Регистрация: 25.01.2019
Сообщений: 2,940
03.08.2021, 22:15
Volga_, ИМХО, не стоит мешать ввод и расчёты.
Хорошо когда расчёт можно легко перенести в функцию, потому что неизвестно откуда данные берутся. А может потом вообще придётся считать несколько раз - придётся всё переделывать.


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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/*
* код очень не очень, для примера только 
*/
 
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
 
template <typename T>
using matrix = std::vector<std::vector<T>>;
 
template <typename T>
T foo(const matrix<T>& mx)
{
    T result = 1;
    for(size_t y = 1, e = mx.size(); y < e; ++y)
        for(size_t x = 0; x < y && x < mx[y].size(); ++x)
            if(mx[y][x] < 0 && ( mx[y][x] > result || result >= 0 ))
                result = mx[y][x];
 
    return result;
}
 
int main()
{
    auto rnd = [](){ return rand()%101 - 100; };
    matrix<int> arr(6, std::vector<int>(6));
    for(auto & i : arr)
        std::generate(i.begin(), i.end(), rnd);
 
    matrix<double> brr { 
        {1., -3, -0.241 },
        {5.14, -2., -42.1 },
        {-0.1, 0.7, -0.001 },
        {-4., -3., -0.912 }
    };
 
    double bres = foo(brr);
    int ares = foo(arr);
 
    //два разных расчёта, а код один:
    std::cout << (bres < 0 ? std::to_string(bres) : "Nores") << "\n";
    std::cout << (ares < 0 ? std::to_string(ares) : "Nores") << "\n";
 
    //===========================================================
    //===========================================================
    auto & mx = brr;
    //-----------------------------------------------------------
    //вот код, отделённый от заполнения
    //он 1 в 1 тот что в функции и тоже решает задачу
    double result = 1;
    for(size_t y = 1, e = mx.size(); y < e; ++y)
        for(size_t x = 0; x < y && x < mx[y].size(); ++x)
            if(mx[y][x] < 0 && ( mx[y][x] > result || result >= 0 ))
                result = mx[y][x];
    //-----------------------------------------------------------
    std::cout << (result < 0 ? std::to_string(result) : "Nores") << "\n";
    //-----------------------------------------------------------
 
    return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.08.2021, 22:15
Помогаю со студенческими работами здесь

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

Найти наибольшее и наименьшее значение массива из восьми элементов
Найти наибольшее и наименьшее значение массива из восьми элементов по 2 байта каждый. В регистре АХ должен содержаться наибольший элемент,...

Найти наибольшее значение из сумм элементов каждого столбца матрицы
реализовать программу работающую с многомерными массивами(матрицами). Значение x=(i*j)/2 ,где i и j -соответствуют порядковому номеру...

Найти наибольшее значение элементов расположенных в заштрихованной части матрицы
Дана действительная матрица порядка n (заполнить случайным образом из диапазона -25:25).Найти наибольшее из значений элементов...

В заданной матрице найти наибольшее значение среди указанных элементов
А (5,5) двумерный массив. Определить наибольшее значение среди элементов на высокой стороне по диагонали. И колонна на пересечении...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
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/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru