تبليغاتX
گروه آموزشی رایانه شهرستان دیر - چند برنامه (برنامه های ویژال بیسیک)

-برنامه ای بنویسید که سه عدد به عنوان اضلاع مثلث دریافت کند و تعیین کند مثلث متساوی الساقین است یا خیر؟

A = Val(InputBox("Enter A:"))

B = Val(InputBox("Enter B:"))

C = Val(InputBox("Enter C:"))

IF (A=B) OR(A=C)OR(B=C) THEN

PRINT "YES"

ELSE

PRINT "NO"

END IF

2- برنامه ای بنویسید که سه عدد به عنوان اضلاع مثلث دریافت کند و تعیین کند مثلث قائم الزاویه است یا خیر؟

A = Val(InputBox("Enter A:"))

B = Val(InputBox("Enter B:"))

C = Val(InputBox("Enter C:"))

IF (A*A=B*B+C*C)OR(B*B=A*A+C*C)OR(C*C=A*A+B*B) THEN

PRINT "YES"

ELSE

PRINT "NO"

END IF

3- برنامه ای بنویسید که سه عدد به عنوان اضلاع مثلث دریافت کند و تعیین کند مثلث متساوی الاضلاع است یا خیر؟

A = Val(InputBox("Enter A:"))

B = Val(InputBox("Enter B:"))

C = Val(InputBox("Enter C:"))

if (A=B)AND(A=C) THEN

PRINT "YES"

ELSE

PRINT "NO"

END IF

4-برنامه ای بنویسید که مجموع مضارب دورقمی عدد 4 را در خروجی نمایش دهد.

SUM=0

FOR I=12  TO 98 STEP 4

SUM=SUM+I

NEXT I

PRINT SUM

5-برنامه ای بنویسید که مجموع مربعات اعداد دورقمی را محاسبه و چاپ نماید.

SUM=0

FOR I=10 TO 99

SUM=SUM+I*I

NEXT I

PRINT SUM

6-برنامه ای بنویسید که مجموع N جمله از سری زیر را محاسبه و چاپ نماید.

N = Val(InputBox("Enter N:"))

A=1

SUM=-1

FOR I=1  TO N-1

SUM=SUM+A/2^I

A=(-1)*A

NEXT I

PRINT "SUM IS :";SUM

۷- برنامه ای بنویسید که 15 جمله از دنباله فیبوناتچی را در خروجی چاپ نماید.

0    1   1    2    3    5    8  ……

A=0

B=1

PRINT A

PRINT B

FOR I=3 TO 15

C=A+B

PRINT C

A=B

B=C

NEXT I

8- برنامه ای بنویسید که مجموع  12 جمله از سری زیر را در خروجی چاپ نماید.

S=1

FOR I=1 TO  11

  P=1  'FACTORIAL(I)

  FOR K=1 TO I

  P=P*K

  NEXT K

S=S+(I+1)/P

NEXT I

PRINT S

9-برنامه ای بنویسید که عددی مثبت دریافت کند و مجموع اعداد فرد از یک تا آن عدد و تعداد مضربهای عدد 3 ر امحاسبه نماید.

N = Val(InputBox("Enter N:"))

SUM=0

C3=0

FOR I=1 TO N

IF (I MOD 2=1)THEN SUM=SUM+I

IF (I MOD 3=0) THEN C3=C3+1

NEXT I

PRINT SUM,C3

10-برنامه ای بنویسید که بزرگترین عدد مابین 80 عدد را در خروجی چاپ نماید.

X = Val(InputBox("Enter X:"))

MAX=X

FOR I=2 TO 80

X = Val(InputBox("Enter X:"))

IF (MAX

NEXT I

PRINT MAX

11-برنامه ای بنویسید که کوچکترین عدد مابین 20 عدد را در خروجی چاپ نماید.

X = Val(InputBox("Enter X:"))

MIN=X

FOR I=2 TO 20

INPUT "ENTER X:";X

IF (MIN>X) THEN MIN=X

NEXT I

PRINT MIN

12- برنامه ای بنویسید که میانگین 90 عدد را در خروجی چاپ نماید.

SUM=0

FOR I=1 TO 90

X = Val(InputBox("Enter X:"))

SUM=SUM+X

NEXT I

AVE=SUM/90

PRINT AVE

 

13-برنامه ای بنویسد که عددی از ورودی دریافت کند و تعداد و مجموع مقسوم علیه های آن را در خروجی چاپ نماید.

N = Val(InputBox("Enter N:"))

K=0

SUM=0

FOR I=1 TO N

IF (N MOD I=0) THEN

SUM=SUM+I

K=K+1

END IF

NEXT I

PRINT K,SUM

14- برنامه ای بنویسد که عددی از ورودی دریافت کند و مشخص کند عدد اول است یا خیر؟

N = Val(InputBox("Enter N:"))

K=0

FOR I=1 TO N

IF (N MOD I=0) THEN

K=K+1

END IF

NEXT I

IF (K=2) THEN

PRINT N;" IS A PRIME"

ELSE

PRINT N;" IS NOT A PRIME"

END IF

15- برنامه ای بنویسد که عددی صحیح از ورودی دریافت کند تعداد و مجموع ارقام آن را در خروجی چاپ نماید.

N = Val(InputBox("Enter N:"))

C=0

SUM=0

DO

R=N MOD 10

N=INT(N/10(

C=C+1

SUM=SUM+R

LOOP UNTIL(N=0(

PRINT SUM,C

16- برنامه ای بنویسید که مقلوب عدد طبیعی را در خروجی چاپ نماید.

N = Val(InputBox("Enter N:"))

INVERSn=0

DO

R=N MOD 10

N=INT(N/10)

INVERSn=10*INVERSn+R

LOOP UNTIL(N=0)

PRINT INVERSn

17-برنامه ای بنویسید که تعیین کند عدد طبیعی ورودی بر مجموع ارقامش بخش پذیر است یا خیر؟

N = Val(InputBox("Enter N:"))

SUM=0

N=M

DO

R=N MOD 10

N=INT(N/10)

SUM=SUM+R

LOOP UNTIL(N=0)

IF (M MOD SUM=0) THEN

PRINT "YES"

ELSE

PRINT "NO"

END IF

18- برنامه ای بنویسید که حالت های ممکن خرد کردن یک اسکناس 2000 تومانی به سکه های 5 و 10 و 25 تومانی را نشان دهد.

FOR I=1  TO 400     '5

 FOR J=1  TO 200      '10

  FOR K=1  TO 80          '25

   IF (I*5+J*10+K*25=2000) THEN

   PRINT I,J,K

   END IF

  NEXT K

 NEXT J

NEXT I

19-برنامه ای بنویسید که شکل زیر را با گرفتن تعداد سطر چاپ نماید.

N = Val(InputBox("Enter N:"))

1

1  2

1  2  3

1   2   3   4  

FOR I=1 TO N

 FOR J=1 TO I

 PRINT J;

 NEXT J

PRINT

NEXT I

20- برنامه جدول ضرب:

FOR I=1 TO 9

 FOR J=1 TO 9

 PRINT I*J;" ";

 NEXT J

PRINT

NEXT I

21-برنامه ای بنویسید که عددی صحیح از ورودی دریافت نماید و تعداد ارقام زوج وارقام فرد و صفر را در خروجی چاپ نماید.

N = Val(InputBox("Enter N:"))

C0=0

CF=0

CZ=0

DO

R=N MOD 10

N=INT(N/10)

IF (R=0)THEN C0=C0+1

IF (R MOD 2=0)THEN CZ=CZ+1

IF (R MOD 2=1)THEN CF=CF+1

LOOP UNTIL(N=0)

PRINT C0,CZ,CF

22- برنامه ای بنویسید که X را از ورودی بخواند و مجموع زیر را محاسبه نماید.

N = Val(InputBox("Enter N:"))

X = Val(InputBox("Enter X:"))

SUM=1

FOR I=1 TO N-1

 P=1

 FOR K=1 TO I

 P=P*K

 NEXT K

Y=X^I

SUM=SUM+Y/P

NEXT I

PRINT "EXP:";SUM

23-برنامه ای بنویسید که سه عدد ورودی را  به  صورت صعودی مرتب نماید.

A = Val(InputBox("Enter A:"))

B = Val(InputBox("Enter B:"))

C = Val(InputBox("Enter C:"))

IF (A>B) THEN

T=A

A=B

B=T

END IF

IF (A>C) THEN

T=A

A=C

C=T

END IF

IF (B>C) THEN

T=B

B=C

C=T

END IF

PRINT A,B,C

24-برنامه ای بنویسید که کوچکترین عدد مابین تعداد نامشخصی عدد دریافتی از ورودی را تعیین و چاپ نماید.( انتهای لیست عدد (1-))

X = Val(InputBox("Enter X:"))

IF (X<>-1) THEN MIN=X

WHILE (X<>-1)

X = Val(InputBox("Enter X:"))

IF (X<>-1)AND(MIN>X) THEN MIN=X

WEND

PRINT MIN

25-برنامه ای بنویسید که عددی را دریافت و آنرا در مبنای 2 ببرد.

DIM A(20)

N = Val(InputBox("Enter N:"))

I=1

'------------------------------------------

while (N<>1)

R=N MOD 2

A(I)=R

I=I+1

N=INT(N/2)

wend

A(I)=N

'--------------------------------

SUM=0

FOR K=I TO 1 STEP -1

print A(K);

NEXT K

26-برنامه ای بنویسید که عددی در مبنای 2 دریافت و به مبنای 10 ببرد.

DIM A(20)

N = Val(InputBox("Enter N:"))

I=0

DO

I=I+1

R=N MOD 10

if (R<>0) and (R<>1) THEN

PRINT "ERROR IN INPUT"

END

END IF

A(I)=R

N=INT(N/10)

LOOP UNTIL (N=0)

'-----------------------------------------

SUM=0

FOR K=I TO  1 STEP -1

SUM=2*SUM+A(K)

NEXT K

PRINT SUM

27-برنامه ای بنویسید که سه تایی های فیثاغورس کمتر از 500  را تعیین و چاپ کند.

FOR A=1 TO 500

 FOR B=1 TO 500

  FOR C=1 TO 500

  IF (A*A=B*B+C*C)OR(B*B=A*A+C*C)OR(C*C=A*A+B*B) THEN

  PRINT "A=";A,"B=";B,"C=";C

  END IF

  NEXT C

 NEXT B

NEXT A

28-برنامه محاسبه کننده عدد پی

PI=0

A=1

FOR I=1 TO 103 STEP 2

PI=PI+4*A/I

A=(-1)*A

NEXT I

PRINT PI

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

*

**

***

****

*****

N = Val(InputBox("Enter N:"))

FOR I=1 TO N

 FOR J=1 TO I

 PRINT "*";

 NEXT J

PRINT

NEXT I

30- الگوریتمی بنویسید که  N و X  را ا ورودی بخواند و  مقدار Sin(X)  و Exp(X)   را طبق مجموع زیر محاسبه نماید.

Private Function Fact(N As Integer)

p = 1

For i = 2 To N

p = p * i

Next i

Fact = p

End Function

Private Sub Command1_Click()

Dim i As Integer

Dim Sin As Double

N = Val(InputBox("Enter N:"))

x = Val(InputBox("Enter X:"))

Sin = 0

x = 3.14 * x / 180  'Convert to Radian

For i = 1 To N

p = Fact(2 * i + 1)

Sin = Sin + a * x ^ (2 * i + 1) / p

a = -a

Next i

Print "Sin is :"; Sin

End Sub

 

Private Function Fact(N As Integer)

p = 1

For i = 2 To N

p = p * i

Next i

Fact = p

End Function

Private Sub Command1_Click()

Dim Ex As Double

Dim i As Integer

N = Val(InputBox("Enter N:"))

x = Val(InputBox("Enter X:"))

Ex = 1

For i = 1 To N

p = Fact(i)

Ex = Ex + x ^ i / p

Next i

Print "Ex is  :"; Ex

End Sub

 

31- الگوریتمی ارائه دهید که مجموع زیر را به ازای n=30  محاسبه نماید.

32- کشاورزی 100 تومان پول در اختیار دارد و می خواهد صد حیوان بخرد. قیمت حیوان ها ، جوجه یک ریال و گوسفند دو تومان و گاو پنج  تومان می باشد. با این وصف مشخص کنید که کشاورز چند جوجه گوسفند و گاو می تواند خریداری کند.(x تعداد جوجه و y   تعداد گوسفند و z تعداد گاو)

For x = 1 To 100

  For y = 1 To 50

    For z = 1 To 20

    If (x + y + z = 100) And (x * 1 + 20 * y + 50 * z = 1000) Then

     Print "Gogeh:"; x

     Print Gosfand:"; y

     Print "Gav:"; z

Next

Next

Next

33-     برنامه ای بنویسید که اعداد سه رقمی را  که با مجموع مکعبات ارقامشان برابر است را در خروجی چاپ نماید.

Private Function SumA3(ByVal N As Integer)

Dim S As Integer

S = 0

While N <> 0

R = N Mod 10

S = S + R ^ 3

N = N \ 10

Wend

SumA3 = S

End Function

Private Sub Command1_Click()

Dim x As Integer

For x = 100 To 990

If SumA3(x) = x Then Print x

Next x

End Sub

 

34-   در یک امتحان تستی هر جواب صحیح 7  نمره مثبت  و هر جواب غلط  2 نمره منفی دارد (به سوالهای بدون جواب نمره ای صورت نمی گیرد) اگر نمره دانش آموزی برابر  87 باشد این دانش آموز به چند سوال پاسخ نداده است؟

Dim T As Byte, F As Byte, N As Byte

For T = 12 To 20

      For F = 1 To 8

      If (T + F <= 20) And (T * 7 - F * 2 = 87) Then

      N = 20 - T - F

      Print "Answerd True:"; T

      Print "Answerd False:"; F

      Print "NO ansewrd"; N

      End If

      Next

Next

35-   اگر مجموع 1+2+3+4…….+n عددی سه رقمی باشد که همه ارقام آن با هم مساوی باشد. با استفاده از یک برنامه n  را بیابید.( جواب n=36 و عدد سه رقمی 666 می باشد)

Dim X As Integer, Sum As Integer

For X = 111 To 999 Step 111

  Sum = 0

  i = 1

  Do While Sum <= X

  Sum = Sum + i

  If Sum = X Then Print i, X

  i = i + 1

  Loop

Next X

 

 

پایان.