Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
NimPO
12 / 12 / 5
Регистрация: 23.12.2012
Сообщений: 42
#1

Сформировать вектор из элементов матрицы - C (СИ)

11.07.2013, 17:33. Просмотров 567. Ответов 1
Метки нет (Все метки)

Даны натуральное число n, целочисленная квадратная матрица порядка n. Получить b1, ..., bn, где bi - это сумма элементов, предшевствующих последнему отрицательному элементу i-строки(если все элементы строки неотрицательны, то принять bi = -1).
http://www.cyberforum.ru/c-beginners/thread1604297.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2013, 17:33
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Сформировать вектор из элементов матрицы (C (СИ)):

Сформировать вектор из элементов, расположенных выше главной диагонали матрицы
1 Дана матрица А(5,5). Сформировать вектор из элементов, расположенных выше...

Сформировать вектор из количеств элементов i-ой строки матрицы, отсутсвующих в (i+1)-ой строке
Здравствуйте , у меня возникла проблема, выдали задание а я не знаю как делать...

Сформировать вектор из суммы наибольших и наименьших значений элементов столбцов матрицы
Добрый день. Помогите, пожалуйста. Задана квадратная матрица размером N x...

Сформировать вектор: значения первых отрицательных элементов в каждом столбце исходной матрицы
Дана вещественная матрица размера M x N. Сформировать вектор b, в котором...

Сформировать вектор В, каждый элемент которого равен скалярному произведению строки матрицы A [M × N] на вектор Х
Условие:Сформировать вектор В, каждый элемент которого равен скалярному...

1
fanatdebian
Z3JheSBoYXQ=
339 / 234 / 83
Регистрация: 08.07.2012
Сообщений: 577
12.07.2013, 08:37 #2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
68
69
70
71
72
73
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
 
#define MATRIXSIZE 10
 
/* prototype functions */
void addValueMatrix(int [MATRIXSIZE][MATRIXSIZE], int resultArray[MATRIXSIZE]);
void genericRandomMatrix(int [MATRIXSIZE][MATRIXSIZE]);
 
int main()
{
    int matrix[MATRIXSIZE][MATRIXSIZE], resultArray[MATRIXSIZE];
    
    srand(time(NULL));  
    genericRandomMatrix(matrix);
    addValueMatrix(matrix, resultArray);
    int index = 0;
    for (index = 0; index < MATRIXSIZE; index++){
        printf("Line #%2d: %d\n", index, resultArray[index]);
        }
    return 0;
}
void addValueMatrix(int array[MATRIXSIZE][MATRIXSIZE], int resultArray[MATRIXSIZE]){
    
    int inExt = 0, result = 0, inRes = 0;
    
    for(inExt = 0; inExt < MATRIXSIZE; inExt++){
        int inInd = 0, flag = 0;
        result = 0;
        for(; inInd < MATRIXSIZE; inInd++){
            
            if (array[inExt][inInd] < 0) {              
                inInd = MATRIXSIZE; // break in loop
                resultArray[inRes++] = result;              
                flag = 1;                           
            } else {
                result += array[inExt][inInd];              
            }           
        }
        if (0 == flag){
            resultArray[inRes++] = -1;
        }
            
    }                   
}
    
    
    
    
 
 
void genericRandomMatrix(int matrix[MATRIXSIZE][MATRIXSIZE]){
    
        int inExt = 0;
        
    for(inExt = 0; inExt < MATRIXSIZE; inExt++){
        int inInd = 0;
        for(; inInd < MATRIXSIZE; inInd++){
            matrix[inExt][inInd] = -3 + rand()%99;
        }
    }
 
    for(inExt = 0; inExt < MATRIXSIZE; inExt++){
        int inInd = 0;      
        printf("#%2d:", inExt);
        for(; inInd < MATRIXSIZE; inInd++){
            printf("%3d ", matrix[inExt][inInd]);
        }   
        printf("\n");
    }   
}
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[spouk@/mnt/big1gb/hddDevelop/source/c/2013$] forum_matrix
# 0:  5  34  49  10  53   6  65  32  56  65 
# 1: 54  29  24  40  71  51  28  79   9  68 
# 2: 36   4  95  19  20  37  14  79  21  72 
# 3:  8  27   9  58  40  65  67   7   2  28 
# 4: 75  57  58   1   1  32  56  30  15  68 
# 5:  0  52  74   0  74  -2  38  91  81  63 
# 6: 66  92  91  78  52  36  47  23  44  50 
# 7: 52  24  11  15  28  15  50  85  46  66 
# 8: 58  50  23  36  51  -1  35  92  92  20 
# 9: 59  62  14  55  42  67  92  92  94  40 
Line # 0: -1
Line # 1: -1
Line # 2: -1
Line # 3: -1
Line # 4: -1
Line # 5: 200
Line # 6: -1
Line # 7: -1
Line # 8: 218
Line # 9: -1
[spouk@/mnt/big1gb/hddDevelop/source/c/2013$]
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.07.2013, 08:37
Привет! Вот еще темы с решениями:

Сформировать из матрицы вектор по правилу
дано матрицу 6х4. Сформировать из этой матрицы вектор по правилу: первые н...

Сформировать вектор из элементов массива
Дано одномерный массив В, состоящий из 15 элементов. Сформировать вектор А,...

Сформировать вектор с элементов другого вектора
вот суть задачи: Задано вектор Т(n), n&lt;=12. Сформировать вектор У с элементов...

Сформировать вектор из наименьших значений элементов строк
Помогите сделать программу по заданию: Задана квадратная матрица A размером...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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