Menu
Coddy logo textTech

מאתר תבניות

חלק מהיחידה יסודות במסלול ה-R של Coddy. שיעור 77 מתוך 78.

challenge icon

אתגר

קל

צרו פונקציה בשם count_pattern שמקבלת שני ארגומנטים: text ו-pattern. הפונקציה צריכה להחזיר את מספר הפעמים שהתבנית מופיעה בטקסט, כולל הופעות חופפות.

תקבלו שתי שורות קלט:

  1. מחרוזת הטקסט שבה יש לחפש
  2. מחרוזת התבנית שאותה יש לחפש

קראו לפונקציה עם הקלטים שסופקו והדפיסו את התוצאה.

רמזים:

  • השתמשו ב-nchar() כדי לקבל את אורך המחרוזות
  • השתמשו ב-substr(text, start, stop) כדי לחלץ מחרוזות משנה
  • עברו על כל מיקום התחלה תקף ובדקו אם מחרוזת המשנה תואמת לתבנית

לדוגמה, אם הקלט הוא:

ababa
aba

הפלט צריך להיות:

2

הסבר: התבנית "aba" מופיעה במיקום 1 (ababa) ובמיקום 3 (ababa), לכן הספירה היא 2.

אם הקלט הוא:

mississippi
issi

הפלט צריך להיות:

2

נסו בעצמכם

# קראו את הקלט
con <- file("stdin", "r")
text <- suppressWarnings(readLines(con, n = 1))
pattern <- suppressWarnings(readLines(con, n = 1))
close(con)

# TODO: צרו פונקציה בשם count_pattern שמקבלת את text ואת pattern
# ומחזירה את מספר המופעים החופפים של pattern בתוך text


# קראו לפונקציה והדפיסו את התוצאה
print(count_pattern(text, pattern))

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

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