سلام بچهها
میشه یکی هم اینو ببینه و بگه مشکلش کجاشه ؟
حامد این همونیه که برات فرستادم
با برنامه متلب نوشتم
این درست شه تا نصف برنامه رو رفتم
سوال: میشه یه پروژه نوشت برا طراحی برج تبخیر کنندههای forward feeding که در اون دست کاربر رو باز گزاشت و تعداد مراحل رو خوده کاربر تعیین کنه و بقیه ماجرا رو خود برنامه بره جلو ؟
یا باید حتمن محدود کرد کاربر رو و بین 3 تا 5 مرحله گذاشت تعداد مراحل رو ( خوب توی صنعت فقط همین مقدار هست )
میشه کمکم کنین
%function mcdist
load mcsim001
L=length(J);
mF=mF(J);
mD=mD(J,:)-ones(L,1)*[10 5 40 25];
mX=mX(J,:);
%inter=60;
inter=300;
%inter=120;
dynsim=10;
dynsim2=100;
t=0:inter:(L-1)*inter;
t1=zeros(2*L-1,1);
d1=zeros(2*L-1,4);
f1=zeros(2*L-1,1);
x1=zeros(2*L-1,5);
t1(2:2:end-1)=t(2:end);
t1(3:2:end)=t(2:end);
d1(1:2:end,:)=mD;
d1(2:2:end-1,:)=d1(1:2:end-2,:);
f1(1:2:end)=mF;
f1(2:2:end-1)=mF(1:end-1);
% f1(1:end)=mF(4);
% d1=mD(4*ones(2*L-1,1),:);
DistData=[t1 d1];
%mX: P2 F100 T201 F200 F3
x1(1:2:end,:)=mX(:,1:5);
x1(2:2:end-1,:)=x1(1:2:end-2,:);
P2Set=[t1 x1(:,1)-56.4245];
این که بیشتر شبیه داستان نویسی بود تا برنامه نویسی...
برای یک مرحله ای میشه از این استفاده کرد.]
خوب باید تمامی متغیر هاتو اول از همه تعریف کنی بعد بری سراغ نوشتن برنامهمیشه یه توضیح راجع یه اینا بدی ؟ من تا حالا همچین شکلی ندیده بودم
خوب آره
تمامی جزئیات رو از اول نوشتم
ممنون میشم بهم بگی اینا چی بودن
این رو با برنامه مطلب نوشتن
خوب باید تمامی متغیر هاتو اول از همه تعریف کنی بعد بری سراغ نوشتن برنامه
سلام
چندتا برنامه هست نمیدونم از کجا شروع کنم اگه کمکم کنید ممنون میشم
یکیش اینه
برنامه ای بنویسید که ضرایب a,b,c معادله درجه دوم ax^2+bx+c=0 را از ورودی بگیرد و جواب های این معادله )x1,x2) را به همراه مشخص کردن جواب ریشه ها (ریشه برابر.دو ریشه حقیقی.دو ریشه مختلط) با استفاده از dispدر خروجی چاپ کند
p(x)=1x^3-0x^2-2X-5
p=[1 0 -2 -5];
[LEFT]r= roots(p)
r=
2.0946
-1.0473 + 1.11359i
-1.0473 - 1.11359i[/LEFT]
سلام
چندتا برنامه هست نمیدونم از کجا شروع کنم اگه کمکم کنید ممنون میشم
یکیش اینه
برنامه ای بنویسید که ضرایب a,b,c معادله درجه دوم ax^2+bx+c=0 را از ورودی بگیرد و جواب های این معادله )x1,x2) را به همراه مشخص کردن جواب ریشه ها (ریشه برابر.دو ریشه حقیقی.دو ریشه مختلط) با استفاده از dispدر خروجی چاپ کند
disp('aX^2 + bX + C = D');
a=input('insert a: ');
b=input('insert b: ');
c=input('insert c: ');
D=input('insert D: ');
delta=(b^2) - (4*a*(c-D));
if delta > 0
set_1=((-b)+sqrt(delta))/(2*a);
set_2=((-b)-sqrt(delta))/(2*a);
disp('2 rishe haqiqi vojud dard')
disp([set_1 set_2])
else if delta == 0
set=(-b)/(2*a);
disp('1 rishe moza''af vojud darad')
disp(set)
else
disp ('moadele rishe haqiqi nadara ')
end
end
سلام
سوالم در رابطه با مطلبه
میخوام ورودی رو n بدم، بعد با دستور for این مقدار n رو تکرار کنه و در حال تکرار، یه محاسبته انجام بده، سپس تمامی مقدارهای محاسبه شده رو به صورت یه ماتریس سطری یا ستونی بنویسه
اینجوری نوشتم جواب نمیده:
مثالی ساده میزنم که کاربردش برا همه مثالها باشه دیگه
کد:[LEFT]n=3; for i=1:n u=input('insert U: '); disp([u'] end[/LEFT]
وقتی برنامه اجرا میشه
1- به صورت تک تک نشون میده اعداد ورودی رو که من میخوام در پایان همش رو با هم نشون بده نه اینکه بعد از وارد کردن هر عدد، مقدارش رو همون موقع نشون بده
2- حال اگه از قضیه بالایی بگذریم، اگه بعد از اجرای دستور u رو وارد کنیم، تنها مقدار آخر رو نشون میده و ماتریس رو نشون نمیده متاسفانه، برا اینکه یه ماتریس ستونی با 3 سطر نشون بده باید چیکار کنم ؟
[/SIZE][/FONT]
[FONT=Courier New][SIZE=4]for n=1:3[/SIZE][/FONT]
[FONT=Courier New][SIZE=4]u(n)=input('insert U: ');[/SIZE][/FONT]
[FONT=Courier New][SIZE=4]end[/SIZE][/FONT]
[FONT=Courier New][SIZE=4]disp([u])[/SIZE][/FONT]
[FONT=Courier New][SIZE=4]
[/SIZE][/FONT]
[FONT=Courier New][SIZE=4]insert U: 1
insert U: 4
insert U: 5
1 4 5[/SIZE][/FONT]
[FONT=Courier New][SIZE=4]
[LEFT]function
fact=myeq
n=input(
'enter n
fact=1;
for
i=1:1:n
fact=fact*i;
end[/LEFT]
x=input('enter x=');
n=input('enter n=');
fact=myeq;
for i=1:1:n
sum=((x^i)/fact);
disp(sum)
end
سلام حامدی، سوالات رو همینجا بپرسیم یا جای دیگه ؟
چند جا توی همین تاپیک دیدم دوستان از دستور function استفاده میکنن
میشه برام توضیح بدین این دستور به چه جهت کاربرد داره ؟
عزیزم همین جا بپرس
خوب وارد کردن یک دستور و اجرای بلافاصله آن برای نوشتن برنامه هایی که دارای 10 ها یا 100 ها خط دستور میباشند مناسب نیست matlab یک پنجره ویرایش گر متنی با عنوان editor ارائه کرده است که شما میتوانید همه دستورات برنامه خود را در این ویرایشگر متنی وارد و پس ار تکمیل با نام دلخواه ذخیره کرده و با @ و بعد اسم فایل مذکور فراخوانی کنید
این سوالو یکی از دوستان تو پیامام گداشته بود
خوب قراره این برنامه رو بنویسم که n,x رو از ورودی بگیره و جواب رو چاپ کنه.
s=1+x/1!+x^2/2!+...+x^n/ni
ni=hamon n factorilre inja nemishod benevisamesh
خودم نوشتم یه چیز عجیبی ولی بهم جواب نمبده اول یه function تعریف کردم این جوری:
کد:[LEFT]function fact=myeq n=input( 'enter n fact=1; for i=1:1:n fact=fact*i; end[/LEFT]
بعد برنامه رو این جوری نوشتم
کد:x=input('enter x='); n=input('enter n='); fact=myeq; for i=1:1:n sum=((x^i)/fact); disp(sum) end
اما جواب نمیده
البته اینجا یه کم ریخته بهم فرمتش
اگر برنامه رو اینجوری بنویسی راحت تره:
کد:N = input('input N ='); x = input ('input x ='); for n = 1 : N; s = sum((x^N)/prod(1:n)); end disp([s])
و خروجی برنامه:
کد:input N =5 input x =7 140.0583
[COLOR=black][FONT="]x=7, n=5[/FONT][/COLOR]
[COLOR=black][FONT="]s=1+x.^(1:n)*(1./factorial(1:n)')[/FONT][/COLOR]
[COLOR=black][FONT="]x =[/FONT][/COLOR]
[COLOR=black][FONT="] 7[/FONT][/COLOR]
[COLOR=black][FONT="]n =[/FONT][/COLOR]
[COLOR=black][FONT="] 5[/FONT][/COLOR]
[COLOR=black][FONT="]s =[/FONT][/COLOR]
[COLOR=black][FONT="] 329.7667[/FONT][/COLOR]
سادهترين روشي كه من به ذهنم رسيد اينه:
کد:[COLOR=black][FONT="]x=7, n=5[/FONT][/COLOR] [COLOR=black][FONT="]s=1+x.^(1:n)*(1./factorial(1:n)')[/FONT][/COLOR]
اين هم اجراش:
کد:[COLOR=black][FONT="]x =[/FONT][/COLOR] [COLOR=black][FONT="] 7[/FONT][/COLOR] [COLOR=black][FONT="]n =[/FONT][/COLOR] [COLOR=black][FONT="] 5[/FONT][/COLOR] [COLOR=black][FONT="]s =[/FONT][/COLOR] [COLOR=black][FONT="] 329.7667[/FONT][/COLOR]
- با توجه به اينكه من همواره با استفاده از input مخالف بوده و هستم، در اولش از input استفاده نكردم؛ شما دلتون خواست بهش اضافه كنيد.
- جواب حامد درست نيست. از امكانات خاص متلب هم درش استفاده نشده. اگه درستش هم كنيد، چون از حلقه for استفاده شده، سرعتش بايد كمتر باشه.
N = input('input N =');
[LEFT]x = input ('input x =');
for n = 1 : N;
[LEFT]s = sum(1+(x^[COLOR=red]N[/COLOR])/prod(1:n));
end
disp([s])[/LEFT]
[/LEFT]
N = input('input N =');
x = input ('input x =');
for n = 1 : N;
s(n) = (1+(x.^n)./(factorial(n)));
end
m = sum(s(1:n));
disp(m)
input N =5
input x =7
333.7667
بله درست میگید من
کد:N = input('input N =');
کد:[LEFT]x = input ('input x ='); for n = 1 : N; [LEFT]s = sum(1+(x^[COLOR=red]N[/COLOR])/prod(1:n)); end disp([s])[/LEFT] [/LEFT]
باید بجای N از n استفاده میکردم
ممنون
در نهایت برنامه رو بصورت زیر تصحیح میکنم:
کد:N = input('input N ='); x = input ('input x ='); for n = 1 : N; s(n) = (1+(x.^n)./(factorial(n))); end m = sum(s(1:n)); disp(m)
و خروجی برنامه:
کد:input N =5 input x =7 333.7667
اینم شکل دیگه اش هست که از تابع فاکتوریل استفاده نشده
کد:N = input('input N ='); x = input ('input x ='); for n = 1 : N; s(n) = (1+(x.^n)./(prod(1:n))); end m = sum(s(1:n)); disp(m)
[COLOR=black][FONT="]syms [/FONT][/COLOR][COLOR=#a020f0][FONT="]x[/FONT][/COLOR]
[COLOR=black][FONT="]n=5;[/FONT][/COLOR]
[COLOR=black][FONT="]s=1+x.^(1:n)*(1./factorial(1:n)')[/FONT][/COLOR]
[COLOR=black][FONT="]N=5;[/FONT][/COLOR]
[COLOR=blue][FONT="]for[/FONT][/COLOR][COLOR=black][FONT="] n = 1 : N;[/FONT][/COLOR]
[COLOR=black][FONT="]s(n) = (1+(x.^n)./(factorial(n)));[/FONT][/COLOR]
[COLOR=blue][FONT="]end[/FONT][/COLOR]
[COLOR=black][FONT="]m1 = sum(s(1:n))[/FONT][/COLOR]
[COLOR=blue][FONT="]for[/FONT][/COLOR][COLOR=black][FONT="] n = 1 : N;[/FONT][/COLOR]
[COLOR=black][FONT="]s(n) = (1+(x.^n)./(prod(1:n)));[/FONT][/COLOR]
[COLOR=blue][FONT="]end[/FONT][/COLOR]
[COLOR=black][FONT="]m2 = sum(s(1:n))[/FONT][/COLOR]
[COLOR=black][FONT="]s =[/FONT][/COLOR]
[COLOR=black][FONT="]1+x+1/2*x^2+1/6*x^3+1/24*x^4+1/120*x^5[/FONT][/COLOR]
[COLOR=black][FONT="]m1 =[/FONT][/COLOR]
[COLOR=black][FONT="]5+x+1/2*x^2+1/6*x^3+1/24*x^4+1/120*x^5[/FONT][/COLOR]
[COLOR=black][FONT="]m2 =[/FONT][/COLOR]
[COLOR=black][FONT="]5+x+1/2*x^2+1/6*x^3+1/24*x^4+1/120*x^5[/FONT][/COLOR]
سلام، این چیه که گذاشتی؟ محاسبات مربوط به چه چیزی هستش؟ چه درسی؟ یک کمی توضیح بده تا بببینم چه کمکی از دستم بر میاد.
سلاام
توی این عکسه
اونایی که دورشون خط آبی کشیدم معلومن، یعنی عدد قرار گرفته و اونایی که قرمزن خوب مجهولن
توی سه معادله اول، مقادیر V رو که پایین نوشتم قرار میدیم رو توی بالایی ها قرار میدیم
از معادلات زیری ( اون دوتا که S ندارن مقادیر L1 و L2 رو بدست میاریم )
سپس S رو
حال که Lها بدس اومدن میتونیم V رو هم بدست بیاریم
حالا من تو این قسمت موندم، چطوری این رو توی برنامه مطلب بنویسم ؟ بشدت مورد نیازمه
لطفن طوری طراحی کنین که برای N مشخص باشه نه این 2تا L و V هاا
ممنونم
منتظرم حامدی
این تموم شه برنامهم تقریبن کامل میشههاا
دستت درد نکنه
سلام، این چیه که گذاشتی؟ محاسبات مربوط به چه چیزی هستش؟ چه درسی؟ یک کمی توضیح بده تا بببینم چه کمکی از دستم بر میاد.
محاسبات مربوط به مرحله اول تبخیر کنندههای چند جزئی میشه، بعد از این مرحله، به دو مرحله قبل برگشته و اونقد این مراحل تکرار میشه تا Vها و L های دقیقی بدست بیاد و بعد به بقیه حل مساله پرداخته
من برنامه رو توسط مطلب تا این مرحله نوشتم، تا اینجا
چون یه مدل 3 مرحلهای دارم، روی اون رفتم جلو، ولی برای پروژه باید N مرحلهای تحویل بدم
اگه مرحله اول که S داره رو در ابتدا رها کنیم و فرمولهای بعدی رو حل کنیم، دو معادله دو مجهول رو میشه حل کرد ( توجه کنیم که مقادیر V رو که پایین نوشتم باید در اینجا جا گذاری کرد و بعد از بدست آوردن Lها، V رو بدست بیاریم )
خوب بعد از حل دو معادله دو مجهول از معادله اول S رو میشه بدست آورد و بعد V ها رو بدست میاریم
اگه بجای سه افکت چهار افکت داشتیم، یه معادله به صورت زیر اضاف میشه
L3.h3 + V3.landa3 = L4.h4 + V4.Hv4
حال اگه 5 افکت داشتیم، یه مرحله دیگه مثه این اضاف میشه
تو رو خدا بگین من چجوری این قسمت برنامه رو بنویسم توی مطلب، خیلی نیاز دارم
الان توی این معادله مجهول ها کدوم ها هستن؟
L3.h3 + V3.landa3 = L4.h4 + V4.Hv4
اگر در آزمايشي غلظت هاي جزء A و B به صورت زير مشخص باشد،برنامه اي بنويسيد كه در آن M و K گزارش شود؟RUN 1
CA=1.5 2 2.1 2.17
CB= 5 5 5 5
T=0.1 0.2 0.3 0.4
RUN 2
CA= 4 4 4 4
CB= 1.3 1.35 1.4 1.42
T= 0.1 0.2 0.3 0.4
CB^n * CA^m * k =-dCA/dT=-rA
rA=-rB=-dCB/dT -
من ریاضیم خوب نیست شیوه بدست آوردن این سوال رو به صورت ریاضی برای من بنویسید، حلش رو برا شما میزارمشايد بگين جواب سوالم خيلي ساده است ولي خوب چيكارش كنم ERROR ميده!
برنامه اي بنويسيد كه سه عدد را دريافت كند و چاپ كند كه آيا اضلاع مثلث هستند يا خير ؟
لطفا با استفاده از دستورات INPUT و IF-ELSE و DISP آخه نميدونم با دستورهاي ديگه هم ميشه نوشت يا نه!
سلام
خسته نباشيد دوستان عزيز
مي خواستم نمودار مثلثي رو كه واسه يه مخلوط سه جزئي بود رو تو MATLAB رسم كنم. از چه دستوري استفاده كنم؟