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

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

Войти
Регистрация
Восстановить пароль
 
Alisa22
-1 / 1 / 0
Регистрация: 14.06.2010
Сообщений: 75
#1

Определить, является ли заданная матрица N-го порядка магическим квадратом, т.е. такой, в которой сумма элементов во всех строках и столбцах одинакова - C++

03.06.2011, 11:40. Просмотров 1062. Ответов 3
Метки нет (Все метки)

Определить, является ли заданная матрица N-го порядка магическим квадратом, т.е. такой, в которой сумма элементов во всех строках и столбцах одинакова.

Помогите переделать задачу что в ней предусматривался динамический захват памяти.

Листинг:
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
// 6(5).cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <windows.h>
#include <iostream>
#include <iomanip>
 
 
int main() {
        const int size = 3;
        int *matrix = new int;
        int *matrix[size][size] = {
               { 2, 7, 6 },
                { 9, 5, 1 },
                { 4, 7, 8 },
        };
 
        bool magic_square = true;
                
        int sum = 0;
        for (int i = 0; i < size; ++i) 
                sum += *matrix[i][i];
 
        int buf = 0;
        for (int i = 0; i < size; ++i)
                buf += *matrix[size - i -1][size - i - 1];
                
        if (buf != sum)
                magic_square = false;
 
        for (int i = 0; i < size && magic_square; ++i) {
                int buf1 = 0, buf2 = 0;
                for (int j = 0; j < size; ++j) {
                        buf1 += matrix[i][j];
                        buf2 += matrix[j][j];
                }
 
                if (buf1 != sum || buf2 != sum)
                        magic_square = false;
        }
 
        for (int i = 0; i < size; ++i) {
                for(int j = 0; j < size; ++j)
                        std::cout << matrix[i][j] << ' ';
 
                std::cout << '\n';
        }
 
         std:: cout << " Magicheskii kvadrat: " <<  std::boolalpha << magic_square << std::endl;
            delete matrix;
 
        getch( );
 
}
 Комментарий модератора 
Ещё раз без тегов - и карточка обеспечена.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2011, 11:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить, является ли заданная матрица N-го порядка магическим квадратом, т.е. такой, в которой сумма элементов во всех строках и столбцах одинакова (C++):

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

Определить, является ли заданная матрица N-го порядка магическим квадратом. - C++
Предусмотреть динамический захват памяти, решение оформить в виде отдельной функции. На печать в виде таблиц вывести исходную и...

Определить, является ли заданная целочисленная матрица магическим квадратом - C++
Помогите решить задачу на С++. Двумерные массивы. Вариант 1. Определить, является ли заданная целочисленная матрица 3х3 магическим...

Определить ,является ли заданная квадратная матрица магическим квадратом - C++
Написать программу,которая позволяет определить ,является ли заданная квадратная матрица магическим квадратом ,то есть такой , в которой...

Определить, является ли матрица магическим квадратом - C++
Определите, является ли квадратная матрица размером N × N магическим квадратом. Магический квадрат — это такая матрица, в которой сумма...

Определить, является ли матрица магическим квадратом - C++
помогите решить :sorry: 1)Дана целая квадратная матрица n-го порядка. Определить, является ли она магическим квадратом, т.е. такой, в...

3
soon
2542 / 1307 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
03.06.2011, 12:07 #2
int *matrix = new int;
int *matrix[size][size] = {
{ 2, 7, 6 },
{ 9, 5, 1 },
{ 4, 7, 8 },
};
вместо этого
C++
1
2
3
4
int **matrix;
matrix = new int* [size];
for (int i = 0; i < size; ++i)
     matrix[i] = new int [size];
затем задаете массив.
ps/ алгоритм не проверял.
0
ALINA4
4 / 4 / 0
Регистрация: 10.12.2012
Сообщений: 130
12.04.2013, 10:24 #3
как задать
0
ALINA4
4 / 4 / 0
Регистрация: 10.12.2012
Сообщений: 130
16.04.2013, 09:54 #4
ошибка в этой программе отладить

Добавлено через 23 часа 20 минут
sum += *matrix[i][i];-почему в этой строке ошибка. как исправить
0
16.04.2013, 09:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2013, 09:54
Привет! Вот еще темы с ответами:

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

Определить, является ли матрица магическим квадратом - C++
Дана целочисленная квадратная матрица n-го порядка. Определить, является ли она магическим квадратом, т.е. такой, в которой суммы ...

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

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


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

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

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