دانلود تحقیق آموزش ویژوال بیسیک

Word 555 KB 17449 64
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۳۰,۰۰۰ تومان
قیمت: ۲۴,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • تا کنون برای ذخیره داده ها، از متغیرهایی از نوع Byte ،Decimal ، Currency و غیره استفاده کردیم که هر کدام یک سلول از حافظه را اشغال می کردند.

    به عنوان مثال، دستورات زیر را در نظر بگیرید:
    Dim Yes As Booleam
    Dim D AS Double
    Dim L As Long
    Dim Num As Integer
    این دستورات متغیر Yes را از نوع منطقی (Boolean ) ، D را از نوع Double‌ ، L را از نوع Long و Num را از نوع صحیح (Integer ) تعریف می کنند.
    هر کدام از متغیرها به یک سلول از حافظه نیاز دارند تا داده ها را ذخیره نمایند.

    اما همیشه تعریف اینگونه متغیرها جوابگوی نیاز برنامه نویس نیست.

    به عنوان مثال فرض کنید می خواهیم 10 عدد صحیح را در حافظه نگهداری کنیم.

    یک روش این است که 10 متغیر از نوع صحیح تعریف کنیم و هر مقدار را در یک متغیر قرار دهیم.

    شاید این روش برای 10 عدد مطلوب باشد ولی اگر بخواهیم 500 عدد صحیح را ذخیره کنیم، آیا تعریف 500 متغیر در برنامه کار معقول و پسندیده ای است؟

    در اینگونه موارد، باید از متغیرهای دیگری به نام متغیرهای اندیس دار یا آرایه استفاده کرد.
    در این صورت، در این مثال، برای 500 عدد فقط یک نام انتخاب می کنیم و هر مقدار را یک عنصر می نامیم و برای دستیابی به هر عنصر از اندیس استفاده می کنیم.
    به عنوان مثال، شکل 1 ، یک متغیر اندیس دار به نام a را نشان می دهد که شامل 10 عنصر صحیح است.

    همانطور که مشاهده می شود، عناصرمتغیر اندیس دار در محل‌های متوالی حافظه و تحت نظام خاصی ذخیره می شوند.

    به کمک این نظام، می‌توان در هر یک از این محل ها اطلاعاتی را قرار داد و به هر یک از عناصر آرایه دستیابی داشت.

    از اینجا به بعد متغیرهای اندیس دار را آرایه می نامیم.

    نامگذاری متغیرهای آرایه از قانون نامگذاری برای متغیرهای معمولی تبعیت می کند.
    تعریف آرایه در ویژوال بیسیک :
    اکنون پی بردیم در بعضی از مسئله های برنامه نویسی به آرایه نیاز است، تعریف آن در ویژوال بیسیک می آموزیم.



    ] نوع آرایه1 As [ ( اندیس پایان ] To اندیس شروع [ ) نام آرایه 1 Dim (1 )
    ...

    ] ] نوع آرایه 2 As [ ( ] اندیس پایان ] To اندیس شروع [ ) نام آرایه 2 و [
    ] نوع آرایه1 As [ (] اندیس پایان To اندیس شروع [ ) نام آرایه 1 Public (2 )
    ...

    ] ] نوع آرایه 2 As [ ( ] اندیس پایان To [ اندیس شروع [ ) نام آرایه 2 و [
    در این تعاریف ، برای نامگذاری آرایه، از قانون نامگذاری متغیرها استفاده می کنیم.
    Dim و Public کلمات کلیدی در ویژوال بیسیک هستند.

    نوع اندیس آرایه می تواند عدد صحیح باشد.

    نوع اعشاری و کاراکتری نمی تواند به عنوان نوع اندیس آرایه انتخاب شود ولی عناصر آن می توانند هر نوعی باشند.

    چنانچه نوع آرایه ذکر نشود، ویژوال بیسیک نوع آن را عددی اعشاری با دقت معمولی در نظر می گیرد.
    دستورات زیر را در نظر بگیرید:
    Dim A (10) As Integer
    Public M (5 To 10 ) As Double
    Dim B (100)
    در این آرایهA از نوع صحیح و آرایه هایM و B از نوع اعشاری تعریف شده اند.

    آرایه A دارای 10 عنصر و آرایه M دارای 6 عنصر است.

    آرایه B دارای 100 عنصر است و نوع عناصر آن، اعشاری دقت معمولی است.

    شیوه ذخیره و بازیابی عناصر، آرایه های A و M در شکل 2 آمده است.

    در این شکل، اعدادی جلوی نام آرایه در داخل ( ) آمده اند، اندیس آرایه نام دارند.

    اندیس آرایه از تعریف نوع اندیس مشخص می شوند.

    مثلا اندیس آرایه A از صفر تا 9 است که می توان با دستورoption Base اندیس این آرایه را از 1 تا 10 تعریف کرد.

    دستور option Base در ادامه توضیح داده می شود.

    اندیس آرایه M از 5 تا 10 می باشد.


    حافظه مورد نیاز : مقدار حافظه ای که در اختیار آرایه قرار می گیرد، به طول ارایه و نوع عناصر آن بستگی دارد، به عنوان مثال اگر آرایه ای از نوع صحیح به طول10 داشته باشیم 2 × 10 بایت حافظه به آن اختصاص می یابد.

    ( چون نوع صحیح 2 بایت از حافظه را اشغال می کند).

    شکل 2- روش ذخیره و بازیابی عناصر آرایه A(0) A(1) A(2) A(3) A(4) A(5) A(6) A(7) A(8) A(9) M(5) M(6) M(7) M(8) M(9) M(10) تعیین کمترین مقدار اندیس آرایه : چنانچه اندیس شروع آرایه ذکر نشود، ویژوال بیسیک بطور پیش فرض آن را صفر درنظر می گیرد.

    با استفاده از دستورoption Base می توان کمترین مقدار اندیس را تعیین کرد.

    دستور option Base به صورت N option Baseبه کار می رود.

    N متغیری است که کمترین مقدار اندیس آرایه را تعیین می کند و می تواند 0 یا 1 باشد.

    پیش فرض سیستم برای حد پایین اندیس آرایه ها عدد صفر می باشد.

    دستور option Base باید قبل از دستور معرفی آرایه قرار گیرد.

    به عنوان مثال دستورات زیر را در نظر بگیرید‌ : option Base 1 Dim A (100) As String در این مثال آرایه A از نوع رشته ای می باشد که دارای 100 عنصر است و اندیس عناصر از 1 تا 100 می باشد.

    معرفی چند تابع : در این بخش چند تابع را معرفی می کنیم تا بتوانیم اعمالی را بر روی آرایه ها انجام داده، اعمال ورودی – خروجی ساده ای را انجام دهیم.

    تابع L Bound : این تابع برای تعیین اندیس اولین عنصر آرایه ( حد پایین ) استفاده می شود و به صورت زیر به کار می رود : (نام آرایه ) L Bound این تابع برای تعیین اندیس آخرین عنصر آرایه ( حد بالا ) استفاده می شود و به صورت زیر به کار می رود : (نام آرایه ) L Bound دستورات زیر را در نظر بگیرید : Dim X (15) As Integer For I = L Bound (X) To U bound (X) X(i) = X(i) + 1 Next I این دستورات مقادیر تمام عناصر آرایه را با اندیس هر عنصر جمع می کند و در آن عنصر قرار می دهد.

    تابع Array : این تابع برای تعریف یک آرایه از نوع variant ( با نوع مختلف ) در زمان اجرا مورد استفاده قرار می گیرد و به صورت زیر به کار می رود : ( لیست عناصر آرایه ) Array چنانچه در این تابع تعداد عناصر بیش از یکی باشد با کاما جدا می گردند.

    به عنوان مثال دستورات زیر را در نظر بگیرید : Private From – Load ( ) Dim var As varint , I As Integer Var = Array (1,3,5,7,9) List 1.

    clear For I = L Bound (var) To U Bound (var) List 1.

    Add Item Str ( var ( i ) ) Next I Var = Array (“ one” , “tow” , “ three” ) List 2.

    clear For I = L Bound (var) To U Bound (var) List 2 .

    Add Item Str ( var ( i ) ) Next I End Sub در این دستورات، ابتدا یک آرایه به نام var ایجاد می شود که عناصر آن اعداد فرد کوچکتر از 10 می باشند.

    کلیه عناصر این آرایه را در عنصر List 1 نمایش می دهد و سپس یک آرایه به نام var ( همان نام قبلی ) از نوع دشته ای تعریف کرده مقادیر آرایه را در List 2 نمایش خواهد داد.

    تابع Msg Box : این تابع، کادر محاوره ای را برای نمایش اطلاعات ظاهر می کند و به صورت زیر به کار می رود : Msg Box ( Promt [ , Buttons] [, Title ] [, Help File ] [ , Context ]) در این تابع پارامتر Promt پیامی است که باید نمایش داده شود.

    پارامترButtonsنوع آیکن ها ودکمه هایی را که درکادرمحاوره ای نمایش داده می‌شود، تعیین می کند.

    پارامترTitle، عنوانی را که درکادرمحاوره ظاهرمی گردد، مشخص می کند، چنانچه در این پارامتر مقداری ذکر نشود، نام پروژه در عنوان کادر محاوره ظاهر می شود.

    عنوان کادر محاوره حداکثر می تواند 255 کاراکتر باشد.

    پارامتر Help File ، نام فایل کمکی و مسیر آن را مشخص می کند و پارامتر Context ، شماره ای است که بر یکی از سرفصل های فایل کمکی اشاره می کند.

    با استفاده از آرگومان Buttons می‌توان نوع دکمه ها ( مثل ok , cancel , Retry ) و نوع آیکن ها را تعیین کرد.

    مقادیر این آرگومان در جدول 1 آمده است .

    مقادیر ثابت و اعداد این جدول را می توان با هم ترکیب ( جمع ) کرد، مثلاً برای نمایش دکمه Ok ، Yes ، No و آیکن علامت هشدار، در کادر محاوره، باید مقدار زیر را در آرگومان Buttons قرار دهید : (V b ok only + V b Yes No + Vb Exclamation ) 0 + 4 + 48 = 52 چنانچه در آرگومان Buttons مقدار ذکر نشود، کادر محاوره با یک دکمه Ok ظاهر می گردد تا بتوانید کادر محاوره را ببندید.

    پس از غیرفعال شدن کادر محاوره می توان تعیین کرد که کدام یک از دکمه ها کلیک شده است.

    مقادیری که این تابع برمی گرداند، در جدول 2 آمده است.

    براساس دکمه ای که کاربر کلیک کرده است، می توان تصمیم گرفت که برنامه چه عملی را انجام می دهد.

    به عنوان مثال دستورات زیر را در نظر بگیرید : Result = Msg Box (“Print Docoment.

    Txt” , vb ok cancel + vb Question) If ( Result = o ) Then دستوراتی که فایل Document.

    Txt را چاپ می کنند Else دستوراتی که با کلیک کردن دکمه cancel اجرا می شوند End If این دستورات شکل 3-4 را تولید می کنند.

    کاربر می تواند دکمه های Ok یا Cancle را انتخاب کند که در هر حال مجموعه ای از دستورات مختلف اجرا می شوند.

    چنانچه کاربر کلید Esc را فشار دهد ویژوال بیسیک فرض می کند که دکمه Cancle کلیک شده است و مقدار 2 را باز می گرداند.

    ( مطابق جدول 2 ) جدول 1- مقادیر آرگومان Buttons تابع Msg Box جدول 2 – مقادیری که تابع Ms Box برمی گرداند.

    شکل 3 – نمایش کادر محاوره دستورات زیر را در نظر بگیرید: (1)Msg Box (“ File Not Found”, o , “ File Message Box” ) (2)Ms Box ( “The Button Display Help”, VbYes No+Vb Default Button 2 ) در دستور1، درکادر محاوره پیغام “File Not Found” ظاهر می گردد.این کادر دارای یک دکمه Ok است ودرعنوان آن عبارتFile Message Box نمایش داده می شود.

    در دستور 2، عبارت The Button Display Help را در کادر محاوره نمایش می دهد.

    دکمه های Yes و No در کادر محاوره ظاهر می گردند که دکمهOk به عنوان دکمه پیش فرض انتخاب می شود.

    تابع Input Box : این تابع، کادرمحاوره ای را برای دریافت اطلاعات نمایش می دهد.تابع Box Input به صورت زیر به کار می رود : نام متغیر رشته ای = Input Box ( PromPt [,Title] [, Default] [, Xpos] [,Y Pos] [,Help File] [, Context]) در تابع Input Box ، پارامتر Prompt پیامی است که به کاربر بر می گوید، چه داده ای را باید وارد کند.

    حداکثر طول این پارامتر می تواند 1024 کاراکتر باشد.

    پارامتر Title رشته ای است که عنوان کادر محاوره مرودی را مشخص می کند، چنانچه این پارامتر ذکر نشود، نام پروژه در عنوان کادر محاوره ورودی ظاهر می گردد.

    پارامتر Default رشته ای است که مقدار پیش فرض داده ورودی را تعیین می کند که در هنگام بستن کادر محاوره، این مقدار برگشت داده می شود.

    پارامترهای X Pos و Y Pos مختصاتی از فرم می باشد که کادر محاوره ورودی باید در آنجا ظاهر گردد.

    چنانچه این مشخصات ذکر نشود، کادر محاوره در وسط فرم ظاهر می شود.

    مختصات X Pos و Y Pos برحسب توئیپ (1440 /1 اینچ یا 567 /1 سانتی متر) می باشند.

    پارامترهای Help File و Context قبلا ذکر شده اند به عنوان مثال، دستور زیر را در نظر بگیرید: User Name =Input Box ( “User Name?” , “User Information” , “ Hamid”) با اجرای این دستور کادر محاوره شکل 4 ظاهر می گردد.

    اگر کاربر دکمه Cancel را انتخاب کند( یا کلید Enter را فشار دهد)، داده وارد شده توسط کاربر را برمی گرداند.

    دستورات زیر را در نظر بگیرید : Result = Input Box ( “Enter A Name ?” , “ Enter Data” , “Hamid”) If Result = Empty Then چنانچه کاربر دکمه Cancel را کلیک کند، این دستورات اجرا می شوند : Else چنانچه کاربر دکمه Ok را کلیک کند، این دستورات اجرا می شوند : End If شکل 4 – کادر محاوره Input Box در دستورات فوق، چنانچه کاربر دکمه Cancel را کلیک کند، تابع Input Box رشته ای به طول صفر ( رشته تهی ) و گر نه داده وارد شده را بر می گرداند.

    رشته به طول صفر را در ویژوال بیسیک با کلمه کلیدی Empty نیز می توان مشخص کرد که موجب افزایش خوانایی برنامه می شود.

    مثال 1 : برنامه ای که مربع اعداد تا 25 را در آرایه ای قرار می دهد و سپس مربع اعداد را همراه با مجموع مربعات آنها نمایش می دهد.

    مراحل طراحی و اجرای برنامه : با گزینه File / New Project پروژه جدیدی ایجاد می کنید.

    یک عنصر List Box و یک عنصر Tezt Box به فرم اضافه کنید.

    دو عنصر Command Button به فرم اضافه کرده، خاصیت کپشن و Name این عناصر را به ترتیب به عباراتDisplay و Exit تغییر دهید.

    ( مثل فرم برنامه ) 4-ناحیه خالی فرم را دوبارکلیک نموده،دستورات زیررا در رویدادForm–Load( ) به صورت زیر تایپ کنید : List 1.

    Clear Text 1.

    Text =” “ Text 1.

    Locked = True Text 1.

    Tab Stop = False 5-دکمه display را دوبارکلیک نموده، دستور زیر را در رویداد display-click( ) تایپ کنید : Dim a ( 25 ) As Integer For I = 1 To 25 a ( i ) = i ^ 2 Next i List 1.

    clear Sum = 0 For i = 1 To 25 Sum = Sum + a ( i ) List 1.

    Add Item Str ( a ( i ) ) Next I Text 1.

    Text = “ Sum is : “ + Str ( Sum ) 6- دکمه Exit را دوبار کلیک کرده دستور End را در رویداد Exit-Click ( ) تایپ نمایید.

    7- پروژه را با کلید F5 اجرا کنید.

    دکمه Display را کلیک نمایید تا مربعات اعداد 1 تا 25 همراه با مجموع آنها نمایش داده شود.

    برای خروج از برنامه دکمه Exit را کلیک کنید.

    مثال 2 : برنامه ای که 10 عدد را می خواند و در آرایه ای قرار می دهد.

    سپس کوچکترین عدد و مکان آن را پیدا کرده نمایش می دهد.

    دو عنصر Text Box ، دو عنصر Command Button و یک عنصر List Box به فرم اضافه کرده، خاصیت کپشن و Name دکمه ها را به ترتیب به عبارات Start و Exit تغییر دهید.

    ناحیه خالی فرم را دو بار کلیک نموده دستورات رویداد Form-Loud ( ) را به صورت زیر تایپ کنید.

    List 1.

    Text =” “ Text 2.

    Locked = True Text 2.

    Tab Stop = False Text 2.

    Tab Stop = False دکمه Start را دوبار کلیک کرده دستورات رویداد Start – Click ( ) را به صورت زیر تایپ کنید : Dim a ( 1 To 10 ) As Integer For i = 1 To 25 Prompt = “ Enter Number “ + Str ( i ) a ( i ) = val ( Input Box ( prompt .

    “ enter data “ , “ “ )) Next i Min = a ( 1 ) I Min = 1 For i = 2 To 10 If a ( i ) Next i List 1.

    Clear For i = 1 To 10 List 1.

    Add Iten v Str ( a ( i ) ) Next i Text 1.

    Text = “ Min = “ + Str ( Min ) Text 2.

    Text = “l Min = “ + Str ( l Min ) دکمه Exit را دوبار کلیک کرده، دستور End را در رویداد Exit-Click ( ) تایپ کنید.

    با کلید F5 پروژه را اجرا کنید.

    دکمه Start را کلیک کرده، 10 عدد را وارد کنید.

    پس از ورود 10 عدد، کوچکترین عدد و مکان آن نمایش داده می شود.

    مثال 3 : برنامه ای که 10 عدد را می خواند، میانگین اعداد را محاسبه کرده، اعدادی را که بیشتر از میانگین باشند، به همراه با میانگین اعداد نمایش می دهد.

    مراحل طراحی و اجرای برنامه : 1- با گزینه File / New Project پروژه جدیدی ایجاد می کنید.

    دو عنصر List Box ، دو عنصر Command Button و یک عنصر Text Box به فرم اضافه کرده، خاصیت کپشن و Name دکمه ها را به ترتیب به عبارات Start و Exit تغییر دهید.

    ( مثل فرم برنامه) ناحیه خالی فرم را دو بار کلیک نموده دستورات رویداد Form-Loud ( ) را به صورت زیر تایپ کنید.

    Clear List 2.

    Tab Stop = False دکمه Start را دوبار کلیک نموده، دستورات رویداد Start – Click ( ) را به صورت زیر تایپ کنید : Dim a ( 1 To 10 ) As Integer Sum = 0 For i = 1 To 10 Prompt = “ Enter Number “ + Str ( i ) a ( i ) = val ( Input Box ( prompt , “ enter data “ , “ “ )) Sum = Sum + a ( i ) Next i List 1.

    Clear Avr = Sum / 10 For i = 1 To 10 List 1.

    Add Iten v Str ( a ( i ) ) If a ( i ) > avr then List 2.

    Add Item Str ( a ( i ) ) Next i Text 1.

    Text = “ avrage” = + Str ( avr ) این قطعه برنامه ابتدا 10 عدد را می خواند ( باInput Box ) و مجموع آنها را محاسبه می کند.

    سپس تمام اعداد را به عنصر List 1 و اعدادی را که بیشتر از میانگین باشند، به عنصر List 2.

    منتقل می کند.

    دکمه Exit را دوبار کلیک کرده، دستور End را در رویداد آن تایپ کنید.

    پروژه را با کلید F5 اجرا می کنیم.

    اعداد وارد شده در عنصر List 1و اعدادی که بیشتر از میانگین باشند، در عنصر List 2 نمایش داده می شود.

    سپس میانگین اعداد در عنصر Text 1 چاپ می شود.

    مثال 4 : برنامه ای که 10 عدد را خوانده و در آرایه ای قرار می دهد و سپس مشخص می کند چه عددی بیش از همه تکرار شده است.

    چنانچه عدد تکراری وجود نداشته باشد، پیامی صادر می گردد.

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

    روند فوق تا انتهای آرایه ادامه می یابد.

    مراحل طراحی و اجرای برنامه : 1- با گزینه File / New Project پروژه جدیدی ایجاد کنید.

    یک عنصر List Box ، دو عنصر Text Box و دو عنصر Command Button به فرم اضافه کرده، خاصیت کپشن و Name دکمه ها را به ترتیب بر Start و Exit تغییر دهید.

    Tab Stop = False دکمه Start را دوبار کلیک نموده، دستورات رویداد Start – Click ( ) را به صورت زیر تایپ کنید : Dim a ( 1 To 10 ) As Integer For i = 1 To 10 Prompt = “ Enter Number “ + Str ( i ) a ( i ) = val ( Input Box ( prompt , “ enter data “ , “ “ )) List 1.

    Add Item Str ( a ( i ) ) Next I Max Count =0 For i = 1 To 10 List 1.

    Add Iten v Str ( a ( i ) ) If a ( i ) = a ( j ) Then Tedad + 1 Next j If tedad > max Count Then max Count = tedad mean = a ( i ) End if Next I If max Count >1 Then Text 1.

    Text = “ number =” + Str ( mean ) Text 2.

    Text = “max Count =” + Str (max Count ) Else Text 1.

    Text = “ Text 2.

    Text = “ Msg Box ( “ No iteration found “ ) End if دکمه Exit را دوبار کلیک کرده، دستور End را در رویداد آن تایپ کنید.

    پروژه را با کلید F5 اجرا کنید.

    دکمه Start را کلیک کرده، 10 عدد را وارد نمایید.

    پس از وارد شدن 10 عدد، عددی که بیشترین تکرار را دارد در عنصر در عنصر Text 1 نمایش داده می شود و تعداد تکرار آن در عنصر Text 2 چاپ خواهد شد.

    مثال 4: برنامه ای که عدد صحیح مثبت را خوانده بر مبنای 2 تبدیل می کند و نمایش می دهد.

    برای تبدیل عدد از مبنای 10 بر مبنای 2 تقسیمات متوالی استفاده می شود.

    دو عنصر Text Box و دو عنصر Command Button و یک عنصر Label به فرم اضافه کرده، خاصیت کپش و Name دکمه ها را به ترتیب به عبارات Binary و Exit تغییر دهید.

    ناحیه خالی فرم را دو بار کلیک نموده و دستورات رویداد Form-Loud ( ) را به صورت زیر تایپ کنید.

    Label 1.

    Auto Size = True Label 1.

    Caption = “ Deamal number : “ Text 1.

    Tab Stop = False دکمه Binary را دوبار کلیک نموده، دستورات رویداد Binary – Click ( ) را به صورت زیر تایپ کنید : Dim a ( 32 ) Num = val (Text 1.

    Text) i = 1 while num > 0 a ( i ) = num Mode 2 num = num/ 2 i = i + 1 wend Text 2.

    Text = “ For j = i - 1 To 1 Step – 1 Text 2.

    Text = Text 2.

    Text + Str ( a ( j ) ) Next j دکمه Exit را دوبار کلیک کرده، دستور End را در رویداد آن تایپ کنید.

    با کلید F5 پروژه را اجرا کنید و سپس یک عدد صحیح مثبت درعنصر Text 1 وارد کنید و دکمه Binary را کلیک کنید تا عدد وارد شده به مبنای 2 تبدیل شود.

    نتیجه کار در عنصر Text 2 نمایش داده می شود.

    روش های مرتب سازی و جستجو : اعمال مرتب سازی و جستجو از اعمالی هستند که بیشترین مورد استفاده را دارند.

    الکوریتم های مرتب سازی و یا جستجو در اکثر برنامه های بانک های اطلاعاتی، کامپایلرها، مفسرها و سیستم عامل مورد استفاده قرار می گیرند.

    مرتب سازی و جستجو به روش های مختلفی انجام می شوند.

    مرتب سازی عناصر آرایه : منظـور از مرتب سازی لیست، قرار دادن عناصر آنها به ترتیب از کوچک به بزرگ ( ترتیب صعودی ) و یا از بزرگ به کوچک ( ترتیب نزولی ) است.

    List ( 1 ) ) List ( 1 ) > = List ( 2 ) > = … List ( n ترتیب نزولی روش های مرتب سازی مختلفی برای مرتب سازی آرایه ها وجود دارد که عبارتند از : مرتب سازی تعویضی ( EXCHANGE ) 2 - مرتب سازی انتخابی ( SELECTION ) 3 - مرتب سازی درجی ( INSERTION ) نمونه ای از روش مرتب سازی تعویضی : الگوریتم های متعددی برای پیاده سازی روش مرتب سازی تعویضی وجود دارد.

    یکی از الگوریتم ها به صورت زیر است : ابتدا اولین عنصر لیست با بقیه عناصر لیست مقایسه می شود، اگر عنصری از اولین عنصر لیست کوچکتر باشد، جای آن با اولین عنصر لیست عوض می شود.

    بدین ترتیب کوچکترین عنصر لیست به ابتدای لیست منتقل می شود.

    در مرحله دوم، همانند مرحله اول، دومین عنصر لیست با عناصر بعد از خودش مقایسه می شود.

    اگر عنصری کوچکتر از دومین عنصر لیست باشد، جای آن با دومین عنصر لیست عوض می شود.

    مراحل بعدی مثل مرحله اول و دوم انجام می شود تا لیست مرتب شود.

    واضح است که اگر لیست از n عنصر تشکیل شده باشد، n - 1 مرحله برای مرتب کردن لیست لازم خواهد بود.

    در هر مرحله کوچکترین عنصر به بالا منتقل خواهد شد.

    شکل 5 مثالی از مرتب سازی تعویضی و شکل 6 الگوریتم آ“ را نشان می دهد.

    این روش مرتب سازی تعویضی را حبابی می گویند.

    شکل 5- روند مرتب سازی تعویضی 10 10 10 10 50 20 20 20 50 20 30 30 50 30 30 40 50 40 40 40 50 40 30 20 10 مرحله 4 مرحله 3 مرحله 2 مرحله 1 شروع شکل 6- الگوریتم مرتب سازی تعویضی For Counter 1 = 1 To tedad - 1 loop For Counter 2 = 1 To tedad - 1 loop If List( Counter 1 ) > List ( Counter 2 ) Then Swap List ( Counter 1 ) , List ( Counter 2 ) روش مرتب سازی انتخابی : در روش مرتب سازی انتخابی به این صورت عمل می گردد : در بین عناصر لیست کوچکترین عنصر لیست پیدا شده و جای آن با عنصر اول لیست عوض می شود.

    مرحله بعد، از محل دوم لیست به بعد کوچکترین عنصر لیست پیدا شده و جای آن با عنصر دوم عوض می شود.

    این روند تا مرتب سازی کامل لیست ادامه می یابد.

    شکل 7 این روند را نمایش می دهد و شکل 8 الگوریتم مرتب سازی انتخابی را پیاده سازی می کند.

    شکل 7- روند مرتب سازی انتخابی برای 5 عنصر 10 10 10 10 50 20 20 20 60 60 33 33 33 33 33 50 60 60 20 20 60 50 50 50 10 مرحله 4 مرحله 3 مرحله 2 مرحله 1 شروع شکل 8 – الگوریتم مرتب سازی انتخابی For Counter = 1 To Tedad – 1 Loop Min = List (Counter 1) L min = Counter 1 For Counter 2 = Counter 1 To Tedad Loop If list (Counter 2) Lmin = Counter 2 End if Swap List (Counter 1 ) , List ( L min ) End For روش مرتب سازی درجی : در روش مرتب سازی درجی، ابتدا دو عنصر اول لیست مرتب می شوند وسپس عنصر سوم نسبت به عنصر اول و دوم در جای مناسب قرار می گیرد و پس از آن عنصر چهارم نسبت به عنصر اول، دوم و سوم در جای مناسب قرار می گیرد.

    این روند تا مرتب سازی کامل لیست ادامه می یابد.شکل9 روند مرتب سازی درجی را نمایش می دهد.

    شکل10 الگوریتم مرتب سازی درجی را پیاده سازی می کند.

    شکل 9- روند مرتب سازی درجی برای 5 عنصر 5 6 8 8 10 6 8 10 10 8 8 10 70 70 70 10 70 6 6 60 70 5 5 5 5 شکل 10 – الگوریتم مرتب سازی درجی For position = 2 To tedad Loop Spot = position Value = List (position) While ( Spot > 1 ) and ( List ( Spot – 1 ) > Value Loop List ( Spot) = List ( Spot – 1 ) Spot = Spot – 1 Whileend List(spot) = value End for مثال 6- برنامه ای که 6 عدد را از ورودی می خواند و به روش حبابی مرتب کرده، نمایش می دهد.

    دو عنصر Text Box و دو عنصر ()Command Button به فرم اضافه کرده، خاصیت کپشن وName دکمه را به ترتیب به عبارات Sort و Exit تغییر دهید.

    ناحیه خالی فرم را دوبار کلیک نموده و دستورات رویداد Form-Loud را به صورت زیر تایپ کنید.

    Clear دکمه Sort را دوبار کلیک کرده، دستورات رویداد Sort – Click را به صورت زیر تایپ کنید : ابتدا 6 عدد خوانده شده را مرتب می کنید و سپس آن را به عنصر List 1.

    اضافه می کنید.

    Dim a ( 1 To 6 ) For i = 1 to 6 Promt = “ Enter Number “ + Str ( i ) a ( i ) = Val ( Input Box ( prompt , “ Enter Data Box “ , “ “ )) Next i For i = 1 to 6 For j = 1 to 6 If a ( i ) > a ( j ) Then Temp = a ( j ) a ( j ) = a ( i ) a ( i ) = temp End If Next j , i List 1.

    Add Item Str ( a ( i ) ) Next i دکمه Exit را دوبار کلیک کرده، دستور End را در رویداد آن تایپ کنید.

    دکمه Sort را کلیک کرده شش عددرا وارد نمایید.

    اعداد مرتب شده در عنصر List 1 نمایش داده می شوند.

    روش های جستجو : دربسیاری از اوقات ممکن است خواسته باشیم دریک لیست، اطلاعات خاصی را جستجو کنیم.همانندعمل مرتب سازی، عمل جستجو نیزممکن است به روشهای مختلف انجام شود که دو روش عبارتند از روش ترتیبی و روش دو رویی.

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

    اگر عنصری از لیست با عنصر مورد نظر برابر باشد یا به پایان لیست رسیده باشیم، عمل جستجو خاتمه می یابد.

    این روش، جستجوی ترتیبی نام دارد.

کلمات کلیدی: ویژوال بیسیک

ظهور کامپيوتر انقلابي در اجتماع امروز پديد آورده است که برخي اهميت آن را به مراتب بيش از انقلاب صنعتي که در قرن هجدهم ميلادي در اروپا آغاز گرديده مي دانند. زيرا اختراع ماشين بخار و ساير ماشين هايي که به دست بشر ساخته شده و بوسيله او به خدمت گرفته شد

ويژوال بيسيک توسعه يافته زبان برنامه‌نويسي بيسيک مي‌باشد. بيسيک توسط پروفسور جان کمنسي و توماس کرتز از کالج دارتموث براي نوشتن برنامه‌هاي ساده ايجاد شد. طراحي آن از اواسط دهه ???? آغاز گرديد. ويژوال بيسيک تا نسخه ? به صورت ?? بيتي بود. از نسخه ? به

تاريخچه ويژوال بيسيک حدودسي و پنج سال قبل در کالج دارتموث زباني پا به عرصه وجود گذاشته برنامه نويسي را از تسلط حرفهايها خارج کرد و به مبتديان هم امکان داد تا وارد دنياي شيرين برنامه نويسي شوند ؛ اين زبان بيسيک نام گرفت. زبان بيسيک از ساير زبانها

از امروز قصد دارم آموزش آموزش برنامه نويسي به زبان ويژوال بيسيک و در آينده نزديک با آموزش ويژوال بيسيک دات نت براي شروع آموزش برنامه نويسي بهتره از زبان بيسيک شروع کنيد و با مفاهيم برنامه نويسي در حالت کلي آشنا تر بشويد در 3 يا 4 پست آينده با آمو

مقدمه اي بر ويژوال بيسيک نت بيسيک زباني است که دوران تحول زيادي را پشت سر گذاشته است. اولين نسخه از زبان بيسيک طوري بود که برنامه نويسي در آن دشواري خاصي داشت . امروزه با جديدترين نسخه بيسک به نام ويژوال بيسيک نت سر و کار داريم. اين زبان در محيط

ويژوال بيسيک به شما اين امکان رو مي ده که يک برنامه تحت ويندوز رو، تنها با کشيدن و انداختن چند کنترل بر روي فرمي که از پيش براي شما آماده شده، و تنها با نوشتن چند قطعه کد کوچک براي کارهايي که از ويژوال بيسيک مي خواهيد انجام بده، بسازيد. خوب، از اين

در ابتدا جالب است بدانيد که براي برنامه نويسي به زبان ويژوال بيسيک ، به برنامه ي ويژوال بيسيک 2005 نيازي نداريد شما مي توانيد برنامه هاي خود را با يک ويرايشگر متني مانند Note pad نيز بنويسيد اما برنامه هاي ويژوال بيسيک معمولاً طولاني هستند و نوشتن

ويژوال بيسيک توسعه يافته زبان برنامه‌نويسي بيسيک مي‌باشد. بيسيک توسط پروفسور جان کمنسي و توماس کرتز از کالج دارتموث براي نوشتن برنامه‌هاي ساده ايجاد شد. طراحي آن از اواسط دهه ???? آغاز گرديد. ويژوال بيسيک تا نسخه ? به صورت ?? بيتي بود. از نسخه ? به

کار با کنترل winsock کنترل winsock به شما اجازه مي دهد به يک ماشين راه دور متصل شده و داده ها را با استفاده از پروتکل TCP و UDP مبادله کنيد. هر دو پروتکل مي توانند براي برنامه هاي client و server استفاده شوند. موارد استفاده : ساختن يک برنامه cl

تاريخچه ويژوال بيسيک شرکت ميکروسافت قبل از رسيدن ويژوال بيسيک نسخه هايي از ويرايش بيسيک را توسعه داد.ويرايشهايي چون MBASIC,GWBASIC,BASICA,Quick Basic,QBASIC هر يک بنحوي در پيشرفت وتوسعه اين زبان دخيل بوده اند. زبان بيسيک يک زبان اينترپرتري بود.با و

ثبت سفارش
تعداد
عنوان محصول