![]() |
|
بسمه تعالي
مقدمه :
كار آموز گرامي جزوه اي كه در اختيار شماست حاصل تجربيات تدريس چند ساله (سال 1371 ) مي باشد كه در امر آموزش كامپيوتر حاصل شده است .
با توجه به توسعه همه جانبه كامپيوتر در علوم و نياز مبرم فارغ التحصيلان دانشگاهي و ساير علاقمندان برآن شدم كه قدمي هر چند ناچيز در امر آموزش برنامه نويسي اين علم برداشته باشم اين جزوه در قالب برنامه نويسي كوئيك بيسيك تنظيم و نياز كاربر را جهت آمادگي برنامه نويسي بصورت ساده برآورده مي كند
مطالب آن سلسله وار و وابسته بهم و با ترتيب خاص بهمراه مثال ارائه شده است لذا ميبايست بصورت قدم به قدم آن را مطالعه و از حذف مطالب آن خودداري فرمائيد
جهت تكميل و رفع نواقص جزوه آمادگي هر گونه انتقاد و پيشنهاد را از سوي اساتيد محترم و ساير سروران ميباشم
نگارش دوم ارديبهشت 1378 (محرم سال 1420 )
نام دوره : كوئيك بيسيك
مدت دوره : 10 ساعت تئوري و 10 ساعت عملي
هدف از دوره : آموزش برنامه نويسي
جلسه
اول
در زبان محاوره اي براي نام گذاري اشياء از حروف الفبايي استفاده مي شود در زبان برنامه نويسي نيز از تعدادي علائم براي نشان دادن متغيرها استفاده مي شود. در زبان محاوره اي براي انتقال هدف و مقصودمان به ديگران كلمات مناسب را با همديگر طبق قوائد گرامري تركيب و يك جمله كه يك مفهوم دارد مي سازيم در زبان برنامه نويسي نيز براي اين عمل از دستورات و علائم مربوط به آن زبان استفاده مي شود.
علائم در زبان كوئيك بيسيك
1- حروف كوچك و بزرگ انگليسي از A تا Z
2- علائم گرامري ! : ” ? ;
3- رقمهاي 0 تا 9
4- چهار عمل اصلي رياضي ( جمع, تفريق , ضرب و تقسيم )
5-علائم رياضي ) , ( , > , <, = , ^ , >= , <= , / , *
توضيح اينكه علامت * براي ضرب / براي تقسيم ^ براي توان >= براي بزگتر يا مساوي استفاده مي شود
6- بعضي علائم مثل # $ &
تذكر : صورت هاي مختلف استفاده از علائم را در حين نوشتن برنامه ها توضيح داده خواهد شد
مقادير و كميت ها در زبان كوئيك بيسيك
مقادير و كميت ها بر دو نوع هستند :
1- ثابت : كميت هايي كه در حين اجراي برنامه ثابت مي مانند مثل نام يك شخص در يك برنامه حقوق دستمزد
2- متغير: كميت هايي هستند كه در حين اجراي برنامه ممكن است تغير حاصل كنند مثل ساعت اضافه كار يك شخص در يك برنامه حقوق دستمزد ثوابت و متغيرها نيز هركدام به دو دسته عددي و رشته اي تقسيم مي شوند
1- عددي : همانطور يكه مي دانيد اعداد شامل 0 تا 9 مي باشد و اعداد مي تواند شامل اعداد صحيح و اعشاري باشد
اعداد اعشاري بر دونوع :
الف : اعداد اعشاري معمولي مثل 45.13
ب : اعداد اعشاري نمايي 7+ 6-
10*12.4 10*123.4
نمايش اعداد بصورت نمايي شبيه نماد علمي در رياضي است با اين تفاوت كه به جاي پايه 10 و علامت ضربدر از حرف انگليسي E كه مخفف EXPONENT است استفاده ميشود مثال :
6
12.4*10
12.4E6
2- رشته اي : رشته اي يا STRING مي تواند شامل حروف انگليسي باشد البته اگر عدد نيز بعنوان رشته در نظر گرفته شود در حالت عادي اعتبار عددي خود را از دست مي دهدو فقط شكل نمايشي عدد را دارد.رشته اي مانند ALI , CD12XR توضيح اينكه رشته اي ها را بايد درون دو عدد علامت “ “ كه به كوتيشن (نقل قول) معروف است قرار داد حداكثرتعداد كاراكترها ي مورد استفاده درون كوتيشن 255 عدد مي تواند باشد.متغيرها كميت هايي هستند كه مقدار آنها در برنامه تغير مي كند نام متغيرها حتما بايد با يك حرف الفبايي شروع شودو نوع آن با توجه به علامت آخر آن شناخته مي شود
علائم آخر به شرح ذيل است :
علامت $ براي متغير الفبايي ( رشته اي )
علامت # براي متغير با دقت مضاعف ( براي اعداد بزرگ در نظر گرفته مي شود )
علامت % براي متغيرهاي صحيح و بدون اعشار بكار مي رود
علامت ! براي متغير هاي اعشاري و معمولي بكار مي رود
تذكر : اگر انتهاي نام يك متغير هيچكدام از علامت هاي فوق نباشد آن متغير بعنوان اعشاري معمولي در نظر گرفته ميشود مثل علامت ! .مثال : B! يا B از نظر گرفتن عدد با هم فرق ندارند
جدول محاسباتي و علامت هاي مخصوص انها
|
توضيحات |
پاسخ |
زبان بيسيك |
شكل رياضي |
عملكرد |
شكل
|
|
توان معمولي |
16 |
2 ^4 |
2 4 |
توان |
^ |
|
ضرب معمولي |
8 |
2*4 |
2*4
|
ضرب |
* |
|
تقسيم معمولي |
2.5 |
5.2 |
5.2
|
تقسيم |
/ |
|
فقط عدد صحيح را مي دهدد |
2 |
2\5 |
****** |
تقسيم در حالت صحيح |
\ |
|
فقط باقيمانده را مي دهد |
1 |
2MOD5 |
******
|
باقيمانده تقسيم |
MOD |
در هنگام تقسيم كردن هر گاه ازعلامت / استفاده شود تقسيم بصورت عادي صورت مي گيرد و اگر از علامت \ استفاده شود بعد از عمل تقسيم فقط عدد صحيح آن را مي دهد و اگر از كلمه MOD استفاده شود فقط باقيمانده را به ما مي دهد
انواع دستورالعمل هاي بيسيك
1- دستورالعمل هاي محاسباتي مثل جمع , تفريق, ضرب و تقسم . مثال C=A+B كه باعث ميشود مقدار A و B جمع و در C ذخيره گردد شكل كلي فرمان در برنامه چنين است
10 LET A = 5
20 LET B = 25
30 LET C = A+ B
در اينجا ابتدا مقدار 5 را به متغير A و مقدار 25 به متغير B داده ايم و سپس جمع مقادير فوق را در C ذخيره نموده ايم
2-دستورالعمل هاي ورودي مثل INPUT A كه باعث گرفتن يك عدد و قرار دادن آن در متغير A مي شود
3- دستوالعمل هاي خروجي مثل PRINT C كه باعث مي شود مقدار ذخيره شده در C روي صفحه نمايش ظاهر شود
تذكر: اگر در يك متغير رشته اي , رشته اي ذخيره شده باشد آن رشته با اين دستور نيز روي صفحه نمايش ظاهرميشود . مثال :
10 LET D$=“MOHAMMAD HADI NABOODGAR”
20 PRINT D$
4- دستورالعمل هاي كنترلي مثل GO TO كه باعث رفتن به يك خط مورد نظر مي شود . مثال
50 GOTO 20
توضيح : وقتي كه برنامه به خط 50 برسد از طريق اين فرمان برنامه به خط 20 برميگردد
تقدم و تاخر محاسباتي : ترتيب انجام عمليات اصلي در دستورات محاسباتي عبارتند از
1- توان رساني 2- ضرب و تقسيم 3- جمع و تفريق
اگر در يك عبارت ضرب و تقسيم باشد ابتدا تقسيم واگر جمع و تفريق باشد ابتدا تفريق انجام مي شود
يك برنامه كوتاه
ظرفيت خازن C ولتاژ عبوري V و وات مصرفي W ميباشد براي فرمول ذيل برنامه كامپيوتري بنويسيد
2
W=1/2CV
برنامه فوق در يك چهارچوب ساده به قرار ذيل است
10 INPUT C
20 INPUT V
30 W= 0.5 * C * V ^ 2
40 PRINT W
50 END
در عبارات رياضي دو علامت از علائم اصلي نمي تواند پشت سر هم قرار گيرند و در صورت لزوم از پرانتز استفاده ميشود
علامت ^ در خط30 علامت توان ميباشد و عدد 0.5 حاصل2 /1 ميباشد
مثال فرمول مقابل در يك برنامه بصورت يك خط به شكل ذيل است
AX+B
G = ------------
CX+D
60 LET G = (A*X+B)/(C*X+D)
![]()
جلسه دوم
در دستوالعمل هاي محاسباتي جايگزيني متغيرهاي عددي در متغيرهاي الفباي و بالعكس مجاز نمي باشد . مثال :
N$=“MAHDI” درست است
N=“MAHDI” غلط است
N$ =121 غلط است
N$=“121” درست است
N=121 درست است
در دستوالعمل هاي محاسباتي ميتوان از اصطلاحات و عبارات رياضي كه در زبان بيسيك مجاز است استفاده نمود
الف : توابع رياضي
1- تابع قدر مطلق يك عدد
ABS(X)
PRINT ABS(-5*3.2)
16
پاسخ عبارت مقابل عدد 16 مي شود
2- تابع جذر اعداد
SQR (X)
PRINT SQR(49)
7
پاسخ عبارت مقابل عدد 7 مي شود
توضيح اينكه بجاي كلمه PRINT مي توان از علامت ? استفاده نمود
3-تابع عدد صحيح
INT (X)
? INT (12.23)
12
? INT (-12.23)
-13
پاسخ 13 - صحيح است چرا كه اگر عدد منفي باشد اعشاري حذف ولي يك عدد منفي تر خواهد شد
ب: توابع مثلثاتي
1- تابع سينوس SIN(X)
در توابع مثلثاتي مي بايست X را بر حسب راديان به برنامه (به تابع ) وارد نمود
Õ = P = 3.1415 SIN 60 = SIN P/3 SIN 90 = SIN P/2
مثال سينوس90درجه
PRINT SIN (3.1415/2)
2- تابع كسينوس COS(X)
مثال كسينوس 60 درجه
PRINT COS(3.1415/3)
ج : ساير توابع مثلثاتي
1- ارك تانژانت ATN(X)
2- حاصل X بتوان E EXP(X)
3- تانژانت TAN(X)
4- لگاريتم LOG(X)
د ستورالعمل هاي ورودي
همانطوري كه قبلا اشاره شد يكي از مهم ترين دستورالعمل هاي ورودي INPUT مي باشد كه باعث مي شود كامپيوتر از طريق صفحه كليد ورودي را دريافت و به يك متغير نسبت دهد .شكل كلي : يك علامت + يك حرف يا يك كلمه INPUT يك شماره براي خط
مثال:
20 INPUT A!
22 INPUT TOOL!
28 INPUT NAME$
شماره خط 20 و 22 هيچ فرقي با هم ندارند و هر دو از ما عدد مي گيرند ولي شماره 28 از ما متغير رشته اي كه مي تواند مثلا يك اسم باشد .اگر بخواهيم هنگام دريافت يك متغير پيغام نيز صادر شود بايد آن پيغام را درون دو علامت نقل قول “ “ قرار داد مثال :
28 INPUT “ please enter name “ ; NAME$
در اين صورت هنگام گرفتن يك اسم از ما پيغام please enter name را نيز نمايش ميدهد
دستوالعمل هاي خروجي
يكي از مهم ترين دستورالعمل هاي خروجي PRINT مي باشد كه باعث مي شود خروجي روي صفحه مونيتور ظاهر شود كه قبلا مختصري در مورد آن براي شما توضيح داديم اگر بخواهيم هنگام خروج اطلاعات پيغام مناسب نيز صادر شود بايد پيغام را درون دو علامت نقل قول “ “ قرار داد مثال:
28 print “name = “ ; NAME$
در اين صورت هنگام اعلام يك اسم كه در متغير قبلا ذخيره شده پيغام namE= را نيز نمايش ميدهد
چند فرمان ساده
1- براي پاك كردن صفحه نمايش از فرمان CLS استفاده مي شود
2- براي اينكه برنامه يا قسمت هاي مختلف برنامه براي خود و ساير برنامه نويسان مشخص و قابل فهم شود از فرمان REM استفاده مي شود توضيح اينكه هرچه بعد از اين كلمه نوشته شود در حين اجراي برنامه اين خطوط در نظر گرفته نمي شوند و تاثيري در اجراي برنامه ندارد
3- در پايان برنامه يا هرجاي برنامه كه برنامه نويس از ادامه برنامه منصرف شود از كلمه END استفاده مي كند
يك برنامه كامل
برنامه اي بنويسيد كه از فرمول ذيل وتر يك مثلث را محاسبه كند



تذكر مهم : در QBASIC مي توان از نوشتن شماره خط صرفنظر نمود .در خط 90 بجاي كلمه PRINT از علامت ? استفاده شده است هر گاه كليد ENTER براي رفتن به خط بعد زده شود علامت سؤال خود بخود تبديل به PRINT ميشود
![]()
جلسه سوم
دستورالعمل هاي انتقالي
اين دستورات مي تواند بايك شرط تركيب و به صورت شرطي مورد استفاده قرار گيرد
1- دستور IF شرطي
شكل فرمان
اين قسمت درصورت برقرار نبودن شرط انجام ميشود ELESE به شماره خط يا برچسب يا يك فرمانTHEN شرط لازم IF
قسمت ELESE به بعد مي تواند وجود نداشته باشد
فرمان GO TO كه قبلا توضيح داده شد مي تواند به همراه اين فرمان استفاده شود
يك برنامه 2
براي فرمول مسافت x = 1/2 a t + v0 t را بنويسيد
5 REM PROGRAM FOR MASAFAT
10 CLS
20 INPUT “ SHETAB”;A
30 INPUT “ ZAMAN”;T
40 IF A<= 0 THEN GO TO 90
50 IF T<= 0 THEN GO TO 90
60 INPUT “ SORAT”;V
70 X= 0.5*A*T^2+V*T
80 PRINT “ MASAFAT=“;X
90 END
يك برنامه : هر پوند برابر 453 گرم است برنامه اي بنويسيد كه اعلام نمايد هرپند داده شده به برنامه چند كيلو و چند گرم است
10 CLS
20 INPUT “ ENTER POND”;P
30 G = P * 435
40 K = G \ 1000
50 GR = G MOD 1000
60 PRINT “KILOO=“;K,”GRAM=“;GR
اسامي متغيرهابايد توسط كاما يا سيميكالن (, ; ) ازهم جدا شود . اگر از كا ما استفاده شود در هر خط حداكثر 5 متغير چاپ مي شود و اگر از سيميكالن استفاده شود ليست خروجي فشرده تر و حداكثر 4 برابر فشرده تر خواهد شد
در خط 40 برنامه عددي كه در G ذخيره شده بر 1000 تقسيم و فقط عدد صحيح آن در K ذخيره مي شود و در خط 50 عدد ذخيره شده در G را بر 1000 تقسيم و باقيمانده آن در GR ذخيره مي شود
تابع SPC(X)
تعداد X محل خالي بين عبارات در نظر مي گيرد
مثال
PRINT “A”SPC(5);”B”
A-----B
توجه داشته باشيد كه 5 فضاي خالي در بين A و B قرار ميدهد
تابع TAB(X)
مكان نما را براي چاپ به ستون شماره X هدايت ميكند
مثال
PRINT “A”SPC(5);”B”
A---B
فرمان SLEEP(X)
هر گاه بخواهيم در يك برنامه بر اساس ثانيه وقفه ايجاد كنيم از اين فرمان استفاده مي كنيم
تذكر اگر بجاي X عدد صفر قرار دهيم تا زدن يك كليد از سوي كاربر در برنامه وقفه ايجاد مي شود
مثال :
SLEEP(2)
هر گاه برنامه به اين خط برسد به مدت 2 ثانيه وقفه ايجاد شده سپس خط بعد اجرا مي شود . لازم به توضيح است كه در برنامه نويسي بيسيك خطوط از خط اول شروع و تا خط آخر مي رود البته در صورتيكه از دستورات انتقالي استفاده نشده باشد
يك برنامه
از طريق فرمول ذيل برنامه مساحت و محيط يك مثلث را بنويسيد . اضلاع عبارتند از A,B,C و محيط M برابر جمع سه ضلع و P = M / 2 مي باشد
S=
10 PRINT "ENTER A,B,C FOR PROGRAM"
15 INPUT " ENTER A=0 OR B=0 OR C=0 EXIT PROGRAM"; a, b, c
20 IF a = 0 THEN GOTO 120
25 IF b = 0 THEN GOTO 120
30 IF c = 0 THEN GOTO 120
35 m = a + b + c
40 P = m / 2
45 s = SQR((P * (P - a) * (P - b) * (P - c)))
50 CLS
55 PRINT "mohit="; m, "masahat="; s
60 PRINT "PRESS KEY TO CONTINU"
90 SLEEP (0)
100 CLS
110 GOTO 10
120 CLS
130 PRINT "END PROGRAM "
دستور رنگ :
شكل فرمان رنگ زمينه و رنگ متن COLOR شماره خط
رنگ ها را از روي شماره آنها كه در جدول زير است مي توان استفاده كرد توضيح اينكه كد 0 تا 15 براي متن و زمينه و از شماره 16 تا 31 كه از جمع كد رنگ + 16 بدست مي آيد براي حالت نوشته و با همان رنگ است ولي باحالت چشمك زن مي باشد بطور مثال : رنگ آبي كه داراي كد شماره 1 است اگر با 16 جمع شود عدد 17 به دست مي آيد كه همان رنگ آبي است ولي با حالت چشمك زن مي باشد
جدول كد رنگ
|
كد |
رنگ |
كد |
رنگ |
|
0 |
سياه |
8 |
خاكستري |
|
1 |
آبي |
9 |
آبي روشن |
|
2 |
سبز |
10 |
سبز روشن |
|
3 |
فيروزه اي |
11 |
فيروزه اي روشن |
|
4 |
قرمز |
12 |
قرمز روشن |
|
5 |
سرخابي |
13 |
سرخابي روشن |
|
6 |
قهوه اي |
14 |
زرد |
|
7 |
سفيد |
15 |
سفيد با شدت بالا |
مثال :
5 CLS
10 A$=“MAHDI”
15 COLOR 7,1
20
PRINT A$
جلسه چهارم
دستورLOCATE
اين دستور براي قراردادن مكان نما در يك مكان مشخص از صفحه نمايش مورد استفاده قرار مي گيرد دستور فوق معمولا به همراه PRINT و براي نمايش داده ها و يا براي دريافت داده ها در يك محل از پيش تعين شده بكار مي رود
شكل فرمان : ستون و سطر LOCATE شماره خط
مثال :
10 CLS
20 LOCATE 11,20 : PRINT “ ZAHRA”
30 LOCATE 18,15 : PRINT “HADI”
40 END
برنامه اي بنويسيد كه تعداد ساعات و حق الزحمه يك كارگر را گرفته و ميزان دريافتي را پس از كسر 7% بيمه 14% ماليات و 5000 ريال وام صندوق محاسبه و چاپ نمايد
CLS
INPUT " HOURS "; H
INPUT " MOZD "; M
HO = H * M
MA = .14 * HO
BI = .7 * HO
NET = HO - BI - MA - 5000
SA = 5000
CLS
PRINT "LIST SALARY"
PRINT "BIMEH ="; BI
PRINT "MALIYAT ="; MA
PRINT "SANDOOGH ="; SA
PRINT "GRASS NET ="; NET
PRINT "GRASS ="; HO
END
در برنامه بالا از شماره خط استفاده نشده است
زوج دستور FOR AND NEXT
براي تكراريك سري خطوط برنامه از اين فرمان استفاده ميشود
شكل فرمان
FOR VARIBLE = X TO Y STEP Z
“”””
“”””
“”””
NEXT VARIBEL
مثال : برنامه اي بنويسيد كه كلمه كامپيوتر را 5 مرتبه روي صفحه نمايش بنويسد
FOR I = 1 TO 5 STEP 1
PRINT “COMPUTER”
NEXT I
از نوشتن STEP 1 مي توان صرفنظر كرد چون پيش فرض آن 1 است
حلقه متداخل هم وجود دارد كه از چند FOR , NEXT درست شده ولي فقط بايد دانست كه اولين NEXT متعلق به آخرين FOR ميباشد . با يك برنامه جدول ضرب را به نمايش در آوريد
CLS
FOR A = 1 TO 10
FOR B = 1 TO 10
C = A * B
PRINT TAB(4 * B); C;
NEXT B
NEXT A
بر نامه اي بنويسيد كه اعداد متوالي را جمع نمايد
cls
s=0
input “ enter parameter for a” ;a
input “ enter parameter for B” ;B
FOR G= A TO B
S= S+G
NEXT G
PRINT “SUM OF THE INTEGERS FROM A TO B IS “ ; S
END
جلسه
پنجم
زوج دستور حلقه تكرار WHILE و WEND
در بعضي مواقع نياز است يك حلقه شرطي مداوم را فراهم آور يد كه اين حلقه در صورت آن شرط تكرار شود
شكل فرمان :
WHILE شرط لازم
خطوطي كه بايد تكرار شوند
WEND
مثال :برنامه اي بنويسيد كه اعداد يك رقمي و فرد را پيدا نمايد
cls
X=1
WHILE X<10
IF X MODE 2 <> 0 THEN PRINT X
X=X+1
WEND
مثال :برنامه اي بنويسيد كه يك عدد را خوانده فاكتوريل آن را بدهد
CLS
FACT=1
X=1
INPUT “ ENTER NUMBER FOR FACTORIL “; N
WHILE X <= N
FACT = FACT * X
X= X+1
WEND
PRINT “FACTORIL = “;FACT
تابع RAND
يك عدد تصادفي بين صفر و يك به ما مي دهد اين تابع در قرعه كشي ها ي كامپيوتري كاربرد دارد
براي جلوگيري از تكرار اعداد تصادفي پشت سر هم دستورالعمل RANDOMIZE TIMER را در خط قبل از تابع بكار مي بريم
مثال :دستوري بنويسيد كه از بين 5 نفر به حكم قرعه يك نفر را انتخاب نمايد
1- مهدي 2-هادي 3-زهرا 4- مصطفي 5- مرتضي
PRINT INT (5*RAND)
حال اين خط يك عدد از يك تا 5 مي دهد كه نمايانگر نام شخصي از اشخاص بالا است
از فرمول B + INT((A-B)*RAND) براي توليداعداد تصادفي در بين دو عدد مورد نظر استفاده مي شود در اين فرمول عدد بزرگ A وعدد كوچكتر B مي باشد
مثال : يك عدد تصادفي بين 50 و 70 توليد نمائيد
PRINT 50+INT((70-50)*RAND)
تابع INT كه قبلا توضيح داداه شد علاوه بر استفاده در فرمول بالا براي گرد كردن اعداد از آن استفاده مي شود
مثال : برنامه اي بنويسيد كه هر عدد اعشاري كه به آن ميدهيم
1- با يك رقم 2- با دو رقم 3- با سه رقم اعشاري گرد نمايد
CLS
INPUT “ ENTER NO. ( 000.0000) “;N
A= INT(N*10+.5)/10
B=INT(N*100+.5)/100
C=INT(N*1000+.5)/1000
CLS
PRINT N
PRINT A
PRINT B
PRINT C
END
تابع LEN
اين تابع براي تعين طول يك رشته بكار مي رود
شكل فرمان : (عبارت رشته اي)LEN
مثال:
A$=“MOHAMMAD”
B=LEN(A$)
PRINT B
مثال: برنامه اي بنويسيد كه هر رشته اي به آن بدهيم درست درسطر 4 و وسط صفحه نمايش نمايان شود
COLOR 7,1
CLS
INPUT “ENTER NAME “;NA$
CLS
SLEEP(3)
LOCATE 4,40-(LEN(NA$))/2 : PRINT NA$
SLEEP(0)
آرايه يا DIM
مجموعه اي از عناصر همگن كه در محل هاي متوالي حافظه در كامپيوتر ذخيره مي شود آرايه گويند هر آرايه با يك نام و انديس بصورت A1,A2,A3,....,An مشخص مي شود
شكل فرمان : (تعداد) نام DIM
مثال: براي متغير B 4 محل ذخيره در حافظه درست كنيد
DIM B(4)
شكل شماتيك آن به شكل ذيل است
|
B4 |
B3 |
B2 |
B1 |
برنامه اي بنويسيد كه نام و نام خانوادگي وشماره تلفن 3 نفر راگرفته وسپس آنها را روي صفحه نمايش نشان دهد
DIM NA$(3), FA$(3), NU(3)
FOR I = 1 TO 3
CLS
INPUT " ENTER NAME :", NA$(I)
INPUT " ENTER FAMIL :", FA$(I)
INPUT " ENTER NUMBER :", NU(I)
NEXT
CLS
LOCATE 1, 2: PRINT "NAME FAMIL NUMBER"
S = 2
FOR I = 1 TO 3
LOCATE S, 2: PRINT NA$(I)
LOCATE S, 15: PRINT FA$(I)
LOCATE S, 30: PRINT NU(I)
S = S + 2
NEXT