Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
AlexHolmes
1 / 1 / 0
Регистрация: 14.11.2013
Сообщений: 77
#1

Удалить строку с минимальным производным из матрицы - C++

08.05.2014, 20:46. Просмотров 166. Ответов 1
Метки нет (Все метки)

Доброго времени суток!
Возникла проблема...
Нужно из квадратной матрицы А сформировать матрицу В, исключив из нее строку с минимальным производным.
Все, вроде бы, нормально кроме последнего пункта. Не совсем понимаю, как исключать строку матрицы в таком случаи. Пожалуйста, подскажите, что изменить в коде или же подтолкните на мысль. Очень нуждаюсь в помощи))

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
#include <stdio.h>
#include <math.h>
 
main()
{
int n = 4;
int i,j, min, k, m;
float dob[4];
int A[4][4], B[3][4];
for(i = 0; i < n; i++)
{
     for(j = 0; j < n; j++)
     {
        scanf("%d",&A[i][j]);
        printf("%d\t  ",A[i][j]);
     }
     printf("\n");
}
    for(i = 0; i < n; i++)
   {
    dob[i]=1;
        for( j = 0; j < n; j++)
          dob[i]*=A[i][j];
          printf("Dobutok stroki %d =%.0f\n",i,dob[i]);
   }
     min=dob[0];
     for(i = 1; i < n; i++)
       if  ( dob[i]<min)
       {
        min=dob[i]; k=i; 
        }
        printf("min=%d  k=%d\n",min, k);
        for(i = 0; i < n; i++)
          for(j = 0; j < n; j++)
             if(i>=k)
             A[i][j]=A[i+1][j];
               for(i = 0; i < n; i++)
               {
           m=0;
                  for(j = 0; j < n; j++)
                  if(i!=k)
                  B[i][m]=A[i][j];
                  m++;
                printf("%d\t  ",A[i][j]);
        printf("\n");
                }
}
Добавлено через 2 часа 14 минут
Есть еще такой вариант.. но он какой-то искусственный. Хотелось бы все же разобраться как делать это автоматически.

C++ (Qt)
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 <stdio.h>
#include <math.h>
main()
{
int n = 4;
int i,j, min, k, m;
float dob[4];
int A[4][4], B[3][4];
for(i = 0; i < n; i++)
{
for(j = 0; j < n; j++)
{
scanf("%d",&A[i][j]);
printf("%d \t ",A[i][j]);
}
printf("\n");
}
for(i = 0; i < n; i++)
{
dob[i]=1;
for( j = 0; j < n; j++)
dob[i]*=A[i][j];
printf("Dobutok stroki %d =%.0f\n",i,dob[i]);
}
min=dob[0];
for(i = 1; i < n; i++)
if ( dob[i]<min)
{min=dob[i]; k=i; }
printf("min=%d k=%d\n",min, k);
for(i = 0; i < n; i++)
for(j = 0; j < n; j++)
if(i!=k)
B[i][j]=A[i][j];
for(i = 0; i < n; i++)
{
for(j = 0; j < n; j++)
if(B[i][j!=0])
printf("%d \t ",B[i][j]);
printf("\n");
}
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2014, 20:46     Удалить строку с минимальным производным из матрицы
Посмотрите здесь:

Удалить из целочисленной квадратной матрицы строку с минимальным средним значением элементов - C++
Доброго времени суток.. Помогите пожалуйста решить вот эту задачу,кажется вроде не сложная,но просто не представляю как её сделать.. ...

Поменять местами строку с максимальный элемент и строку с минимальным элементом матрицы - C++
привет!я хотел бы попросить знающих людей написать программу на языке С!надо поменять местами рядок в котором есть максимальный элемент с...

Сместить строку с минимальным элементом матрицы - C++
Помогите пожалуйста, очень срочно надо, у самой ничего не выходит. Дана прямоугольная целочисленная матрица NxM. Строку, в которой...

Строку матрицы с минимальным элементом поменять со строкой с максимальным - C++
не получается поменять местами строку в которой находится минимальный элемент на строку в которой находится максимальный элемент....

Поменять местами строку матрицы с максимальным и минимальным элементом - C++
Проблема такова: программа меняет местами строку с максимальным и минимальным элементом. Когда я пытаюсь присвоить минимальному и...

Поменять местами строку с максимальным и минимальным элементом матрицы - C++
Задана матрица размером NxN. Поменять местами строку с максимальным элементом матрицы и строку с минимальным эле-ментом.

Удалить строку матрицы - C++
Ввести матрицу размерности m х n и число k. Удалить k строку с матрицы. Вывести исходную и полученную матрицы.

Удалить строку матрицы с номером К - C++
ПЛЗ оч прошу, помогите :wall: :help: 4 задачи, надо написать на С 1) - Дана матрица размера M x N и целое число K ( 1&lt;=K&lt;=M)....

Удалить строку и столбец матрицы - C++
#include &lt;iostream&gt; using namespace std; void ReadMatr(int **a, int n, int m);//Ввод матрицы с клавиатуры void PrintMatr(int...

Удалить k-тую строку матрицы - C++
Требуется удалить k-тую строку матрицы размером n х m Число строк уменьшается на 1 Значение k вводится. Исходная матрица задается в...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
5268 / 4588 / 1538
Регистрация: 14.04.2014
Сообщений: 18,223
09.05.2014, 11:34     Удалить строку с минимальным производным из матрицы #2
После 26 строки добавить
C++
1
k = 0;
Вот создание матрицы B
C++
1
2
3
4
5
6
7
m = 0;
for(i = 0; i < n; i++)
    if(i != k)
    {
        for(j = 0; j < n; j++) B[m][j] = A[i][j];
        m++;
    }
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru