
Написать кодом в Visual Studio на С++. В одномерном массиве А(10) вычислить сумму элементов
массива, отличающихся от максимального на 1.

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

Ответ:
#include "stdafx.h"
#include <iostream>
#include <string>
#include <fstream>
#include <windows.h>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
float A[10];
cout << "Заполните массив данными:" << endl;
for (int i = 0; i < 10; i++)
{
cout << "[" << i + 1 << "]: ";
cin >> A[i];
}
float max = A[0];
for (int i = 0; i < 10; i++)
{
if (A[i] > max)
{
max = A[i];
}
}
cout << "\nМаксимальное значение: " << max << endl;
float summ = 0;
for (int i = 0; i < 10; i++)
{
if ((A[i] + 1) == max)
{
summ += A[i];
}
}
cout << "\nСумма элементов массива отличающихся от максимального на единицу: " << summ << endl;
return 0;
}
Объяснение:
Ищем максимальное число в массиве и далее ищем сумму всех элементов массива, которые отличаются от максимального на единицу. Т.е ищем сумму элементов, которые меньше максимального на единицу



Для решения этой задачи вам потребуется определить максимальный элемент в массиве и затем пройтись по всем элементам, сравнивая их с максимальным значением и добавляя их к сумме, если они отличаются от максимального значения на 1. Вот пример кода на C++ для выполнения этой задачи:
cpp#include <iostream>
const int SIZE = 10;
int main() {
int A[SIZE] = {1, 5, 7, 3, 8, 9, 8, 7, 6, 5}; // Ваш одномерный массив
int maxElement = A[0]; // Предполагаем, что первый элемент массива - максимальный
int sum = 0;
// Находим максимальный элемент в массиве
for (int i = 1; i < SIZE; i++) {
if (A[i] > maxElement) {
maxElement = A[i];
}
}
// Вычисляем сумму элементов, отличающихся от максимального на 1
for (int i = 0; i < SIZE; i++) {
if (A[i] == maxElement - 1 || A[i] == maxElement + 1) {
sum += A[i];
}
}
std::cout << "Сумма элементов, отличающихся от максимального на 1: " << sum << std::endl;
return 0;
}
В этом примере массив A
содержит значения [1, 5, 7, 3, 8, 9, 8, 7, 6, 5]
. Программа найдет максимальный элемент (равный 9) и затем вычислит сумму элементов, отличающихся от 9 на 1 (т.е. 8 и 10), которая равна 8 + 10 = 18. Вы можете заменить значения массива A
на свои собственные для тестирования различных случаев.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili