Menu
Coddy logo textTech

דרכים לחיתוך

שיעור 5 מתוך 21 בקורס פרוסות ומפות ב-GoLang של Coddy.

בשיעורים הקודמים דנו ביסודות של חיתוך ובאופן שבו אפשר להשתמש בו כדי להקטין את הגודל של פרוסה או מערך. ציינו שהתחביר לחיתוך הוא <strong>name[start:stop]</strong>. בואו נבחן דרכים שונות שבהן אפשר להשתמש בביטוי החיתוך הזה.

לדוגמה, נבחן את הביטוי הבא:

arr := []string{"kiwi", "apple", "orange", "banana", "grape", "pineapple"}
newArr := arr[:4]

המשמעות היא שאנחנו רוצים להתחיל באינדקס 0 ולהגיע עד לאיבר הרביעי:

[kiwi apple orange banana]

לדוגמה, אם רואים ביטוי כמו זה:

arr := []string{"kiwi", "apple", "orange", "banana", "grape", "pineapple"}
newArr := arr[4:]

המשמעות היא שאנחנו מתחילים באינדקס 4 וממשיכים עד סוף הפרוסה:

[grape pineapple]

אם רואים ביטוי כמו זה:

arr := []string{"kiwi", "apple", "orange", "banana", "grape", "pineapple"}
newArr := arr[:]

המשמעות היא שאנחנו מתחילים באינדקס 0 וממשיכים עד סוף הפרוסה (וכך יוצרים עותק של הפרוסה המקורית):

[kiwi apple orange banana grape pineapple]

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

arr := []string{"kiwi", "apple", "orange", "banana", "grape", "pineapple"}
newArr := arr[:8]

הדבר יגרום לשגיאה, מכיוון שהמיקום 8 נמצא מחוץ לקיבולת הפרוסה שלנו, ויש בה רק 7 איברים.

challenge icon

אתגר

קל

בקוד הנתון, אנחנו מגדירים פרוסה של 8 איברים. עלינו לקבל את כל הפרוסה למעט האיבר הראשון והאחרון. הדפיסו את התוצאה למסך.

נסו בעצמכם

package main

import "fmt"

func main() {
    // הגדירו פרוסה
	languages := []string{"C", "C++", "Java", "Python", "JavaScript", "Ruby", "Go", "Swift"}
    // חיתוך פרוסה
	 
    // הדפיסו את הפרוסה למסך
	 

}

כל השיעורים ביחידה פרוסות ומפות ב-GoLang

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