Upload
angie-orvis
View
235
Download
7
Embed Size (px)
Citation preview
המחשב למדעי מבואוניהול לתעשייה
4הרצאה
Select Case
Select Case – ערכים מספר בין לבחירה
Dim letter As Char Console.WriteLine("Please enter a letter:") letter = Console.ReadLine()
Select Case letter Case "a" Console.WriteLine("you selected the first letter") Case "b" Console.WriteLine("you selected the second letter") Case "c" Console.WriteLine("you selected the third letter") Case "z" Console.WriteLine("you selected the last letter") Case Else Console.WriteLine("you selected a regular letter") End Select
Select Case – נוספת דוגמא
Dim letter As Integer Console.WriteLine("Please enter a letter:") letter = Console.ReadLine() Select Case letter Case 1 Console.WriteLine("you selected the first letter") Case 2 Console.WriteLine("you selected the second letter") Case 3 Console.WriteLine("you selected the third letter") Case 4 Console.WriteLine("you selected the last letter") Case Else Console.WriteLine("you selected a regular letter")End Select
Select Case – אפשרויות ריבוי
Dim number As Integer = 8 Select Case number Case 1 To 5 Console.WriteLine("Between 1 and 5, inclusive")
Case 6, 7, 8 Console.WriteLine("Between 6 and 8, inclusive")
Case 9 To 10 Console.WriteLine("Equal to 9 or 10")
Case Else Console.WriteLine("Not between 1 and 10,
inclusive") End Select
בין ערכים משתנים 2החלפת
ערכים החלפת " מספר " אחר עוקבת טאקי קלפים למשחק מחשב תוכנית
. יש לשחקן כאשר שחקן לכל שיש התוכנית 0הקלפים קלפים. כמנצח עליו תכריז
:בעיה יש שלאלי יש 8נניח לבניה ואילו . 2קלפים מניח אלי קלפים
," הקלפים " מספר את להחליף ועלינו קלפים החלף מסוג קלף. שחקן לכל שיש
? הבעיה לפתרון המתאים האלגוריתם מהו
של ערכיהם משתנים 2החלפת'program to swap a and z
Dim a, b As Integer
a = 8
b = 2
Console.WriteLine("a is {0} and b is {1} ", a, b)
Dim temp As Integer
temp = a
a = b
b = temp
Console.WriteLine("a is {0} and b is {1} ", a, b)
עוקבים ערכים) בוליאני) + בערך שימוש
בוליאני – פלט עוקבים ערכים בדיקת:בעיה
ערכים שני אם, x1, x2בהינתן לבדוק עוקב x2יש מספר הוא(consecutive ) שלx1 ,להיפך או
) שקר ) או אמת בוליאני יהיה הפלט
( ? בהינתן הבעיה לפתרון המתאים האלגוריתם x1מהוx2)
אםx2 ל ל x1או x1עוקב x2עוקב הצגtrue
אחרת הצגfalse
פתרון – עוקבים ערכים ב ) 1בדיקת (ifשימוש
Dim x1, x2 As Integer
Console.WriteLine("please enter two numbers")
x1 = Console.ReadLine()
x2 = Console.ReadLine()
If x2 = x1 + 1 Or x1 = x2 + 1 Then
Console.WriteLine("true")
Else
Console.WriteLine("false")
End If
פתרון – עוקבים ערכים משתנה ) 2בדיקת עםבוליאני(
Dim x1, x2 As Integer
Console.WriteLine("please enter two numbers")
x1 = Console.ReadLine()
x2 = Console.ReadLine()
Dim consec As Boolean
consec = (x2 = x1 + 1 Or x1 = x2 + 1)
Console.WriteLine(consec)
אקראיים מספרים
אקראי מספר של ייצור " ב שימוש י ע מתבצע אקראי מספר Rndייצור
Dim a As Single = Rnd()Rnd בין ערך כולל ) 1ל 0מחזיר (1לא בין שלם אקראי מספר לקבל רוצים 100ל 1אם
Dim a As Single a = Int((100 * Rnd()) + 1)
אקראיים באמת אינם במחשב המספרים אקראיים פסיאודו הם
ל קודם נקרא מספר אותו תמיד נקבל שלא כדיRandomize
אקראי מספר לייצור דוגמא
Dim randNum As Integer
Randomize()
randNum = Int((10 * Rnd()) + 1)
Console.WriteLine("My random number is " & randNum)
מספר זוגיות
מספר של זוגיות בדיקת:בעיה
מספר -Xבהינתן זוגי אי או זוגי הוא האם בדוק
( ? בהינתן הבעיה לפתרון המתאים האלגוריתם (xמהו
אםx ב שארית 2מתחלק ללא זוגי המספר
אחרת - זוגי אי המספר
מספר של זוגיות בדיקת
Dim x As Integer
Console.WriteLine("please enter number")
x = Console.ReadLine()
If x Mod 2 = 0 Then
Console.WriteLine("zugi")
Else
Console.WriteLine("izugi")
End If
כיתה תרגיל ניחוש משחק נכתוב
בין אקראי מספר תבחר יצטרך 3ל 1התוכנית והמשתמש. נכון, ניחש אם לו נודיע לנחש
בודד תו עם עבודה
דיגיטלי באופן טקסט ייצוג כמספר נשמר תו כל
. , וספרות פיסוק רווחים כולל. שונים ערכים בעלות הן וקטנות גדולות אותיות
H i , H e a t h e r .
72 105 44 32 72 101 97 116 104 101 114 46
char הטיפוסchar בודד תו מכיל
, אחר , סימן ספרה אות להיות יכול תו במחשב משלו מספרי ערך יש תו לכל
תו של הגדרהDim c As Char
להמיר " charל Stringניתן י )(CCharע! מומר במחרוזת הראשון התו רק
תו של מספרי ערך לקבל מנת על Dim i As Integer
i = AscW(c) לסימן מספרי מערך להמיר מנת על
ChrW(i) תו של קריאה
Console.Read()
לדוגמא תווים של ערכים
תו ערך
A 65
B 66
Z 90
a 97
b 98
z 122
0 48
1 49
9 57
= 61
! 33
? 63
(ASCIIטבלת חלקית )
תווים למשחקי דוגמאDim st As Char, i As Integer
Console.WriteLine("Enter a number with one digit")
'convert first character of string to char
st = CChar(Console.ReadLine())
'convert char to integer according to ASCII table
i = AscW(st)
Console.WriteLine(i)
i = i + 10
Console.WriteLine(i)
Console.WriteLine(st)
'convert integer to char according to ASCII table
st = ChrW(i)
Console.WriteLine(st)
תווים 1משחקי
Dim delta As Integer, cap As Integer, ch As Char
delta = Asc("a") - Asc("A")
Console.WriteLine("Enter a capital")
cap = Console.Read()
If Not (cap < Asc("A") Or cap > Asc("Z")) Then
cap = cap + delta
ch = ChrW(cap)
Console.WriteLine((ch))
Else
Console.WriteLine("You didn’t enter a capital")
End If
תווים 2משחקי Dim delta As Integer, aLetter As Integer, ch As Char
delta = Asc("a") - Asc("A")
Console.WriteLine("Please enter a word with 3 non-capital letters")
aLetter = Console.Read()
If (aLetter >= Asc("a") And aLetter <= Asc("z")) Then
aLetter = aLetter - delta
ch = ChrW(aLetter)
Console.Write((ch))
aLetter = Console.Read()
ch = ChrW(aLetter)
Console.Write((ch))
aLetter = Console.Read()
ch = ChrW(aLetter)
Console.WriteLine((ch))
Else
Console.WriteLine(“First letter is non capital")
End If
תווים א – 3משחקי חלקDim delta As Integer, aLetter As Integer, ch As Char
delta = Asc("a") - Asc("A")
Console.WriteLine("Please enter 2 letters")
aLetter = Console.Read()
If (aLetter >= Asc("a") And aLetter <= Asc("z")) Then
aLetter = aLetter - delta
ch = ChrW(aLetter)
Console.Write((ch))
ElseIf (aLetter >= Asc("A") And aLetter <= Asc("Z")) Then
aLetter = aLetter + delta
ch = ChrW(aLetter)
Console.Write((ch))
End If
: הבא בשקף המשך
תווים ב – 3משחקי חלק: קודם משקף המשך
aLetter = Console.Read()
If (aLetter >= Asc("a") And aLetter <= Asc("z")) Then
aLetter = aLetter - delta
ch = ChrW(aLetter)
Console.Write((ch))
ElseIf (aLetter >= Asc("A") And aLetter <= Asc("Z")) Then
aLetter = aLetter + delta
ch = ChrW(aLetter)
Console.Write((ch))
End If
תווים ג – 3משחקי חלק
רק לנו היו הקודמת אותיות 2בדוגמא
יהיו ?3ואם אותיות ?100או
... הבא בשיעור פתרונות