מאתר תבניות
חלק מהיחידה יסודות במסלול ה-Swift של Coddy. שיעור 85 מתוך 86.
אתגר
קלקרא שתי שורות קלט: השורה הראשונה היא הטקסט שיש לחפש בו, והשורה השנייה היא התבנית שיש למצוא.
ספור כמה פעמים התבנית מופיעה בטקסט, כולל מופעים חופפים, והדפס את הספירה.
דרישות:
- קרא את מחרוזת הטקסט מהשורה הראשונה של הקלט
- קרא את מחרוזת התבנית מהשורה השנייה של הקלט
- עבור על הטקסט ובדוק אם התבנית מופיעה בכל מיקום
- ספור את כל המופעים, כולל התאמות חופפות
- הדפס את הספירה הכוללת כמספר שלם יחיד
רמז: כדי לחלץ תת-מחרוזת שמתחילה באינדקס i ובעלת אורך מסוים, אפשר להשתמש בחיתוך מחרוזת עם אינדקסים. המר את המחרוזת למערך של תווים או השתמש בטיפול של Swift באינדקסים של מחרוזות כדי לבדוק אם התבנית תואמת בכל מיקום.
דוגמה:
אם הקלט הוא:
ababa
abaהפלט צריך להיות:
2התבנית "aba" מופיעה באינדקס 0 ובאינדקס 2 בתוך "ababa".
נסו בעצמכם
// קראו את הקלט
let text = readLine()!
let pattern = readLine()!
// TODO: כתבו את הקוד שלכם למטה
// ספרו כמה פעמים התבנית מופיעה בטקסט (כולל הופעות חופפות)
// הציגו את התוצאה
print(count)כל השיעורים ביחידה יסודות
7קלט/פלט בסיסי
פונקציית ההדפסהאינטרפולציה של מחרוזותקלט באמצעות ReadLineהמרת טיפוסיםחזרה – עד 120חזרה – אמת או שקר3ערכים אופציונליים
מהם ערכים אופציונלייםשליפת ערך באמצעות If LetGuard Letאופרטור איחוד עם Nilסיכום – שליפה בטוחה של ערך9לולאות
לולאת For-Inלולאת Whileלולאת Repeat-WhileBreakContinueחזרה – עצרתטווחים בלולאותלולאה מקוננתחזרה – קלט דינמיתרגלו בעצמכם: Swift אונליין