Menu
CoddyTech

הפונקציה range

חלק מהיחידה יסודות במסלול ה-GDScript של Coddy. שיעור 48 מתוך 92.

range() יכולה לקבל מספר אחד, שניים או שלושה:

  • range(end): מ־0 ועד end
  • range(start, end): מ־start ועד end
  • range(start, end, step): מ־start ועד end, בהתקדמות של step בכל פעם

בשלושתם, end לעולם אינו נכלל. הצעד הוא הכמות שמוסיפים כדי לקבל את המספר הבא. הקוד הזה מדפיס את המספרים האי־זוגיים הקטנים מ־10:

for i in range(1, 10, 2):
	print(i)
1
3
5
7
9

צעד שלילי סופר לאחור. לכן, הערך ההתחלתי חייב להיות גדול מערך הסיום. הקוד הזה סופר לאחור מ-10 עד 1:

for i in range(10, 0, -1):
	print(i)

הסוף עדיין אינו נכלל, ולכן הלולאה נעצרת ב־1. עם range(20, 9, -2), המספרים הם 20, 18, 16, 14, 12 ו־10: 10 נכלל כי הוא עדיין גדול מ־9.

אם נקודת ההתחלה כבר נמצאת אחרי נקודת הסיום, כמו ב־range(1, 5, -1), הטווח ריק והלולאה לא מתבצעת.

GDScript מאפשרת לך גם לכתוב מספר יחיד אחרי in. for i in 3: פועלת כמו for i in range(3):, כאשר i נע מ-0 עד 2.

challenge icon

אתגר

קל

התוכנית קוראת שלושה מספרים שלמים: start, end ו-step.

השתמש בלולאת for עם range(start, end, step) כדי להדפיס כל מספר בטווח הזה, אחד בכל שורה.

עבור הקלטים 1, 10 ו-2, הפלט הוא:

1
3
5
7
9

הצעד יכול להיות שלילי: עבור 10, 0 ו--3, הדפס את 10, 7, 4 ו-1.

נסו בעצמכם

extends Node

func _ready():
	var start := int(OS.read_string_from_stdin())
	var end := int(OS.read_string_from_stdin())
	var step := int(OS.read_string_from_stdin())
	# כתבו כאן את לולאת ה-for שלכם
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר GDScript אונליין