
03-02-2006, 18:36
|
 |
|
|
חבר מתאריך: 04.08.02
הודעות: 4,468
|
|
|
...
לא הבנתי מה אתה רוצה לעשות :[
נניח ממשת OR, XOR, NOT, AND כל אחד ממחלקה משלו.
אמרת שאתה שולח (ככל הנראה, לבנאי) את הפרמטר של מס' הכניסות.
עכשיו מה הבעיה?
תיצור מטודה בכל אובייקט שתדפיס את טבלת האמת של אותו שער עבור N כניסות.
נניח שלחת 2 כניסות, אז טבלת האמת של OR למשל תהיה:
0 0 0
0 1 1
1 0 1
1 1 1
שני העמודות הראשונות מציינות את הכניסות.
יצירת צירוף הכניסות זה פשוט לספור בבסיס 2.
2 כניסות -> 4 צירופים (0 עד 3 בבינארי)
3 כניסות -> 8 צירופים (0 עד 7 בבינארי)
4 כניסות -> 16 צירופים (0 עד 15 בבינארי)
יש דרך קלה ליצור את הצירופים כמובן, מבלי שתצטרך לספור ממש...
אני אשאיר פה את הצירופים מ2 עד 4 שערים, ואתה תעלה על "הטריק" בעצמך.
0 0
0 1
1 0
1 1
N = 3
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
N = 4
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1
שים לב לעמודות..
ברגע הצלחת ליצור את הצירופים, בעצם מה שנשאר זה להפעיל את השער עליהם... ולהדפיס את התוצאה בעמודה האחרונה
_____________________________________
C pogrammers never die. They are just cast into void.
|