عضو شوید


نام کاربری
رمز عبور

:: فراموشی رمز عبور؟

عضویت سریع

نام کاربری
رمز عبور
تکرار رمز
ایمیل
کد تصویری
براي اطلاع از آپيدت شدن وبلاگ در خبرنامه وبلاگ عضو شويد تا جديدترين مطالب به ايميل شما ارسال شود



تاریخ : چهار شنبه 7 آبان 1393
بازدید : 767
نویسنده : هادی مومنی
موضوع: نرم افزار

 

 

برنامه های مفید     

 

            Internet Explorer 8.0      

           دانلود کنید       نسخه ویندوز XP- نوع 32 بیتی          

             دانلود کنید        نسخه 32 بیتی XP  پیش نیاز نصب در ویندوز    

             دانلود کنید         نسخه ویندوز XP- نوع 64 بیتی          

             دانلود کنید        نسخه ویندوز ویستا- نسخه 32 بیتی      

             دانلود کنید         نسخه ویندوز ویستا- نسخه 64 بیتی      

                         

            Internet Explorer 9        

             دانلود کنید          نسخه مخصوص ویندوز ویستا - 32 بیتی          

             دانلود کنید         نسخه مخصوص ویندوز ویستا - 64 بیتی          

             دانلود کنید         نسخه مخصوص ویندوز 7 - 32 بیتی  

             دانلود کنید         نسخه مخصوص ویندوز7 - 64 بیتی            

                         

            Course Viewer Application         

 

             دانلود کنید           DataBase Engine            

             دانلود کنید           Acrobat Reader 9           

             دانلود کنید         Adobe Flash Player 11    

                                     

            WinRAR 4.01 Final x86/x64         

             دانلود کنید             نسخه 32 بیتی       

             Advanced Setup             نسخه 64 بیتی



:: موضوعات مرتبط: دانلود نرم افزار , ,
تاریخ : چهار شنبه 7 آبان 1393
بازدید : 1034
نویسنده : هادی مومنی
موضوع: نرم افزار

 

 

ویندوز xp را در فلش مموری خود به صورت پرتابل داشته باشید!

||  ویژه مستـــر دانلود  ||

با لینک مستقیم از سرور سایت

.

آیا تا به حال شده است که به یک ویندوز بدون نیاز به نصب نیاز پیدا کنید ؟! برای مثال وقتی بر روی رایانه ای ویندوز ۷ نصب باشد و بخواهید کار کوتاهی را از طریق ویندوز ایکس پی بر روی همین ویندوز انجام دهید، در این مواقع یک ویندوز بدون نیاز به نصب می تواند بسیار کارساز باشد. یا شاید هم برای شما پیش آمده باشد که ویندوز XP تان خراب شده باشد ونتوانید وارد آن بشوید و یا به دلیل ویروسی شدن سیستم شما بقدری کند شده است که قادر به انجام کاری نیستید که در این مواقع استفاده از ویندوز های پرتابل می تواند گزینه مناسبی باشد. البته این را هم در نظر بگیرید که شاید شما با درایو ,ویندوز خود کار دارید و نمی خواهید آن را فرمت کنید تا Win XP جدیدی را نصب کنید. در این گونه مواقع این گونه ویندوز های پرتابل می توانند باعث شوند که شما به اطلاعات هارد خودتان دسترسی داشته باشید. Micro Windows XP نسخه پرتابل ویندوز ایکس پی است که می تواند با استفاده از سی دی یا فلش اجرا شود. با این ویندوز کم حجم بدون نیاز به نرم افزار های ماشین مجازی از جمله VMWARE به راحتی می توانید ویندوز ایکس پی پرتابل را در هر Windows دیگری اجرا کنید. این Windows کاملا آپدیت شده می باشد و تمام امکانات یک ویندوز ایکس پی را داراست و به راحتی می توانید از آن به صورت اشتراکی و بدون نیاز به نصب استفاده کنید.

 

.

| دانلود |

| حجم : ۱۲۲٫۵۰ مگابایت|

| رمز فایل : www.masterdl.com |



:: موضوعات مرتبط: دانلود نرم افزار , ,
تاریخ : چهار شنبه 7 آبان 1393
بازدید : 738
نویسنده : هادی مومنی

مستر دانلود

 

با ورود فلش مموری ها به بازار استفاده از سی دی ها و دی وی دی ها بسیار کاهش یافت و کاربران بیشتر از فلش مموری تبادل اطلاعات استفاده می کنند. اگر شما نیز دوست دارید که ویندوز خودتان را از طریق فلش مموری نصب کنید و دیگر نیازی به نصب آن از طریق دیسک CD & DVD نداشته باشید می توانید از Windows 8 USB Installer Maker استفاده کنید. Windows 8 USB Installer Maker نرم افزاری برای ساخت بوت ویندوز هشت می باشد. این نرم افزار به شما این قابلیت را می دهد که ویندوز هشت را از طریق فلش مموری به سادگی هرچه تمام تر نصب کنید.

 

| دانلود |

| حجم فایل : ۱٫۶ مگابایت|

| رمز فایل : www.masterdl.com



:: موضوعات مرتبط: دانلود نرم افزار , ,
تاریخ : دو شنبه 5 آبان 1393
بازدید : 897
نویسنده : هادی مومنی

              « لیست پروژه های موجود به زبان ویژوال بیسیک 6 »

1- دانلود پروژه تحلیل سیستم انتخاب واحد دانشگاه.                        حجم : 224 KB .   

 دانلود پروژه

2-دانلود پروژه مهندسی نرم افزار سیستم کتاب فروشی .               حجم : 528 KB .          

دانلود پروژه

3-دانلود سورس یک ویرایشگر متن و HTML.                                    حجم : 1.280 KB .  

دانلود سورس

4-دانلود پروژه یک MP3 Player ساده .                                             حجم : 181 KB .

 دانلود پروژه

5-دانلود سورس یک ویروس ساده با ویژوال بسیک .                         حجم : 271 KB .

دانلود سورس

6-دانلود پروژه ارتباط با بانک اطلاعاتی اکسس در ویژوال بسیک .         حجم : 96 KB .

دانلود پروژه

7-دانلود پروژه ثبت اطلاعات دانش آموزان مدارس با ویژوال بسیک .     حجم : 418 KB .

دانلود پروزه

8-دانلود پروژه مدیریت هوتل به همراه سورس .                                حجم : 2.030 KB .

دانلود پروژه

9-دانلود پروژه نرم افزار محاسبه اوقات شرعی شهرهای ایران .        حجم: 112 Kb .

دانلود پروژه

10-دانلود پروژه بانکداری و مدیریت بانک .                                       حجم :245 KB .

دانلود پروژه



:: موضوعات مرتبط: پزوژه visual basic , ,
تاریخ : چهار شنبه 30 مهر 1393
بازدید : 904
نویسنده : هادی مومنی

دانلود Blue Ray     حجم = 737 كيلوبايت

دانلود Data Mining   حجم = 1.02 مگابايت

دانلود HAARP    حجم = 1.33 مگابايت

دانلود Water Marking    حجم = 1.98 مگابايت

دانلود CWNA     حجم = 6.75 مگابايت

دانلود مادربورد    حجم = 501 كيلوبايت

 

بقیه مقاله ها در ادامه مطلب

 

 

 

 



:: موضوعات مرتبط: تحقیق شیوه ارایه , ,
تاریخ : دو شنبه 2 تير 1393
بازدید : 989
نویسنده : هادی مومنی

پروژه سایت دانلود با php

امکانات :

بخش مدیریت : که درآن اعضای ثبت نام شده نمایش داده می شوند و توسط مدیر مجوز دانلود کردن داده می شود.

بخش ثبت کاربر : که کاربر  اطلاعات خود را ثبت کرده و منتظر تایید مدیر سایت میماند.

بخش ورود به صفحه دانلود : اگر مدیر کاربر مورد نظر را تایید کرده باشد به صفحه دانلود می رود.

 

 

 

 



:: موضوعات مرتبط: پروژه بانک اطلاعاتی , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 1077
نویسنده : هادی مومنی
موضوع: تحقیق

 

 

امروز برای شما دانشجویان مهندسی نرم افزار و بازدید کننده گان عزیز یک اسلاید در مورد مربع جادویی که مرتبط با درس هوش مصنوعی می باشد آپلود کردم . امیدوارم استفاده کافی را از این مطلب داشته باشید. 

برای تهیه این اسلاید کلی وقت صرف کرده ام لطفا با نظرات خود من را یاری کنید.

 

 

«« تحقیق درس هوش مصنوعی  »»



:: موضوعات مرتبط: پروژه هوش مصنوعی , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 1112
نویسنده : هادی مومنی

مساله هشت وزیر از جمله مسائل پرمخاطب مباحث طراحی الگوریتم است. ۸ مهره وزیر رو روی صفحه شطرنج چنان بچینید که نتوانند همدیگه رو تهدید کنند.


برای افرادی که با بازی شطرنج آشنایی ندارند:
وزیر مهره ای از مهره های بازی شطرنجه که می تونه در تمامی ۸ جهت هر تعداد خانه – تا زمانی که مهره ای مانع نباشه – حرکت کنه و اگه در یکی از این خانه ها مهره حریف قرار داشته باشه تهدیدش کنه.
مساله هشت وزیر : ما مساله رو در حالت کلی در نظر می گیریم. یعنی زمانی که ابعاد صفحه شطرنج n در n و تعداد مهره ها n هستش. ( n > 3 ) روشهای مختلفی برای پیدا کردن جواب وجود داره. یکی از این روشها چیدن تصادفی مهره ها روی صفحه شطرنجه! به عبارت دیگه n مهره رو به صورت تصادفی در خانه های مختلف صفحه قرار می دیم و بررسی می کنیم که آیا شرط مساله رو برآورده می کنن یا نه؟ این روش بسیار سریع ما رو به جواب می رسونه. اما ایرادی که داره نمی شه مطمئن بود بشه به همه حالتهای چینش دست پیدا کرد. در صفحه ۸ در ۸ شطرنج این مساله ۹۲ جواب مختلف داره. شما ممکنه روش تصادفی رو هزار بار به کار ببرید، اما نتونید همه ۹۲ حالت ممکنه رو به دست بیارید. این روش زمانی مفیده که پیدا کردن یه جواب برای ما کافی باشه.
در این دسته روشها مهره ها رو یکی یکی و به صورت بازگشتی روی صفحه طوری می چینیم که مطمئن باشیم با مهره های قبلی تداخل نداره و شرط مساله برآورده می شه. معمولا از سطر اول صفحه شروع می کنیم به قرار دادن مهره ها. پر واضحه که هر سطر فقط می تونه یه مهره رو تو خودش جا بده. مهره سطر دوم رو طوری قرار می دیم که توسط مهره سطر اول تهدید نشه. برای این کار خانه های مختلفی از سطر رو می شه انتخاب کرد. برای نظم داشتن کارهامون فرض می کنیم همیشه انتخاب خانه ها از سمت چپ سطر شروع می شه. به عبارت دیگه با شروع از سمت چپ سطر اولین خانه ای که شرط رو برآورده کنه انتخاب می کنیم. به همین ترتیب سطرهای بعدی رو هم می چینیم. اگر به سطری رسیدیم که بر اساس چیدمان سطرهای قبلی هیچ خانه امنی برای مهره وجود نداشت ( یعنی همه خانه ها توسط مهره های قبلی تهدید می شدن ) یه مرحله به عقب بر می گردیم و مهره سطر قبل رو جابجا می کنیم. این کار هم با حرکت مهره به اولین خانه سمت چپ موقعیت فعلی که شرط رو برآورده کنه، انجام می شه. با ادامه دادن این روال و با جابجا کردن مهره ها به صورت منظم و بازگشتی تمامی حالتهای ممکنه به دست می یان.
برای پیاده سازی چنین الگوریتمی و تشخیص اینکه چه خانه هایی از سطر امن هستن روشهای مختلفی وجود داره. ساده ترینشون اینه که هر بار تمامی خانه هایی رو که امکان تهدید شدن از اونها وجود داره بررسی کنیم تا از قرار نداشتن مهره وزیر در اونها مطمئن باشیم. اما این روش اصلا کارا و بهینه نیست.
روش دیگه تعریف کردن صفحه شطرنج به صورت یه آرایه n در n هستش که خونه های امن و غیر امن با علامتگذاری مشخص می شن. هر بار که مهره ای رو صفحه قرار می گیره تمام خونه هایی که توسط این مهره تهدید می شن به صورت غیر امن علامتگذاری می شن. به این ترتیب می شه فهمید که هر خونه با توجه به چینش مهره های قبلی امن هست یا نه؟ اما این روش هم معایبی داره که باعث می شه به روش سوم رجوع کنیم. برای آشنایی با این معایب کافیه سعی کنید کد برنامه رو بنویسید!
در روش سوم که من ازش استفاده کردم، برای علامتگذاری خانه های امن و غیر امن از شیوه دیگه ای بهره می بریم. به این ترتیب که اقطار راست به چپ، چپ به راست و ستونها با شماره هایی مشخص می شن که کار علامتگذاری رو بسیار ساده می کنن. این روش بدون شک از کاراترین روشهای رسیدن به جواب مساله ماست. هم سرعت اجرای بالایی داره و هم حافظه مصرفی بسیار کم!
کدی که به زبان ++C درباره این مساله نوشته شده با استفاده از روش سوم تعداد جوابهای ممکن – و نه خود جوابها – برای مقادیر مختلف n رو مشخص می کنه. به عنوان مثال اگر n رو ۸ وارد کنید خروجی برنامه ۹۲ خواهد بود. توصیه می کنم برای nهای بزرگ برنامه رو امتحان نکنید! اگر n رو ۱۶ وارد کنید بعد از گذشتن زمان زیادی عدد ۱۴۷۷۲۵۱۲ روی صفحه نمایش چاپ می شه. یعنی در صفحه شطرنج ۱۶ در ۱۶ حدود ۱۵ میلیون حالت مختلف برای چیدمان صحیح وجود داره!!



در زیر نیز برای شما عزیزان لینک دانلود سورس کد این مسئله به زبان های گوناگون گذاشته شده است


در لينک زير حل مسئله 8 وزیر با زبان C قرار دارد:

لینک دانلود :


در لينک زير حل مسئله 8 وزیر با زبان ++C قرار دارد:

لینک دانلود :

 

در لينک زير حل مسئله 8 وزیر با زبان #C قرار دارد:

 

لینک دانلود :

 

در لينک زير حل مسئله 8 وزیر توسط الگوريتم ژنتيک با زبان VB.Net قرار دارد:

 

لینک دانلود :

 



:: موضوعات مرتبط: پروژه #c , پروژه هوش مصنوعی , پروژه ++c , پزوژه visual basic , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 1280
نویسنده : هادی مومنی
موضوع: تحقیق

 

امروز برای شما دانشجویان مهندسی نرم افزار و بازدید کننده گان عزیز یک اسلاید در مورد مسئله معمای 8 که مرتبط با درس هوش مصنوعی می باشد آپلود کردم . امیدوارم استفاده کافی را از این مطلب داشته باشید. 

برای تهیه این اسلاید کلی وقت صرف کرده ام لطفا با نظرات خود من را یاری کنید.

 

 

«« تحقیق درس هوش مصنوعی »»

 


:: موضوعات مرتبط: پروژه هوش مصنوعی , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 956
نویسنده : هادی مومنی

      برنامه ی ساده ی بعدی :   پیدا کردن بزرگترین عدد

الگوریتم: 

ابتدا برای نگه داری اعداد جهت مقایسه ،متغیر تعریف می کنیم، سپس اعداد  یکی یکی  با متغیر max 

مقایسه می شوند و عدد بزرگتر در max  قرار داده می شود

 

 ++c

  #c  
 #include
#include

int main()
{
int max = 0, i=0;
int num;
cout<<"\npress {a...Z} TO 'FINISH'.";
cout<<"\n enter your number :";
while( cin>>num )
{
max = (max < num)?num:max;
}
cout<<"the maximum number is : "<<max;

getch();
return 0;
}

using System;

using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

int max=0;
private void button1_Click_1(object sender, EventArgs e)
{
max = (max < Int32.Parse(txt1.Text)) ? Int32.Parse(txt1.Text) : max;
lbl2.Text = (lbl2.Text + txt1.Text + ",");
lbl3.Text = ("maximum is : " + max);
txt1.Clear();

}

}
}
 
 






:: موضوعات مرتبط: پروژه #c , پروژه طراحی الگورتم , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 799
نویسنده : هادی مومنی

برنامه: محاسبه ی فاکتوریل اعداد

 ++C

 

 

 

 #C

 

 #include
#include

main()
{
int num,fact=1;

cout<<"Enter number :";
cin>>num;

for(int i=2; i<=num ; i++)
fact = fact * i;

cout<<"Factorial of "<<num<<" is : "<<fact;

getch();
return 0;
}
   using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{

int num,fact=1;

num=Int32.Parse( textBox1.Text) ;

for(int i=2; i<=num ; i++)
fact = fact * i;

lbl1.Text = Convert.ToString(fact) ;




}
}
}


:: موضوعات مرتبط: پروژه #c , پروژه طراحی الگورتم , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 672
نویسنده : هادی مومنی

برنامه : محاسبه جملات سری فیبوناچی و مجموع آنها

 

 

 

 

 ++C

 

 

#C

 

 #include
#include


main()
{
int x1=1,x2=1,x3,n,sum=0;
cout<<"how much object of Fibonacci series want to find?\nenter here : ";
cin>>n;
cout<<","<<x1<<","<<x2;
for(int i=3; i<=n;i++)
{

x3=x2+x1;
x1=x2;
x2=x3;
sum = sum + x3;
cout<<","<<x3;
}
cout<<"\n Result = "<<sum;

getch();
return 0;
}

 

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
int x1 = 1, x2 = 1, x3, n, sum = 0;
n = Int32.Parse(textBox1.Text);
lbl1.Text=lbl1.Text+x1+","+x2;
for (int i = 3; i <= n; i++)
{

x3 = x2 + x1;
x1 = x2;
x2 = x3;
sum = sum + x3;
lbl1.Text=lbl1.Text+","+x3;
}
lbl2.Text= lbl2.Text+sum;
}

private void textBox1_TextChanged(object sender, EventArgs e)
{
lbl1.Text = "Result :";
lbl2.Text = "sum :";
}

}
}





نوع



:: موضوعات مرتبط: پروژه #c , پروژه طراحی الگورتم , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 725
نویسنده : هادی مومنی

برنامه: مرتب سازی حبابی یک آرایه از اعداد.

تعریف مرتب سازی حبابی:

         این الگوریتم ساده ترین و معروف ترین الگوریتم برای مرتب سازی داده است.

فرض کنید می‌خواهیم n داده به صورت صعودی مرتب شوند. عنصر اول را با با عنصر دوم مقایسه کرده، و در صورتی که عنصر اول بزرگتر باشد باشد جای عنصر اول و دوم را عوض می‌کنیم. همین کار را با عناصر دوم و سوم انجام می‌دهیم و همینطور عناصر سوم و چهارم ، الی آخر. وقتی این کار تمام شد بزرگ‌ترین عنصر بین داده‌ها به آخر لیست می‌رسد . حالا یک بار دیگر از اول این کار را انجام می‌دهیم اما این بار تا عنصر (n -۱)ام ادامه می‌دهیم (عنصر nام در مرحله اول در جای خودش قرار گرفته). باز هم این کار را تا عنصر (n - ۲)ام تکرار می‌کنیم ، و بازهم .... تا اینکه بالاخره داده‌ها مرتب می‌شوند.

ادامه ی تعریف درسایت منبع 

 

         

الگوریتم:

پس از خواندن اداد از ورودی که

در سی++

توسط  آرایه و دستورات cin و ...

for(int i =0;i < arraySize;i++)

{

cin>>array[ i];

}

که یک آرایه با نام array و اندازه ی arraySize را از ورودی می خواند که بین هر عد یک فضای خالی باید باشد یا بعد هر عدد یک enter زده شود

و در سی شارپ و جاوااسکریپت

از طریق تکست باکس ها که طبق قرارداد ما ن بعد هر عدد یک کاما باید وارد شود

مثال:

برای ورود اعداد 5و3و0و1و4و2 داریم:

5,3,0,1,4,2,

که پس از ارسال تکست باکس به تابع مقدار زیر قابل مشاهده هست

0,1,2,3,4,5

 

 مرتب سازی حبابی ++C
 #include
#include
void bubleSort(int num[],int numSize)
{

   int temp=0;
   for(int i=numSize;i>0;i--)
   {
      for(int j=0;j<i;j++)
      if(num[j] > num[j+1])
      {
         temp = num[j];
         num[j] = num[j+1];
          num[j+1] = temp;
      }
   }

}
main()
{
int test[10]={5,9,0,8,1,7,2,6,3,4};
int size=10;

bubleSort(test,size-1);

 

for(int i=0;i<size;i++)
cout<<"\ntest["<<i<<"] = "<<test[i];


getch();
return 0;

}

 

 

 

 مرتب سازی حبابی #C
 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//...................................................................................
int[] bubleSort(string test)
{

   int i = 0;

   int test2size = 0;

 

  //count number's that entered in textbox by counting ','
   for (i = 0; i < txt1.TextLength; i++)
      if (test[i] == ',')
         test2size++;

   int[] test2 = new int[test2size];
   test2size = 0;

   for (i = 0; i < txt1.TextLength; i++)
   {

      if (test[i] != ',')
         test2[test2size] = test2[test2size] * 10 + Int32.Parse(test[i].ToString());
      else test2size++;

   }

   int temp = 0;
   for (i = test2size - 1; i > 0; i--)
   {
      for (int j = 0; j < i; j++)
         if (test2[j] > test2[j + 1])
        {
             temp = test2[j];
             test2[j] = test2[j + 1];
             test2[j + 1] = temp;
        }
   }

return test2;
}
//..............................................................
public void button1_Click(object sender, EventArgs e)
{

lstb1.Items.Clear();

 

int[] test=bubleSort(txt1.Text);

 

for (int i = 0; i < test.Length; i++)
{
lstb1.Items.Add(test[i]);
}

}
}
}


:: موضوعات مرتبط: پروژه #c , پروژه طراحی الگورتم , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 1039
نویسنده : هادی مومنی

برنامه: آرایه ای از اعداد را به روش ادغام، یا همان  marge sort مرتب می کند

الگوریتم : 

از دو تابع استفاده می کنیم

1 - تابع  Marge Sort یا  MS().

void ms(int arr[],int lx,int rx)

این تابع از عنصر lx تا عنصر rx آرایه ی arr[] را پردازش می کند.

 

2 - تابع sort یا sortm

void sort(int arr[],int lx,int mid1,int mid2 , int rx)

این تابع  قسمت اول آرایه ی arr یعنی lx تا mid1  و قسمت دوم یعنی mid2 تا rx  را مرتب کرده  و در آرایه  temp نتیجه را که مرتب شده ی دو قسمت فوق می باشد را ذخیره ، سپس توسط دستور زیر ، عناصر مرتب شده را در آرایه ی اصلی کپی می کند.(که mid2=mid1+1)

for(int i=0,k=lobj;i <j;i++,k++) arr[k]=temp[i];

که lobj همان lx و robj همان rx می باشد.

 

* تابع  run در کد جاوااسکریپت ،رشته ی ورودی را به یک آرایه از اعداد تبدیل می کند.

فرمت ورودی اعدا باید به صورت زیر باشد.

example : 5,2,6,4,2,3,9,8,5,

که پس از هر عددی یک "," باید وارد شود و بدون هیچ گونه فاصله ای.

 برنامه مرتب سازی ادغامی با زبان ++C
#include
#include


#define size 10

void sort(int arr[],int lx,int mid1,int mid2 , int rx)
{

   int j=0; 
   int temp[size];
   int lobj=lx,robj=rx;

   //sorting arr[lx]..arr[mid] with arr[mid2]...arr[rx] and save it in temp[]
   while( (lx <= mid1) && (mid2 <= rx) )
   {
         if (arr[lx] < arr[mid2])
        {
                temp[j++]=arr[lx++];
        }
        else{
              temp[j++]=arr[mid2++];
              }
    }
   while( mid2 <= rx)
   {
          temp[j++]=arr[mid2++];
   }
   while( lx <= mid1)
   {
            temp[j++]=arr[lx++];
   }
   //copy temp[] into the original array ( arr[] )
   for(int i=0,k=lobj;i <j;i++,k++)       arr[k]=temp[i];
  }

void ms(int arr[],int lx,int rx)
{


   if(rx > lx)
   {

          int mid1 = (lx + rx)/2;
           int mid2 = mid1+1;

          ms(arr,lx,mid1);
         ms(arr,mid2,rx);
         sort(arr,lx,mid1,mid2,rx);
   }

}

int main()
{

   int test[size] = {5,9,1,8,2,7,3,6,4,0};

   cout<<" Array is ";
   for(int i=0; i          cout<<" "<<test[i];

   ms(test,0,size-1);

    cout<<" sorted array is : ";
   for(int i=0; i          cout<<" "<<test[i];
getch();
return 0;
}

 

  برنامه مرتب سازی ادغامی با زبان #C 
 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}


void sort(int[] arr,int lx,int mid1,int mid2 , int rx)
{

   int j=0; 
   int[] temp = new int[arr.Length];
   int lobj=lx,robj=rx;

   //sorting arr[lx]..arr[mid] with arr[mid2]...arr[rx] and save it in temp[]
   while( (lx <= mid1) && (mid2 <= rx) )
   {
          if (arr[lx] < arr[mid2])
         {
               temp[j]=arr[lx];
                j = j + 1;
                lx = lx + 1;
         }
         else{
                temp[j]=arr[mid2];
                j = j + 1;
                 mid2 = mid2 + 1;
          }
   }
   while( mid2 <= rx)
   {
          temp[j]=arr[mid2];
           j = j + 1;
           mid2 = mid2 + 1;
   }
   while( lx <= mid1)
   {
           temp[j]=arr[lx];
           j = j + 1;
           lx = lx + 1;
   }
   //copy temp[] into the original array ( arr[] )
   for(int i=0,k=lobj;i <j;i++,k++)           arr[k]=temp[i];
}


void ms(int[] arr, int lx, int rx)
{


   if(rx > lx)
   {

             int mid1 = (lx + rx)/2;
             int mid2 = mid1+1;

              ms(arr,lx,mid1);
              ms(arr,mid2,rx);
              sort(arr,lx,mid1,mid2,rx);
 }

}
private void button1_Click(object sender, EventArgs e)
{

   lbl1.Text = "Sorting ...";
   int[] test = { 0,5,2,3,1,3, 9, 0, 8, 1, 7, 2, 6, 3, 4 };
   ms(test, 0, test.Length - 1);
   lbl1.Text = "";
   for (int i = 0; i < test.Length; i++)
             lbl1.Text = lbl1.Text + test[i] + ",";
}
}
}


:: موضوعات مرتبط: پروژه #c , پروژه طراحی الگورتم , ,
تاریخ : دو شنبه 19 خرداد 1393
بازدید : 848
نویسنده : هادی مومنی

برنامه: مرتب سازی یک آرایه با الگوریتم quick Sort 

الگوریتم:

برای این کار از دو تابع استفاده می کنیم

1 - تابع پارتیشن

int Partition(int arr[],int Lobj,int Robj)

* که یک آرایه ( arr[] ) و سمت چپ ترین اندیس آرایه ( Lobj ) و سمت راست ترین اندیس آرایه ( Robj ).

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

.......................................................//

2- تابع کویک سورت

void quicksort(int arr[],int Lobj,int Robj)

 

تابع کویک سورت هر بار آرایه را به دو قسمت تقسیم می کند

قسمت اول شامل خانه های سمت چپ ترین خانه (Lobj) تا عنصر محوری  (Pivot)

قسمت دوم شامل خانه های عنصر محوری  (Pivot)  تا سمت راست ترین خانه  (Robj)


 

 برنامه مرتب سازی سریع به زبان++C
  #include
#include

#define size 21
//.................................................................
int Partition(int arr[],int Lobj,int Robj)
{

    int pivot = Lobj;
    int temp;
    while(Lobj < Robj)
    {
        while(arr[Lobj] <= arr[pivot])
        Lobj++;  

        while(arr[Robj] > arr[pivot])
        Robj--;

        if(Lobj < Robj)
       {
           temp = arr[Lobj];
           arr[Lobj] = arr[Robj];
           arr[Robj] = temp;
        }
     }
if( arr[Robj] < arr[pivot])
{
    temp = arr[pivot];
    arr[pivot] = arr[Robj];
    arr[Robj] = temp;
}
    return Robj;
}
//.................................................................
void quicksort(int arr[],int Lobj,int Robj)
{

    if(Lobj < Robj)
    {  
       int pivot = Partition(arr,Lobj,Robj);
       quicksort(arr,Lobj,pivot-1);
       quicksort(arr,pivot+1,Robj);
    }
}
//.................................................................

main()
{

    int test[size]={15,20,10,19,11,18,12,17,13,16,14,5,9,0,8,1,7,2,6,3,4};

    quicksort(test,0,size-1);

    for(int i=0;i<size;i++)
    cout<<" test["<<i<<"] = "<<test[i];

    getch();
return 0;
}

 

   برنامه مرتب سازی سریع به زبان #C 
 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int Partition(int[] arr, int Lobj, int Robj)
{

    int pivot = Lobj;
    int temp;
    while(Lobj < Robj)
    { 
       while(arr[Lobj] <= arr[pivot])
            Lobj++;

       while(arr[Robj] > arr[pivot])
           Robj--;

       if(Lobj < Robj)
       {
           temp = arr[Lobj];
           arr[Lobj] = arr[Robj];
           arr[Robj] = temp;
       }
    }
if( arr[Robj] < arr[pivot])
{
    temp = arr[pivot];
    arr[pivot] = arr[Robj];
    arr[Robj] = temp;
} return Robj;
}
//.................................................................
void quicksort(int[] arr,int Lobj,int Robj)
{

    if(Lobj < Robj)
    {  
        int pivot = Partition(arr,Lobj,Robj);
        quicksort(arr,Lobj,pivot-1);
        quicksort(arr,pivot+1,Robj);
    }

}

//.......................................................................

private void button1_Click(object sender, EventArgs e)
{
lbl1.Text = "Sorting ...";
int[] test = { 15, 20, 10, 19, 11, 18, 12, 17, 13, 16, 14, 5, 9, 0, 8, 1, 7, 2, 6, 3, 4 };
quicksort(test, 0, test.Length - 1);
lbl1.Text = "";
for (int i = 0; i < test.Length; i++)
lbl1.Text = lbl1.Text + test[i]+",";
}
}
}


:: موضوعات مرتبط: پروژه #c , پروژه طراحی الگورتم , ,

تعداد صفحات : 5


من هادی مومنی دانشجوی کارشناسی نرم افزار کامپیوتر و به زبان برنامه نویسی و طراحی صفحات وب تسلط دارم خوشحال میشم کمکتون کنم لطفا نظراتتون در مورد بهتر شدن این وبلاگ بگید.

نام :
وب :
پیام :
2+2=:
(Refresh)

تبادل لینک هوشمند
برای تبادل لینک  ابتدا ما را با عنوان کامپیوتر و آدرس hadi71.loxblog.com لینک نمایید سپس مشخصات لینک خود را در زیر نوشته . در صورت وجود لینک ما در سایت شما لینکتان به طور خودکار در سایت ما قرار میگیرد.






RSS

Powered By
loxblog.Com