Вопрос задан 13.07.2023 в 01:28. Предмет Информатика. Спрашивает Севидова Анна.

Напишите программу, которая упорядочивает массив по убыванию и ищет в нем все значения, равные

введенному числу. c++
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Закирзянова Галина.

Ответ:

Смотри - у тебя есть массив и введенное число.

Тебе надо сначала найти максимум в массиве и передвинуть влево, и продолжать искать максимумы в массиве, не включая первый элемент.

С введенным числом не очень понимаю - надо индексы значений просто вывести, которые равны введенному числу или как? Условие не полное.

Надеюсь помог!

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно! Вот пример программы на C++, которая сортирует массив по убыванию и ищет все значения, равные заданному числу:

cpp
#include <iostream> #include <vector> #include <algorithm> // Функция для сортировки массива по убыванию void sortDescending(std::vector<int>& arr) { std::sort(arr.begin(), arr.end(), std::greater<int>()); } // Функция для поиска значений, равных заданному числу std::vector<int> findEqualValues(const std::vector<int>& arr, int target) { std::vector<int> result; for (int num : arr) { if (num == target) { result.push_back(num); } } return result; } int main() { int size; std::cout << "Введите размер массива: "; std::cin >> size; std::vector<int> arr(size); std::cout << "Введите элементы массива: "; for (int i = 0; i < size; i++) { std::cin >> arr[i]; } int target; std::cout << "Введите число для поиска: "; std::cin >> target; // Сортировка массива по убыванию sortDescending(arr); // Поиск значений, равных заданному числу std::vector<int> equalValues = findEqualValues(arr, target); // Вывод результатов std::cout << "Отсортированный массив по убыванию: "; for (int num : arr) { std::cout << num << " "; } std::cout << "\nЗначения, равные " << target << ": "; if (equalValues.empty()) { std::cout << "Отсутствуют"; } else { for (int num : equalValues) { std::cout << num << " "; } } return 0; }

В этой программе мы сначала вводим размер массива и его элементы с помощью стандартного ввода std::cin. Затем мы вводим число, которое хотим найти в массиве.

Далее используется функция sortDescending, которая сортирует массив по убыванию с помощью std::sort и компаратора std::greater<int>().

Затем мы вызываем функцию findEqualValues, которая ищет значения, равные заданному числу, и сохраняет их в новом векторе.

В конце программа выводит отсортированный массив по убыванию и значения, равные заданному числу.

Надеюсь, это поможет вам! Если у вас возникнут еще вопросы, пожалуйста, дайте мне знать.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос