انجمن سایت کلیدستان



برابر شدن نتیجه جمع تفریق ضرب تقسیم چند عدد با یک عدد مشخص، در متلبزمان کنونی: ۱۳۹۵/۰۹/۱۹، ۰۵:۵۵ ب.ظ
کاربران در حال بازدید این موضوع: 1 مهمان
نویسنده: moji
آخرین ارسال: admin
پاسخ 4
بازدید 1998

رتبه موضوع:
  • 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
برابر شدن نتیجه جمع تفریق ضرب تقسیم چند عدد با یک عدد مشخص، در متلب

برابر شدن نتیجه جمع تفریق ضرب تقسیم چند عدد با یک عدد مشخص، در متلب

#1
با سلام
سوالی داشتم درمورد نرم افزار متلب ممنون  میشم جواب دهید
اعداد 1. 3 .4 .6 را طوری با هم جمع  ضرب تقسم کنید که حاصل 24 شود اعداد تکراری نباشند اما اعمال می توان تکراری باشد
ممنون میشم هرکس از دوستان که می داند پاسخ دهد چطور باید در متلب این موضوع را بنویسم.
پاسخ

برابر شدن نتیجه جمع تفریق ضرب تقسیم چند عدد با یک عدد مشخص، در متلب

#2
سلام.
من کد زیر را نوشتم که در آن، تمامی حالت ها محاسبه شده و نتیجه مقایسه می شود. برای عدد 24، هیچ حالتی را پیدا نکرد، اما برای عدد 26 چند حالت را پیدا کرد. البته خودتان هم کد را چک کنید :

کد پی‌اچ‌پی:
clear all
close all
clc

signs
=['+','-','*','/']
numbers=[6,4,3,1]
for 
nn=1:4
    
for mm=1:4
        
for ii=1:4
            
for jj=1:4
                
for kk=1:4
                    
for hh=1:4
                        
for ff=1:4
                            command
=strcat('result=',num2str(numbers(mm)),signs(nn),num2str(numbers(ii)),signs(jj),num2str(numbers(kk)),signs(hh),num2str(numbers(ff)),';');
                            eval([
'result=',num2str(numbers(mm)),signs(nn),num2str(numbers(ii)),';']);
                            eval([
'result=result',signs(jj),num2str(numbers(kk)),';']);
                            eval([
'result=result',signs(hh),num2str(numbers(ff)),';']);
                            % 
command
                            
if(result==26)
                                if(
numbers(mm)~=numbers(ii) && numbers(mm)~=numbers(kk) && numbers(mm)~=numbers(ff) && numbers(ii)~=numbers(kk) && numbers(ii)~=numbers(ff) && numbers(kk)~=numbers(ff))
                                    % if(
signs(nn)~=signs(jj) && signs(nn)~=signs(hh) && signs(jj)~=signs(hh))
                                        
command
                                    
end
                                end
                            end
                        end
                    end
                end
            end
        end
    end
end
  

نتیجه اجرای کد متلب بالا :

کد پی‌اچ‌پی:
signs =

+-*/


numbers =

     
6     4     3     1


command 
=

result=6*4+3-1;


command =

result=6*4-1+3;


command =

result=4*6+3-1;


command =

result=4*6-1+3;


command =

result=1/3+4*6

bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ
 سپاس شده توسط moji

برابر شدن نتیجه جمع تفریق ضرب تقسیم چند عدد با یک عدد مشخص، در متلب

#3
(۱۳۹۳/۰۹/۲۱, ۰۹:۴۱ ب.ظ)'moji' نوشته: با سلام
سوالی داشتم درمورد نرم افزار متلب ممنون  میشم جواب دهید
اعداد 1. 3 .4 .6 را طوری با هم جمع  ضرب تقسم کنید که حاصل 24 شود اعداد تکراری نباشند اما اعمال می توان تکراری باشد
ممنون میشم هرکس از دوستان که می داند پاسخ دهد چطور باید در متلب این موضوع را بنویسم.

 


سلام ممنون از پاسخ شما من نرم افزار متلب را در حد مقدماتی یاد دارم
ممنون میشم برنامه ای که نوشتین توضیح دهید (شمارنده هایی که تعریف کردین چطور عمل میکنن)
و این برنامه فقط باید برای سه عمل ضرب تقسیم وجمع باشد و حاصل آن 24 شود (استاد این درس گفته با 24 جواب دارد)
عمل تفریق نباید باشد.دوباره برام بنویسید ممنون میشم.  باتشکر فراوان

 
پاسخ

برابر شدن نتیجه جمع تفریق ضرب تقسیم چند عدد با یک عدد مشخص، در متلب

#4
با تعدادی حلقه for ، تمامی حالت های ممکن را اجرا کرده ام و سپس چک کردم که اگر نتیجه برابر عدد مورد نظرمان شد، آن حالت در خروجی نمایش داده شود. ترتیب اعداد را دلخواه در نظر گرفته ام، بنابراین تمامی حالت های ممکن نمایش داده می شود و شما می توانید مورد مناسب را در بین آنها بیابید.
نیازی به حذف علامت منفی نیست، حالت هایی که در آنها منفی وجود دارد را نادیده بگیرید (یا اگر خواستید، آن را از بردار شامل علامت ها حذف کرده و حلقه هایی که برای به کار بردن علامت ها است را از مقدار حداکثر 4 به 3 تغییر بدهید).
دستور eval برای اجرای یک رشته (string) به صورت دستور به کار می رود.
توصیه می کنم اگر با دستورها آشنایی ندارید، راهنمای آنها (در help متلب یا سایت کلیدستان) را بخوانید.
اینکه می گویید برای 24 یک حالت وجود دارد، یا کدها را غلط نوشته ایم (که بد نیست خودتان هم آنها را چک کنید) یا اینکه اعمال را استادتان مرحله ای در نظر نگرفته (یعنی مثل کامپیوتر که اعمال را اولویت بندی می کند) یا اینکه واقعا وجود ندارد. 
به هر حال، بنده کد بالا را نوشتم تا از آن الهام گرفته و در صورت نیاز، تغییرش بدهید.

bookbook 
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.
پاسخ


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان

آخرین کلیدهای غیررایگان

شما هم می توانید کلیدهای غیررایگان منتشر کنید (بیشتر بدانید)