Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 08.12.2013
Сообщений: 25
1

Сгенерировать матрицу расхождений, где нули записаны на местах симметричных элементов

24.01.2014, 14:57. Показов 554. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
дано задание: Проверка симметричности матрицы. Сгенерировать матрицу расхождений, где нули записаны на местах симметричных элементов..программа то работает,то нет
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
#include <stdio.h>
#include <stdlib.h>
 
int main () {
int *m=0, size, i, j, k;
printf ("Vvedite poryadok matrici: ");
scanf ("%d", &size);
m = (int*) malloc(sizeof(int)*size*size);
for(i=0; i<size; i++)
{
    printf ("Enter matrix row number %d (%d elements):\n", i+1, size );
    for(j=0; j<size; j++)
        scanf("%d", &m[i*size+j]);
}
k = size/2;
for (i=0; i<k; i++) {
    for (j=0; j<size; j++)
        if (m[i*size+j]==m[(size-i-1)*size + size-j-1]) {
            m[i*size+j]=0;
            m[(size-i-1)*size + size-j-1]=0;
        }
}
if(size&1)
    for(i=0; i<k; i++)
        if(m[k*size + i] == m[k*size + size-i-1]) {
            m[k*size + i]=0;
            m[k*size + size-i-1]=0;
        }
printf("\n\n"); 
for (i=0; i<size; i++, printf ("\n"))
    for (j=0; j<size; j++)
        printf ("%d\t", m[i*size+j]);
free(m);
return 0;
            }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.01.2014, 14:57
Ответы с готовыми решениями:

Составить матрицу, на месте симметричных элементов которой будут стоять 0
Составить матрицу,на месте симметричных элементов которой будут стоять 0 (Си)! Хэлп,плиз,заранее...

Сгенерировать новую матрицу из элементов данной матрицы, но с заменой элементов на их квадратный корень
Пусть дана какая либо матрица размерностью 3х3, заполненная рандомно a,b,.. , необходимо...

Сгенерировать матрицу М на N случайных неповторяющихся элементов от 0 до 300
Сгенерировать матрицу М на N случайных неповторяющихся элементов от 0 до 300. Вывести на экран,...

Сгенерировать матрицу, подсчитать сумму элементов четных строк
Здравствуйте, пишу код, возникла ошибка, помогите исправить. Сгенерировать матрицу размером m х...

2
Эксперт С++
4727 / 2548 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
25.01.2014, 06:27 2
Цитата Сообщение от Iidar Посмотреть сообщение
программа то работает,то нет
на каких входных данных не работает? Напишите их здесь.
В коде реализована проверка симметричности относительно центрального элемента матрицы (центра матрицы). И он работает правильно.
0
0 / 0 / 0
Регистрация: 08.12.2013
Сообщений: 25
25.01.2014, 11:08  [ТС] 3
все выполняется верно для матриц нечетного порядка,для четных нужно было проверить симметричность относительно главной диагонали,что пока не очень получается

Добавлено через 6 минут
m[i][n-j]==m[n-i][j] ,но пока никак не реализуется
0
25.01.2014, 11:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.01.2014, 11:08
Помогаю со студенческими работами здесь

Сгенерировать целочисленную матрицу из элементов, принадлежащих заданному диапазону
Сгенерировать матрицу размерностью 8 на 5 из элементов целого типа в диапазоне

В заданном массиве поменять местами значения, стоящие на симметричных, относительно центра, местах
В заданном массиве поменять местами значения, стоящие на симметричных, относительно центра, местах....

Сформировать новую строку путем «сокращения» одинаковых букв, находящихся на симметричных местах
Дана строка, содержащая только маленькие английские буквы. Сформировать новую строку путем...

Сгенерировать квадратную матрицу T: m x n. Найти произведение элементов на главной диагонали
Сгенерировать квадратную матрицу T: m x n.Записать ее в файл matrica.txt. Вычислить произведение...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru