תרגול 1

מסמכים קשורים
מבוא למדעי המחשב

Slide 1

מבוא לתכנות ב- JAVA תרגול 7

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

PowerPoint Presentation

PowerPoint Presentation

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

מבוא למדעי המחשב

מבוא למדעי המחשב

PowerPoint Presentation

פתרון מוצע לבחינת מה"ט ב_שפת c מועד ב אביב תשע"ט, אפריל 2019 מחברת: גב' זהבה לביא, מכללת אורט רחובות שאלה מספר 1 מוגדרת מחרוזת המורכבת מהספרות 0 עד 9.

Microsoft Word - c_SimA_MoedB2005.doc

שאלהIgal : מערכים דו מימדיים רקורסיה:

PowerPoint Presentation

מבחן 7002 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדי

Microsoft Word - pitaron222Java_2007.doc

Tutorial 11

מבוא למדעי המחשב - חובלים

מבוא לתכנות ב- JAVA תרגול 11

מהוא לתכנות ב- JAVA מעבדה 3

Slide 1

Slide 1

Slide 1

תרגול 1

מבוא למדעי המחשב

אוניברסיטת חיפה החוג למדעי המחשב מבוא למדעי המחשב מועד א' סמסטר ב', תשע"ג, משך המבחן: שעתיים וחצי חומר עזר: אסור הנחיות: וודאו כי יש בידיכם

מספר מחברת: עמוד 1 מתוך 11 ת"ז: תשע"א מועד ב סמסטר א' תאריך: 00:11 שעה: 0 שעות הבחינה: משך כל חומר עזר אסור בשימוש בחינה בקורס: מבוא למדעי ה

Slide 1

Slide 1

תרגול מס' 4: המתרגם שימוש במחלקות קיימות מחרוזות, קבצים, וקבלת קלט מהמשתמש

תרגול מס' 7: תרגילים מתקדמים ברקורסיה

Slide 1

שאלהIgal : מערכים דו מימדיים רקורסיה:

תרגול 3 - מערכים

Microsoft Word - c_SimA_MoedA2006.doc

שקופית 1

הגשה תוך שבוע בשעת התרגול

PRESENTATION NAME

תוכן העניינים

הגשה תוך שבוע בשעת התרגול

Slide 1

מבוא למדעי המחשב - חובלים

תוכן העניינים

מבוא למדעי המחשב

מבוא למדעי המחשב

PowerPoint Presentation

מבוא למדעי המחשב

Slide 1

שאלהIgal : מערכים דו מימדיים רקורסיה:

מבוא למדעי המחשב, סמסטר א', תשס"ח תרגול מס' 2

סדנת תכנות ב C/C++

מבוא למדעי המחשב

תרגיל בית מספר 1#

Microsoft Word B

אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

PowerPoint Presentation

מס' סידורי: ת.ז.: עמוד 1 מתוך 20 בחינה בתוכנה 1 סמסטר ב', מועד א',תשס"ט 5/7/2009 וולף, ליאור ליאור שפירא, נעמה מאיר, מתי שמרת הוראות )נא לקרוא!( משך ה

Microsoft PowerPoint - T-10.ppt [Compatibility Mode]

משימה תכנית המתרגמת קטעי טקסט לשפה אחרת הקלט: קובץ המכיל את קטעי הטקסט וכן את השפה אליה רוצים לתרגם תרגול מס' 4: המתרגם שימוש במחלקות קיימות תכנות מתק

ex1-bash

תשע"דד אביב תוכנה 1 תרגיל מספר 4 עיבוד מחרוזות וקריאה מקבצים הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס..(

PowerPoint Presentation

אוניברסיטת חיפה החוג למדעי המחשב.5.6 מבוא למדעי המחשב סמסטר א' תשע"ז בחינה סופית מועד א', מרצה: שולי וינטנר מתרגלים: סמאח אידריס, ראמי עילבו

Slide 1

שעור 6

PowerPoint Presentation

PowerPoint Presentation

PowerPoint Presentation

אוניברסיטת תל אביב - בית הספר למדעי המחשב מבוא מורחב למדעי המחשב, אביב 2019 תרגיל בית מספר - 2 להגשה עד 02/04/2019 בשעה 23:55 קיראו בעיון את הנחיות הע

Microsoft PowerPoint - rec1.ppt

Microsoft PowerPoint - rec3.ppt

אוניברסיטת חיפה החוג למדעי המחשב מרצה: שולי וינטנר מתרגלים: נעמה טוויטו, מחמוד שריף מבוא למדעי המחשב סמסטר א' תשע"ב בחינת סיום, מועד א', הנחי

מצגת של PowerPoint

מבוא למדעי המחשב

לנץ קרן מרצה: תכנותמונחהעצמים) ( יוםשישי 15 אוקטובר 0202 ב מועד 0202, אביב סמסטר סמסטר סוף מבחן גוטמן אייל רביב, אריאל משנה, אלון מתרגלים: הנחי

מבוא למדעי המחשב

Python 2.7 in Hebrew

תוכנה 1 1 אביב תשע"ג תרגיל מספר 5 מערכים, מחרוזות, עיבוד טקסט ומבני בקרה הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס. הגש

1 תבניות טקסט מהי תבנית טקסט? שימוש ב- Characters Meta שימוש ב- Expression Grouping שימוש ב- Quantifiers תת תבניות הפונקציה preg_match הפונקציה preg_m

מבחן סוף סמסטר מועד ב 28/10/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, גדי אלכסנדרוביץ הוראות: א. בטופס המבחן 6 עמודים (כולל דף זה) ו

Slide 1

HTML - Hipper Text Makeup Language

הגנה - שקפי תרגול

Slide 1

PowerPoint Presentation

PowerPoint Presentation

מבחן סוף סמסטר מועד א 15/02/08 מרצה אחראית: דר שירלי הלוי גינסברג מתרגלים: גלעד קותיאל, דניאל גנקין הוראות: א. בטופס המבחן 7 עמודים ו 4 דפי נוסחאות. ב

Microsoft PowerPoint - 10_threads.ppt

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

פתרון 2000 א. טבלת מעקב אחר ביצוע האלגוריתם הנתון עבור הערכים : פלט num = 37, sif = 7 r האם ספרת האחדות של sif שווה ל- num num 37 sif 7 שורה (1)-(2) (

234114

תורת הקומפילציה

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

תרגיל בית מספר 1#

תכנות מונחה עצמים א' – תש"ע

Slide 1

תמליל:

מבוא למדעי המחשב 2019 תרגול 5 מחרוזות, חתימות ורקורסיה מחרוזות רצף של תווים רקורסיה קריאה של מתודה לעצמה באופן ישיר או עקיף

ראינו בהרצאה מחרוזות: תווים, חתימות: העמסה- String,הצהרה, overloading אתחול רקורסיה: הקטנת הבעיה- הגעה לתנאי עצירה פתרון הבעיה ע"י פתרון בעיה קטנה יותר

בתרגול היום מחרוזות: LCS צופן קיסר, מתודות וחתימות רקורסיה: חזקה, פלינדרום, עשרוני לבינארי, משולש פסקל

מחרוזות מאפשרות פעולות על רצפים של תווים

מחרוזות String s1; String s2 = abcd ; String s5 = new String( abcd ); String s3 = ; String s5 = new String(); String s4 = null;

מחרוזות - שיטות String s1 = hello ; String s2 = new String( hello ); System.out.println(s1 == s2); // false System.out.println(s1.equals(s2)); // true System.out.println(s1.length()); // 5 char c = s1.charat(1); // e char c2 = d ;

הצפנה באמצעות צופן קיסר 23 24 25 0 1 2 3 4 5 A-Z, a-z קלט: מחרוזת המורכבת מהתווים מספר טבעי המייצג את מפתח ההצפנה 0 1 2 3 4 5 6 7 8 פלט: מחרוזת מוצפנות באמצעות צופן קיסר "BEN GURION UNIVERSITY" key = 3 "EHQ JXULRQ XQLYHUVLWB"

צופן קיסר

צופן קיסר String s = ALOHA ; int key = 3; 87 89 90 65 66 67 68 69 70 int c = s.charat(0); c = c A ; c = c + key; c = c + A ; System.out.println((char)c); 65 66 67 68 69 70 71 72 73 // 65 // 0 // 3 // 68 // D A 65 B 66 C 67 D 68 E 69 F 70 G 71 H 72 I 73 J 74 K 75 L 76 M 77 ערכי ASCII N 78 O 79 P 80 Q 81 R 82 S 83 T 84 U 85 V 86 W 87 X 88 Y 89 Z 90

צופן קיסר - מימוש public static String encrypt(string str, int key) { 1 String encrypted = ""; 2 final int ALPHABET_SIZE = 26; // Z A + 1; 3 for (int i = 0; i < str.length(); i=i+1) { 4 int c = str.charat(i); 5 if ('A'<=c & c<='z') { 6 c = c - 'A'; 7 c = ((c + key) % ALPHABET_SIZE )+'A'; 8 9 else if ('a'<=c & c<='z') { 10 c = c - 'a'; 11 c = ((c + key) % ALPHABET_SIZE )+'a'; 12 13 encrypted = encrypted + (char)c; 14 15 return encrypted;

בעיית תת-מחרוזת משותפת מקסימלית Longest Common Substring

Longest common substring S 2 ו- S 1 קלט: שתי מחרוזות פלט : אורך תת-מחרוזת ארוכה ביותר אשר משותפת ל S 1 ו- S. 2 System.out.println(lcs("1234", "3456")); //2 System.out.println(lcs("abaaacdcfg", "babaacdfgacdcfaadcgf")); //5

Longest common substring בעיה פשוטה יותר 0 1 2 3 4 5 6 String s1 = climbing ; String s2 = lime"; 0 1 2 3 S 2 ו- S 2 ל S 1 S 2 ו- i 2 ו- S 1 i 1 קלט: שתי מחרוזות שני אינדקסים אורך תת-מחרוזת ארוכה ביותר אשר משותפת i 2 S 1 i 1 פלט : ומתחילה באינדקס במחרוזת ובאינדקס במחרוזת i 1 = 1 i 2 = 0 public static int lcsat(string s1, String s2, int i1, int i2){ int substringlength = 0; while( (i1 < s1.length() & i2 < s2.length()) && s1.charat(i1) == s2.charat(i2) ){ i1 = i1 + 1; i2 = i2 + 1; substringlength = substringlength + 1; return substringlength;

Longest Common Substring public static int lcs(string s1, String s2){ // assume s1 and s2 are not null int maxlength = 0; for (int i1 = 0; i1 < s1.length(); i1 = i1+1) for (int i2 = 0; i2 < s2.length(); i2 = i2+1) if ((i1==0 i2==0) s1.charat(i1-1)!= s2.charat(i2-1)) maxlength = Math.max(maxLength, lcsat(s1, s2, i1, i2)); return maxlength; אופטימיזציה public static int lcsat(string s1, String s2, int i1, int i2){ int substringlength = 0; while( (i1 < s1.length() & i2 < s2.length()) && s1.charat(i1) == s2.charat(i2) ){ i1 = i1 + 1; i2 = i2 + 1; substringlength = substringlength + 1; return substringlength;

חתימות והעמסה חתימה של פונקציה: public static <return type> <method name> (<type-1> x1 <typ-2> x2...) {... מורכבת אך ורק משם הפונקציה ומרשימת טיפוסי הפרמטרים. הטיפוסים ברשימה, הסדר שלהם ואורך הרשימה משנים את החתימה. לכל זוג פונקציות חתימה שונה.

חתימות והעמסה public class Overloading { public static String plus(int n, double d) { return "int double"; public static String plus(double d, int n) { return "double int"; public static String plus(int d, int n) { return "int int"; public static void main(string[] args) { int x = 0; double y = 0.0; System.out.println(plus(x, y)); System.out.println(plus(y, x)); System.out.println(plus(x)); System.out.println(plus(x, x)); System.out.println(plus(y, y));

חתימות והעמסה מה יקרה כאן? public class Overloading { public static String plus(int n, double d) { return "int double"; public static String plus(double d, int n) { return "double int"; public static void main(string[] args) { int x = 0; System.out.println(plus(x, x));

רקורסיה קריאה של פונקציה לעצמה באופן ישיר או עקיף

רקורסיה שלושת הכללים לבניית שיטה רקורסיבית: תנאי עצירה שניתן לענות עליו ללא קריאה רקורסיבית. )תנאי בסיס( קריאה רקורסיבית עם קלט הקרוב יותר לתנאי העצירה )הקטנת הבעיה(. שימוש בתוצאת הקריאה הרקורסיבית לחישוב התוצאה המוחזרת )השלמת הפתרון(..1.2.3

חישוב חזקה b a נרצה לכתוב פונקציה ומחשבת את a b רקורסיבית המקבלת שני מספרים טבעיים ו public static int exp(int a, int b) { int result; if (b == 0) { result = 1; else { result = a * exp(a, b - 1); return result;

רקורסיה איזה מן המשפטים הבאים יוצא דופן? רק פושטק עלוב בולע קטשופ קר 1. רבע הלילה עבר 2. Was it a car or a cat I saw.3 ארון קיר היה ריק נורא 4. מי לימד מילים 5. רקורסיה כי מי שמאמין לא מפחד 6. מי אמר שיש רמאים 7.

הפסקה

פלינדרום נרצה לכתוב פונקציה רקורסיבית אם המחרוזת היא פלינדרום ו הפרמטר אינו.null המקבלת,False - מחרוזת, ומחזירה True אחרת. ניתן להניח כי public static boolean ispalindrome(string s) { boolean ans = false; if (s.length() == 0 s.length() == 1) { ans = true; else if (s.charat(0) == s.charat(s.length() - 1)) { ans = ispalindrome(s.substring(1, s.length() - 1)); return ans;

הדפסת יצוג בינארי של מספר שלם חיובי,n כתבו פונקציה רקורסיבית (n printbinary(int הבינארי שלו מבלי להשתמש במחרוזות. אשר בהינתן שלם חיובי, הייצוג את מדפיסה public static void printbinary(int n){ if(n >= 2) // print the first digits (most significant bits) printbinary(n/2); // print lsb (last digit) System.out.print(n%2);

משולש פסקל n 0 1 1 1 1 2 1 2 1 3 1 3 3 1 4 1 4 6 4 1 5 1 5 10 10 5 1 0 1 2 3 4 5 k

משולש פסקל n pascal(int n, int k). כתבו פונקציה רקורסיבית ובעמודה k במשולש פסקל המחשבת המספר את המופיע בשורה n k k=0 או k=n נחזיר.1 תיאור האלגוריתם: תנאי העצירה: עבור קריאה רקורסיבית )הקטנת הבעיה(: קריאה אחת עם )1-n( ו - k קריאה שנייה עם )1-n( ו )1-k( שילוב התוצאות לקבלת תשובה: חיבור הערכים שהתקבלו משתי הקריאות הרקורסיביות..1.2.3 n 0 1 1 1 1 2 1 2 1 3 1 3 3 1 4 1 4 6 4 1 5 1 5 10 10 5 1 0 1 2 3 4 5 k

משולש פסקל // Pascal number in row n and column k public static int pascal(int n, int k){ int ans; if (k<0 n<0 n<k) { ans = -1; else if (k == 0 n == k) { ans = 1; else { ans = pascal(n-1,k) + pascal(n-1,k-1); return ans; n 0 1 1 1 1 2 1 2 1 3 1 3 3 1 4 1 4 6 4 1 5 1 5 10 10 5 1 0 1 2 3 4 5 k

סיכום ומשימות תרגלנו: מחרוזות, חתימות ורקורסיה