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

Создать функцию, где из квадратной матрицы S(m, m), m<=10 построить вектор Р - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Индекс минимального элемента http://www.cyberforum.ru/cpp-beginners/thread670622.html
В данной задаче мне нужно найти индекс минимального элемента , хотелось бы понять свою ошибку потому что программка мягко говорят не работает ) и можно ли использовать while внутри for ?) #include <iostream> using namespace std; int main() { int arr; int n; cin>>n; int min; int index=0;
C++ Шаблон структуры можно ли в с++ создать шаблон структуры? Не класса, именно структуры. Т.е. есть у меня struct A { float e; float e1; }; И то же самое, но с int'ами. Могу сделать обобщенную структуру? И как? http://www.cyberforum.ru/cpp-beginners/thread670617.html
C++ return в функции потока
Куда возвращается значение, указанное в return функции созданного потока?
Почему компилятор не воспринимает define константу C++
Почему ни GCC, ни VS 2010 не компилируют следующий код из книги Шилдта "Самоучитель по С++"? #include <iostream> using namespace std; #define SIZE 10; class stack { char stck; int tos; public:
C++ Эмуляция клавиш http://www.cyberforum.ru/cpp-beginners/thread670601.html
Привет, вот не идёт в голову как до конца дописать код: if(GetAsyncKeyState(0x46)&1) { keybd_event(VkKeyScan('A'), 0, 0, 0); keybd_event(VkKeyScan('B'), 0, 0, 0); keybd_event(VkKeyScan('C'), 0, 0, 0); } Хочу сделать так, чтобы нажал F на клаве, а в блокноте (не важно где) написались заданные буквы (АВС) в моём случае. А получается так, что они постоянно печатаются:D....
C++ Организация программа(написание красивого кода) Здравствуйте, с недавних пор меня начала беспокоить организация программы и написание более-менее красивого кода. Хотелось бы узнать какая есть литература не эту тему, т.к рабочий код вроде я могу писать, а вот его красота меня как начинающего программиста начинает беспокоить. Прошу помочь мне в этом вопросе )) подробнее

Показать сообщение отдельно
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
14.10.2012, 12:57     Создать функцию, где из квадратной матрицы S(m, m), m<=10 построить вектор Р
да, действительно. сейчас доработаю.

Добавлено через 15 минут
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
74
75
76
77
78
79
80
81
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
 
void input(int** S, char c, int size)
{
    for (int i = 0; i < size; i++)
    {
        S[i] = new int[size];
        for (int j = 0; j < size; j++)
        {
            printf("%c[%d][%d] = ",c,i,j);
            scanf("%d",&S[i][j]);
        }
    }
 
    printf("\n");
}
 
void file_input(int** S, const char* filename, int size)
{
    FILE* fp = NULL;
    if ((fp = fopen(filename,"r")) == NULL)
    {
        printf("Unable to open file %s for reading\n",filename);
        return;
    }
 
    char* str = new char[80];
    for (int i = 0; fgets(str, 80, fp) != NULL; i++)
    {
        S[i] = new int[size]; int j = 0;
        for (char* token = strtok(str," "); 
            token != NULL; token = strtok(NULL," "))
            S[i][j++] = atoi(token);
    }
 
    fclose(fp);
}
 
void dsum(int** S, int* P, int size)
{
    int k = 0;
    for (int q = size-1; q >= 0; q--)
    {
        int i = 0, j = q, sum = 0;
        while (i < size && j >= 0) sum+=S[i++][j--];
        if (sum > 0) P[k++] = sum; 
    }
 
    for (int t = 1; t < size; t++)
    {
        int i = t, j = size-1, sum = 0;
        while (i < size && j >= t) sum+=S[i++][j--];
        if (sum > 0) P[k++] = sum; 
    }
}
 
int main()
{
    int **Q = new int*[10], **W = new int*[8];
    int *P1 = new int[20], *P2 = new int[16];
 
//  input(Q, 'Q', 10); input(W, 'W', 8);
 
    file_input(Q, "in1.txt", 10);
    file_input(W, "in2.txt", 8);
 
    dsum(Q, P1, 10); dsum(W, P2, 8);
 
    for (int m1 = 0; m1 < 20; m1++)
        printf("%d ",P1[m1]);
    printf("\n");
 
    for (int m1 = 0; m1 < 16; m1++)
        printf("%d ",P2[m1]);
    printf("\n");
 
    _getch();
}
 
Текущее время: 03:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru