مساعده في كتابة برنامج

السلام عليكم

كيف حالكم يا شباب

اخوكم في ورطه لان عندي أساينمنت على المات لاب ,انا أول مره أفتح على البرنامج ( أي نعم مطلوب مني برنامج أنا ما درسته )

فأتمنى منكم مساعدتي

السؤال فالمرفقات

وعندي سؤال ثاني الا وهو كيف اكتب المجموع E تحتها صفر و فوقها انفينيتي مثلا ^^

ومشكورين مقدما

وعليكم السلام
الاخ كنت على الاقل تعطنا ماحاولت فيه لنكمله لك
ايضا الاسئلة غير كاملة وتتعلق بصورة لم تضعها انت
من الافضل ان تضع لنا محاولتك لنساعدك في البقية

آآآآآآآآآآسف اخوي والله كنت بحطها بس شفت محد رد قلت محد بيساعدني

برجع من الجامعه بعد ساعه واحط الصورة والمعادله

بالنسبة للبدايه انا ما بدأت لاني ما اعرف للبرنامج اصلا !

السؤال الخامس هنا هو الي مربوط فالبرنامج

ان شاء الله ما اكون تأخرت ^^

وانا بحاول فيه بالليل وبحط الي وصلت له

مشكور و ما قصرت مقدما يا كابتن

هذا الكود كامل
بس المعادله الموجوده خطأ ما عرفت اكتب المعادله الصحيحه

يا ليت لو تعدلها لي ( ملاحظه : المعادله موجوده باساينمنت1 السؤال الخامس )

[CENTER]لخص لي المطلوب بارك الله فيك

الكود الذي ارفقته يشتغل دون مشكلة او خطا، فهل تريد تغيير الكود ؟ ام حل المسالة رقم 5؟

ارجو ان تشرح لي ببساطة ودقة جزاك الله خيرا

[/center]

اخوي الكود يشتغل بدون اي مشاكل

لكن الخطأ فالمعادلة بس

شوف المعادله الموجوده فالسؤال الخامس وحطها مكان المعادلة الي فالكود بس
هذا الي ابيه :slight_smile:

وشكرا

[CENTER]حسنا

الكود يحتاج بعض التغيير

الرجاء الصبر حتى المساء
[/center]

مشكووووووور وما قصرت

بنتظر الى المساء بس بالله لا تتأخر اكثر لان تسليمه بكره

ومشكووووور والله يجزاك خير يالحبيب

[CENTER]اخي كنت مشغول اسف

قمت بتعديل الكود حتى تصبح النتائج مطابقة لما وصل اليه الاستاذ

عندك 3 اسئلة

السؤال الاول

يريد ان يصل الى نتيجة مثل نتيجة الاستاذ
وضعت 5 قيم ل k ممكن يدخلها المستخدم

clear all
clc
close all
% Question 'a' ============================================================
k=zeros(1,5);
A= input('Inter number A: ');
T= input('Inter number T: ');
for i=1:5
k(i)= input(strcat('Inter number k',num2str(i),': ')); 
end
colorm=['b-.' 'g--' 'c: ' 'k  ' 'm-.'];
t=-T/2:0.01:T/2;
s=zeros(size(t));
for x=1:length(t)
    s(x)=((-2*A*t(x)/T)+ A)*(0 <= t(x))*(t(x)<=(T/2));
end
plot(t,s,'r-','LineWidth',2);
s_e=zeros(size(t));
for j=1:5
for x=1:length(t)
    sum1=0;
    sum2=0;
    for n=1:k(j)
       sum1=sum1+(1/n)*sin(2*pi*n*t(x)/T);
       if rem(n,2)~=0
        sum2=sum2+(1/n^2)*cos(2*n*pi*t(x)/T);
       end
    end
    s_e(x)=(A/4)+(2*A)/(pi^2)*sum2+(A/pi)*sum1;
end
hold on
plot(t,s_e,colorm((j-1)*3+1:j*3),'LineWidth',2);
end

legend('original s(t)',strcat('se: k = ',num2str(k(1))),...
                       strcat('se: k = ',num2str(k(2))),...
                       strcat('se: k = ',num2str(k(3))),...
                       strcat('se: k = ',num2str(k(4))),...
                       strcat('se: k = ',num2str(k(5))),...
                       'Location','NorthWest');
xlabel('(t seconds)');
ylabel('s(t)');
grid on

لو ادخلت نفس قيم الاستاذ
A=1
T=1
k=0
k=1
k=3
k=5
k=9
ستحصل على نفس النتيجة

السؤال الثاني

يعني يريد الوصول لنفس الجدول الذي وصل اليه الاستاذ

clear all
clc
close all

A= input('Inter number A: ');
T= input('Inter number T: ');
N= input('Inter number N: ');

Pt=A*A/6;
disp(strcat('Total power s(t) =',num2str(Pt)));
disp('    k     Incremental Power       Total FSE Power      % of Total');
disp('========================================================================');
Po=0;
P=zeros(N+1,4);
P(1,:)=[0,((A/4)^2),((A/4)^2),((A/4)^2)/Pt*100];
Cst=(A/4)^2;
for n=2:N+1
    j=n-1;
    R=(((A*(1-cos(pi*j)))/(pi^2*j^2))^2+(A/(pi*j))^2)/2;
    Po=Po+R;
    P(n,:)=[j,R,Cst+Po,(Cst+Po)/Pt*100];
end
disp(P);

لو تضع نفس القيم التي وضعها الاستاذ
يعني
A=1
T=1
N=40
سنتحصل على نفس الجدول

Total power s(t) =0.16667
    k     Incremental Power       Total FSE Power      % of Total
========================================================================
         0    0.0625    0.0625   37.5000
    1.0000    0.0712    0.1337   80.2155
    2.0000    0.0127    0.1464   87.8146
    3.0000    0.0059    0.1522   91.3441
    4.0000    0.0032    0.1554   93.2439
    5.0000    0.0021    0.1575   94.4794
    6.0000    0.0014    0.1589   95.3238
    7.0000    0.0010    0.1599   95.9492
    8.0000    0.0008    0.1607   96.4242
    9.0000    0.0006    0.1613   96.8013
   10.0000    0.0005    0.1618   97.1053
   11.0000    0.0004    0.1623   97.3573
   12.0000    0.0004    0.1626   97.5684
   13.0000    0.0003    0.1629   97.7487
   14.0000    0.0003    0.1632   97.9038
   15.0000    0.0002    0.1634   98.0391
   16.0000    0.0002    0.1636   98.1579
   17.0000    0.0002    0.1638   98.2632
   18.0000    0.0002    0.1639   98.3570
   19.0000    0.0001    0.1641   98.4413
   20.0000    0.0001    0.1642   98.5173
   21.0000    0.0001    0.1643   98.5863
   22.0000    0.0001    0.1644   98.6491
   23.0000    0.0001    0.1645   98.7066
   24.0000    0.0001    0.1646   98.7594
   25.0000    0.0001    0.1647   98.8080
   26.0000    0.0001    0.1648   98.8530
   27.0000    0.0001    0.1648   98.8947
   28.0000    0.0001    0.1649   98.9335
   29.0000    0.0001    0.1649   98.9696
   30.0000    0.0001    0.1650   99.0034
   31.0000    0.0001    0.1651   99.0351
   32.0000    0.0000    0.1651   99.0647
   33.0000    0.0000    0.1652   99.0927
   34.0000    0.0000    0.1652   99.1190
   35.0000    0.0000    0.1652   99.1438
   36.0000    0.0000    0.1653   99.1672
   37.0000    0.0000    0.1653   99.1894
   38.0000    0.0000    0.1654   99.2105
   39.0000    0.0000    0.1654   99.2305
   40.0000    0.0000    0.1654   99.2495

>> 

الاختلاف فقط في شكل النتائج

السؤال الثالث
لم اغير فيه شيء
لاني اظنه صحيحا

clear all
clc
close all

A= input('Inter number A: ');
T= input('Inter number T: ');
N= input('Inter number N: ');

Frequency = 0:N;
PwrSepctralD = zeros(size(Frequency));
PwrSepctralD(1) = (A/4)^2;
for n=1:2:N
PwrSepctralD(n+1) = ((((A*(1-cos(pi*n)))/(pi^2*n^2))^2)/2+((A/pi*n)^2/2));
end
stem(Frequency, PwrSepctralD,'rx','LineWidth',2);
title('Power Spectral Density function for s(t)');
xlabel('frequency - Hz');
grid

ستجد الملفات 3 في المرفق

[/center]

الف شكر يالغالي والله انك فكيت لي أزمة

مشكور و ماقصرت يالغالي