چطور می توان برنامه ای نوشت که چهار عدد را با هم مقایسه کند.
من هرچی فکر کردم نتوانستم بنویسمش. :sad:
Printable View
چطور می توان برنامه ای نوشت که چهار عدد را با هم مقایسه کند.
من هرچی فکر کردم نتوانستم بنویسمش. :sad:
سلام
من منظورت رو خوب نفهميدم ميشه يه كم باز تر بگي
از چه نظر با هم مقايسه كن...
يعني اينكه 4 عدد را از ورودي بگيره و پيام هاي مناسب را چاپ كند-(4 عدد با هم مساويند-3عدد با هم مساويند-2عدد با هم مساويند-هيچ يك مساوي نيستند)
با سلام
دوست عزيز شما ميتوانيد به كمك عملگر هاي شرطي Or,and اين كار ها را انجام دهي.
سلام
راحت ترين راهش اينه كه يه شمارنده بذاري و با توجه به مقدار شمارنده پيام موردنظرت رو چاپ كني
مثلا هر وقت 2 تاشون مساوي بود يكي به شمارنده اضافه بشه
از کسانی که نظر دادند تشکر می کنم.
اين برنامه را نوشتم اگر ديديد در جايي اشكال دارد و يا كد نويسي آن اشتباه است لطفا گوشزد كنيد.
سورس اين برنامه را در پايين مي گذارم:
کد:Option Explicit
Dim A, B, C, D As Double
Private Sub CmdRun_Click()
A = InputBox("Enter Number 1")
B = InputBox("Enter Number 2")
C = InputBox("Enter Number 3")
D = InputBox("Enter Number 4")
If ((A And B And C) = D) Then
Print "4 Numbers is Equal"
ElseIf (A = B) And (C = A) Then
Print "3 Numbers is Equal"
ElseIf (A = B) And (D = A) Then Print "3 Numbers is Equal"
ElseIf (C = D) And (B = C) Then Print "3 Numbers is Equal"
ElseIf (D = A) And (C = D) Then Print "3 Numbers is Equal"
ElseIf (A = B) Then Print "2 Numbers is Equal"
ElseIf (A = C) Then Print "2 Numbers is Equal"
ElseIf (A = D) Then Print "2 Numbers is Equal"
ElseIf (B = C) Then Print "2 Numbers is Equal"
ElseIf (B = D) Then Print "2 Numbers is Equal"
ElseIf (C = D) Then Print "2 Numbers is Equal"
Else
Print "No Thing Is Equal"
End If
End Sub
دوست عزیز این اعدادی که میگم بزار ببین برنامت درسته یا نه به ترتیب 1 2 1 2
این برنامه رو میتونی با حلقه For بنویسی دیگه احتیاج به این همه شرط نداری
به این کد نگاه کن
البته الگوریتم برای اینکار زیاد میشه پیدا کرد . این سادست ولی بازم مشکل داره باید تمام حالات را در نظر بگیری .کد:Dim m(4) as integer
m(0)=Inputbox("num 1")
m(1)=Inputbox("num 2")
m(2)=Inputbox("num 3")
m(3)=Inputbox("num 4")
for i = 0 to 3
for j = i+1 to 3
if c=4 Then exit for
if m(i)=m(j) Then c=c+1
next j
if c=4 Then exit for
next i
msgbox c & " Number is equal"
از TomCat تشکر می کنم این الگوریتم قابل اندیشه است.
من شروع به بررسی اش می کنم تا کاملا برایم مفهوم شود.
کد من هم 1 2 1 2 را جواب می دهد و می نویسد 2 عدد مساویند.
با تشکر مجدد.
من با tomcat movafrgham مي دوني براي چي ميگم :
چون اگه بجاي 4 تا عدد 100 عدد بود ميدوني چه بلايي به سرت مي اومد
1 چيزي رو فراموش نكن الگورتم ها بايد ديناميك باشند