Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
maperke
1

из матрицы нужно удалить строку с минимальной суммой элементов

28.04.2013, 22:52. Показов 744. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Требуется ввести матрицу вещественных чисел размерности N×M из файла input.txt и выполнить с ней следующее преобразование: Найти строку с минимальной суммой элементов и удалить из матрицы эту строку, а строки с последующими номерами последовательно сдвинуть на освободившееся место, при этом последняя освободившаяся строка матрицы заполняется нулями.

Матрица должна быть представлена в памяти как одномерный массив длины NM, в котором по строкам записаны все элементы матрицы. При этом функция обработки должна иметь следующий заголовок void Process (double *matr, int N, int M, ..и другие параметры);

Ответом является преобразованная матрица, которую нужно вывести по строкам в файл output.txt (только элементы матрицы без ее размерностей).

Во входном файле (input.txt) сначала записаны два целых числа - число строк N и число столбцов M исходной матрицы, а далее по строкам записаны элементы матрицы. При вводе данных программа должна выделить необходимую память для размещения матрицы в соответствии с указанным представлением, а по окончании работы освободить эту память. Для работы нельзя выделять иные массивы, зависящие от размерностей матрицы, а также использовать заранее объявленные статические массивы большого размера. Если при чтении матрицы из файла возникают ошибки ввода-вывода или не удается корректно ввести требуемое количество элементов матрицы, то программа (функция main) должна завершить работу и вернуть значение −1. При корректном завершении работы программа (функция main) должна вернуть значение 0.
вот я писал прогу похожую, которая ищет строку с максимальной суммой и вычитает ее из остальных, а какой написать к ней цикл для удаления ее из матрицы что-то не могу:
#include <stdio.h>
#include <stdlib.h>


void process(double *matr, int n, int m)
{
double max, s;
int imax=0;

max = matr[0]; imax = 0;
for (int i=0;i<n && i<m;i++) {
if(matr[i*m+i]>max) {max=matr[i*m+i]; imax=i;}
}

for (int i=0;i<n;i++) {
if (i==imax) continue;
for (int j=0;j<m; j++)
matr[i*m+j] -= matr[imax*m+j];
}
}



int main()
{

FILE *fin=fopen("input.txt","r");
FILE *fout=fopen("output.txt","w");
int n,m;
fscanf(fin,"%d%d",&n,&m);
double *matr = new double[n*m];
for (int i=0;i<n*m; i++) fscanf(fin,"%lf",&matr[i]);

process(matr,n,m);

for(int i=0;i<n;i++) {
for(int j=0;j<m;j++)
fprintf(fout,"%lf ",matr[i*m+j]);
fprintf(fout,"\n");
}
fclose(fin);
fclose(fout);
delete [] matr;
return 0;
}
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.04.2013, 22:52
Ответы с готовыми решениями:

Найти строку матрицы с минимальной суммой элементов, и строку с максимальной
Дан квадратный массив. Найти строку с минимальной суммой элементов, и сторку с максимальной....

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

Замените строку матрицы с минимальной суммой элементов на строку где находится максимальный элемент
Помогите пожалуйста!!! Замените строку матрицы B размерности n на m с минимальной суммой элементов...

Найти строку матрицы с минимальной суммой элементов
Если вам не трудно, решите хотя бы пару заданий... Задание № 1. Дана матрица целых чисел...

0
28.04.2013, 22:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.04.2013, 22:52
Помогаю со студенческими работами здесь

Найти строку матрицы с минимальной суммой элементов
Задание № 1. Дана матрица целых чисел размером nхm. Найти минимальный элемент матрицы, начиная...

Обнулить строку матрицы с минимальной суммой элементов
В двумерном N*K массиве целых чисел обнулить строку с минимальной суммой элементов

Найти строку матрицы с минимальной суммой элементов
Дана Матрица A(n*n). Написать программу, которая находит строчку матрицы с минимальной суммой...

Найти строку с минимальной и максимальной суммой элементов матрицы Т(8, 7)
Помогите пожалуйста решить такую задачу по VB 6.0 а то в универе толком ничего не объяснили, а...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru