Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <math.h>
- #include <stddef.h>
- #include <time.h>
- typedef struct Matrix{
- int ncolumns;
- int nrows;
- int **c;
- } Matrix;
- int randomazer (int min, int max){
- int random;
- random = rand();
- random = ((float)random / RAND_MAX)*(max-min)+min;
- return(random);
- }
- Matrix create (int n, int min, int max){
- Matrix A;
- int i=0,j=0;
- if (( A.c = malloc ( n * sizeof ( int *))) == NULL )
- exit (1);
- for (i = 0; i < n ; i++ ) {
- if (( A.c[i] = malloc ( n * sizeof ( int ))) == NULL )
- exit (2);
- }
- for (i = 0; i < n; i++){
- for ( j = 0; j < n; j++){
- A.c [i][j] = randomazer(min, max);
- }
- }
- A.nrows = n;
- A.ncolumns = n;
- return A;
- }
- Matrix sum (Matrix A, Matrix B){
- Matrix n;
- n = create (A.nrows, A.ncolumns, 0);
- int i=0, j=0;
- for (i=0; i<A.nrows; i++){
- for ( j=0; j<A.ncolumns; j++){
- n.c[i][j]=A.c[i][j]+B.c[i][j];
- }
- }
- n.nrows;
- n.ncolumns;
- return n;
- }
- Matrix sum (Matrix A, Matrix B){
- Matrix n;
- n = create (A.nrows, A.ncolumns, 0);
- int i=0, j=0;
- for (i=0; i<A.nrows; i++){
- for ( j=0; j<A.ncolumns; j++){
- n.c[i][j]=A.c[i][j]+B.c[i][j];
- }
- }
- n.nrows;
- n.ncolumns;
- return n;
- }
- void output (Matrix A){
- int i=0, j=0;
- for (i=0; i<A.nrows; i++){
- for ( j=0; j<A.ncolumns; j++){
- printf ("%d ", A.c [i][j]);
- }
- printf (" \n" );
- }
- }
- int main (void) {
- srand(time(NULL));
- Matrix A;
- Matrix B;
- Matrix C;
- int n = 4;
- A = create (n, 0, 10);
- B = create (n, 0, 10);
- output (A);
- printf ("\n");
- output (B);
- C = sum(A, B);
- printf ("\n");
- output (C);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement