שאלה 1, סעיף ב )11 נק'( - PDF

Description
שאלה 1, סעיף א )8 נק'( public static int fibiter(int n){ int a0 = 0, a1 = 1; int tmp; while (n 0) { tmp = a1; a1 = a0 + a1; a0 = tmp; n = n - 1; return a0; שאלה 1, סעיף ב )11 נק'( public static int fibcount(int

Please download to get full document.

View again

of 11
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Information
Category:

Concepts & Trends

Publish on:

Views: 29 | Pages: 11

Extension: PDF | Download: 0

Share
Transcript
שאלה 1, סעיף א )8 נק'( public static int fibiter(int n){ int a0 = 0, a1 = 1; int tmp; while (n 0) { tmp = a1; a1 = a0 + a1; a0 = tmp; n = n - 1; return a0; שאלה 1, סעיף ב )11 נק'( public static int fibcount(int n, int m){ return fibiter(n-m+1); סופי : 1 נק'( public static void hanoi(int n, char source, char target, char helper){ if (n 0){ hanoi(n-1,source,helper,target); System.out.println( move +source+ to +target); hanoi(n-1,helper,target,source); שאלה 1 סעיף א )5 שאלה 1 סעיף ב )15 נק'( public static void circularhanoi(int n, char source, char target, char helper){ if (n 0){ if (target == next(source)){ hanoi(n-1,source,helper,target); System.out.println( move +source+ to +target); hanoi(n-1,helper,target,source); else{ hanoi(n,source,helper,target); hanoi(n,helper,target,source); { 2 שאלה 3, סעיף א )8 נק'( יש להשלים )במידת הצורך( את שורת ההכרזה של הרכיב public abstract class Cell { protected String id; public Cell(String id) { this.id = id; public abstract double evaluate(); public String tostring() { return id + : ; {// Cell 3 שאלה 3, סעיף ב )5 נק'( יש להשלים )במידת הצורך( את שורת ההכרזה של הרכיב public class ValueCell extends Cell { private double value; public ValueCell(String id, double value) { super(id); this.value = value; public double evaluate() { return value; public String tostring() { return super.tostring() + value; public void setvalue(double value) { this.value = value; {// ValueCell 4 שאלה 3, סעיף ג )12 נק'( יש להשלים )במידת הצורך( את שורת ההכרזה של הרכיבים public abstract class_ FunctionCell extends Cell { protected Cell[] cells; public FunctionCell(String id, Cell[] cells) { super(id); this.cells = cells; public String tostring() { String ans = super.tostring() + getfuncname(); ans = ans + ( + cells[0].id; for (int i = 1; i cells.length; i = i + 1) ans = ans + + cells[i].id; ans = ans + ) ; return ans; public abstract String getfuncname(); // FunctionCell המשך בעמוד הבא 5 שאלה 3 סעיף ג - המשך public class SumCell extends FunctionCell { private static final String FUNC_NAME = SUM ; public SumCell(String id, Cell[] cells) { super(id, cells); public double evaluate() { double sum = 0; for (int i = 0; i cells.length; i = i + 1) sum = sum + cells[i].evaluate(); return sum; public String getfuncname() { return FUNC_NAME; {// SumCell 6 שאלה )15 4 נק'( סעיף א. )7 נקודות( public static boolean equalqueues(queue q1, Queue q2) { Object marker = new Object(); boolean res = true; if (q1!= q2) { Object o1 = null,o2 = null; q1.enqueue(marker); q2.enqueue(marker); while((q1!= null) (q2!= null)) { If (q1!= null) o1 = q1.dequeue(); If (q2!= null) o2 = q2.dequeue(); res = res && o1.equals(o2); if (o1!= marker) q1.enqueue(o1); else q1 = null; if (o2!= marker) q2.enqueue(o2); else q2 = null; המשך בעמוד הבא 7 \ public static void reverse(queue q) { Object o; if (! q.isempty()) { o = q.dequeue(); reverse(q); q.enqueue(o); שאלה 4, סעיף ב. )8 נקודות( השלימו //reverse 8 שאלה 5, סעיף א )5 נק'(: public Iterator iterator() { return new PreOrderIterator(this); { שאלה 5, סעיף ב )8 נק'( public class PreOrderIterator implements Iterator { private Stack s = new SomeStack(); private Queue q = new SomeQueue(); השלימו בנאי\ם, שדות נוספים ושיטות עזר אם אתם נזקקים להם public PreOrderIterator(BinaryNode t) { s.push(t); 9 המשך בעמוד הבא שאלה סעיף ב המשך 5 public boolean hasnext() { return!s.isempty(); {// hasnext public Object next() { if (! hasnext()) throw new NoSuchElementException(); BinaryNode current = (BinaryNode)s.pop(); if (current.right!= null) s.push(current.right); if (current.left!= null) s.push(current.left); return current.data; // next // PreOrderIterator 11 שאלה 5, סעיף ג )7 נק'( public void printpreorder() { Iterator iter = iterator(); while(iter.hasnext()) System.out.print(iter.next()+ ); System.out.println(); {// printpreorder public void printfilteredpreorder)filter filter) { Iterator iter = iterator(); while(iter.hasnext()) { Object nextval = iter.next(); if(filter.accept(nextval)) System.out.println(); System.out.print(nextVal+ ); {// printfilteredpreorder בהצלחה! 11
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks