C++ Отдал все балы нужно для курса Создайте программу в которой вы будете заполнятьдвумерный
вектор случайными числами(от 10 до 99).Размеры массива задает пользователь. Вы должнывывести заполненный массив на экран. После этоговыполнить три действия:а. Найти самое большое и самое маленькое число вмассиве и вывести их на экран.б. Нужно суммировать все значения которые больше 55и являются непарными и вывести результат на экран.в. Найти среднее арифметическое число всех парныхэлементов массива и вывести результат на экран.Ответы на вопрос
Проверил, вроде всё правильно написал.
P. S. Сначала вводится ширина 2д вектора, а потом его высота. И ещё для удобства я создал ссылку с именем 'c', которая равняется текущему элементу вектора в цикле (чтобы не обращаться каждый раз v[i][j], а просто c). И для переменной minel (которая будет хранить минимальное значение) изначальное значение я задал 100, но можно и другое, которое > 99.
#include <iostream>
#include <vector>
#include <ctime>
using namespace std;
int main(){
srand(time(NULL));
int n, m, minel(100), maxel(0), s55(0), c2n(0);
float m2n(0);
bool isEven = false;
cin >> m >> n;
vector<vector<int>> v(n, vector<int>(m));
for (int i(0); i < n; i++){
for (int j(0); j < m; j++){
v[i][j] = 10 + rand() % 90;
cout << v[i][j] << ' ';
}
cout << endl;
}
for (int i(0); i < n; i++) {
for (int j(0); j < m; j++) {
const int& c = v[i][j];
if(minel > c)
minel = c;
if(maxel < c)
maxel = c;
if( c > 55 && c % 2 != 0)
s55 += c;
if(isEven){
m2n += c;
c2n++;
}
isEven = 1 xor isEven;
}
}
m2n /= c2n;
cout << "Min: " << minel << endl << "Max: " << maxel << endl;
cout << "Sum of odd nums > 55: " << s55 << endl;
cout << "Mean of nums of even indexes: " << m2n;
return 0;
}
Конечно, вот пример программы на C++, реализующей описанные вами требования:
cpp#include <iostream>
#include <vector>
#include <cstdlib>
#include <ctime>
int main() {
// Задаем размеры массива
int rows, cols;
std::cout << "Введите количество строк: ";
std::cin >> rows;
std::cout << "Введите количество столбцов: ";
std::cin >> cols;
// Инициализируем генератор случайных чисел
std::srand(std::time(0));
// Создаем двумерный вектор и заполняем его случайными числами от 10 до 99
std::vector<std::vector<int>> arr(rows, std::vector<int>(cols));
std::cout << "Двумерный массив:\n";
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
arr[i][j] = std::rand() % 90 + 10; // случайное число от 10 до 99
std::cout << arr[i][j] << " ";
}
std::cout << "\n";
}
// Найти самое большое и самое маленькое число в массиве
int maxNum = arr[0][0];
int minNum = arr[0][0];
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
if (arr[i][j] > maxNum)
maxNum = arr[i][j];
if (arr[i][j] < minNum)
minNum = arr[i][j];
}
}
std::cout << "Наибольшее число в массиве: " << maxNum << "\n";
std::cout << "Наименьшее число в массиве: " << minNum << "\n";
// Суммировать значения больше 55 и являющиеся непарными
int sumAbove55Odd = 0;
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
if (arr[i][j] > 55 && arr[i][j] % 2 != 0)
sumAbove55Odd += arr[i][j];
}
}
std::cout << "Сумма значений больше 55 и непарных: " << sumAbove55Odd << "\n";
// Найти среднее арифметическое всех парных элементов массива
int countEven = 0;
int sumEven = 0;
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
if (arr[i][j] % 2 == 0) {
sumEven += arr[i][j];
countEven++;
}
}
}
double averageEven = static_cast<double>(sumEven) / countEven;
std::cout << "Среднее арифметическое парных элементов: " << averageEven << "\n";
return 0;
}
Эта программа создает двумерный вектор заданных размеров, заполняет его случайными числами от 10 до 99, выводит его на экран, затем выполняет указанные вами действия a, b и c.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili
