Вопрос задан 07.07.2023 в 12:24. Предмет Информатика. Спрашивает Евдокимова Таня.

Программирование С++ Написать пользовательскую функцию, которая умножает все элементы каждой

строки на минимальный элемент этой строки.
0 0
Перейти к ответам

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

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

#include <iostream>

#include <cmath>

#include <set>

#include <vector>

#include <algorithm>

#pragma GCC optimize("Ofast")

using ll = long long;

using ld = long double;

using namespace std;

vector<vector<ll>> a;

ll find_min(vector<ll> v){

   ll mn = pow(10,9);

   for(auto i: v)

       mn = min(i,mn);

   return mn;

}

void f(ll n){

   ll mn = find_min(a[n]);

   for(ll i = 0; i < a[n].size(); i++)

       a[n][i] *= mn;

}

signed main() {

   ll n,m;

   cin >> n >> m;

   for(ll i = 0; i < n; i++){

       vector<ll> temp(m);

       for(ll j = 0; j < m; j++)

           cin >> temp[j];

       a.push_back(temp);

   }

   for(ll i = 0; i < n; i++)

       f(i);

   for(ll i = 0; i < n; i++){

       for(ll j = 0; j < m; j++)

           cout << a[i][j] << " ";

       cout << "\n";

   }

}

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

Конечно! Вот пример пользовательской функции на C++, которая умножает все элементы каждой строки матрицы на минимальный элемент этой строки:

cpp
#include <iostream> #include <vector> // Функция для умножения элементов каждой строки на минимальный элемент этой строки void multiplyByMinElement(std::vector<std::vector<int>>& matrix) { // Проходим по каждой строке матрицы for (auto& row : matrix) { // Находим минимальный элемент в текущей строке int minElement = row[0]; for (int i = 1; i < row.size(); i++) { if (row[i] < minElement) { minElement = row[i]; } } // Умножаем все элементы текущей строки на минимальный элемент for (int i = 0; i < row.size(); i++) { row[i] *= minElement; } } } int main() { // Пример матрицы std::vector<std::vector<int>> matrix = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; // Вызываем функцию для умножения элементов каждой строки multiplyByMinElement(matrix); // Выводим результат for (const auto& row : matrix) { for (int element : row) { std::cout << element << " "; } std::cout << std::endl; } return 0; }

В данном примере создается матрица matrix размером 3x3. Затем вызывается функция multiplyByMinElement, которая умножает все элементы каждой строки на минимальный элемент этой строки. Результат выводится на экран.

Примечание: Этот код предполагает, что все строки матрицы имеют одинаковый размер. Если строки имеют разный размер, то этот код может вызвать ошибку.

0 0

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

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

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

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