Автор Тема: функции задания с матрицами  (Прочитано 2346 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ЛенаМ

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
функции задания с матрицами
« : 14 Декабря 2012, 23:10:49 »
Даны 2 матрицы A и B. Используя функцию для каждой из них найти:
 Кроме этого написать функции а). для генерации элементов матриц; б).для чтения матриц их текстового файла. Использовать 3 файла (модуля) для заголовков и объявлений, для определений функций и для основной функции main.

 Вот 2 задания
 1.Выделить квадратную матрицу максимального размера в верхней левой её части.
 2.Выделить квадратную матрицу максимального размера в нижней правой её части.

 первую кое-как сделала с помощью друзей,а вот как вторую сделать что бы выводила в в нижней правой части не могу понять.в какой строке нужно переделать?

 вот код 1 программы
 #include "function.h"

 double drandom (double basa, double amplituda)
 { double x;
 x= basa + amplituda*(1.0*rand()/RAND_MAX);
 return x;
 }
 double**sozdmatr(int n, int m, double basa, double amplituda)
 {int i,j;
 double**a;
 a=new double*[n];
 for(i=0; i<n; i++)
 a=new double[m];
 for(i=0; i<n; i++)
 for(j=0; j<m; j++)
 a[j]= drandom(basa, amplituda);
 return a;
 }
 void print_matr(int n, int m, double**a, char*name)
 {int i,j;
 printf("Matrica %S:\n", name);
 printf("\n");
 for (i=0; i<n; i++)
 {
 for (j=0; j<m; j++)
 printf("%7.0lf \t",a[j]);
 printf("\n");
 }
 return;
 }
 int** fff(int n, int m, int** a, int &k)
 {int i,j;

 if (n>=m) k=m;
 else k=n;
 int** c;
 c=new int*[k];
 for(i=0; i<k; i++)
 c=new int[k];
 for (i=0; i<k;i++)
 for (j=0; j<k;j++)
 c[j]=a[j];

 return c;
 }
 void print_matri(int n, int m, int**a, char*name)
 {int i,j;
 printf("Matrica %S:\n", name);
 printf("\n");
 for (i=0; i<n; i++)
 {
 for (j=0; j<m; j++)
 printf("%4d \t",a[j]);
 printf("\n");
 }
 return;
 }
 int irandom(int basa,int amplituda)
 {
 int x;
 x= (int)(basa + amplituda*(1.0*rand()/RAND_MAX));
 return x;
 }
 int** sozdmatri(int n, int m, int basa, int amplituda)
 {int i,j;
 int**a;
 a=new int*[n];
 for(i=0; i<n; i++)
 a=new int[m];
 for(i=0; i<n; i++)
 for(j=0; j<m; j++)
 a[j]= irandom(basa, amplituda);
 return a;
 }



 #include <cstdlib>
 #include <math.h>
 #include <new>
 #include <ctime>
 #include <iostream>
 using namespace std;
 double drandom(double, double);
 int irandom(int,int);
 double **sozdmatr(int, int, double, double);
 void print_matr(int, int, double**, char*);
 int **fff(int, int, int**, int&);
 void print_matri(int n, int m, int**a, char*name);
 int** sozdmatri(int,int,int,int);




 #include "function.h"

 int main(int argc, char*argv[])
 {
 int**c;
 int**a;
 double**b;
 double*x;
 double*y;
 int n,m,i,j,k;
 srand(time(NULL));
 cout<<"Razm m a n =\n";
 cin>>n;
 cin>>m;
 a=sozdmatri(n,m,-5,10);
 print_matri(n,m,a,"kvadr n");
 /*b=sozdmatr(m,n, -5,10);*/
 // print_matr(m,n,b,"kvadr n");
 c=fff(n,m,a,k);
 print_matri(k,k,c,"kvadr c");

 system("PAUSE");
 return EXIT_SUCCESS;}



 помогите кто чем может)

 

Помогите решить задачу. Для матрицы создать следующие функции.

Автор алина 11

Ответов: 1
Просмотров: 4272
Последний ответ 24 Января 2010, 17:54:21
от InfStudent
Программа, численно посчитать первую и вторую производную функции

Автор serj-07

Ответов: 6
Просмотров: 8504
Последний ответ 18 Мая 2010, 20:58:48
от serj-07
составить структурную схему и программу для вычисления таблицы функции у=f(x)

Автор polja

Ответов: 0
Просмотров: 2925
Последний ответ 28 Марта 2013, 12:08:37
от polja
Задача Паскаль, вычисления таблицы значений функции

Автор Фея

Ответов: 1
Просмотров: 5636
Последний ответ 20 Декабря 2010, 21:14:20
от Фея
помогите, плиз, разделить на процедуры и функции...

Автор bifshtex

Ответов: 7
Просмотров: 3548
Последний ответ 09 Декабря 2009, 22:22:55
от InfStudent