Menu
Coddy logo textTech

הצהרות תווית

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 35 מתוך 59.

פקודות תווית ב-Java מאפשרות לך לסמן נקודות מסוימות בקוד שלך ולשלוט בזרימת התוכנית באמצעות פקודות break ו-continue עם התוויות האלה. תוויות שימושיות במיוחד כשעובדים עם לולאות מקוננות.

צור לולאה מקוננת עם תווית:

outer: for(int i = 0; i < 3; i++) {
   for(int j = 0; j < 3; j++) {
       if(i * j == 4) {
           break outer;
       }
   }
}

השתמשו ב־continue עם תווית:

firstLoop: for(int i = 0; i < 3; i++) {
   for(int j = 0; j < 3; j++) {
       if(j == 1) {
           continue firstLoop;
       }
       System.out.println(i + "," + j);
   }
}
challenge icon

אתגר

קל

צרו מתודה בשם findNumber שמקבלת שלושה ארגומנטים:

  1. מערך דו־ממדי של מספרים שלמים (grid)
  2. מספר שלם (target) שיש למצוא
  3. ערך בוליאני (breakEarly) שקובע אם החיפוש צריך להיעצר לאחר מציאת ההופעה הראשונה. המתודה צריכה להשתמש בלולאה מתויגת כדי לחפש את מספר היעד ולהדפיס כל מיקום שבו הוא נמצא. אם breakEarly הוא true, עליה לעצור לאחר מציאת ההופעה הראשונה. יש להדפיס כל איבר שנמצא בפורמט: Found at: rowIndex,colIndex

נסו בעצמכם

import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;

public class Main {
    public static void findNumber(int[][] grid, int target, boolean breakEarly) {
        // כתבו כאן את הקוד שלכם
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // קראו מחרוזת JSON המייצגת מערך דו־ממדי
        String gridString = scanner.nextLine();
        // קראו את מספר היעד
        int target = Integer.parseInt(scanner.nextLine());
        // קראו את הדגל breakEarly
        boolean breakEarly = Boolean.parseBoolean(scanner.nextLine());
        
        Type gridType = new TypeToken<int[][]>(){}.getType();
        int[][] grid = new Gson().fromJson(gridString, gridType);
        
        findNumber(grid, target, breakEarly);
    }
}
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

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