Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 1
Регистрация: 14.11.2016
Сообщений: 31

Найти индексы максимального и минимального элементов матрицы и произведение этих элементов

19.05.2017, 12:30. Показов 2087. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При помощи случайных чисел ввести матрицу A(15x5). Записать значения элементов матрицы в файл и сохранить файл. Прочитать из созданного файла значения матрицы и найти индексы максимального и минимального элементов. Вычислить их произведение. Найденные значения дописать в файл. Вывести содержимое файла на экран.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.05.2017, 12:30
Ответы с готовыми решениями:

Матрицы. Найти индексы минимального и максимального элементов. Найти сумму элементов главной и побочной диагонали
Здравствуйте) Прошу помощи в решении двух задач: 1) Ввести массив W(30). Найти индексы его минимального и максимального элементов. ...

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

Найти произведение максимального и минимального элементов матрицы
Дан двумерный массив целых чисел. Найти произведение максимального и минимального элементов. Добавлено через 18 часов 49 минут ...

6
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
19.05.2017, 12:40
Цитата Сообщение от Digoz Посмотреть сообщение
Прочитать из созданного файла значения матрицы и найти индексы максимального и минимального элементов.
Допустим, минимальный элемент стоит под индексами [1][2], а максимальный под [3][4]. Что с чем перемножать?
0
0 / 0 / 1
Регистрация: 14.11.2016
Сообщений: 31
19.05.2017, 12:48  [ТС]
Элемент стоящий на 1,2 умножить на элемент стоящий на 3,4
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
19.05.2017, 12:54
Тогда как понимать
Цитата Сообщение от Digoz Посмотреть сообщение
Найденные значения
? Что ещё помимо результата произведения записывать? 1 2 3 4?
0
0 / 0 / 1
Регистрация: 14.11.2016
Сообщений: 31
19.05.2017, 13:07  [ТС]
Нет

Добавлено через 7 минут
Сделайте как пооучится
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
19.05.2017, 15:01
Сделал по этапам, чтобы вам было проще
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
63
64
65
66
67
#include <array>
#include <fstream>
#include <iostream>
#include <iterator>
#include <random>
 
int main()
{
    constexpr size_t M = 15, N = 5;
    constexpr char* filename = "text.txt";
    std::array<std::array<int, N>, M> A;
 
    // При помощи случайных чисел ввести матрицу A(15x5).
    std::mt19937 gen{ std::random_device()() };
    std::uniform_int_distribution<> dist(10, 99);
    for (auto &l : A)
        std::generate(l.begin(), l.end(), [&dist, &gen] { return dist(gen); });
 
    // Записать значения элементов матрицы в файл и сохранить файл.
    std::ofstream o(filename);
    for (const auto &l : A)
    {
        std::copy(l.cbegin(), l.cend(), std::ostream_iterator<int>(o, " "));
        o << std::endl;
    }
    o.close();
 
    // Прочитать из созданного файла значения матрицы и найти индексы максимального и минимального элементов.
    std::fstream fs(filename, std::ios::in | std::ios::out);
    if (!fs)
        return 1;
 
    // индексы минимального и максимального элемента (по заданию требуется находить мин. и макс. через них)
    size_t iMin = 0, jMin = 0, iMax = 0, jMax = 0;
    for (size_t i = 0; i < M; i++)
    {
        for (size_t j = 0; j < N; j++)
        {
            fs >> A[i][j];
            
            if (A[i][j] < A[iMin][jMin])
            {
                iMin = i;
                jMin = j;
            }
            if (A[i][j] > A[iMax][jMax])
            {
                iMax = i;
                jMax = j;
            }
        }
    }
    std::cout << "Min is A[" << iMin << "][" << jMin << "] = " << A[iMin][jMin]
              << "\nMax is A[" << iMax << "][" << jMax << "] = " << A[iMax][jMax] << std::endl;
 
    // Вычислить их произведение.
    // Найденные значения дописать в файл.
    // смещаем курсор для записи
    fs.seekg(0, fs.end);
    fs << A[iMin][jMin] * A[iMax][jMax] << std::endl;
 
    // Вывести содержимое файла на экран.
    // смещаем курсор на вывод содержимого
    fs.seekp(0);
    // выводим содержимое файла
    std::cout << "File content:\n" << fs.rdbuf();
}
0
0 / 0 / 1
Регистрация: 14.11.2016
Сообщений: 31
20.05.2017, 16:19  [ТС]
Вот есть код моего варианта, но не доделан, как можно через цикл for найти максимальный и минимальный элемент, и записать в файл их произведение?
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
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <ctime>
using namespace std;
 
int main(int argc, char** argv) {
FILE *f;
f=fopen("test.dat","w");
int mas[15][5], mas2[15][5],i,k;
for (i=0;i<5;i++){
for (k=0;k<15;k++) {
mas[i][k]=(rand()%87-63/10);
fprintf(f,"%i\t",mas[i][k]);}
fprintf(f,"\n");
}
fclose(f);
f=fopen("test.dat","r");
for (i=0;i<5;i++){
for (k=0;k<15;k++) {
mas[i][k]=(rand()%87-63/10);
fscanf(f,"%i ",&mas2[i][k]);
printf("%i ",mas2[i][k]);}
cout<<"\n";}
getch();
    return 0;
}
Добавлено через 1 минуту
Цитата Сообщение от MrGluck Посмотреть сообщение
Сделал по этапам, чтобы вам было проще
В чем ошибка? не выдает макисмальный элемент.
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
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <ctime>
using namespace std;
 
int main(int argc, char** argv) {
FILE *f;
f=fopen("test.dat","w");
 
int mas[15][5], mas2[15][5],i,k;
srand(time(NULL));
for (i=0;i<5;i++){
for (k=0;k<15;k++) {
mas[i][k]=(rand()%87-63/10);
fprintf(f,"%i\t",mas[i][k]);}
fprintf(f,"\n");
}
fclose(f);
 
f=fopen("test.dat","r");
    for (i=0;i<5;i++){
        for (k=0;k<15;k++) {
        fscanf(f,"%i ",&mas2[i][k]);
        printf("%i ",mas2[i][k]);}
    cout<<"\n";}
fclose(f);
int max=0;
int min=0;
 
for (k=0;k<5;k++){
for (i=0;i<15;i++){
if (mas[i][k]>max) max=mas[i][k];
if (mas[i][k]<min) min=mas[i][k];}}
 
cout<<min<<endl<<max;
 
getch();    
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.05.2017, 16:19
Помогаю со студенческими работами здесь

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

Для каждой строки матрицы найти произведение максимального и минимального элементов
По каждой строке двумерного массива найти произведение максимально и минимального элементов(Не через max, min , а через обычные буквы)

Вывести индексы максимального и минимального элементов матрицы
Вывести индексы максимального и минимального элементов... Program Altrex; Uses crt; var i,j,n,max,min:INTEGER; a:array of...

Вычислить произведение минимального и максимального элементов среди положительных элементов матрицы
Нужна помощь написать программу на языке Паскаль. Вычислить произведение минимального и максимального элементов среди положительных...

Найти индексы максимального и минимального элементов в массиве
Ребят,помогите пожалуйста написать код этому условию,используя простые библиотеки conio.h,stdio.h,iostream,math.h. Найти индексы...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru