تبليغاتX
آشنائی با مبانی کامپیوتر - بيگدلي

آشنائی با مبانی کامپیوتر - بيگدلي

آشنائي با مفاهيم مباني كامپيوتر

ادامه دستورات بیسیک بخش ششم

دستورات بیسیک بخش ششم

عبارات محاسباتی و دستور جایگزینی

نحوه نوشتن ( تبدیل ) عبارات ریاضی در زبان بیسیک را با یک مثال شرح می دهیم .فرمول زبر را در نظر بگیرید .

 

ملاحظه می کنید که سمت راست تساوی فوق یک عبارت محاسباتی است که به طور کلی مولفه های زیر موجودند.

1)      ثابت ها : ضریب X3   ، توان X  و ...

2)      متغیرها : ( X , Y )

3)      نمادهای عملیاتی : ( + ، - ، / ، * و توان رسانی

4)      توابع : مثلثاتی ، لگاریتمی ، قدرمطلق ، جذر و ...

ثابت ها :

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

ثابت عددی صحیح :  -4 , 0 , +27 , -347 , 19000 , -7496 , -56

ثابت عددی اعشاری : 12.84 , -113.01 , 0.0024 , 0.000012

در صورتی که ثابت اعشاری بسیار بزرگ یا بسیار کوچک باشد ، به صورت توانی نمایش داده می شود مثلا   0.000000012 = 12E-9  ,  190000000 = 1.9E+8  ,  .0001 = .01E-2 عددبعد از E باید صحیح باشد. وظیفه ثابت ها ، دادن مقدار اولیه به متغیرها ویا در حین اجرای برنامه است .

تمرین : درعبارات زیر ثابت های عددی را مشخص کنید و علت ثابت نبودن بقیه را بیان کنید .

.200   ,  0.1  ,  -0.0  ,  +0  ,  1.98$  ,  12E3.4  ,  1+37  ,  1340.E-47  ,  1.2E30.  ,  1492.16E-04  ,  9.48m  ,  17E-38  ,  E+17

 ثابت های  نشانه ای :  معمولا در متن برنامه به کار می روند و کاربرد انها در گویا نمودن خروجی برنامه است . ثابت نشانه ای باید در داخل یک جفت علامت نقل قول        قرار داده می شود نمونه هایی

 “ ALI-REZA”  , “ YOU WON”  ,  “TELEPHONE No. 3339152”  , “HI, How are you”  , “ Try again”

طول ثابت نشانه ای نباید از 255   نشانه بیشتر باشد .

متغیرها :

آنچه که در طول برنامه بتواند تغیر محتوی دهد متغیر نامیده می شود . در هر زبان برنامه نویسی برای متغیر نامی اختیار کرد . بدین وسیله می توان از محتوای آن استفاده کرد یا محتوایش را تغییر داد. تشخیص متغیرهای یک مسئله ، انتخاب نام مناسب برای آن ها و اصولا کار کردن  با متغیرها از عوامل مهم برنامه نویسی به زان های طح بالا است .

برای انتخاب نام متغیر نکات زیر را مد نظر گرفت :

الف ) نام متغیر تنها از تعدادی حرف و رقم تشکیل می شود که اولین نشانه از سمت چپ باید حرف باشد ، نشانه بعد از متغیر  می تواند یک از علائم زیر باشد .

%   برای متغیرهای صحیح کوتاه ( از -32768  تا  32767  )

&   برای متغیرها یا ثابت های صحیح بلند ( از -2147483648   تا  2147483647  )

!  برای متغیرهای اعشاری معمولی

#  برای متغیرهای اعشاری با دقت مضاعف

$  برای متغیرهای نشانه ای ( رشته ای )

اگر از علائم استفاده نشود ، در زبان بیسیک اعشاری معمولی تلقی می شود .

ب ) انتخاب نام مناسب برای یک متغیر  در خوانا بودن ، فهمیدن و سهولت مراجعات بعدی بسیار اهمیت دارد . نام متغیر تا حدودی معنای مفهومی آنرا داشته باشد .

ج ) نام متغیر نباید از کلمات کلیدی بیسیک انتخاب ( مثل از  دستورات ویا رابط های ریاضی )

مثال : NUMBER  ,  N$  ,  MAX  ,  AVREGE  ,  SIDE  ,  AREA  ,  SUM  , A$  ,  B20  , A1B2  , M

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

ABCD   ,  ITEM  ,  VARIABLE  ,  NO.  ,  A**2  ,  DOLLAR  ,  A.B  ,  NAME$   ,  BLA$

نمادهای عملیاتی :

+ برای عمل جمع زدن

-  برای عمل تفریق

/  برای عمل تقسیم

*  برای عمل ضرب

^  برای توان رسانی

\  برای تقسیم با خارج قسمت صحیح

MOD   برای تعیین باقی مانده تقسیم

 

اولویت انجام عملیات :

الف ) کلیه اعمال ریاضی را از چپ به راست انجام می دهیم

ب ) ابتدا داخل پرانتز ها حساب می شوند .

پ ) توان رسانی

ت ) قرینه سازی

ث ) ضرب و تقسیم هم اولویت هستند ( آنکه سمت چپ قرار دارد)

ج  ) تقسیم با خارج قسمت صحیح ( \ )

چ ) باقیمانده تقسیم ( MOD )

ح ) جمع و تنفریق هم ارزش هستند .

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

عبارات ریاضی زیر را ابتدا به عبارات زبان بیسیک تبدیل سپس برای هر عبارت اولویت تعیین کنید .

توابع :

اغلب برنامه نویسان از توابع ریاضی استفاده می کنند . این توابع به صورت تعریف شده در نرم افزار زبان بیسیک موجود است( در بخش های قبلی معرفی شده است ). کاربرها می توانند با توجه به خصوصیات آنها  از توابع در برنامه خود استفاده نمایند .

مثال :

عدد پی ∏ را در زبان بیسیک این گونه معرفی می کنند . می دانیم که تانژانت پی چهارم برابر یک است بنابراین آرک تانژانت یک برابر با پی چهارم می شود . بنابراین پی برابراست با 4 * ATN ( 1 )  

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

خطوط مثلثاتی x درجه را چگون می توان توسط کامپیوتر حساب کرد ؟ توجه دارید که ∏ ( پی ) تقریبا 3.141593   است . برای اینکه خطوط مثلثاتی زوایای برحسب درجه را حساب کنید ؛ ابتدا اندازه  آن زاویه را به رادیان تبدیل کنید . مثلا  /3   60o =   یعنی 1.47198 رادیان است .

+ نوشته شده در  دوشنبه بیست و هشتم فروردین 1385ساعت 0:38  توسط داود بيگدلي  | 

شکار فیل توسط افراد مختلف ؟

افرادمختلف چکونه فیل شکار می کنند ؟

ریاضیدان ها؛
ریاضیدانها به آفریقا می روند ، هر موجودی که فیل نیست کنار می گذارند و سپس یکی از آنها را که باقی مانده است می گیرند.
البته ریاضیدانهای با تجربه ، ابتدا سعی می کنند تا ثابت کنند حداقل یک فیل در آفریقا وجود دارد . آنگاه به آنجا می روند .
استادان ریاضی با تجربه، ابتدا ثابت می کنند حداقل یک فیل در آفریقا وجود دارد و سپس پیدا کردن و شکار آن را به عنوان تمرین برای دانشجو باقی می گذارند.

مهندسان نرم افزار کامپیوتر؛
این دسته شکار فیل را بر اساس اجرای الگوریتم زیر انجام می دهند :
گام 1) برو به آفریقا
گام 2) از دماغه رود نیل ( جنوبی ترین نقطه آفریقا ) شروع کن
گام 3) به سمت شمال حرکت کن و هر منطقه را از غرب به شرق بپیما .
گام 4) در هر گذر ،
   الف – هر حیوانی را که می بینی شکار کن .
   ب – آن را با فیل مقایسه کن .
   ج – اگر با هم برابر بودند کار تمام است و گرنه برو به گام 3 .
برنامه نویسان با تجربه ، ابتدا یک فیل را در قاهره (شمال آفریقا) قرار می دهند تا مطمئن شوند که الگوریتم فوق خاتمه می یابد .

اقتصاددان ها؛
اقتصاددان ها فیلی را شکار نمی کنند ، زیرا اعتقاد دارند که با ایجاد بازار آزاد و دادن پول به اندازه کافی به فیلها ، خودشان ، خودشان را شکار می کنند .

سیاستمداران لیبرال؛
از آنجا که این دسته معتقدند که همه موجودات راست می گویند لذا اولین حیوانی را که می بینند شکار کرده و می گویند که این فیل است ! و نظر هر کسی قابل احترام است لذا اینها درست می گويند .

سیاستمداران دموکرات؛
ابتدا شکار کردن فیل را به رای گذاشته اگر حائز اکثریت آرا بشود آنگاه به نیرو های مردمی دستور شکار آن را می دهند !

سیاستمداران دیکتاتور؛
هر چه دیکتاتور بگوید همان است ! پس اولین موجودی که به شما بدهند فیل است !

سیاستمداران آمریکایی؛
ابتدا با استفاده از رسانه های گروهی نشان می دهند که فیل ها یا تروریست هستند یا در حال تهیه بمب هسته ایی ! سپس با متحدانشان به آفریقا لشکر کشی می کنند . پس از اشغال کامل قاره سیاه ، اعلام می کنند که هیچ فیلی اینجا نبوده است ! و اینها اشتباهات اطلاعاتی سازمانهاي سیا و همکارانش بوده است .

روانشناسان؛
اینها ابتدا شما را هیپنوتیزم کرده و به شما می قبولانند که آنها فیل شکار کرده اند . پس از بیداری نیز به شما می گویند که اگر الان فیل نمی بینید یا شیزوفرنی شده اید یا دچار توهم در ضمیر ناخود آگاه خود !

وکلای حقوق؛
وکلا فیل شکار نمیکنند . ولی دور گله فیلها می گردند و در مورد اینکه هر کدام از فضولاتی که بر روی زمین ریخته متعلق به کدام فیل است ، بحث می کنند . البته اگر کسی آنها را استخدام نماید می توانند بر اساس شکل و رنگ یکی از همان فضولات ثابت کنند که کل گله به موکلشان تعلق دارد .

معاونین بخش مهندسی، تحقیق و توسعه؛
اینان خیلی سعی می کنند که فیلی را شکار کنند ، اما کارمندانشان به آنها اطمینان می دهند که تمام فیلهای موجود قبلا شکار شده اند.

مامورین کنترل کیفیت؛
اینها به فیلها کاری ندارند ، بلکه دنبال اشتباهات سایر شکارچیان می گردند.

منبع: isfahan4u.com

 

 

+ نوشته شده در  شنبه بیست و ششم فروردین 1385ساعت 7:21  توسط داود بيگدلي  | 

نمونه تمرینات کار شده در کارگاه فروردین 85

نمونه تمرینات

بدست آوردن ريشه ها دلتا

CLS

INPUT a, b, c

delta = b ^ 2 - 4 * a * c

IF delta < 0 THEN PRINT "no root": END

IF delta = 0 THEN

PRINT x = -b / 2 * a

END

END IF

x1 = -b + SQR(delta) / 2 * a

x2 = -b - SQR(delta) / 2 * a

PRINT x1, x2

 

بدست آوردن اعداد فيبو ناچي

CLS

a = 1: b = 1: PRINT a; b

INPUT n

FOR i = 1 TO n

 s = a + b: PRINT s

a = b

b = s

NEXT

 

مرتب كردن اعداد درهم از كوچك به بزرگ

CLS

FOR i = 1 TO 10

       INPUT n(i)

NEXT i

PRINT

FOR i = 1 TO 9

        FOR j = 1 TO 9

                IF n(j) <= n(j + 1) THEN GOTO 12

                SWAP n(j), n(j + 1)

12             NEXT j

        NEXT i

FOR i = 1 TO 10

        PRINT n(i);

NEXT i

 

روش دوم

 

CLS

t = 0: s = 0: k = 0

INPUT n

10 d = n MOD 10

t = t + 1

s = s + d

k = 10 * k + d

n = n \ 10

IF n > 0 THEN GOTO 10

PRINT t, s, k

END

 

رسم نمودار

CLS

INPUT a, b, c

SCREEN 9

WINDOW (0, 0)-(36, 36)

DRAW "u200d400u200r300l600"

x = -4

FOR i = 1 TO 500 STEP .5

            y = a * x ^ 2 + b * x + c

            x = x + .01

            PSET (18 - x, y + 18)

NEXT

 

 

بدست آوردن اعداد تام

CLS

n = 5

n = n + 1

FOR i = 1 TO n / 2

IF n MOD i = 0 THEN sum = sum + 1

NEXT i

IF sum = n THEN PRINT n

 

مقسوم عليه

CLS

FOR x = 1 TO 500

sum1 = 0

FOR i = 1 TO x \ 2

r = x MOD i

IF r = 0 THEN sum1 = sum1 + i

NEXT i

FOR y = 500 TO 1 STEP -1

sum2 = 0

FOR j = 1 TO y \ 2

r = y MOD j

IF r = 0 THEN sum2 = sum2 + i

NEXT j

IF sum1 = sum2 THEN PRINT x, y

NEXT y

NEXT x

 

 

احتمال C(n,r)

CLS

INPUT n, r:

factn = 1

FOR i = 1 TO n

factn = factn * i

NEXT i

factr = 1

FOR j = 1 TO r

factr = factr * j

NEXT j

t = n - r: factt = 1

FOR k = 1 TO t

factt = factt * k

NEXT k

c = fact / factr * factt

PRINT c

 

دو عدد را پيدا مي كند كه مجموع مقسوم عليه آن دو با هم برابر باشد

CLS

INPUT n

INPUT x

INPUT y

sum = 0

k = 0

FOR n = 1 TO n

r = x MOD n

IF r = 0 THEN sum = sum + r

IF s = 0 THEN k = k + s

IF sum = k THEN PRINT x, y

NEXT n

END

 

 

 

+ نوشته شده در  پنجشنبه بیست و چهارم فروردین 1385ساعت 6:42  توسط داود بيگدلي  | 

ادامه دستورات بیسیک بخش پنجم

ادامه دستورات بیسیک    بخش پنجم

زیر برنامه

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

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

نکته : زیر برنامه بعد از دستور END برنامه اصلی قرار می گیرند .

دستور SUB  

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

( لیست پارامترها )   نام زیر برنامه   SUB

محتوای  زیر برنامه  

END SUB

لیست پارامترها : متغیرهایی هستند که باید از برنامهاصلی به زیر برنامه منتقل شوند .

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

آرگومان : به مجموعه متغیرهای مختلف که موقع فراخوانی به زیر برنامه منتقل می شوند ، آرگومان گفته مشود .

نکته : متغیرهای زیر برنامه ، مقادیر خود را فقط در داخل آن زیر برنامه حفظ می کنند به چنین متغیرهایی متغیر محلی می گویند.

برنامه ای بنویسید که بتواند عددی را از ورودی خوانده سپس با استفاده از برنامه فرعی FACT  فاکتوریل آنرا محاسبه کرده نمایش دهد .

CLS

INPUT  n

CALL  FACT(n)

END

----------------

SUB   FACT (n)

    Mul = 1

    FOR  I = 1   To   n

        Mul = Mul * I

    NEXT  I

    PRINT  n”!”,Mul

END SUB

دستور  GOSUB  ,  RETURN

از دستور GOSUB به منظور انتقال کنترل به زیر برنامه استفاده می گردد و دستور RETURN  کنترل را به دستور بعد از    GOSUB هدایت می نماید . شکل کلی                               

شماره خط یا برچسب   GOSUB

--

--

--

شماره خط یا برچسب  RETURN

شماره خط یا برچسب :  برچسب یا شماره خط ، خطی از برنامه اصلی را مشخص می کند که زیر برنامه مربوطه از آنجا آغازمی گردد و ذکر آن در این دستور اجباری است .

نکته : شماره خط نمی تواند به صورت متغیر یا عبارت بیان شود .

اجرای زیر برنامه تا زمان برخورد به اولین دستور RETURN  ادامه می یابد ؛ سپس کنترل به دستور بعد از دستور GOSUB  هدایت می شود . اگر در دستور RETURN  برچسب یا شماره خطی ذکر شود کنترل بعد از اجرای زیر برنامه به شماره خط یا برچسب انتقال می یابد.

مثال : نمایش سه رشته کنار یکدیگر با اجرای یک زیر برنامه

CLS

GOSUB  40

END

---------------

40 PRINT  “ SubrotINE” ;

    PRINT    IN” ;

    PRINT    Progress”

RETURN

مثال 2: برنامه زیر نام چهار نفر را از ورودی دریافت کرده سپس حروف دوم آن ها را کنار هم قرداده و نمایش می دهد .

CLS

GOSUB  100

PRINT  y$

END

--------------

100  FOR  I = 1   To   4

           INPUT x$

           Y$ = y$ MID$( x$ , 2 1 )

     NEXT  I

RETURN

دستور ON     GOSUB

از این دستور برای انشعاب یا کنترل برنامه به چند زیر برنامه دلخواه بر اساس مقادیر مختلف یک عبارت محاسباتی یا یک متغیر استفاده می شود . شکل کلی دستور :

شماره خطوط  یا برچسب ها        GOSUN     عبارت  یا متغیر   ON

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

مقدار عبارت  یا متغیر : می تواند هر عددی از  1  تا 255 باشد .

مثال 1:

CLS

FOR  I = 1    TO    2

     ON  I   GOSUB    ONE , TWO

NEXT  I

END

ONE : PRINT  “ ONE “

       RETURN

TWO  : PRINT  “ TWO “

       RETURN

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

DO

   CLS

   INPUT  A , B

   INPUT  “ SELECT No. ( 1  -  4 )” ; N

   ON  N  GOSUB  100 , 200  , 300 , 400

   IF  (N = 5)   THEN

        END

   END IF

LOOP

100   PRINT  A ;” + ”; B; “=”; A + B

      RETURN

200  PRINT  A ;” - ”; B; “=”; A - B 

      RETURN

300   PRINT  A ;” * ”; B; “=”; A * B

      RETURN

400   PRINT  A ;” / ”; B; “=”; A / B

      RETURN

 

 

 

+ نوشته شده در  چهارشنبه بیست و سوم فروردین 1385ساعت 0:42  توسط داود بيگدلي  | 

ادامه دستورات بیسیک بخش چهارم

 ادامه دستورات بیسیک    بخش چهارم

آرايه :

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

آرايه ها مي توانند داري يك يا چند بعد باشند. آرايه هاي يك بعدي براي نگهداري ليستي از مقادير مورد استفاده قرار مي گيرند. عناصر درون آرايه يك بعدي با دنباله اي از اعداد صحيح يا عبارت صحيح انديس گذاري مي شوند.

آرايه يك بعدي ID(0) , ID(1) , ID(2) , ID(3) , ID(4)  اين آرايه يك جدول با يك سطر(ID) و پنج ستون(0 – 4)است

نكته : كليه عناصر يك آرايه بايد از يك نوع داده باشند . يك خانه آرايه نمي تواند از نوع عددي صحيح و خانه ديگر از نوع رشته اي باشند .

كاربرد آرايه ها :

فرض كنيد مي خواهيم ده عدد را به طور صعودي مرتب كنيم . براي ذخيره سازي اين اعداد بايد ده متغير به نام هاي num1 , … , num10  تعريف نمائيم .نوشتن برنامه اي كه بتواند اين ده متغير را مرتب كند مشكل است . درچنين مواردي ، زبان هاي برنامه نويسي راه حل ساده اي به نام آرايه در اختيار ما قرار مي دهند . به كمك آرايه ها مي توان ده عدد را در متغيري به نام num از نوع آرايه اي با يك سطر (num) و ده ستون (0 , … , 9) ذخيره كرد.

دستور  DIM

با استفاده از اين دستور مي توان يك آرايه تعريف كرد شكل كلي آن :

نوع داده       AS     (دامنه يا تعداد عناصر)  نام متغير آرايه       DIM  

نام متغير آرايه : همان نام اشتراكي است كه توسط آن مي توانيد به عناصر آرايه دسترسي پيداكنيد .

دامنه يا تعداد عناصر : حداكثر خانه هاي لازم (حد اكثر يك آرايه) جهت ذخيره سازي مقادير را در آرايه تعيين مي كند. تعداد مي تواند  بصورت عدد يا دامنه اي به شكل حد پائين  به سمت حد بالا باشد.

نوع داه : نوع آرايه را مشخص مي كند و مي تواند INTEGER =% صحيح   LONG =& , صحيح بلند  SINGLE =! , اعشاري با دقت معمولي   DOUBLE =# , اعشاري با دقت مضاعف  STRING =$ , رشته اي    باشد .

DIM  B(20)   آرايه B از نوع اعشاري معمولي  با 21 عنصر ( از صفر تا 20 )

DIM  N(5  To  45)  آرايه N   اعشاري معمولي با 41 عنصر

DIM  A%(10)  آرايه A  از نوع عددي صحيح با  11 ( از صفر  تا  10) عنصر

DIM  C$(5)  آرايه C   از نوع رشته اي با 6 عنصر

DIM  num(1  To  5)  AS  SINGLE  آرايه num  اعشاري معمولي داراي 5 عنصر

DIM  N(10 , 10)  آرايه دو بعدي با نام N  اعشاري معمولي داراي 11 سطر ( صفر تا 10) و 11 ستون (از صفر تا 10) .

دستور OPTION BASE  براي تعريف كوچكترين انديس آرايه براي شروع به شكل  OPTION BASE    m

M  عدد شروع  كه مي تواند صفر يا 1 باشد .

CLS

OPTION BASE 1

DIM  x(4)

DIM  name$(3)

X(1) = 10 : x(2) = 20 : x(3) = -70  : x(4) = 12.35

Name$(1) = " Ali"  : name$(2) = " Hamid "  : name$(3) = " Davood "

در مثال بالا ابتدا آرايه هاي X  و name$  تعريف شده سپس عناصر آنها مقدار دهي شده اند مثلا دستور X(2) = 20 باعث مي شود عدد 20 در خانه دوم آرايه X   ذخيره گردد.

استفاده از دستور INPUT

برنامه اي بنويسيد كه بتواند  10 نمره يك دانشجو را از ورودي دريافت نمده سپس آنها را درون آرايه ه اي به نام SCORE قرار دهد.

CLS

OPTION BASE 1

DIM  score(10)

For  k = 1   To   10

      INPUT  score(k)

NEXT  K

END

استفاده از دستور  DATA     READ 

برنامه اي بنويسيد كه بتواند بكمك دستور DATA … READ  5 نمره يك دانشجو را درون آرايه score  قرار داهد .

CLS

OPTION  BASE 1

DATA   7 , 17 , 15 , 18 , 3

DIM  score(5)

For  I = 1   To   5

    Read  score(I)

NEXT  I

End

در برنامه اگر I=2  باشد READ  score(2)   باعث مي شود داده دوم دستور DATA يعني عدد17 در خانه دوم score  ذخيره مي شود .

برنامه اي بنويسيد كه 10 نمره يك دانش آموز را از ورودي دريافت كرده و مجموع و ميانگين نمرات آن ها را محاسبه و چاپ كند .

CLS

DIM   score( 1   To   10 )   AS  INTEGER

For  I = 1   To   10

     PRINT  " score("; I ; ") = ";

     INPUT  "" , score(I)

NEXT I

Sum = 0

For  I = 1   To   10

      Sum = sum + score(I)

NEXT I

AVERAGE = sum / 10

PRINT " sum = " ; sum

PRINT  " AVERAGE = " ; average !

END

مرتب كردن عناصر آرايه ها:

مرتب سازي از مهم ترين الگوهاي برنامه نويسي است كه به كمك آرايه ها انجام مي گيرد . مرتب سازي مي تواند به صورت صعودي ( از كوچك به بزرگ )  يا نزولي ( از بزرگ به كوچك ). الگوي مرتب سازي هم روي اعدا و هم روي حروف صورت مي گيرد .

برنامه اي بنويسيد كه بتواند 5 عدد را از ورودي دريافت كرده سپس با استفاده از الگوريتم مرتب سازي آن ها را به صورت صعودي مرتب كرده نمايش دهد .

CLS

OPTION  BASE 1

DIM  array(5)   AS  SINGLE

FOR  I = 1   To   5

      PRINT  I ;

     INPUT  array( I )

NEXT  I

FOR  I = 1   To   4

      FOR  J = 1   To   5 –I

             IF  ( array( J ) >  Arraay( J + 1 ))    THEN

             SWAP array( J ) , array( J +1 )

             END IF

      NEXT  J

NEXT  I

FOR  I = 1    To   5

       PRINT  array( I )

Next  I

دستور SWAP 

براي جابجائي مقدار دو متغير با هم دستور SWAP  رابه شكل متغير 2   . متغير 1   SWAP   استفاده مي كنيم .

حال اگر در مثال بالا در شرط به جاي علامت بزرگتر (> ) در عمل مقايسه از علامت (<) استفاده شود ، مرتب سازي نزولي خواهد بود .

برنامه اي بنويسيد كه 5 نام را از ورودي دريافت كرده درون يك آرايه ذخيره كند . آن گاه با دريافت يك نام از ورودي مشخص كند كه نام ورودي در آرايه موجود است  يا خير ؟

CLS

DIM  name$(5)

For  I = 1   To   5

    INPUT  name$(I)

NEXT  I

FOR  I = 1   To   4

    SORTED$ = “ Yes “

    FOR  J = 1   To   5 – I

         IF  name$(J) > name$(j – 1))  THEN

            SWAP  name$(J) , name$(J +1)

            SORTED$ = “ No “

         END IF

    NEXT  J

    IF  SORTED$ = “ Yes “  THEN

         I = 4

    END IF

NEXT  I

FOR  I = 1   To   5

Low = 1

High = 5

WHILE  ( Low < = High )

    MIDDLE = INT(( Low + High ) / 2)

    IF  ( KEY$ > name$ ( MIDDLE ))  THEN

        Low = MIDDLE – 1

    ELSEIF (KEY$ < name$ ( MIDDLE ))  THEN

        High = MIDDLE – 1

    ELSE

         PRINT  MIDDLE

         END

    END IF

WEND

PRINT  “ Not  Found “

END

 

+ نوشته شده در  چهارشنبه بیست و سوم فروردین 1385ساعت 0:40  توسط داود بيگدلي  | 

ادامه دستورات بیسیک بخش سوم

ادامه Qbasic  بخش سوم

دستور SELECT  CASE

دستور  IF  يك دستور  شرطي بود كه بررسي شد . يكي ديگر از دستورات شرطي ، SELECT  CASE  است.

شكل كلي :

عبلرت SELECT  CASE

عبارت         CASE 1  

     مجموعه دستورات  1

عبارت          CASE 2

مجموعه دستورات 2

..........................

..........................

عبارت      CASE (n) 

مجموعه دستورات (n)

CASE  ELSE

مجموعه دستورات 

END  SELECT

توضيح :  ابتدا عبارت مقابل SELECT  CASE  ارزيابي مي شود و عبارت مقابل اولين CASE 1 را بررسي مي كند در صورتي كه عبارت آن ، شرايط مقابل SELECT CASE   را داشته باشد ؛ دستورات آن CASE  را اجرا خواهد كرد . اگر عبارت مقابل CASE 1 آن را نداشته باشد به ترتيب به CASE  هاي بعدي نگاه مي كند درصورت برقراري شرط ؛ دستورات آن CASE اجرا سپس كنترل اجرا به دستور بعد از END SELECT منتقل مي گردد. درصورتي كه عبارتي برابر شرط پيدا نشد ؛ دستورات بعد از CASE ELSE اجرا خواهد شد .

نكته :  تفاوت SELECT CASE   با   IF  دراين استه كه در SELECT CASE فقط يك عبارت مورد ارزيابي قرار مي گيرد ؛ اما در IF چندين شرط مورد ارزيابي قرار مي گيرد .

 

مثال :

CLS

INPUT " From  1   to  6 : ", num

SELECT CASE   num

   CASE 1

                                                          PRINT  " Black "

   CASE 2

                      PRINT  " Red "

   CASE 3

          PRINT  " Green "

  CASE 4

          PRINT  " Blue "

   CASE 5

          PRINT  " Orange "

   CASE 6

          PRINT  " Brown "

    CASE ELSE

           PRINT  " Invalid  Number ! "

END SELECT

END

عبارت مقابل CASE  داراي حالت هاي زير است

a)      شامل يك يا چند مقدار كه با ويرگول از هم جدا مي شوند .

ثابت عددي يا رشته اي   : "Davood" يا   2.5   

متغيير عددي  يا رشته اي   I  يا  Name$

b)      يك محدوده به شكل   X    to    Y  كه در آن X,Y  ثابت ، متغيير يا عبارت مباشند

c)       عملگرهاي رابطه اي كه پيش از آن  IS   و پس از آن يك ثابت ، متغيير يا عبارت باشد .

 

برنامه اي بنويسيد كه يك عدد را از كاربر دريافت كرده و منفي يا مثبت بودن آن بررسي مي نمايد . شرط خروج وارد كردن عدد صفر است .

CLS

PRINt  " Type  0  To EXIT "

BEGIN :

INPUT  num

SELECT CASE   num

    CASE  IS = 0

             PRINT  " Program ha Finished "

    CASE  IS < 0

              PRINT  ' Negative "

              GOTO  BEGIN

    CASE  ELSE

               PRINT  " Positive "

END SELECT

END

برنامه اي بنويسيد كه بتواند نمره دانش آموز را از ورودي دريافت كرده ؛ سپس با توجه نمره پيام مناسب را نمايش دهد .

0   ---    9     è    Very Bad

10    ---   14   è    Not  Bad

15   ---   17   è         Good

18   ---   20   è  Very Good

شرط خروج  ورود عدد   -1  است .

CLS

PRINT  " Type  -1  to EXIT "

BEGIN

INPUT " 0   -  20 " ,num

SELECT  num

     CASE  0   to   9

           PRINT  " Very Bad "

           GOTO BEGIN

      CASE  10  to   14

           PRINT  " Not  Bad "

           GOTO  BEGIN

      CASE  15    to   17

           PRINT  " Good "

           GOTO  BEGIN

       CASE  18   to   20

           PRINT  " Very Good "

           GOTO BEGIN

       CASE  IS =  -1

            PRINT  " Program  has  Finished "

END SELECT

END

 

دستور    DO    ---   LOOP 

نوعي حلقه تكرار در برنامه نويسي معمولا به دو روش زير استفاده مي شود .

a)       

شرط      UTIL  يا   DO      WHILE

 

بلوك حلقه .. دستور العمل هاي حلقه

LOOP

b)        

DO

بلوك حلقه  ..  دستور العمل هاي حلقه

شرط   UNTIL    يا    LOOP     WHILE

فرق دو روش ؛ در روش اول ابتدا شرط بررسي مي شود و بعد دستورالعمل ها اجرا مي گردد . در روش دوم  شرط در انتهاي حلقه كنترل مي شود به زبان ساده دستورالعمل ها حداقل يك بار اجرا خواهد شد .

فرق عبارت WHILE  , UNTIL   اين است ؛ در WHILE   دستورات  بلوك حلقه با درستي شرط اجرا مي گردد. بعد از عدم برقراري اجراي برنامه به دستور بعد از LOOP منتقل مي شود . اما UNTIL  برعكس عمل مي كند يعني تا زماني كه شرط نادرست است دستورات بدنه حلقه اجرا و درستي شرط باعث انتقال اجراي برنامه به بعد از دستور LOOP مي گردد .

نكته : به كار بردن عبارت WHILE ,  UNTIL  به همراه شرط در DO  ---  LOOP اختياري است.

برنامه اي بنويسيد  اعدادي كه مجذور آن ها كوچك تر يا مساوي 25 است را به همراه مجذورشان نمايش داده شود .

CLS

Num = 1

DO   WHILE   Square < 25

        Square = num ^ 2

        PRINT num , Square

        Num = num + 1

LOOP

END

برنامه بالا به كمك UNTIL

CLS

Num = 1

DO   UNTIL    Square = 25

        Square = num ^ 2

        PRINT num , Square

        Num = num + 1

LOOP

END

توابع :

رياضي

تابع ABS( … ) مقدار قدر مطلق عدد يا عبارت داخل پرانتز را باز مي گرداند.

تابع SQR( … ) محاسبه ريشه دوم ععد يا عبارت داخل پرانتز

تابع INT( … ) جزء صحيح عدد يا عبارت داخل پرانتز.

تابع LOG( … ) محاسبه لگاريتم طبيعي عدد يا عبارت عددي داخل ...

 

مثلثاتي

تابع SIN( … ) مقدار سينوس يك زاويه را باز مي گرداند . عدد داخل پرانتز برحسب راديان است

تابع COS( … ) مقدار كسينوس  يك زاويه را باز مي گرداند . عدد داخل پرانتز برحسب راديان است

تابع TAN( … ) مقدار تانژانت  يك زاويه را باز مي گرداند . عدد داخل پرانتز برحسب راديان است

تابع ATN( … ) مقدار آرك تانژانت نسبت دو ضلع مثلث قائم الزاويه را برمي گرداند

 

رشته اي

تابع LEN( x$ ) طول يك رشته را مشخص كرده و باز مي گرداند.

تابع LEFT$( x$ , n ) از سمت چپ يك عبارت رشته اي يا متغير رشته اي . تعداد معيني(n) كاراكتر را جدا كرده و به صورت رشته باز مي گرداند .

تابع RIGHT$( x$ , n ) از سمت راست يك عبارت رشته اي يا متغير رشته اي . تعداد معيني(n) كاراكتر را جدا كرده و به صورت رشته باز مي گرداند .

تابع MID$( x$ , m , n ) از درون يك عبارت رشته اي يا متغير رشته اي ؛ تعداد معيني (n) از كاراكتر(m) جدا كرده و به صورت رشته باز مي گرداند.

تابع STR$( n ) يك عدد يا متغير عددي را به صورت رشته باز مي گرداند .

تابع INPUT$ دريافت ورودي رشته اي

تابع RND توليد عدد تصادفي بين صفر و يك

تابع RANDOMIZE  همراه تابع RND جهت توليد سري هاي مختلف اعداد تصادفي بين صفر و يك به كار مي رود .

 

+ نوشته شده در  سه شنبه بیست و دوم فروردین 1385ساعت 14:57  توسط داود بيگدلي  | 

سوالات و پاسخ آزمون کتبی المپیاد کارگاهی رایانه فروردین 85

آزمون مسابقات آزمایشگاهی و کارگاهی مرحله شهرستانی       اسفند 1384

پاسخ صحیح با پس زمینه رنگی مشخص شده است

1- کدام گزینه در رابطه با گزینه Find  از منوی  Start  صحیح نیست

a)       نمی توان از علائم  ? , *   برای جستجوی استفاده کرد .

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

c)        می توان نتیجه حاصل از جستجو را ذخیره کرد.

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

2- کدام گزینه در مورد سطل بازیافتی ( Recycle  ) نادرست است ؟

a)       ظریف Recycle Bin قابل تغییر می باشد.

b)       با انتخاب گزینه Empty Recycle Bin  سطل بازیافت خالی خواهد شد .

c)        پائین نگه داشتن کلید Shift در زمان حذف فایل یا پوشه باعث حذف فایل بدون ارسال به سطل بازیافتی می شود .

d)       اطلاعات داخل سطل بازیافتی بعد از مدتی به صورت خودکار همگی حذف می شود .

3- جهت پیکربندی ابزارهای چند رسانه ای ( صوتی و تصویری ) از کدام گزینه در Control Panel استفاده می کنیم.

a)       System

b)       Regional Setting

c)        Network

d)       Multimedia

4- برای اجرا شدن برنامه کاربردی به هنگام راه اندازی ویندوز از کدام گزینه زیر استفاده می کنیم ؟

a)      

اجرای آن برنامه از Desktop

b)       قرار دادن یک میانبر در Desktop

c)        افزودن آن برنامه به پوشه Start up

d)       اضافه کردن آن به نوار Start

5-  متغییری که هیچ یک از علائم  # , ! , % , &   را ندارد چه نوعی را دارد و چه میزان از حافظه را اشغال می کند.

a)       اعشاری با دقت مضاعف  و  8 بایت

b)       عدد صحیح  و 2  بایت

c)        اعشاری تک دقتی  و 4 بایت

d)       رشته ای به میزان حافظه بستگی دارد.

6- خروجی فلوچارت رو به رو کدام است ؟

a)      

نمایش اعداد فرد بین  1  تا  10

b)       نمایش اعداد زوج بین 1  تا  10

c)        نمایش مجموع  10  عدد زوج

d)       نمایش مجموع  10  عدد فرد

 
7- در فلو چارت ، شکل روبرو  نشانه چیست ؟

a)       دستورات ورودی

b)       دستورات انتساب

c)        دستورات خروجی

d)       گزینه های  a , c

8- کدام  یک از برنامه های زیر در حافظه ROM قرار دارد ؟

a)       POST

b)       BIOS

c)        BOOT STRAP LOADER

d)       هرسه مورد

9- عدد دهدهی  16  ، در مبنای 16  برابر کدام گزینه است ؟

a)       F1

b)       10

c)        F

d)       1F

10- برای نمایش محتوای فایل ALI . TXT   کدام فرمان زیر بکار می رود ؟

a)       C:\> TYPE  ALI . TXT

b)       C:\>  COPY  ALI . TXT  CON

c)        C:\> COPY  CON  ALI . TXT

d)       موارد a , c

11- برای کاهش فاصله بین حروف یک کلمه کدام گزینه را در کادر تنظیماتی SPACEING   باید انتخاب نمود ؟

a)       EXPAND

b)       CONDENCED

c)        EXTENDED

d)       RAISED

12- برای ایجاد پاورقی کدام فرمان را باید انتخاب کرد ؟

a)       فرمان  FOOTNOTE  از منوی  VIEW

b)       فرمان HEADER  AND  FOOTER   از منوی  VIEW

c)        فرمان FOOTNOTE   از منوی  INSERT

d)       فرمان  HEADER  AND  FOOTER  از منوی  INSERT

13- کدام گزینه پسوند سایت های مربوط به مراکز دانشگاهی و آموزشی را نشان می دهد ؟

a)       ORG

b)       COM

c)        EDU

d)       GOV

14- اگر به خواهیم رونوشت یک E-Mail  را برای شخصی بصورت محرمانه ارسال کنیم به طوری که سایر دریافت کنندگان E-Mail   از آن اطلاع پیدا نکنند آدرس او را در کدام کادر تایپ کنیم ؟

a)       CC

b)       BCC

c)        TO

d)       Subject

15- معادل  دودوئی عدد  125  کدام است ؟

a)       1011111

b)       1111101

c)        11111010

d)       101111

16- امروزه برای اتصال دستگاه های جانبی به بورد اصلی هز چه اسلاتی استفاده می شود ؟

a)       ISA

b)       EISA

c)        PCI

d)       AGP

17- تهیه دیسکت راه انداز با کدام فرمان است ؟

a)       FORMAT / Q

b)       FORMAT / U

c)        FORMAT / S

d)       FORMAT / V

18- کدام  برای ادغام چند خانه به یک خانه استفاده می شود ؟

a)       SPLIT CELLS

b)       MERGE

c)        INSERT

d)       SPLIT TABLE

19- کدام TAB   خطوط عمودی بین ستون ها  درج می نماید ؟

a)       RAGHT

b)       DECIMAL

c)        CENTER

d)       BAR TAB

20- برای درج علائمی که در صفحه کلید موجود نیست از کدام گزینه استفاده می شود ؟

a)       SYMBOL

b)       BULLET & NUMBER

c)        FONT

d)       B , c

21- در برنامه Excel   کدام یک معادل صفحه گسترده می باشد ؟

a)       DATABASE

b)       DOCUMENT

c)        BITMAP

d)       SPREAD SHEET

22- برای ایجاد یادداشت در یک سلول کاربرد دارد :

a)       TEXT

b)       فرمول

c)        DATE & TIME

d)       COMMENT

23- اگر  A10 = 60   و  C14 = 90   باشد حاصل  = A10 – C14  چه خواهد بود ؟

a)       150

b)       30

c)        150+

d)       30-

24- ...   ...   ...   محل هائی بر روی برد اصلی  می باشد که ارتباط  CPU  و کارت های مختلف کامپیوتری را بر قرار می نماید؟

a)       کارت گرافیکی

b)       سوکت ریزپردازنده

c)        اسلات ها

d)       A , b

25- در کامپیوتر واحد  ALU  یعنی  ...   ... ...  ...

a)       واحد حافظه اصلی

b)       حافظه کمکی

c)        کنترل

d)       حساب و منطق

26- سرعت انتقال اطلاعات در حافظه اصلی را :

a)       با ثانیه می سنجد

b)       با مگا ثانیه می سنجد

c)        با نانو ثانیه می سنجد

d)       با دهم ثانیه می سنجد

27- کدام یک از برنامه های زیر در حافظه  ROM  قرار دارد ؟

a)       POST

b)       BIOS

c)        BOOT STRAP LOADER

d)       هر سه مورد

28- با n  بیت چند حالت مختلف را می توان نمایش داد ؟

a)       2n -1

b)       2n +1

c)        2n

d)       2n+1

29- کدام یک از حافظه های زیر سریعتر از بقیه می باشد ؟

a)       CACHE

b)       RAM

c)        HARD Disk

d)       REGISTER

30- گذرگاه های ریز پردازنده عبارت اند از :

a)       DATA BUS , CONTROL BUS

b)       DATA BUS , ADDRESS BUS

c)        ADDRESS BUS , DATA BUS , CONTROL BUS

d)       ADDRESS BUS , CONTROL BUS

31- وظیفه برنامه  BOOT STRAP LOADER  چیست ؟

a)       بررسی کردن اجزای سخت افزاری برای تست صحت انجام کار

b)       مدیریت اجرائی سیستم

c)        راه اندازی سیستم و انتقال فایل های لازم به حافظه

d)       پردازش گر  فرمان های سیستم عامل


32- ضرورت وجود حافظه
 CMOS   چیست ؟

a)       ذخیره اطلاعات سیستم عامل

b)       ذخیره پیکربندی سخت افزاری

c)        ذخیره اطلاعات نرم افزاری دیسک سخت

d)       ذخیره اطلاعات حافظه ROM

33- در زمان خاموش شدن سیستم محتوای حافظه CMOS   چگونه نگهداری می شود ؟

a)       به نوع CMOS   بستگی دارد

b)       در حافظه EEROM

c)        توسط باطری BACK UP

d)       در حافظه EPROM

34- برای اتصال دو کامپیوتر و انتقال اطلاعات از چه کابلی استفاده می شود ؟

a)       کابل LOOP BACK

b)       کابل LINK

c)        کابل  RS 232

d)       کابل HARD DISK

35- ابزار  MOUSE   و  PRINTER  به ترتیب معمولا به کدام درگاه ها متصل می شود ؟

a)       درگاه LPT1 , COM1

b)       درگاه COM2 , COM1

c)        درگاه COM1 , COM2

d)       درگاه LPT2 , LPT1

36- وظایف یک ریز پردازنده ( Microprocessor ) چیست ؟

a)       آوردن دستور العمل ها از حافظه به درون ثبات ها ( FETCH )

b)       کشف رمز دستورالعمل ها به منظور انجام وظایف خاص ( DECODE )

c)        انجام دستورالعمل ها ( PROCESS ) و بردن نتایج حاصله به حافظه اصلی ( STORE )

d)       همه موارد فوق

37- وقتی برنامه ای وارد کامپیوتر می شود این برنامه در قسمت ...  ...  ...  از حافظه قرار می گیرد .

a)       RAM

b)       ROM

c)        EPROM

d)       هیچکدام

38- هرگاه بخواهیم فایل های با پسوند.BAT را از زیر فهرست  DOS  درایو C:   به زیر فهرست BATCH  درایو A:   کپی کنیم کدام راه حل درست است ؟

a)       COPY  C:\DOS\*.BAT      A:

b)         COPY  C:\DOS\*.BAT     A:\BATCH

c)        درصورتی که فهرست جاری زیر فهرست BATCH  از درایو  A:    باشد  a , b    صحیح است .

d)       COPY C:\DOS\*.BATCH     A:\

39- نوار  HISTORY  چه چیزی را نشان می دهد ؟

a)       گزینه های رسانه ( MEDIA )

b)       آدرس های وب ذخیره شده

c)        آیتم های جستجو ( SERCH )

d)       وب سایت هایی که قبلا بازدید شده اند

40- برای حرکت به جلو در صفحات وب چگونه عمل می کنیم ؟

a)       فشردن کلید PAGE UP

b)       فشردن کلید PAGE DOWN

c)        کلیک کردن روی دکمه BACKWARD

d)       کلیک کردن روی دکمه FORWARD

موفق باشید

+ نوشته شده در  شنبه نوزدهم فروردین 1385ساعت 15:54  توسط داود بيگدلي  | 

پاسخ سوالات عملی کارگاهی رایانه فروردین 85

1- يك User  بنام Gonbad  ايجاد كرده Icon  آنرا عوض كنيد .

Start  è   Control panel   è   User Accounts   è   Create a New Account   è   تايپ نام( Gonbad )   è   Next   è   تعيين نوع دسترسي  è  Create Account

سپس از ليست  User Accounts   ،  User ( Gonbad )  را انتخاب مي كنيم .

Change The Picture   è   Brows For More Picture انتخاب تصوير دلخواه موجود ويا از طريق       è  Change Picture

 

2- براي خود User  ساخته ، جهت ورود به آن اسم رمز 0( Password ) تعريف كنيد

مراحل ساخت در سوال بالا ( 1 )  رمز گذاري :

 دلخواه  Userانتخاب   è   Create a Password  è  Type a New Password  è  Type a New Password Again to confirm  è Create Password

 

3- از E-Mail  خود به افراد زير نامه ارسال داريد ( محرمانه )

dbigdeli@yahoo.com

dr_golestan@yahoo.com

dbigdeli@gmail.com

davoodbigdeli@hotmail.com

 

پس از وارد شدن در صندوق الكترونيكي ( E-Mail ) خود ؛ با انتخاب گزينه نوشتن نامه ( Compose ) در بخش To:   اولين آدرس را نوشته ، سپس بقيه آدرس ها را در بخش BCC:   مي نويسيم ( بين هرآدرس يك ويرگول ( , ) قرار مي دهيم ). در بخش  Subject:   عنواني را براي نامه ارسالي مي نويسيم . در كادر اصلي متن نامه را نوشته پس از پايان كار بعد از كنترل نهائي با كليك بر  Send  آنرا ارسال مي كنيم .

 

4- متني در Word  درحد يك پاراگراف نوشته 3 تا از كلمات داراي پاورقي باشد .

قرار گرفتن  بعد از كلمه مورد نظر ؛

) è  Insert انتخاب نوع  ( Location, Format, Apply Change Insert  è  Reference  è  Footnote  è  

سپس نوشتن پاورقي

 

5- متني در Word   نوشته ( يك پاراگراف ) براي آن سربرگي با عنوان آزمون مباني 84اضافه كنيد .

View  è  Header and Footer   è  نوشتن عنوان مورد نظر ( آزمون مباني 84 ) و بستن كادر

 

6- يك فاكتور فروش براي 5 جنسي در Excel  درست كنيد كه كه هركدام حاوي قيمت واحد تعداد قيمت كل و در انتها جمع كل داشته باشد .

بعد از اجراي برنامه Excel در يك سطر  : خانهA1 خالي ، خانهB1 تعداد  ، خانه C1 قيمت واحد و در خانهD1 جمع  سپس در يك ستون : خانهA1 خالي ،خانه A2 نام جنس اول ،خانه A3 نام جنس دوم ، خانه A4 نام جنس سوم ، خانه A5  نام جنس چهارم ، خانه A6 نام جنس پنجم و خانه A7 جمع كل را مي نويسيم .

حال :

خانه  D2  را انتخاب كرده در كادر فرمول نويسي عبارت مقابل را تايپ مي كنيم : = B2 * C2

خانه  D3  را انتخاب كرده در كادر فرمول نويسي عبارت مقابل را تايپ مي كنيم : = B3 * C3

خانه  D4  را انتخاب كرده در كادر فرمول نويسي عبارت مقابل را تايپ مي كنيم : = B4 * C4

خانه  D5  را انتخاب كرده در كادر فرمول نويسي عبارت مقابل را تايپ مي كنيم : = B5 * C5

خانه  D6  را انتخاب كرده در كادر فرمول نويسي عبارت مقابل را تايپ مي كنيم : = B6 * C6

خانه  D7  را انتخاب كرده در كادر فرمول نويسي عبارت مقابل را تايپ مي كنيم : =Sum( D2 : D6)

 

 

7- مطلبي در باره   ...       به زبان فارسي دراينترنت پيدا كرده آنرا به نام Exam  در درايو  ...   ذخيره كنيد.

پس از اتصال به اينترنت و باز كردن سايت جستجوگر ( Google ; MSN ; Yahoo Search ; Parseek ; AV ; A9 ; Pword ;… ) در كادر  ، مطلب مورد تقاضا را مي نويسيم ( فارسي يا انگليسي و... ) با زدن  جستجو  تعدادي موضوع ليست مي گردد با توجه به متن راهنمائي شده يكي را كه به خواسته ما نزديكتر است را باز مي نمائيم . براي ذخيره مراحل زير را طي ميكنيم   

File  è  Save As..   è Exam نام مورد نظر مثلا   è انتخاب درايو مورد نظر    è  Save

 

8- برنامه اي بنويسيد كه عددهاي اول حدفاصل 120   الي   1120     را چاپ كند .

Cls

For I=120   To   1120

T=0

      For  K= 1     To     I

              R = I  Mod  K

              If  R = 0  Then  T = T + 1

      Next K

     If   T = 2    Then   Print   I

Next I

End

 

9- برنامه اي بنويسيد كه يك اسكناس 2000  ريالي را توسط سكه هاي 5  - 100  و 250  ريالي خردكند . تعداد دفعات ممكن را محاسبه وچاپ كند .( از هرسكه حداقل يكي باشد ).

Cls

For  I = 1     To   330

            For  K = 1     To    17

                        For J = 1      To    7

                               Sum = I * 5 + K * 100 + J * 250

                               If   Sum = 2000   Then    T = T + 1

                         Next j

             Next K

Next I

Print T

End

 

10- برنامه اي بنويسيد كه يك عدد طبيعي را گرفته سپس كارهاي مقابل را انجام دهد : چاپ تعدادارقام مجموع ارقام .

Cls

T = 0

Sum = 0

Input  n

9  Y = n Mod 10

m = n \ 10

T = T + 1

Sum = Sum + Y

n = m

If n > 0   Then  Goto 9

Print  T , Sum

End

 

11- برنامه اي بنويسيد كه كليه ارقام دورقمي را كه از ارقام فرد تشكيل شده اند را بنويسد .

Cls

For I = 1       To       9    Step 2

            For  K = 1   To     9   Step 2

                        Print I * 10 + K

            Next K

Next I

End

 

12- برنامه اي بنويسيد كه نام كشور را گرفته پايتخت آن را چاپ كند . ( Iran – England – Japan- France – China  )

Cls

Input  Country$

Data  IRAN , TEHRAN , ENGLAND , LONDON , JAPAN , TOKYO

Data  FRANCE , PARIS , CHINA , PEKAN

For  I = 1     To    5

            Read  A$ , B$

            If   A$ = Country$   Then

            Print  B$

            Exit For

            End If

Next  I

End

 

13- اگر اولين روز سال يك شنبه باشد ( Sunday  ). برنامه اي بنويسيد كه N امين  روز سال را از ما گرفته و بگويد كه چند شنبه است .

Cls

Input    N

d = N   Mod   7

For   I = 0     Then     6

            Read   A , B$

            If   d = I    Then

            Print  B$ + “ Day “

            Exit  For

Next  I

Data    0 , Sater , 1 , Sun , 2 , Mon

Data  3 , Tues , 4 , Wends , 5 , Thu ,6, Fri

End

 

+ نوشته شده در  جمعه هجدهم فروردین 1385ساعت 22:55  توسط داود بيگدلي  | 

نفرات برگزیده المپیاد کارگاهی رایانه فروردین 85

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

۱- رسول   سارلی                              از دبیرستان   نمونه بقیه ا...

۲- عبدالکریم    چرکزی                         از دبیرستان   امام (ره) کاکا

۳- سیده صدیقه     حسینی                 از دبیرستان   نمونه بصیرت

۴- هاجر   باقری                                  از دبیرستان    نمونه  بصیرت

۵- مسعود   رضائی                             از دبیرستان    فراغی

۶- امید   انارکی                                 از دبیرستان    المهدی

۷- مسعود    پورمندی                         از دبیرستان     نمونه  بقیه ا...

۸- مسعود   هیوه چی                        از دبیرستان      المهدی

+ نوشته شده در  پنجشنبه هفدهم فروردین 1385ساعت 16:20  توسط داود بيگدلي  | 

ادامه دستورات بیسیک بخش دوم

دستور DATA , READ , RESTORE

گاهی اوقات بهتراست به جای گرفتن یکی،یکی داده ها از طریق صفحه کلید ؛ آنها را در دستوری معرفی کنیم.

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

 مثال : چاپ مجموع  5 عدد  ورودی

روش حل متداول 

CLS

SUM = 0

FOR  I=1    TO    5

      INPUT a

      SUM = SUM + a

NEXT I

PRINT SUM

END

 

حل به کمک دستور DATA , READ

 

CLS

SUM = 0

DATA  210 , 20 , 70 , 50 , 150

FOR  I=1    TO    5

      READ  a

      SUM = SUM + a

NEXT I

PRINT SUM

END

برنامه بالا را به این شکل تغییر میدهیم علاوه بر چاپ مجموع اعداد ( 8 عدد ) ؛ تعدا عددهای بزرگتر از میانگین را هم بنویسد . ( NGMax تعداد عددهای بزرگتر ازمیانگین ؛ میانگین 100  خواهد شد )

CLS

SUM = 0

Aver = 0

NGMax = 0

DATA   210 , 20 , 70 , 50

FOR  I=1    TO    8

      READ  a

      SUM = SUM + a

NEXT I

PRINT SUM

Aver = SUM / 8

RESTORE

FOR  I=1    TO    8

      READ  a

      IF  a > Aver  THEN   NGMax = NGMax + 1

NEXT I

DATA  150 , 105 , 80 , 115

PRINT Aver

PRINT NGMax

END

نکته : همانطور که در مثال بالا مشاهده کردید . داده ها می تواند در یک و یا چند خط نوشته شود و همچنین محل آن می تواند در هرکجای برنامه باشد  ؛ اما موقع خواند اولویت با داده های از بالا به پائین برنامه است .

نکته : در برنامه بالا اجرای برنامه وقتی به خط RESTORE می رسد دستور READ  را وادار می کند داده ها را از اول بخواند .

برنامه ای بنویسید که عدد طبیعی بین 1 و 7 را بگیرد وبا فرض اینکه این عدد شماره روزی از هفته باشد ، نام روز را به لاتین چاپ کند ( چند شنبه است )

CLS

DATA  Satur , Sun , Mon , Tues

DATA  Wednes , Thurs , Fri

INPUT  n

FOR I = 1     TO     n

    READ  a$

NEXT I

PRINT  a$ + “Day “

END

تابع  RND   

RND از کلمه Random به معنی تصادفی گرفته شده . این تابع در بیسیک بدون متغییر است؛یک عدد تصادفی بزرگتر از صفر و کوچکتر از یک تولید می کند.هر بار که این تابع به کار رود کامپیوتر یک عدد تصادفی بین صفر ویک تولیدمی کند. با این تابع کارهای علمی و تفریحی زیادی می توان انجام داد . برنامه زیر را اجرا کنید

CLS

FOR  I = 1      TO     5

       PRINT  RND

NEXT  I

END

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

نکته : در هر بار اجرای دستور RND زمان صفر در نظر گرفته می شود . برای بر طرف کردن این مشکل ما می توانیم دستور RANDOMIZE TIMER  را در ابتدای برنامه بنویسیم .

CLS

RANDOMIZE  TIMER

FOR  I=1      TO      5

      PRINT     RND

NEXT  I

END

حالا درست شد . چه اتفاقی افتاد ؛ با اضافه کردن دستور فوق به برنامه گفتیم به ساعت کامپیوتر نگاه کن . چون در هر لحظه ساعت کامپیوتر با لحظه قبل فرق دارد. (حتی چند میلیونیم ثانیه )

نکته : چطور می توان عدد صحیح تولید کرد .

بین 0 تا 9     اصلاح خط چاپ       10* PRINT  INT( RND )   کار تابع INT(x) حذف اعشار است (جزء صحیح ).

بین 1 تا 10      1 + 10 * PRINT  INT( RND ) 

بین 0  تا  99       100 *  PRINT  INT( RND )

فرض کنید N عددی طبیعی باشد    INT( N * RND ) + 1    یک عدد طبیعی بین  1  و N  است . 

مثال جالب

CLS

FOR  I=1     TO     9

     A= INT( RND * ( I + 1 ))

     B= INT( RND * ( I + 1 ))

     C= A * B

     PRINT  A ; “ * “ ; B ; “ = “

     INPUT D

    IF   D = C  THEN

        PRINT “ GOOD “

    CLSE   PRINT  “ WRONG “

    END IF

NEXT  I

END

جالب بود نه ؟

 

دستور   WHILE  -  WEND

هرگاه لازم باشد مجموعه ای از دستورات بیسیک تا برقراری شرط یا شرایطی اجرا شوند می توان از دستور WHILE – WEND  استفاده کرد . صورت کلی دستور :

شرطWHILE

-----------    

     ----------- 

دستورات بیسیک    

     -----------

WEND

مثال : برنامه چاپ اعداد زوج طبیعی کوچکتر از 20

CLS

I = 2

WHILE  I < 20

    PRINT  I ;

    I = I + 2

WEND

END

 

 برنامه ای بنویسید که عدد طبیعی N  را بگیرد و مجموع ارقام عدد ورودی را محاسبه و چاپ کند .( رقم = DIGIT )

CLS

SD = 0

INPUT  n

WHILE  n > 0

    M = INT( N / 10 )

    DIGIT = n – 10 * M

    SD = SD + DIGIT

    N = M

WEND

PRINT  SD

END

نکته : اجرای دستورات بین WHILE  و  WEND مادامی که شرط بعد از WHILE بر قرار ( درست ) باشد ادامه د ارد .

برنامه ای بنویسید که دو عدد طبیعی M   و  N  را گرفته و بزرگترین مقسوم علیه مشترک آنها را تعیین و چاپ کند .( بزرگترین مقسوم علیه مشترک = GCD ) . اعداد 27  و  15  دارای GCD=3   و اعداد  28 و 10 دارای GCD=2 است.

CLS

INPUT   n , m

WHILE   m > 0

    R = n – m * INT( n / m )

    n = m

    m = R

WEND

PRINT  “ GCD = “ ; n

END

 

+ نوشته شده در  یکشنبه سیزدهم فروردین 1385ساعت 11:5  توسط داود بيگدلي  | 

سیزده بدر ، روز طبیعت

سیزده بدر ، روز زندگی در پردیس

- ایران زمین از دیر باز جایگاه زندگی قومی متمدن و با فرهنگ بوده است . این تمدن با کاوشهای به عمل آمده درمناطقی همانند "شهر سوخته " زابل از فدمتی بسیار بیشتر از ورود قوم" آریا"  به این سرزمین ، که اکنون نام خود را نیز از نام قوم سکنی گزیده در خود وام گرفته است ، بر خور دار است .

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

  اعداد هفت، سه، سیزده و بسیاری اعداد دیگر در ایران باستان مفاهیمی پیچیده از تاثیرات نجومی و پدیده های جاری در قرنها و دوره ها  را پذیرفته اند . جلوه برونی این مفاهیم درنمایه هایی همچون  هفت سین، هفت خوان رستم، هفت شهر عشق، هفت اورنگ و" سیزده به در "به طور روشن نمایان است.

روز 13 در دامن طبیعت


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

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

در اساطیر ایران، عمر جهان هستی 12 هزار سال پیش بینی شده است  .  پس از این دوره جهان بسته می شود و انسانها که وظیفه شان ، جنگ علیه اهریمن است، با سپری شدن این 12 هزار سال و ظهور سوشیانس ( ناجی موعود ) سر انجام به پیروزی و ظفر می رسند .
 به نظر می رسد ، عدد 12  از بروج دوازده گانه گرفته شده باشد . که آگاهی نسبت به  آنها نشان از وسعت  دانش  علمی  ایرانیان در آن زمان در علم ستاره شناسی داشته است .

به این ترتیب ، در تقویم ایرانی ، نخستین دوازده روزسال ، "جشن زایش انسانها"، تمثیلی از12 هزار سال زندگی و نبرد با اهریمن  است و روز سیزدهم تمثیلی از هزاره سیزدهم و آغاز رهایش از جهان مادی است. به همین دلیل نیز ، روز سیزدهم که در واقع نمادی از زندگی انسان ها درپردیس است ، متعلق به ستاره باران انگاشته می شد ، زیرا نزول باران بهاری باعث سر سبزی و طراوت زمین شده و نمایه ای از بهشت را بوجود می آورد . این اعتقاد   در ایران باستان موجب می شد ، سیزدهم نوروز ، روز ویژه طلب باران بهاری برای کشتزارهای نودمیده، انگاشته شود .
در این روز ، از دیر باز مردم ایران  به دشت و صحرا می رفتند تا  با  شکست  دیو خشکسالی ، گوسفندی برای فرشته باران  ، قربانی و  بریان کنند تا این فرشته کشت های نو دمیده را از باران سیراب کند.
 البته باید دانست که تمدن ایرانی تنها تمدنی در جهان نیست که از این گونه ویژگی های فرهنگی برخوردار است بلکه با نگاهی علمی و دقیق به تمدن های دیگر نیز می توان اشتراکات فرهنگی زیادی کشف کرد .
در همین زمینه دکتر بهرام فره وشی در کتاب «جهان فروری» به رابطه و اشتراک رسم سیزده بدر ایرانی با جشن های کارناوالی در میان ملل هند و اروپایی اشاره می کند و می نویسد:
«خنده و شادی در جشن های بهاری ملل دیگر هند و اروپایی گاه جزیی از مراسم دینی است و باید انجام شود و یکی از هدف های مراسم قدیم کارناوالی که در جشن های بهاری انجام می شده و می شود، پدید آوردن شادی در نهاد مردمان است که بقایای آن در مراسم عید نوروزی و حاجی فیروز هنوز بر جای مانده است.»
در میان ملل هند و اروپایی به ویژه ملت های اسلاوی، هنوز جشن بهار با مراسم باشکوه کارناوالی برگزار می شود و قراینی تاریخی در دست است که نشان می دهد  جشن بهاره ایرانی نیز روزگاری همراه با مراسم کارناوالی بوده است.
در برخی از سرزمین های اسلاوی یک دوره دوازده روزه جشن های کارناوالی در آغاز سال نو وجود دارد که ریشه عمیق هند و اروپایی دارند. در این جشن ها مردم با ماسک های حیوانات گوناگون که نماینده ارواح هستند می رقصند ، بنا بر سنت های قومی  این سرزمین ها ، دوازده روح پلید در تمام مدت سال ستون هایی را که دنیا بر آنها قرار گرفته است می جوند و هنگامی که ستون ها در شرف فرو افتادن هستند، سال به آخر می رسد و ارواح خبیث برای جشن و شادی بیرون زمین می آیند اما  در مدتی که مشغول رقص و شادی هستند، ستون های جهان به خودی خود مرمت می شوند و بحال نخستین در می آیند و جهان فرو نمی ریزد. این ارواح در روز سیزدهم سال نو به زمین فرو می شوند تا کار خود را از سر گیرند. بنابراین دوازده روز آغاز سال روزهای پراهمیتی هستند و وظیفه مهمی را در نگاه داشت جهان و زندگی بشری دارند و روز سیزدهم آغاز زندگی عادی انسان است. بنابراین اعتقاد اسلاوی روز سیزدهم ، روز جشن نجات جهان و دوره تکامل جدید ستون های جهان است .

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

از سویی دیگر با توجه به قدمت مراسم سیزده بدر در ایران می توان نمود و تاثیر آن را در دیگر مناطق دنیا از جمله اروپا به خوبی پی گرفت . در همین رابطه دکتر محمود روح الامینی، در کتاب «آیین ها و جشن های کهن در ایران امروز»،   به شباهتی بین  «سیزده بدر» و برخی از رسم های کاتارها (Cathara) (بازماندگان مانویان در اروپا) که فرهنگی ترکیبی از اندیشه های زردتشتی و فلسفه باستان و مسیحیت دارند، اشاره کرده و توضیح می دهد : کاتارها در روز عید «پاک» در برخی از سال ها که به روز سیزده فروردین نزدیک است از خانه بیرون آمده و روز را در دامن صحرا و کنار کشتزار می گذرانند، و برای ناهار با خود تخم مرغ می برند، در این روز پنهان کردن تخم مرغ در گوشه و کنار و پیدا کردن آنها سرگرمی کودکان است.

به هر جهت آنچه مشهود است ، اجرای مراسم سیزده به در در میان ایرانیان از دیر باز امری بسیار جدی بوده است که همواره با برپایی مراسمی خاص همراه بوده است  . از آن جمله می توان به غذاهایی که در روز سیزده به در، مردم به طور سنتی می خوردند اشاره کرد .  خوردن کاهو سکنجبین و چاقاله بادام از خوردنی های مرسوم عصر سیزده بدر، است

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

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

به نظر می رسد ، در این روز با توجه به پیشینه اسطوره ای آن ، سیزده به در روندگان باید نسبت به نگاه داری محیط زیست نهایت توجه و دقت را نشان دهند .

گره زدن سبزه

منبع : خبرگزاری مهر

گردآوری توسط :  بیگدلی 

+ نوشته شده در  جمعه یازدهم فروردین 1385ساعت 12:4  توسط داود بيگدلي  |