دستور جایگزینی (LET) اگر بخواهیم یک مقدار معلوم ( که آن را از کاربر نمی پرسیم ) دورن یک خانه حافظه بریزیم، از دستور LET استفاده می کنیم. شکل کلی این دستور به صورت زیر است:
عبارت = نام خانه حافظه LET
این دستور حاصل عبارت سمت راست را حساب کرده و آن را درون خانه حافظه ( متغیر ) مشخص شده می ریزد.
نکته: در دستور LET هموراه نام خانه حافظه در سمت چپ و عبارت در سمت راست نوشته می شود. یعنی اگر بخواهیم عدد 2 را درون خانه حافظه A بریزیم، باید بنویسیم: LET A=2، نه این که بنویسیم LET 2=A.
توجه:
1- دستور LET A+B=C+D در زبان بیسیک بی معنی است، چون در سمت چپ مساوی حتماً باید اسم یک خانه حافظه بیاید، اما A+B اسم خانه حافظه نیست.
2- در زبان بیسیک LET A=B و LET B=A با هم تفاوت دارند، دستور اول محتوای خانه حافظه B را درون خانه حافظه A می ریزد و دستور دوم محتوای خانه حافظه A را درون B می ریزد.
3-وقتی دستور LET A=B اجرا می شود محتوای خانه حافظه B درون خانه حافظه A ریخته می شود، اما محتوای خانه حافظه B خودش دست نخورده باقی می ماند.
4- می توانید دستور LET را در زبان بیسک ننویسید، یعنی دو خط زیر در زبان بیسیک یک معنی دارند:
LET A=2*3
A=2*3
5- در هر خانه حافظه تنها یک عدد می توانیم ذخیره کنیم. یعنی وقتی مقداری را با دستور LET درون یک خانه حافظه می ریزیم، مقدار قبلی آن از بین می رود.
نمونه: برنامه ای بنویسید که محتوای خانه حافظه A را از کاربر بپرسد. سپس آن را 5 برابر کرده، درون خانه حافظه B بریزد و نهایتاً محتوای خانه حافظه را نمایش دهد.
پاسخ:
INPUT A
LET B=A*5
PRINT B
زبان بیسیک برای عوض کردن محتوای دو خانه حافظه با همدیگر یک دستور دارد. این دستور:
SWAP A,B
محتوای دو خانه حافظه A و B را با هم عوض می کند.
برای ریختن یک کلمه یا جمله در خانه حافظه از نوع کلمه ای، از دستور LET استفاده می کنیم و کلمه یا جمله را درون گیومه می گذاریم. مثلاً دستور:
"LET A$="SALAM
دستور شرط:
زبان بیسیک دستوری دارد که در صورت درست بودن یک شرط، کاری را انجام می دهد و در صورت غلط بودن آن به خط بعدی می رود. این دستور به شکل زیر است:
دستور THEN شرط IF
وقتی رایانه به خط بالا می رسد، شرط بعد از کلمه IF را بررسی می کند. اگر این شرط درست بود، دستور بعد از کلمه THEN را اجرا می کند و گرنه هیچ کاری انجام نمی دهد و به خط بعدی می رود.
توجه:
شرطی که جلوی دستور IF وجود دارد، غالباً مقایسه بین دو مقدار است،
علامت های مقایسه دیگر در زبان بیسیک به صورت زیر هستند:
کوچکتر مساوی یا بزرکتر مساوی <= یا =<
علامت مخالف <> یا ><
نکته: هر جای برنامه دستور END را بنویسید، اجرای برنامه همان جا ختم می یابد.
نمونه: می خواهیم برنامه ای بنویسیم که با گرفتن طول و عرض یک چهارضلعی بگوید آن چهار ضلعی مربع است یا مستطیل؟
input tool , arz
"if tool=arz then print "morabae
"if tool<>arz then print "mostatil
اگر بخواهیم در صورت درست بودن شرط، به جای یک دستور، چند دستور اجرا شود، از دستور IF به شکل زیر استفاده می کنیم:
THEN شرط IF
دستور 1
دستور 2
...
END IF
یعنی تمام دستوراتی که می خواهیم در صورت درست بودن شرط اجرا شوند را بعد از THEN ( هر کدام در یک خط) می نویسیم و در آخر کلمه ی END IF را می نویسیم. رایانه با دستوراتی که بعد از THEN و قبل از END IF نوشته شده اند به صورت یک مجموعه رفتار می کند، یعنی یا همه آن ها را اجرا می کند یا هیچ کدام را.
دستورات شرطی زبان بیسیک قابلیت دیگری نیز دارند. فرض کنید می خواهید رایانه شرطی را بررسی کند، اگر شرط درست بود دستور شماره 1 و اگر شرط غلط بود دستور شماره 2 را اجرا می کند. با این که با دو دستور if می توان چنین کاری را انجام داد، اما زبان بیسیک دستور ویژه ای هم برای این کار دارد که به شکل زیر است:
دستور 2 ELSE دستور 1 THEN شرط IF
کلمات IF و THEN و ELSE به همین ترتیب نوشته می شوند. اگر شرط جلوی IF درست باشد، دستور 1 , و اگر غلط باشد دستور 2 اجرا می شود.
اگر بخواهیم در صورت درست بودن شرط، چند دستور خاص و در صورت غلط بودن آن چند دستور خاص دیگر اجرا شوند، می توانیم از شکل زیر استفاده کنیم:
THEN شرط IF
مجموعه دستورات 1
ELSE
مجموعه دستورات 2
END IF
در این حالت در صورت درست بودن شرط، مجموعه دستورات 1 و در صورت غلط بودن آن مجموعه دستورات 2 اجرا می شود.
برای ترکیب چند شرط می توان بین آن دو از دو کلمه AND به معنی «و» و OR به معنی «یا» استفاده کرد.
دستور پرش
فرض کنید بنا به دلایلی می خواهید از یک خط برنامه به خط دیگری بپرید، برای این کار هم زبان بیسیک دستور ویژه ای به شکل زیر دارد:
شماره خط GOTO
وقتی رایانه به دستور بالا برسد، می رود به سراغ خطی از برنامه که شماره آن را جلوی دستور GOTO نوشته ایم.
توجه: برای هر خط از برنامه که خواستید شماره بگذارید، کافی است در ابتدای آن خط از برنامه، شماره اش را بنویسید و بعذ از یک فاصله، دستور ان خط را بنویسید.
توابع پر کاربرد
تابع قسمت صحیح
اگر بخواهید رایانه قسمت صحیح ( عدد صحیح قبل از ) هر عدد را برای شما حساب کند، کافی است از عبارت زیر استفاده کنید:
(عبارت) INT
دقت کنید که خط بالا دستور نیست، بلکه یک عدد است که آن را می توان نمایش داد ( با دستور PRINT) یا در عبارت ها استفاده کرد.
تابع تبدیل عدد تصادفی
برای تولید یک عدد تصادفی بین 0 و 1 از دستور RND استفاده می کنیم. رایانه هر وقت به کلمه RND بر بخورد به جای آن یک عدد اتفاقی اعشاری بین 0 و 1 قرار می دهد. ( امکان دارد خود صفر تولید شود اما یک نه )
برای تولید یک عدد اتفاقی صحیح بین A و B ( با امکان تولید خود A و B) می توان از دستور زیر استفاده کرد:
INT(RAN*(B-A-1))+A
عملگر باقی مانده
برای بدست اوردن باقی مانده ی تقسیم A بر B می توانید از دستور زیر استفاده کنید:
A MOD B
عملگر خارج قسمت
برای به دست آوردن خارج قسمت صحیح تقسیم A بر B ضمن استفاده از تابع INT، می توانید از دستور زیر هم استفاده کنید:
A\B