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

матрицы: повернуть на 90 градусов;макс.значение элементов... - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подсчёт символов в файле. http://www.cyberforum.ru/cpp-beginners/thread404031.html
Подскажите как посчитать количество символов в текстовом файле, какие функции для работы с файлами нужно использовать? Язык Си.
C++ структуры, функции, файлы Доброго времени суток всем, пожалуйста помогите! 1. В одном списке информация про студентов, которые принимали участие в олимпиаде по математике, в другом по информатике, сформировать третий... http://www.cyberforum.ru/cpp-beginners/thread404026.html
C++ задача по работе с текстом на с++ напишите пожалуйста код
Задан текст, состоящий из строк произвольной длины. Строки разделяются одним символом или несколькими, называемые разделителями. Разделители одинаковы для всего текста. Текст заканчивается комбинаций...
Лабораторная работа по С++ Павловская C++
Если не видно кому Помогите пожайлуста с работой...Нужно написать код(вроде цикл) чтобы для каждого Х показывало значение Y R- вводится с клавиатуры И 2ое задание Попадание в мишень.
C++ Компилятор под C http://www.cyberforum.ru/cpp-beginners/thread403997.html
Здравствуйте! Начал изучать C и столкнулся с проблемой выбора компилятора. Почитал форум и нашел CodeBlocks, но он мне не понравился по ряду причин (ну например он не всегда адекватно работает). Так...
C++ опрератор if-else Здраствуйте, граждане ;)! Есть часть кода (весь код по БД нет смысла выводить): case 4: clrscr(); cout<<"You want to delete all notes from database. Continue? (y/n): "; cin>>res;... подробнее

Показать сообщение отдельно
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
11.12.2011, 02:01
Цитата Сообщение от flexalumna2008 Посмотреть сообщение
2)Опять матрица, есть диагональ (слева на право, с верху вниз). Нужно найти максимальное значение элементов помеченых на рисунке. А на рисунке отмечены те что входят в диагональ, и все что от нее вправо вверх....
C
1
2
3
4
5
max = m[0][0];
for (i = 0; i < N; i++) /* N - order of a matrix */
    for (j = i; j < N; j++)
        if (m[i][j] > max)
            max = m[i][j];
Цитата Сообщение от flexalumna2008 Посмотреть сообщение
1) повернуть массив по часовой стрелке на 90 градусов.
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
#include <stdio.h>
 
#define swap(t, a, b) \
    { t temp = (a); (a) = (b); (b) = temp; }
 
void reverse(int *arr, int i, int j)
{
    if (i < j) {
        swap(int, arr[i], arr[j]);
        reverse(arr, i + 1, j - 1);
    }
}
 
#define index(i, j, ord) \
    ((i) * (ord) + (j))
 
int *transpose(int *m, int ord)
{
    int i, j;
 
    for (i = 0; i < ord; i++)
        for (j = i; j < ord; j++)
            swap(int, m[ index(i, j, ord) ],
                m[ index(j, i, ord) ]);
    return m;
}
 
int *turn90deg(int *m, int ord)
{
    int i, n;
 
    transpose(m, ord);
 
    for (n = 0, i = 0; i < ord; i++, n += ord)
        reverse(m + n, 0, ord - 1);
    return m;
}
 
void dump(int *m, int ord)
{
    int i;
 
    for (i = 0; i < ord * ord; i++)
        printf("%d%c", m[i], 
            (i+1) % ord ? ' ' : '\n');
}
 
int main()
{
    int m1[3][3] = {
        {1, 2, 3},  
        {4, 5, 6},   
        {7, 8, 9}
    };
    int m2[2][2] = {
        {1, 2},
        {3, 4}
    };
 
    turn90deg(*m1, 3);
    dump(*m1, 3);
 
    putchar('\n');
 
    turn90deg(*m2, 2);
    dump(*m2, 2);
    return 0;
}
Добавлено через 3 минуты
Цитата Сообщение от flexalumna2008 Посмотреть сообщение
на 180 я поняла как поворачивать, а на 90 вроде и нашла какие-то варианты в интернете, но не могу понять КАК ИМЕНО, то есть каков принцип этого поворота. Обьясните мне "на пальцах" как очень тупому человеку, пожалуйста.
1) транспонировать матрицу
2) переставить элементы строк в обратном порядке
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru