پروژه پیاده سازی عملی خوشه بندی متلب

, , پیغام بگذارید

با استفاده از دستور xlsread کدها را شروع می کنیم . با استفاده از این کد می توانیم
داده های ذخیره شده از خروجی Excel را به یک ماتریس در متلب تبدیل کنیم که این
ماتریس فقط شامل مقادیر عددی می باشد .
برای استفاده از همه محتوای جدول ) رشته و عدد ( از دستور dataset می توانیم
استفاده کنیم .
inp= xlsread(‘d:\data3.xlsx’);
[R0 C0]= size(inp);
دستور بالا تعداد سطر و ستون ماتریس ورودی، (inp) ، را به ما می دهد .
برای مشخص کردن تعداد خوشه ها از کد زیر استفاده می کنیم :
cluster= 4;
پس در این مرحله به سراغ تابع Fuzzy Cluster Means رفته و با دادن ورودی های
مناسب، خروجی های مطلوب را از این تابع می گیریم : مرکز خوشه ها //[center,U]= fcm(inp,cluster);

در این کد دو خروجی center و U از دو ورودی inp ) ماتریس ورودی ( و cluster ) تعداد خوشه ها ( حاصل می شوند . خروجی U میزان وابستگی هر فرد به هر یک از خوشه ها را نشان می دهد .
حال از آنجا که ماتریس U یک ماتریس رندم است، با استفاده از دستورات زیر این
ماتریس را ثابت می کنیم و این ماتریس ثابت شده جدید را U3 می نامیم :
[R2 C2]= size(U);
U2(:,1)= sort(U(:,1),’descend’); sort شده نفر اول رو توی u2 میریزد
for i= 1:cluster
k=find(U(:,1)== U2(i,1));
U3(i,:)= U(k,:);
End
با استفاده از فرامین زیر نیز شروع به دسته بندی افراد براساس شماره آنها می کنیم :
پروژه دات کام – www.Prozhe.com
maxU3 = max(U3);
Index= 0;
for i = 1:cluster
t = find(U3(i, 🙂 == maxU3);
v = genvarname(‘Index’, who);
eval([v ‘ =t’]);
clc
end
با استفاده از سه ماتریس c1 ، c2 ، c3 سه رنگ مختلف برای نمایش اطلاعات بر
رروی شکل استفاده می کنیم :
c1= [44 210 200]./255;
c2 =[242 174 44]./255;
c3= [19 93 19]./255;

ماتریس name را نیز برای نامگذاری محورهای مختصات شکلها ایجاد می کنیم :
name= {‘Khesarat’ ‘Car’ ‘Model’ ‘Jensiat’ ‘Sen’ ‘Tedade Ranande’ ‘Tahsilat’};
به کمک مجموعه دستورهای زیر، با استفاده از فرامین plot و line ، افراد مختلف را
با توجه به جایگاه آنها در هر دسته رسم می کنیم و با کمک دستور text جای آن فرد را
با علامت x مشخص می کنیم :
hf1= figure;
for i= 2:C0
حلقه for تک تک شکل ها را میکشد
subplot(2,fix(C0/2),i-1)
plot(inp(:,1),inp(:,i),’w.’); اول کل آدما رو میذارد یعنی همه نقاط رو میکشه
line(inp(Index1,1),inp(Index1,i),’linestyle’,’none’,…
پروژه دات کام – www.Prozhe.com
‘marker’, ‘.’,’color’,c3);
رنگ به نقطه میدهد، یعنی با line آدما رو رنگ میکنه
همه آدمهای توی index1 خصیصه اول بر حسب خصیصه i ام رسم میکند
line(inp(Index2,1),inp(Index2,i),’linestyle’,’none’,…
‘marker’, ‘.’,’color’,c1);
line(inp(Index3,1),inp(Index3,i),’linestyle’,’none’,…
‘marker’, ‘.’,’color’,c2);
line(inp(Index4,1),inp(Index4,i),’linestyle’,’none’,…
‘marker’, ‘.’,’color’,’r’);
xlabel(‘Khesarat’)
ylabel(name(i))
b= [min(inp(:,1))-10 max(inp(:,1))+10 min(inp(:,i))-(max(inp(:,i))-…
پروژه دات کام – www.Prozhe.com
min(inp(:,i)))/15 max(inp(:,i))+(max(inp(:,i))-min(inp(:,i)))/15];
axis (b)
text(inp(x-1,1),inp(x-1,i),’ \leftarrow X’,’FontSize’,18)
grid on
if i== 2
legend([c3 c1 c2 ‘r’],’Khoob’,’Nesbatan Khoob’,’Nesbatan Bad’,…
‘Bad’,’Location’,’SouthWestOutside’)
end
end

با استفاده از دستورات زیر یک ماتریس جدید ایجاد کرده که ستون اول این
ماتریس برابر جمع تمامی ستونهای ماتریس ورودی می باشد و ماتریس های دیگر
نیز با توجه به هر خوشه تعریف می شوند :
inp2(:,1)= inp(:,1);
for i= 2:C0
inp2(:,1)= inp2(:,1)+inp(:,i);
end توی index شماره سطر هر آدم توی ماتریس ورودی inp است inp3= U3(1,Index1)’;
inp4= U3(2,Index2)’+1;
inp5= U3(3,Index3)’+2;
inp6= U3(4,Index4)’+3;
دستورات بالا ما را در رسم شکل دوم کمک می کند .

دستورات زیر نیز برای رسم شکل بکار برده می شود :
hf2= figure;
plot(inp3,inp2(Index1,1),’*’,’color’,c3)
hold on
plot(inp4,inp2(Index2,1),’*’,’color’,c1)
hold on
plot(inp5,inp2(Index3,1),’*’,’color’,c2)
hold on
plot(inp6,inp2(Index4,1),’r*’)
legend(‘Khoob’,’Nesbatan Khoob’,’Nesbatan Bad’,…
‘Bad’,’Location’,’SouthWestOutside’)

و در آخر با اجرای دستورات زیر یک فایل txt که شامل مقادیر تمامی دسته ها
می باشد را در مسیر مشخص شده ذخیره میکنیم ) که اگر این فایل از قبل وجود
داشته باشد آنرا پاک می کنیم : (
delete d:\Index.txt
dlmwrite(‘d:\Index.txt’,’A’)
dlmwrite(‘d:\Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,Index1,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,’B’,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,Index2,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,’C’,’-append’, ‘roffset’, 0)
پروژه دات کام – www.Prozhe.com
dlmwrite(‘d:\Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,Index3,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,’D’,’-append’, ‘roffset’, 0)
dlmwrite(‘d:\Index.txt’,’,’,’-append’, ‘roffset’, 0)

dlmwrite(‘d:\Index.txt’,Index4,’-append’, ‘roffset’, 0

درقسمت پایین سورس برنامه نویسی تو زبان متلب موجود است

function[]=Cluster()
close all
%% Import Data
inp= xlsread(‘prozhe.xlsx’);
[R0 C0]= size(inp);
%% Using FCM
cluster= 4;
[center,U]= fcm(inp,cluster);
%% Sorting The U Matrix

%%baraye inke har seri be ma yek dadeye tasadofi nadahad

[R2 C2]= size(U);
U2(:,1)= sort(U(:,1),’descend’);
for i= 1:cluster
k=find(U(:,1)== U2(i,1));
U3(i,:)= U(k,:);
end
%% Calling Indexes
maxU3 = max(U3);
Index= 0;
for i = 1:cluster
t = find(U3(i, 🙂 == maxU3);
v = genvarname(‘Index’, who);
eval([v ‘ =t’]);
end
clc
%% Plotting the Datasets in 6 shapes
c1= [44 210 200]./255;
c2 =[242 174 44]./255;
c3= [19 93 19]./255;
name= {‘Khesarat’ ‘Car’ ‘Model’ ‘Jensiat’ ‘Sen’ ‘Tedade Ranande’ ‘Tahsilat’};
hf1= figure;
for i= 2:C0
subplot(2,fix(C0/2),i-1)
plot(inp(:,1),inp(:,i),’w.’);
line(inp(Index1,1),inp(Index1,i),’linestyle’,’none’,…
‘marker’, ‘.’,’color’,c3);
line(inp(Index2,1),inp(Index2,i),’linestyle’,’none’,…
‘marker’, ‘.’,’color’,c1);
line(inp(Index3,1),inp(Index3,i),’linestyle’,’none’,…
‘marker’, ‘.’,’color’,c2);
line(inp(Index4,1),inp(Index4,i),’linestyle’,’none’,…
‘marker’, ‘.’,’color’,’r’);
xlabel(‘Khesarat’)
ylabel(name(i))
b= [min(inp(:,1))-10 max(inp(:,1))+10 min(inp(:,i))-(max(inp(:,i))-…
min(inp(:,i)))/15 max(inp(:,i))+(max(inp(:,i))-min(inp(:,i)))/15];
axis (b)
grid on
if i== 2
legend([c3 c1 c2 ‘r’],’Khoob’,’Nesbatan Khoob’,’Nesbatan Bad’,…
‘Bad’,’Location’,’SouthWestOutside’)
end
end
%% Making a New Matrix
inp2(:,1)= inp(:,1);
for i= 2:C0
inp2(:,1)= inp2(:,1)+inp(:,i);
end
inp3= U3(1,Index1)’;
inp4= U3(2,Index2)’+1;
inp5= U3(3,Index3)’+2;
inp6= U3(4,Index4)’+3;
%% Plotting the New Matrix in a Combined Form
hf2= figure;
plot(inp3,inp2(Index1,1),’*’,’color’,c3)
hold on
plot(inp4,inp2(Index2,1),’*’,’color’,c1)
hold on
plot(inp5,inp2(Index3,1),’*’,’color’,c2)
hold on
plot(inp6,inp2(Index4,1),’r*’)
legend(‘Khoob’,’Nesbatan Khoob’,’Nesbatan Bad’,…
‘Bad’,’Location’,’SouthWestOutside’)
%% Saving the result in a TXT File
dlmwrite(‘Index.txt’,’A’)
dlmwrite(‘Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,Index1,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’B’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,Index2,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’C’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,Index3,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’D’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,’,’,’-append’, ‘roffset’, 0)
dlmwrite(‘Index.txt’,Index4,’-append’, ‘roffset’, 0)

در زیر نیز داده های برنامه فوق موجود است به همین شکل تو محیط ایکسل کوپی کنید

khesarat car model jensiat sen tedadeRanande tahsilat
10 10 1.5 1 6 1.5 4
40 23.3 5.5 1 24 5 9.3
70 36.6 9.5 2 30 8.5 14.6
100 50 13.5 2 60 12 20
80 25 13.5 2 60 12 20
50 25 7.5 1 36 4.5 10
10 10 1.5 1 6 1.5 4
100 50 13.5 2 60 12 20
10 40 13.5 1 6 1.5 12
20 50 10.5 1 36 3 18
100 25 4.5 2 36 1.5 16
90 35 7.5 1 6 3 10
30 10 1.5 2 18 6 18
40 10 3 1 54 3 6
35 29 10 1 42 2 10
58 47 12 2 46 9 18
91 47 14 1 48 5 6
76 50 7 2 28 6 11
50 47 10 2 7 10 7
66 48 15 2 35 3 4
80 17 2 1 39 7 11
37 11 15 2 28 5 14
17 21 4 1 8 8 5
92 28 1 2 11 5 7
89 18 10 1 57 11 11
30 14 13 1 29 2 19
84 36 3 2 20 8 4
38 35 1 2 45 10 7
63 41 15 2 48 4 5
26 11 15 2 49 6 16
91 14 7 2 47 5 9
20 38 4 1 15 3 6
59 49 8 2 23 1 6
64 29 7 1 58 11 6
17 23 15 2 18 9 16
95 14 9 1 45 1 20
68 14 10 2 55 6 6
55 21 14 2 46 4 12
53 23 2 2 44 5 15
75 34 10 1 29 7 16
83 18 15 2 44 8 20
58 44 12 1 8 8 19
52 31 10 2 49 11 5
47 48 3 1 13 9 20
16 18 11 2 58 2 16
84 33 9 1 58 4 9
13 27 11 1 54 1 14
34 48 2 2 34 6 8
43 32 7 2 59 10 7
36 14 13 1 10 8 11
77 42 9 1 21 5 11
34 19 11 2 35 1 4
17 23 12 2 53 12 16
30 19 7 2 9 7 13
99 17 9 1 50 12 12
90 15 15 1 41 3 17
28 35 6 1 10 5 7
30 42 7 2 51 4 15
34 27 2 2 35 6 6
12 42 9 1 11 12 4
89 42 5 1 15 4 9
40 12 15 1 36 4 11
94 34 3 2 44 7 10
75 40 9 2 54 5 4
31 44 15 2 11 6 12
100 22 5 2 6 9 5
28 30 4 1 37 7 6
75 15 6 2 54 3 7
22 45 2 2 51 9 16
15 42 2 2 17 2 6
14 12 13 1 32 4 4
68 24 5 2 54 3 8
62 19 6 2 59 10 19
75 31 5 2 55 4 5
22 37 10 2 22 1 20
36 47 4 1 36 2 4
92 45 12 2 29 10 11
87 47 13 2 31 3 15
56 48 11 2 18 4 7
56 43 4 2 39 8 12
96 12 8 1 43 8 12
88 36 7 2 33 12 18
12 40 10 2 47 10 15
59 14 14 2 41 5 12
95 39 11 2 19 9 11
73 35 13 1 36 6 15
64 21 4 2 34 3 4
57 12 4 2 52 1 11
61 19 4 1 9 7 11
63 45 13 2 37 4 7
21 40 6 1 46 1 18
46 13 6 1 53 3 8
95 18 6 2 39 2 15
90 25 2 1 56 6 18
91 43 7 2 24 4 14
19 37 2 1 43 11 5
16 45 8 2 57 9 17
91 15 8 2 22 2 10
85 49 5 2 35 9 6
85 17 14 2 37 9 9
48 46 3 1 58 3 6
31 45 3 1 21 6 4
34 38 12 1 19 2 16
83 46 7 1 36 8 12
45 24 14 1 12 8 8
26 37 6 1 57 7 12
15 17 12 1 9 10 12
40 35 14 1 56 6 9
13 12 10 1 25 6 18
30 28 10 1 58 7 16
100 32 11 1 6 2 4
83 47 11 1 31 7 7
35 10 8 2 34 7 15
76 28 7 2 32 2 19
86 44 1 2 43 3 16
79 29 6 2 30 10 9
98 30 2 2 41 7 11
87 13 7 2 33 7 16
73 23 10 2 42 8 9
44 31 14 1 26 12 6
11 30 12 1 46 5 20
77 16 9 2 12 3 17
37 35 5 2 43 1 6
28 48 4 2 11 9 11
18 32 11 1 56 12 20
54 17 3 1 8 7 6
64 13 12 2 47 6 6
35 11 12 2 56 8 11
76 22 13 1 42 12 4
15 39 2 1 12 9 10
38 35 8 2 35 1 20
67 21 6 1 56 3 11
13 13 7 1 35 5 19
42 12 15 1 23 6 5
64 40 6 1 35 3 18
69 46 14 1 31 3 9
61 34 11 1 14 12 6
56 17 2 2 22 5 13
71 21 7 1 24 3 16
10 14 11 2 10 3 10
45 43 6 1 34 11 14
66 42 7 1 22 11 15
28 10 12 1 56 2 13
36 26 2 2 52 6 5
58 29 13 2 37 11 13
51 22 5 1 8 4 15
56 11 10 2 42 3 20
69 33 1 2 20 10 6
20 42 2 2 14 2 9
14 46 9 2 46 4 15
54 48 6 1 52 10 10
72 14 7 1 60 10 7
91 10 11 1 34 12 20
77 40 3 2 34 6 10
21 38 11 2 33 2 18
28 47 9 1 15 4 16
77 47 7 2 11 8 7
77 37 7 1 30 9 10
35 18 11 1 43 4 12
37 41 8 1 39 6 20
23 26 4 1 38 9 11
76 38 12 2 15 6 19
98 48 15 2 14 6 8
11 40 9 1 38 10 19
78 18 4 1 6 1 19
82 21 8 2 20 5 6
66 34 3 1 27 6 9
66 32 12 2 54 6 17
32 16 11 2 55 9 8
70 21 10 2 15 10 18
66 42 2 2 18 1 7
57 43 2 1 39 1 14
45 41 2 1 29 1 20
73 41 8 1 26 3 10
67 29 10 1 28 5 6
20 27 2 1 57 12 14
67 25 7 2 21 12 9
29 38 14 2 38 8 20
35 26 10 2 41 1 13
55 32 10 1 34 9 19
34 14 14 1 58 7 11
86 41 14 1 17 7 18
62 33 4 1 22 10 18
47 42 8 2 18 5 15
95 48 8 2 41 5 12
37 31 13 1 47 8 18
30 46 11 1 34 7 15
58 20 7 1 41 2 18
60 23 15 1 16 11 10
91 13 5 2 35 12 10
15 46 2 1 19 11 7
81 20 6 1 21 7 12
74 19 14 2 7 2 8
58 49 6 1 48 8 15
37 38 13 1 14 11 10
37 49 1 2 51 7 14
91 23 13 2 60 9 20
75 15 5 1 19 5 13
23 27 13 2 27 2 8
30 47 12 1 24 7 11
86 35 6 1 7 2 6
94 46 8 2 51 7 11
81 32 2 2 40 3 5
94 20 11 1 42 3 12
69 18 4 2 36 4 5
62 11 14 2 22 9 7
50 31 14 1 54 4 20
50 19 14 1 31 12 6
12 37 5 1 20 2 14
84 23 13 2 9 2 10
11 44 11 2 45 12 15
22 41 5 2 31 4 18
90 33 15 2 46 1 4
70 27 11 2 6 10 17
10 29 2 1 37 5 7
47 40 10 2 22 10 17
34 31 11 2 30 1 14
41 36 5 2 23 12 14
66 17 4 1 22 10 9
17 20 5 1 55 9 12
73 11 4 2 25 9 13
81 15 5 2 29 1 4
69 34 15 1 39 11 15
44 10 4 2 53 8 9
28 41 8 1 15 12 14
60 36 5 1 17 6 17
39 22 6 2 28 11 11
78 18 9 1 38 8 14
82 26 7 1 12 6 5
31 26 14 1 14 5 13
99 12 9 1 45 4 20
17 41 2 2 49 1 16
69 12 8 1 46 5 19
24 46 15 1 41 12 16
41 30 6 1 12 7 7
90 43 5 2 25 2 14
27 18 5 1 16 2 16
17 35 2 2 30 12 4
77 38 10 2 32 2 20
94 38 2 2 17 11 15
48 31 9 1 23 5 19
63 15 11 2 11 8 19
83 17 7 1 10 5 17
77 31 5 2 53 1 10
39 39 7 1 54 10 4
19 32 10 2 27 6 7
68 11 1 2 42 6 7
83 37 14 1 33 12 8
44 41 7 2 22 8 20
38 15 3 1 18 4 19
71 33 9 2 24 5 4
81 31 7 1 9 9 7
18 22 14 2 51 5 12
55 20 1 2 56 10 15
90 21 4 2 45 4 8
89 22 8 1 54 3 19
20 13 5 2 47 8 14
73 14 8 1 39 12 5
65 32 13 1 51 6 4
77 23 5 1 49 7 4
61 13 6 1 10 4 14
10 32 14 1 23 1 8
78 20 15 1 15 9 6
20 49 5 1 30 8 5
82 48 3 1 19 10 9
53 49 14 2 54 1 17
65 50 5 1 6 4 4
81 50 2 1 56 12 19
29 44 10 1 29 10 8
38 30 6 1 33 4 4
92 40 6 2 58 10 20
25 11 15 2 53 2 4
56 41 11 2 41 4 13
61 14 13 2 24 2 16
91 25 1 1 51 11 4
65 46 4 1 53 11 6
27 25 15 1 46 8 19
24 22 4 2 24 1 9
43 22 7 2 44 7 20
77 29 5 2 7 8 16
89 21 7 2 44 4 19
42 45 9 2 29 11 17
27 46 5 1 57 7 18
91 30 13 2 16 5 8
56 30 6 1 13 8 20
67 15 8 2 57 10 12
65 14 5 2 26 4 5
61 50 9 1 37 7 5
86 42 6 1 25 5 15
34 43 4 1 55 8 15
21 24 9 1 46 12 12
49 50 10 2 48 7 5
38 27 14 2 31 5 5
40 50 6 1 29 2 4
43 46 7 1 11 10 17
77 50 7 1 37 8 18
67 21 11 1 7 4 10
44 34 10 1 32 6 17
58 33 6 2 47 3 20
31 43 1 2 20 10 17
38 20 9 1 19 12 10
89 44 8 1 16 6 8
59 33 9 2 31 4 19
17 15 13 1 16 4 10
100 11 3 1 14 9 17
77 36 13 1 23 5 10
26 28 2 1 59 3 19
71 20 12 1 15 10 17
76 12 9 2 6 11 20
61 18 9 1 44 1 17
85 30 14 2 53 2 6
42 37 1 1 24 5 19
80 13 6 2 33 4 13
99 31 5 1 59 7 15
77 19 1 2 11 5 11
31 36 7 1 33 4 7
34 42 3 2 17 4 11
89 50 8 1 58 4 20
93 18 7 2 6 8 12
42 31 8 2 56 5 8
97 10 12 2 22 6 11
73 47 1 2 44 6 19
88 44 14 1 30 2 11
75 12 7 1 25 10 11
59 22 9 1 35 3 16
93 13 3 1 32 2 6
98 38 4 2 40 7 11
18 46 15 1 18 5 19
13 25 5 1 59 5 6
30 29 4 2 36 5 12
38 23 13 1 27 2 18
98 48 7 1 14 5 4
87 32 3 1 49 9 6
81 37 2 1 36 9 6
88 31 10 2 56 8 8
78 40 1 1 58 11 8
62 43 2 1 30 7 7
71 18 6 2 8 1 11
87 38 1 2 21 9 8
83 34 12 2 36 10 17
60 14 15 2 19 3 19
100 13 13 2 41 3 19
50 46 12 2 48 8 17
13 16 2 1 54 7 7
93 18 14 2 28 2 19
83 44 1 1 37 6 19
53 45 1 2 16 5 8
27 21 11 2 54 8 9
87 41 6 1 47 12 12
35 12 5 1 56 5 6
12 31 1 2 27 12 7
99 24 6 1 19 6 4
52 15 15 2 16 2 5
39 32 13 1 41 11 6
65 30 3 2 9 10 15
83 27 10 1 17 6 9
57 23 1 1 55 9 20
70 35 7 1 58 2 16
31 15 6 2 20 12 16
51 44 9 1 9 10 7
42 42 8 1 48 9 5
45 17 8 2 6 5 7
25 38 2 1 43 10 14
65 32 8 1 56 12 16
30 20 12 2 32 1 4
30 15 14 2 33 2 13
34 33 11 2 18 2 19
58 27 3 2 28 1 6
29 12 6 2 15 8 19
10 10 1.5 1 6 3 6
80 35 4.5 1 6 6 6
70 25 10.5 1 24 3 10
10 35 3 1 36 1.5 6
10 10 1.5 1 6 1.5 4
40 10 10.5 1 6 9 10
 

پاسخ دادن

anti spam *