סיכום - מונה תדירויות
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Ruby של Coddy. שיעור 37 מתוך 56.
שלבו יחד גיבובים עם ערכי ברירת מחדל, איטרציה ומיון מהפרקים הקודמים באתגר קלאסי אחד: דוח תדירות מילים.
אתגר
בינוניקרא שורת קלט יחידה, משפט. בנה מיפוי של Hash.new(0) המשייך כל מילה (מפוצלת לפי רווחים לבנים, ומומרת לאותיות קטנות) לתדירות שלה.
לאחר מכן הדפס:
- את המספר הכולל של המילים הייחודיות
- שורה אחת לכל מילה, לפי תדירות יורדת (במקרה של שוויון, מיין לפי סדר אלפביתי של המילים), בפורמט הזה:
<word>: <count>
עבור הקלט the quick brown fox jumps over the lazy dog the dog, הפלט הוא:
8
the: 3
dog: 2
brown: 1
fox: 1
jumps: 1
lazy: 1
over: 1
quick: 1נסו בעצמכם
input = gets.chomp
# TODO: בנו Hash.new(0) שממפה מילה → ספירה, ואז הדפיסו:
# 1) את מספר המילים הייחודיות
# 2) את הרשומות ממוינות לפי ספירה בסדר יורד, ובמקרה של שוויון לפי מילה בסדר עולה
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1מחרוזות לעומק
סקירה של מתודות למחרוזותאינטרפולציה של מחרוזותמעבר על מחרוזותפיצול וחיבורסיכום – שוזר המחרוזות4בלוקים, Procs ו־Lambdas
מהו בלוק?do..end לעומת סוגריים מסולסליםמילת המפתח yieldפרמטרים של בלוקProcs ו־Lambdasסיכום – איטרטור מותאם אישית7Hashes חלק 2
Hash.new עם ערכי ברירת מחדלמעבר על HashesHashes מקונניםמיזוג ושינויסיכום - מונה תדירויות10פרויקט - רשומות תלמידים
סקירת הפרויקטהוספת תלמיד5עוצמת Enumerable
Select ו־Rejectשרשור MapReduce / Injectcount, all?, any?, none?group_by ו־partitionsort_by, min_by, max_byסיכום - צינור נתוניםתרגלו בעצמכם: קומפיילר Ruby אונליין