Microsoft Word - tik-ludmar.doc

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

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

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

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

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

Slide 1

תרגול 1

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

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

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

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

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

Microsoft Word - pitaron222Java_2007.doc

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

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

PowerPoint Presentation

Microsoft PowerPoint - 10_threads.ppt

PowerPoint Presentation

Tutorial 11

PowerPoint Presentation

PowerPoint Presentation

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

PowerPoint Presentation

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

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

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

Slide 1

PowerPoint Presentation

תרגול 1

PowerPoint Presentation

PowerPoint Presentation

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

Microsoft PowerPoint - rec1.ppt

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

תוכנה 1 תרגול מספר 12: GUI כתיבת מחלקות גנריות בית הספר למדעי המחשב אוניברסיטת תל אביב 1

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

Microsoft PowerPoint - rec3.ppt

ex1-bash

Microsoft PowerPoint - lec10.ppt

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

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

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

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

Slide 1

PowerPoint Presentation

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

Slide 1

Slide 1

Slide 1

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

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

ייבוא וייצוא של קבצי אקסל וטקסט

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

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

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

מקביליות

Microsoft PowerPoint - lec2.ppt

סיכום הוראות Touch touchend יקרא לפונקציה כשיסתיים המגע עם הסמארטפון. - touchmove יקרא לפונקציה במהלך תזוזת המגע עם הסמארטפון. touchstart יקרא לפונקצי

מצגת של PowerPoint

המשימה תרגול מס' 5: קלט-פלט במערכות הפעלה שונות יש סימונים שונים עבור ירידת שורה :)newline( ב- UNIX/Linux )Line Feed( \n ב- Windows )Carriage Return +

מדריך להתחלה מהירה Microsoft Project 2013 נראה שונה מגירסאות קודמות, ולכן יצרנו מדריך זה כדי לעזור לך ללמוד להכיר אותו. סרגל הכלים לגישה מהירה התאם אי

Microsoft Word - c_SimA_MoedA2006.doc

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

PowerPoint Presentation

המינהל למדע וטכנולוגיה הפיקוח על מדעי המחשב עתודה מדעית טכנולוגית מדינת ישראל משרד החינוך המינהל הפדגוגי אגף בכיר בחינות בחינת מפמ ר במדעי המחשב לכיתה

שקופית 1

מצגת של PowerPoint

מקביליות

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

תוכנה 1 בשפת Java שיעור מספר 3: "חתיכת טיפוס"

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

PRESENTATION NAME

פקולטה לחינוך מנהל סטודנטים Beit Berl College الكلية االكاديمية بيت بيرل 20/06/2016 י"ד/סיון/תשע"ו ייעוץ וירטואלי הרכבת מערכת )רישום לקורסים( באמצעות

Microsoft Word - c_SimA_MoedB2005.doc

PowerPoint Presentation

PowerPoint Presentation

מקביליות

מתכונת עיצוב 3013

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

תרגול 1

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

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

Slide 1

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

Slide 1

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

WinZIP תוכנה לדחיסת קבצים ספטמבר 2007

(Microsoft Word - SQL\353\351\345\345\365 \341\361\351\361 \360\372\345\360\351\355 \ doc)

Microsoft Word B

Microsoft Word - Ass1Bgu2019b_java docx

יוםראשון, 02 ליולי 2014 סמסטר סוף מבחן )236703( עצמים מונחה תכנות - א' מועד 2014, אביב סמסטר קמחי יחיאל ד"ר מרצה: מסינג מיטל עבדאלקאדר, כרם גלעד, ערן

Microsoft Word - sync_LG.doc

תרגול 1

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

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

תמליל:

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

סביבות הפיתוח: JAVA / C# מטרת הפרויקט: זהו פרויקט המסכם את הנלמד ביסודות 1+2 על פי הגישה של עצמים תחילה. בנוסף יש כאן שימוש במערך דו-ממדי תוספת לחומר הנלמד ביסודות. הפרויקט מכיל 5 מחלקות. - מחלקה ראשית Program.1 - המחלקה משחק. Game.2 - המחלקה תא. Cell.3 - המחלקה לוח המשחק. Board 4. -מחלקת עזר. (ללא תכונות) Utility 5. תיאור המשחק: בתחילת המשחק נפתח חלון עם לוח בגודל 4*4 של איקסים. XXXX XXXX XXXX XXXX על המשתמש לבחור מספר שורה ומספר עמודה ועל פי הבחירה הוא רואה את הספרה הנמצאת במקום שנבחר. עליו לבחור מיקום נוסף ואז המשתמש רואה שתי ספרות. אם הן זהות התאים נשארים גלויים לעין. אם הספרות אינן זהות המיקומים שנבחנו מסומנים ב- X. המשחק ממשיך עד שהמשתמש מצליח לנחש את המיקום של כל הזוגות. הערה: בפתרון בגירסת java במקום ספרות המשתמש רואה תמונה.

תרשים מחלקות:

using System; using System.Collections.Generic; using System.Text; namespace MemoryGameProject class Program static void Main(string[] args) Game g = new Game(10,10); g.start(); פתרון #C using System; using System.Collections.Generic; using System.Text; using System.Threading; namespace MemoryGameProject public class Game private Board board; public Game(int r, int c) board = new Board(r, c); public void drawheader() String s = "Memory Game"; Console.SetCursorPosition(Console.LargestWindowWidth/2 - s.length,0); Console.Write(s); for (int k = 0; k < Console.LargestWindowWidth; k++) MemoryGameProject.Utility.putStr(" ", 3, k, ConsoleColor.White); public void drawfooter() for (int k = 0; k < Console.LargestWindowWidth; k++) MemoryGameProject.Utility.putStr(" ", Console.LargestWindowHeight - 5, k, ConsoleColor.White); public void drawgame() board.draw(); drawheader(); drawfooter(); public void start() int r1, c1, r2=0, c2=0; bool firsttime = false;

do drawgame(); MemoryGameProject.Utility.putStr("enter row:", 1, 0, ConsoleColor.Yellow); r1 = int.parse(console.readline()); MemoryGameProject.Utility.putStr("enter column:", 2, 0, ConsoleColor.Yellow); c1 = int.parse(console.readline()); board.flip(r1-1, c1-1); if (!firsttime) r2 = r1; c2 = c1; else drawgame(); Thread.Sleep(1000); if (!board.same(r1-1, c1-1, r2-1, c2-1)) board.flip(r1-1, c1-1); board.flip(r2-1, c2-1); firsttime =!firsttime; while (!board.visible()); using System; using System.Collections.Generic; using System.Text; namespace MemoryGameProject public class Cell private int value; private Boolean visible; public static int dimx=4,dimy=2; public Cell(int value) this.value = value; public void draw() if (visible) Console.WriteLine(value); else Console.WriteLine("*"); public void flip() visible =!visible; public bool same(cell cell) return value == cell.value;

public bool visibl() return visible == true; using System; using System.Collections.Generic; using System.Text; namespace MemoryGameProject public class Board private Cell[,] board; private int locx=10, locy=5; public Board(int rows, int cols) int[] counters = new int[rows * cols / 2]; int k; Random r = new Random(); board = new Cell[rows,cols]; locx = Console.LargestWindowWidth / 2 - (cols / 2) * 4; locy = Console.LargestWindowHeight / 2 - (rows / 2) * 2; for (int i = 0; i < board.getlength(0); i++) for (int j = 0; j < board.getlength(1); j++) while (counters[k = r.next(rows * cols / 2)] == 2) ; counters[k]++; board[i, j] = new Cell(k); public void draw() Console.Clear(); Console.SetBufferSize(Console.LargestWindowWidth, Console.LargestWindowHeight); Console.SetWindowSize(Console.LargestWindowWidth, Console.LargestWindowHeight); Console.WindowTop = 0; Console.WindowLeft = 0; for (int i = 0; i < board.getlength(0); i++) for (int j = 0; j < board.getlength(1); j++) Console.SetCursorPosition(locX + j*4, locy + i*2); board[i, j].draw(); public void flip(int r, int c) board[r, c].flip();

public bool same(int r1, int c1, int r2, int c2) return board[r1, c1].same(board[r2,c2]); public bool visible() for (int i = 0; i < board.getlength(0); i++) for (int j = 0; j < board.getlength(1); j++) if (!board[i, j].visibl()) return false; return true; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MemoryGameProject class Utility public static void putstr(string s, int row, int col, ConsoleColor fg) ConsoleColor tmp = Console.ForegroundColor; Console.SetCursorPosition(col, row); Console.ForegroundColor = fg; Console.Write(s); Console.ForegroundColor = tmp;

פתרון JAVA הפתרון בjava מלווה בתצוגה גרפית תוך שימוש בתמונות, עכבר והשמעת מוסיקה ברקע. ולכן במחלקות המשחק יש מספר הבדלים קטנים בין גירסת ה- #C לגירסת הjava שהן תולדה של שימוש במחלקות הגרפיות. מחלקות הגרפיקה מחלקות המשחק תודה מיוחדת לשמוליק שוורץ ולתלמידו עמיר בגאון מכפר בתיה על פיתוח המחלקות הגרפיות. המחלקות הגרפיות הן הרחבה של הגרפיקה שפותחה ע" פרו' מוטי בן ארי, ומאפשרות שימוש בתמונה עם הקלקה בעזרת העכבר, והשמעת קובץ מוסיקה מסוג."au" שמות המחלקות שונו מהמקור על מנת לא לאפשר התנגשות בין המחלקות בפיתוח החדש לבין המחלקות הגרפיות של מוטי בן ארי (קובץ.(graphics.jar שינוי שמות המחלקות מאפשר להשתמש בפיתוח של שמוליק ולהשאיר את הקובץ הגרפי של מוטי "שתול" ב- BlueJ או באקליפס. השינוי בשמות מזערי כמו: במקום Canvas נרשם. Canvass

import java.util.*; public class MainGame static Scanner reader=new Scanner(System.in); public static void main(string[] args) קובץ מוסיקה//;(" MyMusic("gaya.au MyMusic m=new הפעלת המוסיקה//;() m.startplayfile Game g = new Game(); g.start(); עצירת קובץ המוסיקה//;() m.stopplayfile import java.util.*; public class Game static Scanner reader=new Scanner(System.in); private Board board; public Game() board = new Board(4, 4); public void start() int r1=1, c1=1, r2=0, c2=0; boolean firsttime = false; Canvass canvas = Canvass.getCanvas(); int side=canvas.getwidth()/4; Textt t1 = new Textt(200, 580, על המשבצת הרצויה","לחץ "red"); String color="red"; do board.draw(); canvas.wait(50); boolean ok=true; while( ok) התבצעה לחיצה 1)// == (Canvass.M_Press_Flag if מתכונן ללחיצה הבאה בכך // 0; = Canvass.M_Press_Flag שמשנה את הדגל למצב שלא היתה לחיצה c1=canvass.mx/side+1; r1=canvass.my/side+1; if (c1>4 r1>4) t1.erase(); t1 = new Textt(200, 580, מחוץ לתחום","!!הינך "blue"); else

ok=false; board.flip(r1-1, c1-1); board.draw(); canvas.wait(50); if (!firsttime) r2 = r1; c2 = c1; else /* try Thread.sleep(2000); catch (Exception e) */ if (!board.same(r1-1, c1-1, r2-1, c2-1)) board.flip(r1-1, c1-1); board.flip(r2-1, c2-1); firsttime =!firsttime; if (color.equals("red")) color="black"; else color="red"; שינוי צבע ההודעה לקראת הלחיצה// t1.erase(); t1 = new Textt(200, 580, על המשבצת הרצויה","לחץ color); while (!board.visible()); t1.erase(); t1 = new Textt(200, 580, " הכבוד,! יש מקום לשיפור הזיכרון,".כל color); public class Board private Cell[][] board; private int side=560; public Board(int rows, int cols)

int[] counters = new int[rows * cols / 2]; int k; boolean flag=false; board = new Cell[rows][cols]; for (int i = 0; i < board.length; i++) for (int j = 0; j < board[i].length; j++) flag=false; while (!flag) k=(int)(math.random()*(rows*cols/2)); if (counters[k]<2) flag=true; counters[k]++; board[i][ j] = new Cell(k); //if //while //for ציור הלוח// //Canvass.changeSize(side+1,side+1); Rectangle c1=new Rectangle(0,0, side,side, "yellow"); // Textt t1 = new Textt(200, 580, על המשבצת הרצויה","לחץ "red"); int x=0, y=0; int d=side/4; for (int i=0; i<=5; i++) Linee l=new Linee(0, y, side, y, "black"); y=y+d; x=0; for (int j=0; j<=5; j++) Linee l=new Linee(x, 0, x, side,"black"); x=x+d; public void draw() int d=this.side/4; int x=d/2; int y=d/2; // String color="blue"; for (int i = 0; i < board.length; i++) for (int j = 0; j < board[i].length; j++) board[i][j].drawcell(x,y,side/4);

x=x+d; x=d/2; y=y+d; public void flip(int r, int c) board[r][c].flipcell(); public boolean same(int r1, int c1, int r2, int c2) return board[r1][c1].same(board[r2][c2]); public boolean visible() for (int i = 0; i < board.length; i++) for (int j = 0; j < board[i].length; j++) if (!board[i][j].visibl()) return false; return true; import java.util.*; public class Cell static Scanner reader=new Scanner(System.in); private int value; private boolean visible; public Cell(int value) this.value = value; public void drawcell(int x,int y, int side) אפשר עם מספרים או אותיות//;( tav=(char)(this.value+100 // char לגירסת מספרים או אותיות במקום תמונות//; s=""+tav //String if (this.visible) כדי למחוק ערך קודם נכתוב את הערך הקןדם בצבע הרקע // עבור גירסה עם אותיות במקום תמונות//;(" Textt(x,y,"*","yellow // Textt t1=new עבור גירסה עם אותיות במקום תמונות//;(" Textt(x,y,s,"black //Textt t2=new

this.paintempty(x, y, side); this.paint(x, y);//x,y is center of picture else כדי למחוק ערך קודם נכתוב את הערך הקןדם בצבע הרקע // עבור גירסה עם אותיות במקום תמונות//;(" Text(x,y,s,"yellow // Text t1=new this.paintempty(x, y, side); Textt t2=new Textt(x,y,"*","blue"); public void paintempty(int x,int y, int side) Rectangle c=new Rectangle(x-side/2+5, y-side/2+5, side-5,side- 5,"yellow"); public void paint(int x,int y) מימדי התמונה כפי שיוצגו // picwidth=70; int pichight=70, SImage pic; switch(this.value) case 0:pic = new SImage(x-picHight/2,y-picWidth/2, "blueball",pichight,picwidth); case 1: pic = new SImage(x-picHight/2,y-picWidth/2, "flower",pichight,picwidth); case 2: pic = new SImage(x-picHight/2,y-picWidth/2, "roses",pichight,picwidth); case 3: pic = new SImage(x-picHight/2,y-picWidth/2, "butterfly",pichight,picwidth); case 4: pic = new SImage(x-picHight/2,y-picWidth/2, "body",pichight,picwidth); case 5: pic = new SImage(x-picHight/2,y-picWidth/2, "caricatura",pichight,picwidth); case 6: pic = new SImage(x-picHight/2,y-picWidth/2, "cadur_poreach",pichight,picwidth); case 7: pic = new SImage(x-picHight/2,y-picWidth/2, "computer",pichight,picwidth);

case 8: pic = new SImage(x-picHight/2,y-picWidth/2, "smallflower",pichight,picwidth); public void flipcell() visible =!visible; public boolean same(cell cell) return value == cell.value; public boolean visibl() return visible == true;