برگزیده های پرشین تولز

برنامه ضرب ماتریس ها

niterider

Registered User
تاریخ عضویت
27 دسامبر 2002
نوشته‌ها
414
لایک‌ها
3
محل سکونت
The Most Beautifull Love , Tehran
آقایون دستم به دامنتون.
من یه برنامه می خوام که ضرب ماتریس ها رو به دو روش معمولی و الگوریتم استراسن محاسبه کنه. یعنی تو دو تا برنامه جدا از هم. ترجیحا می خوام که برنامه اش به زبان ++C باشه.
دمتون گرم خیلی واجبه
 

Mehdi.T

کاربر فعال برنامه نویسی
کاربر فعال
تاریخ عضویت
30 سپتامبر 2005
نوشته‌ها
506
لایک‌ها
3
محل سکونت
In Search of Sunrise
ميل داريد با استفاده از template ها و generic programming باشه ؟
همچنين مي خواهيد GUI هم داشته باشه اگر مي خواهيد ، براي چه OSباشه
اگر مي خواهيد ما براتون از unix تا tiger با ضمانت درست مي کنيم
--
راستي Optimize هم بشه ؟
lol
 

guido

کاربر تازه وارد
تاریخ عضویت
11 نوامبر 2006
نوشته‌ها
43
لایک‌ها
0
محل سکونت
Here
سلام
این برنامه به زبان سی هست اگه بدردتون بخوره ....

#include <stdio.h>
#define MAX 100

void GetMatrix(int,int,int,int); //get two matrix for multiply
int a[MAX][MAX];
int b[MAX][MAX];
main()
{
// extern a[][],b[][];
int ma,pa; //row and column for matrix a
int mb,pb; //row and column for matrix b
int c[MAX][MAX];
int i,j,sum=0,k=0;
printf("plz enter m p for a? ");
scanf("%d %d",&ma,&pa);
printf("plz enter m p for b? ");
scanf("%d %d",&mb,&pb);
if(pa!=mb)
printf("sorry,you can not multiply matrix a and b\n");
else {
GetMatrix(ma,pa,mb,pb);
for(i=0;i<ma;++i){
for(j=0;j<pb;++j){
for(k=0;k<ma;++k)
sum+=a[k]*b[k][j];
c[j]=sum;
sum=0;
}
}
for(i=0;i<ma;++i){
printf("\n");
for(j=0;j<pb;++j)
printf("%-3d ",c[j]);
}
}
printf("\n");
getchar();
}
void GetMatrix(int ma,int pa,int mb,int pb){ //get matrix
// extern a[][],b[][];
int i,j,tmp;
printf("enter matrix a\n");
for(i=0;i<ma;++i){ //get matrix a
for(j=0;j<pa;++j){
scanf("%d",&a[j]);
}
}
printf("ok, now enter matrix b\n");
for(i=0;i<mb;++i){ //get matrix b
for(j=0;j<pb;++j){
scanf("%d",&b[j]);
}
}
}




البته کلی بهم خورده اگه نفهمیدی PM بده راهنماییت می کنم.
 

niterider

Registered User
تاریخ عضویت
27 دسامبر 2002
نوشته‌ها
414
لایک‌ها
3
محل سکونت
The Most Beautifull Love , Tehran
این پروژه درس طراحی الگوریتم های منه. قراره برنامه ای نوشته بشه که ضرب ماتریس ها رو به دو روش معمولی و استراسن محاسبه کنه و پیچیدگی زمانی اونها رو به ازای n های بزرگ محاسبه کنه و اختلاف اونها رو نشون بده. حالا اگه بتونید کمکم کنید خیلی خوب میشه چون من تو برنامه نویسی ضعیفم و نمی تونم الگوریتمم رو به ++C بنویسم
 

niterider

Registered User
تاریخ عضویت
27 دسامبر 2002
نوشته‌ها
414
لایک‌ها
3
محل سکونت
The Most Beautifull Love , Tehran
من از 4 سال پیش که تو این فروم عضو هستم می دونم که اینجا جایی بوده برای آموزش و گاهی هم رفع مشکل اعضای فروم. حالا دلیل نمیشه که من اگه اینجا مشکل دارم و کارم خیلی فوریه و کمک خواستم شما بیای و با این لحن بگی که انقدر بیکار نیستین که مشکل من رو حل کنید. اگه خیلی کار دارین می تونین این حرف رو هم اینجا پست نکنین و به کارتون برسین
 

royartr

کاربر تازه وارد
تاریخ عضویت
2 فوریه 2007
نوشته‌ها
2
لایک‌ها
0
salam , khaste nabashid.
age mishe be mailam barnamete zarbe sterasen ro send konid ,baraye porojeye tarahi algorithm mikham
kheili vajebe
mamnoon.:)
 

raxtastar

"کاربرفعال ورزش""کاربر قدیمی پرشین تولز
کاربر فعال
تاریخ عضویت
7 ژوئن 2005
نوشته‌ها
1,959
لایک‌ها
672
سن
39
// 578458.cpp : Defines the entry point for the console application.
//

#include"stdafx.h"
#include<stdio.h>
#include<conio.h>
main()
{
int n;
scanf("%d",&n);

int a[100][100],b[100][100],c[100][100];

int i,j,k;

for ( i=0;i<n; i++)


for ( j=0;j<n; j++)
{

printf("enter a[%d][%d]:",i,j);

scanf ("%d" ,&a[j] ) ;

}

for ( i=0;i<n; i++)

for ( j=0;j<n; j++ )

{

printf("enter b[%d][%d]:",i,j);


scanf ("%d" , &b [j]) ;

}

for ( i=0;i<n ; i++ )


for (j=0; j<n;j++ )


{
c[j] = 0 ;


for (k=0;k<n; k++)

c[j] = c[j] + a[k] * b[k][j] ;

}

printf("\n hasele zarbe a&b");

printf ("\n") ;

for (i=0;i<n;i++ )

{

for ( j=0;j<n; j++ )

printf ("%3d" , c[j] ) ;

printf ("\n") ;
}

getch();

}
 

royartr

کاربر تازه وارد
تاریخ عضویت
2 فوریه 2007
نوشته‌ها
2
لایک‌ها
0
salam
in barname zarbe sterasen hast?
manoon age javab bedin.
:)
 
بالا