Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import std.getopt;
- import std.stdio;
- immutable int n = 1000;
- void main(string[] args){
- auto A = new double[n*n];
- double[] B = new double[n*n];
- double[] C = new double[n*n];
- matrix!(typeof(A)).ini(A, n);
- matrix!(typeof(A)).ini(B, n);
- matrix!(typeof(A)).MatMul(A,B,C, n);
- }
- template matrix(T){
- void ini(T mtx, int n){
- for(int i = 0; i < n; i++) {
- for(int j = 0; j< n; j++) {
- mtx[i + n*j] = i*j + 0.6*j +3.4;
- }
- }
- }
- void MatMul(T A, T B, T C, int n){
- for(int k = 0; k < n; k++) {
- for(int i = 0; i < n; i++) {
- for(int j = 0; j < n; j++) {
- C[i + n*k] += A[i + n*j] * B[j + n*k];
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement