Умножить матрицу на транспонированную - C (СИ)

  1. Дана матрица A.Получить матрицу AA*.Где (A*транспонированная) на си


textual

Код:

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
# define n 3
int main()
{
 srand(time(NULL));
 int i,j,k, a[n][n],b[n][n],c[n][n];
 printf("Random matrix A\n");
 for (i=0; i<n; i++)
  {
   for(j=0; j<n; j++)
    {
      a[i][j]=rand()%10;
      printf("%3d",a[i][j]);
    }
   printf("\n");
  }
 printf("\nTransposition matrix A*\n");
 for (j=0; j<n; j++)
  for(i=0; i<n; i++)
   b[i][j]=a[j][i];
 for (i=0; i<n; i++)
  {
   for(j=0; j<n; j++)
    {
     printf("%3d",b[i][j]);
    } 
   printf("\n");
  }
 for (i=0; i<n; i++)
  {
   for(j=0; j<n; j++)  
    {
     c[i][j]=0;
     for (k=0; k<n; k++)
      c[i][j]+=(a[i][k]*b[k][j]);
    }
  }
 printf("\nProduct A & A*\n");
 for (i=0; i<n; i++)
  {
   for(j=0; j<n; j++)
    {
      printf("%5d",c[i][j]);
    }
   printf("\n");
  }
 getch();
 return 0;
}


Похожие ответы
  1. Помогите пожалуйста составить программу, которая печатает на экране квадратную матрицу, размерность которой вводит пользователь с клавиатуры. 1 1 . . . . 1 2 2 . . . 2 3 3 3 . 3 . . . . . n . . . 0

  1. дан двумерный массив, вставить в него два столбца из чисел 1: один после К1-го столбца. второй-перед К1-м столбом.

  1. дан двумерный массив, вставить в него два столбца из чисел 1: один после К1-го столбца. второй-перед К1-м столбом.

  1. Получить матрицу В (nxn), в которой элемент Bij определяется как произведение наибольшего и наименьшего элемента исходной матрицы из области, определяемой индексами i и j следующим образом:

  1. Доброго времени суток, долго мучался с двумерным массивом и его упорядочиванием, в конце концов что то получилось, матрицу выводит, но считает не верно, ещё и после упорядочивания выводит матрицу не 8х8, а 7х10 с неполной последней строкой, подскажите, пожалуйста, в чём я ошибся?C1 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 #include #include #include   #define MIN_VALUE -100 #define MAX_VALUE 100   #define ROWS    8 #define COLS    8   int main(int argc, char **argv) {     setlocale(LC_ALL, "RUSSIAN");       int A[8][8];     int i, k, n,t;     n = 8;       printf("Матрица до сортировки\n");     for (i = 0; i < ROWS; ++i)     {         for (k = 0; k < COLS; ++k)         {             A[i][k] = rand() % 50-25;//заплнене случайным числами             printf("%d\t", A[i][k]);         }         printf("\n");   // каждую строку матрицы выводим на новой строке     }       for(i = 0; i

  1. 5.95 Получить квадратную матрицу порядка n по заданному образцу: 1 2 3 … n-2 n-1 n 2 1 2 … n-3 n-2 n-1 3 2 1 n-4 n-3 n-2 . . . … . . . . . … … . . n-1 n-2 n-3 … 2 1 2 n n-1 n-2 … 3 2 1 Нужно решить задачу с помощью указателей. Есть решение, не используя их:C1 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 #include #include #include #include #define n1 100 #define m1 100 void main(void) {     clrscr();     int a[n1][m1], n, i, j, temp, k, v;     randomize();     printf("Vvedite n - ");     scanf("%i", &n);     for (i = 0; i < n; i++)     {         a[i][i] = 1;         for (j = i + 1; j <= n; j++)         {             a[i][j] = (j - i) + 1;             a[j][i] = (j - i) + 1;         }     }     for (i = 0; i < n; i++)     {         for (j = 0; j < n; j++)             printf("%i  ", a[i][j]);         printf("\n");     }     getch(); }

  1. Написать программу для решения поставленной задачи

  1. Создать квадратную матрицу целых чисел размером 9х9. В индивидуальных заданиях указано, какую обработку матрицы требуется выполнить. Если по условию задания матрицу следует заполнить случайными числами, рекомендуем выбирать эти числа из диапазона 0 - 99. Если по условию задания в матрицу следует записать ЛП - линейную последовательность чисел, имеется в виду последовательность: 1, 2, 3, ...

  1. Помогите пожалуйста в решение задания. Дана матрица первый элемент которой а=5, каждый последующий элемент больше предыдущего на 5. Каждый нечётный элемент матрицы отрицательный (матрица 3х3) Надо написать программу которая позволила бы повернуть матрицу на 90, 180 и 270 градусов. не могли бы вы помочь в создание алгоритма, который какраз создаст эту матрицу.. :confused: :confused: :confused:

  1. почему не работает?C1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #include   int sampleMatrix[3][5]={     {7,16,55,13,12},     {12,10,52,0,7},     {-2,1,2,4,9}     };     int newMatrix[5][3]; void transpose(int sampleMatrix[3][5],int newMatrix[5][3]){         int rows=3;     int column=5;     for(int i=0;i