أساسيات علوم الحاسوب: حزمة المراجعة المكثفة

أوراق القوانين، وأهم خطوات الحل لكل موضوع، و20 مسألة تدريبية، مع الحلول الكاملة في الخلف.

مسائل جديدةالعودة إلى المقرّر

في نافذة الطباعة اختر «حفظ بصيغة PDF» لحفظ نسخة على جهازك.

1القوانين وطرق الحل

أنظمة العد

القيم الموضعية
الثنائي 2k، الثماني 8k، الست عشري 16k
إلى العشري
Σ dk·bk
من العشري
اقسم على الأساس، واقرأ البواقي من الأسفل إلى الأعلى
الست عشري ↔ الثنائي
رقم ست عشري واحد = 4 بتات
المتمم الثنائي
اعكس البتات وأضف 1

المنطق القضوي والبراهين

صفوف جدول الصدق
2ⁿ
الاستلزام
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
نفي الاستلزام
¬(p → q) ≡ p ∧ ¬q
الشرط الثنائي
p ↔ q ≡ (p → q) ∧ (q → p)
دي مورغان
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
قوانين التوزيع
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
نفي الكمّمات
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
قاعدة الوضع (modus ponens) وقاعدة الرفع (modus tollens)
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

الطريقة

  1. عُدّ المتغيرات المختلفة: لجدول الصدق 2ⁿ صفًا، ويبدأ بصف تكون فيه كلها 1.
  2. أعطِ كل صيغة جزئية عمودها الخاص واملأ الأعمدة من الداخل إلى الخارج.
  3. طبّق قاعدة كل رابط: → يساوي 0 فقط في الحالة 1 → 0، و ↔ يساوي 1 عندما يتفق الطرفان.
  4. للتكافؤات قارن العمودين الأخيرين صفًا بصف؛ وللحجة انظر فقط إلى الصفوف التي تكون فيها كل المقدمات 1.
  5. لنفي عبارة مكمَّمة، انقل ¬ إلى الداخل، وبدّل ∀ و ∃، وانفِ الصيغة الداخلية.

المنطق الرقمي: البوابات وخرائط كارنو والقلّابات

البوابات الأساسية
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
القواعد البولية
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
دي مورغان
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
ترتيب خريطة كارنو
00, 01, 11, 10 (Gray code)
مجموعة من 2ᵏ خلية
تفقد k متغيرًا
مضاعِف 4-إلى-1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
القلّابات
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
العدّادات
n بتّات: 2ⁿ حالة؛ mod-N: أصغر n يحقق 2ⁿ ≥ N؛ fout = fclk/N
العدّاد المتموّج
fmax = 1/(n·tpd)
العدّادان الحلقي وجونسون
n و 2n حالة

الطريقة

  1. لدارة ما، اعمل من المداخل إلى المخرج بوابةً بوابةً واكتب القيمة على كل سلك، أو اكتب تعبيرها واملأ جدول الصدق.
  2. للتبسيط ضع الآحاد (وحالات عدم الاكتراث على شكل X) في خريطة كارنو بصفوف وأعمدة بشيفرة غراي: 00, 01, 11, 10.
  3. غطِّ الآحاد بأقل عدد ممكن وأكبر حجم ممكن من المجموعات ذات 1 أو 2 أو 4 أو 8 أو 16 خلية، مع الالتفاف حول الحواف؛ كل مجموعة حد جداء واحد من المتغيرات التي تبقى ثابتة. جمّع الأصفار للصيغة POS.
  4. للقلّابات والعدّادات اقرأ المداخل عند كل حافة ساعة فعالة، واكتب الحالة بعد كل حافة، وتذكّر أن عدّادًا ذا n بتّات يلتف بعد 2ⁿ حالة.

نظرية الأعداد والحساب المودولي

القسمة مع الباقي
a = q·n + r, 0 ≤ r < n
إقليدس
gcd(a, b) = gcd(b, a mod b)
المضاعف المشترك الأصغر
lcm(a, b) = a·b/gcd(a, b)
المعكوس
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
التطابق الخطي
a·x ≡ b → x ≡ a⁻¹·b (mod n)
دالة أويلر φ
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
فيرما
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

الطريقة

  1. اختزل كل عدد بالنسبة إلى n أولًا؛ البواقي تقع بين 0 و n − 1.
  2. للقاسم المشترك الأكبر، اقسم مرارًا بخوارزمية إقليدس؛ آخر باقٍ غير صفري هو القاسم المشترك الأكبر.
  3. للمعكوس، نفّذ الخوارزمية الموسّعة واحتفظ بمعامل a؛ أضف n إذا كان سالبًا.
  4. حلّ a·x ≡ b بالضرب في a⁻¹؛ ولدمج تطابقين اكتب x = r₁ + m₁k.
  5. للقوى اكتب الأس بالنظام الثنائي وربّع مرارًا؛ وفي RSA، d = e⁻¹ mod φ(n) مع φ(n) = (p − 1)(q − 1).

نظرية البيانات

مبرهنة المصافحة
Σ deg(v) = 2|E|
البيانات التامة
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
البيان المنتظم
|E| = n·k/2
الشجرة والغابة
|E| = n − 1, |E| = n − c
أوراق الشجرة
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
أويلر
الدارة: كل الدرجات زوجية؛ المسار: درجتان فرديتان بالضبط
دارات هاملتون في Kn
(n − 1)!/2
تحديث ديكسترا
d(v) = min(d(v), d(u) + w(u, v))
المسارات (walks) بطول L
(Mᴸ)ij

الطريقة

  1. اكتب درجة كل رأس؛ مجموع الدرجات يساوي ضعف عدد الحواف.
  2. في أسئلة أويلر، تحقّق من أن البيان متصل وعُدّ الرؤوس ذات الدرجة الفردية.
  3. للأشجار استخدم n − 1 حافة ومبرهنة المصافحة.
  4. في ديكسترا احتفظ بجدول للمسافات المؤقتة وثبّت في كل جولة أصغر رأس غير مثبّت.
  5. لإيجاد شجرة ممتدة دنيا، رتّب الحواف بحسب الوزن وتخطَّ كل حافة تُغلق دورة (كروسكال)، أو أنمِ شجرة واحدة انطلاقًا من رأس البداية (برايم).

تقسيم شبكات IPv4

المضيفون في كل شبكة فرعية
2(32 − prefix) − 2 (/31: 2, /32: 1)
حجم الكتلة
256 − (mask octet)
عنوان الشبكة
IP AND القناع
عنوان البث
IP OR (NOT mask): كل بتات المضيف = 1
الشبكات الفرعية من n بتات مستعارة
2n

2مسائل تدريبية

1.أنظمة العدمتوسطة
المتمم الثنائي ذو 8 بتات?−128?64?32?16?8?4?2?1

اكتب −115 كنمط متمم ثنائي ذي 8 بتات. اقرأ النمط كعدد ثنائي بلا إشارة: ما قيمته U في النظام العشري؟

N = −1158 bit
U =
2.أنظمة العدصعبة
2599 رموز، b = ؟ بت?2ᵇ⁻¹…?4?2?1

يجب أن يعطي نظام كل واحد من 2599 عنصرًا رمزًا ثنائيًا خاصًا به بالطول نفسه. ما أقل عدد من البتات b يلزم؟

2599
b = bit
3.المنطق القضوي والبراهينمتوسطة
pqr¬r ∨ p(¬r ∨ p) ∨ q(r ∨ q) → ((¬r ∨ p) ∨ q)111?110?101?100?011?010?001?000?

في كم صفًا من الصفوف الثمانية لجدول صدق (r ∨ q) → ((¬r ∨ p) ∨ q) تكون صائبة؟ سمِّ هذا العدد N.

(r ∨ q) → ((¬r ∨ p) ∨ q)
N =
4.المنطق القضوي والبراهينصعبة
a ∧ cac¬c

المقدمات a ∨ c; ¬a معطاة. أي استنتاج يلزم عنها؟ انقر عليه.

a ∨ c¬a
  1. 1a ∧ c
  2. 2a
  3. 3c
  4. 4¬c
5.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتمتوسطة
ABCD000111100001111000111302140517161121130151141819111110

استخدم خريطة كارنو لإيجاد الصيغة الدنيا لمجموع الجداءات (SOP) للدالة F(A, B, C, D) = Σm(1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14). كم حد جداء N فيها؟

F(A, B, C, D) = Σm(1, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14)
N =
6.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتصعبة
ABCD00011110000111101011030204X5X706112X131150141819111110

جد الصيغة الدنيا SOP للدالة F(A, B, C, D) = Σm(0, 1, 8, 9, 10, 11, 12, 15) + d(5, 7, 13)، حيث تشير d إلى حالات عدم الاكتراث. كم حد جداء N فيها؟

F(A, B, C, D) = Σm(0, 1, 8, 9, 10, 11, 12, 15) + d(5, 7, 13)
N =
7.نظرية الأعداد والحساب المودوليمتوسطة

حلّ 7x ≡ 1 (mod 17). أعطِ الحل x مع 0 < x < 17.

7x ≡ 1 (mod 17)
x =
8.نظرية الأعداد والحساب المودوليصعبة

حلّ 20x ≡ 6 (mod 22). أعطِ أصغر حل موجب x.

20x ≡ 6 (mod 22)
x =
9.الخوارزميات والتعقيدمتوسطة

ما التعقيد الزمني لخوارزمية البرمجة الديناميكية القياسية لأطول تتابع جزئي مشترك لسلسلتين طولهما m وn؟

  1. AO(m + n)
  2. BO(mn log n)
  3. CO(2m+n)
  4. DO(mn)
10.الخوارزميات والتعقيدصعبة

أي من مسائل الإرضاء هذه معروف أنه قابل للحل في زمن كثير حدود؟

  1. Aإرضاء الدارات
  2. B2-SAT، حيث يحتوي كل بند على حرفيّين (literals) على الأكثر
  3. C3-SAT، حيث يحتوي كل بند على ثلاثة حرفيّات بالضبط
  4. DSAT العامة على صيغ في الصيغة العادية العطفية
11.هياكل البياناتمتوسطة

لديك مرجع إلى عقدة في منتصف قائمة. في أي قائمة يمكنك إزالتها في O(1)؟

  1. Aالقائمة المترابطة الأحادية
  2. Bالمصفوفة المرتبة
  3. Cالقائمة المترابطة الثنائية
  4. Dالمصفوفة الديناميكية
12.هياكل البياناتصعبة

إدراج مفتاح في شجرة AVL جعل الشجرة الفرعية اليسرى لعقدة أطول من اللازم، وذهب المفتاح الجديد إلى الشجرة الفرعية اليسرى لابنها الأيسر (حالة يسار-يسار). أي إصلاح يُطبَّق؟

  1. Aدوران إلى اليسار عند الابن، ثم دوران إلى اليمين عند العقدة
  2. Bإعادة تلوين العقدة وابنها
  3. Cدوران واحد إلى اليمين عند العقدة غير المتوازنة
  4. Dدوران واحد إلى اليسار عند العقدة غير المتوازنة
13.نظرية البياناتمتوسطة

كم دارة هاملتون مختلفة H للبيان التام K4؟ الدارات التي تختلف فقط في رأس البداية أو الاتجاه تُعدّ واحدة.

K4
H =
14.نظرية البياناتصعبة
1214513131013159ABCDEFG

استخدم خوارزمية ديكسترا لإيجاد طول d(F) أقصر مسار من A إلى F في البيان الموزون.

البداية: Aالنهاية: F
d(F) =
15.قواعد البيانات و SQLمتوسطة

ماذا يُرجع SELECT COALESCE(phone, 'unknown') FROM customers لعميل قيمة phone لديه NULL؟

  1. Aسلسلة نصية فارغة
  2. BNULL
  3. Cخطأ
  4. D'unknown'
16.قواعد البيانات و SQLصعبة

للجدول employee(emp_id, dept_id, dept_name) المفتاح emp_id، وdept_id → dept_name. أي عبارة صحيحة؟

  1. Aإنه ليس في 1NF
  2. Bإنه في 2NF لكنه ليس في 3NF
  3. Cإنه في BCNF ولذلك فهو في 3NF
  4. Dإنه ليس في 2NF
17.شبكات الحاسوبمتوسطة

لماذا يُفضَّل UDP غالبًا في مكالمات الفيديو المباشرة؟

  1. Aلأن UDP مطلوب لكل أنواع الفيديو
  2. Bلأن UDP يضمن وصول كل حزمة، فلا تتجمد الصورة أبدًا
  3. Cلأن انخفاض التأخير أهم من إعادة إرسال كل حزمة مفقودة
  4. Dلأن UDP يشفّر البيانات تلقائيًا
18.شبكات الحاسوبصعبة

يحجب جدار حماية كل رسائل ICMP. تعمل طلبات الويب الصغيرة، لكن التنزيلات الكبيرة عبر بعض المسارات تتوقف. ما السبب المرجح؟

  1. Aتُرسل شهادات TLS عبر ICMP
  2. Bيحتاج DNS إلى ICMP لتحليل الأسماء
  3. Cيفشل اكتشاف MTU للمسار لأن رسائل "fragmentation needed" محجوبة
  4. Dلا يستطيع TCP فتح الاتصالات دون ICMP
19.تقسيم شبكات IPv4متوسطة
/24 → /2811111111111111111111111111110000بتات الشبكةبتات المضيف

يجب تقسيم الشبكة 192.168.10.0/24 إلى 10 شبكات فرعية متساوية على الأقل. إذا استعرت أقل عدد ممكن من البتات، فكم مضيفًا قابلًا للاستخدام H في كل شبكة فرعية؟

192.168.10.0/2410 subnets
H =
20.تقسيم شبكات IPv4صعبة

تُقسَّم الشبكة 192.168.30.0/24 بتقنية VLSM لهذه الشبكات المحلية: A: 11 مضيفون, B: 31 مضيفون, C: 53 مضيفون, D: 21 مضيفون. تُخصَّص الشبكات الفرعية من .0 صعودًا، بدءًا بالشبكة المحلية ذات أكبر عدد من المضيفين، لكلٍّ منها أصغر شبكة فرعية تكفيها. ما الثُمانية الرابعة x من عنوان شبكة LAN D؟

A: 11B: 31C: 53D: 21
x =

3المحاليل

1.أنظمة العد

الإجابة: U = 141

أنظمة العد الموضعية: قيمة كل رقم هي قيمته مضروبة في قوة من قوى الأساس. في النظام الثنائي تساوي المواضع 1، 2، 4، 8، 16، …؛ وفي السداسي عشري 1، 16، 256، …، حيث تمثل A–F القيم 10–15. في المتمم الثنائي ذي 8 بتات تساوي البتة اليسرى −128 بدلًا من +128، وهكذا تُخزَّن الأعداد السالبة.

اقلب وأضف واحدًا

115 = 0111 0011
مقلوب: 1000 1100
+1 → 1000 1101

اقرأه بلا إشارة

1000 1101₂ = 256 − 115 = 141

الإجابة

U = 141
2.أنظمة العد

الإجابة: b = 12 bit

أنظمة العد الموضعية: قيمة كل رقم هي قيمته مضروبة في قوة من قوى الأساس. في النظام الثنائي تساوي المواضع 1، 2، 4، 8، 16، …؛ وفي السداسي عشري 1، 16، 256، …، حيث تمثل A–F القيم 10–15. في المتمم الثنائي ذي 8 بتات تساوي البتة اليسرى −128 بدلًا من +128، وهكذا تُخزَّن الأعداد السالبة.

قوى العدد 2

211 = 2048 < 2599
212 = 4096 ≥ 2599

الإجابة

b = 12
3.المنطق القضوي والبراهين

الإجابة: N = 7

جداول الصدق: للصيغة ذات n متغيرًا مختلفًا 2ⁿ صفًا، صف لكل تركيبة من قيم الصدق (1 = صواب، 0 = خطأ). اعمل من الداخل إلى الخارج وأعطِ كل صيغة جزئية عمودها الخاص. ¬a تقلب القيمة؛ و a ∧ b تساوي 1 فقط عندما تكون القيمتان 1؛ و a ∨ b تساوي 0 فقط عندما تكون القيمتان 0؛ و a → b تساوي 0 فقط عندما a = 1 و b = 0؛ و a ↔ b تساوي 1 عندما يتساوى الطرفان.

جدول الصدق صفًا صفًا

p = 1, q = 1, r = 1: r ∨ q = 1, ¬r = 0, ¬r ∨ p = 1, (¬r ∨ p) ∨ q = 1, (r ∨ q) → ((¬r ∨ p) ∨ q) = 1
p = 1, q = 1, r = 0: r ∨ q = 1, ¬r = 1, ¬r ∨ p = 1, (¬r ∨ p) ∨ q = 1, (r ∨ q) → ((¬r ∨ p) ∨ q) = 1
p = 1, q = 0, r = 1: r ∨ q = 1, ¬r = 0, ¬r ∨ p = 1, (¬r ∨ p) ∨ q = 1, (r ∨ q) → ((¬r ∨ p) ∨ q) = 1
p = 1, q = 0, r = 0: r ∨ q = 0, ¬r = 1, ¬r ∨ p = 1, (¬r ∨ p) ∨ q = 1, (r ∨ q) → ((¬r ∨ p) ∨ q) = 1
p = 0, q = 1, r = 1: r ∨ q = 1, ¬r = 0, ¬r ∨ p = 0, (¬r ∨ p) ∨ q = 1, (r ∨ q) → ((¬r ∨ p) ∨ q) = 1
p = 0, q = 1, r = 0: r ∨ q = 1, ¬r = 1, ¬r ∨ p = 1, (¬r ∨ p) ∨ q = 1, (r ∨ q) → ((¬r ∨ p) ∨ q) = 1
p = 0, q = 0, r = 1: r ∨ q = 1, ¬r = 0, ¬r ∨ p = 0, (¬r ∨ p) ∨ q = 0, (r ∨ q) → ((¬r ∨ p) ∨ q) = 0
p = 0, q = 0, r = 0: r ∨ q = 0, ¬r = 1, ¬r ∨ p = 1, (¬r ∨ p) ∨ q = 1, (r ∨ q) → ((¬r ∨ p) ∨ q) = 1

عُدّ الصفوف ذات القيمة 1

(r ∨ q) → ((¬r ∨ p) ∨ q): 1, 1, 1, 1, 1, 1, 0, 1
N = 7

الإجابة

N = 7
4.المنطق القضوي والبراهين

الإجابة: c

الكمّمات والحجج: ¬∀x P(x) ≡ ∃x ¬P(x) و ¬∃x P(x) ≡ ∀x ¬P(x). انقل النفي إلى الداخل، وبدّل كل كمّم يمرّ به، وانفِ الصيغة الداخلية بقوانين المنطق القضوي، مثل ¬(a → b) ≡ a ∧ ¬b. تكون الحجة صحيحة عندما يكون الاستنتاج 1 في كل صف تكون فيه كل المقدمات 1. صف واحد بمقدمات صائبة واستنتاج خاطئ هو مثال مضاد ويبيّن أن الحجة غير صحيحة.

الصفوف التي كل مقدماتها صائبة

a = 0, c = 1: a ∧ c = 0, a = 0, c = 1, ¬c = 0

الخلاصة

c (القياس الفصلي)

الإجابة

c
5.المنطق الرقمي: البوابات وخرائط كارنو والقلّابات

الإجابة: N = 5

خرائط كارنو: ترتَّب الخلايا بشيفرة غراي (00, 01, 11, 10)، فتختلف الخلايا المتجاورة، بما فيها تلك التي عبر الحواف، في متغير واحد بالضبط. جمّع الآحاد في مستطيلات من 1 أو 2 أو 4 أو 8 أو 16 خلية، بأكبر حجم وأقل عدد ممكنين، حتى يُغطى كل 1. كل مجموعة حد جداء واحد: المتغيرات التي تبقى ثابتة داخلها. المجموعة من 2ᵏ خلية تفقد k متغيرًا. يجوز استخدام حالات عدم الاكتراث (X) لتكبير المجموعات لكن لا يجب تغطيتها أبدًا. أما تجميع الأصفار فيعطي الصيغة الدنيا POS.

ABCD000111100001111000111302140517161121130151141819111110

جمّع الآحاد

كل مجموعة مستطيل من 2ᵏ خلية؛ وخلايا الحافة جارة للخلايا على الحافة المقابلة.

B′D
BD′
AD′
AC′
A′CD

الصيغة الدنيا SOP

F = B′D + BD′ + AD′ + AC′ + A′CD
N = 5

الإجابة

N = 5

يوجد تجميع آخر بالحجم نفسه؛ وله عدد الحدود والحروف نفسه.

6.المنطق الرقمي: البوابات وخرائط كارنو والقلّابات

الإجابة: N = 4

خرائط كارنو: ترتَّب الخلايا بشيفرة غراي (00, 01, 11, 10)، فتختلف الخلايا المتجاورة، بما فيها تلك التي عبر الحواف، في متغير واحد بالضبط. جمّع الآحاد في مستطيلات من 1 أو 2 أو 4 أو 8 أو 16 خلية، بأكبر حجم وأقل عدد ممكنين، حتى يُغطى كل 1. كل مجموعة حد جداء واحد: المتغيرات التي تبقى ثابتة داخلها. المجموعة من 2ᵏ خلية تفقد k متغيرًا. يجوز استخدام حالات عدم الاكتراث (X) لتكبير المجموعات لكن لا يجب تغطيتها أبدًا. أما تجميع الأصفار فيعطي الصيغة الدنيا POS.

المضمّنات الأولية

أكبر المجموعات التي يمكن تكوينها من الآحاد و X.

C′D, BD, B′C′, AD, AC′, AB′
ABCD00011110000111101011030204X5X706112X131150141819111110

التغطية الدنيا

F = BD + B′C′ + AC′ + AB′
N = 4

الإجابة

N = 4

يوجد تجميع آخر بالحجم نفسه؛ وله عدد الحدود والحروف نفسه.

7.نظرية الأعداد والحساب المودولي

الإجابة: x = 5

المعكوسات والتطابقات: للعدد a معكوس بالنسبة إلى n بالضبط عندما gcd(a, n) = 1. تكتب خوارزمية إقليدس الموسّعة 1 = s·n + t·a، ثم a⁻¹ ≡ t (mod n). التطابق a·x ≡ b (mod n) مع gcd(a, n) = 1 حلّه x ≡ a⁻¹·b. لتطابقين x ≡ r₁ (mod m₁) و x ≡ r₂ (mod m₂) بمقياسين أوليين فيما بينهما حل واحد بالنسبة إلى m₁·m₂ (مبرهنة الباقي الصينية). تعدّ φ(n) لأويلر الأعداد من 1 إلى n التي أولية مع n: φ(n) = n·∏(1 − 1/p).

معكوس 7

r = 17, t = 0
r = 7, q = 2, t = 1
r = 3, q = 2, t = −2
r = 1, q = 3, t = 5
7−1 ≡ 5 (mod 17)

الحل

x ≡ 5·1 = 5 ≡ 5 (mod 17)
تحقّق: 7·5 = 35 ≡ 1 (mod 17)

الإجابة

x = 5
8.نظرية الأعداد والحساب المودولي

الإجابة: x = 8

المعكوسات والتطابقات: للعدد a معكوس بالنسبة إلى n بالضبط عندما gcd(a, n) = 1. تكتب خوارزمية إقليدس الموسّعة 1 = s·n + t·a، ثم a⁻¹ ≡ t (mod n). التطابق a·x ≡ b (mod n) مع gcd(a, n) = 1 حلّه x ≡ a⁻¹·b. لتطابقين x ≡ r₁ (mod m₁) و x ≡ r₂ (mod m₂) بمقياسين أوليين فيما بينهما حل واحد بالنسبة إلى m₁·m₂ (مبرهنة الباقي الصينية). تعدّ φ(n) لأويلر الأعداد من 1 إلى n التي أولية مع n: φ(n) = n·∏(1 − 1/p).

اقسم على القاسم المشترك الأكبر

gcd(20, 22) = 2
10x ≡ 3 (mod 11)

حلّ التطابق المختزل

10−1 ≡ 10 (mod 11) → x ≡ 8 (mod 11)

الحلول بالنسبة إلى 22

x ∈ {8, 19}
x = 8

الإجابة

x = 8
9.الخوارزميات والتعقيد

الإجابة: D · O(mn)

لماذا هذه هي الإجابة

للجدول (m + 1)(n + 1) خلية، وتُحسب كل منها في O(1) من جاراتها.

الإجابة

D · O(mn)
10.الخوارزميات والتعقيد

الإجابة: B · 2-SAT، حيث يحتوي كل بند على حرفيّين (literals) على الأكثر

لماذا هذه هي الإجابة

2-SAT تنتمي إلى P (زمن خطي عبر المكونات قوية الاتصال)، بينما 3-SAT هي NP-تامة.

الإجابة

B · 2-SAT، حيث يحتوي كل بند على حرفيّين (literals) على الأكثر
11.هياكل البيانات

الإجابة: C · القائمة المترابطة الثنائية

لماذا هذه هي الإجابة

تعرف العقدة في القائمة الثنائية سابقتها، فيمكنك إعادة ربط prev وnext مباشرة، أما القائمة الأحادية فيجب البحث فيها عن السابقة.

الإجابة

C · القائمة المترابطة الثنائية
12.هياكل البيانات

الإجابة: C · دوران واحد إلى اليمين عند العقدة غير المتوازنة

لماذا هذه هي الإجابة

في حالة يسار-يسار يرفع دوران واحد إلى اليمين الابن الأيسر ويعيد التوازن، أما الحالات المتعرجة فتحتاج إلى دوران مزدوج.

الإجابة

C · دوران واحد إلى اليمين عند العقدة غير المتوازنة
13.نظرية البيانات

الإجابة: H = 3

أويلر وهاملتون والأشجار: لبيان متصل دارة أويلر (كل حافة مرة واحدة، والعودة إلى البداية) عندما تكون لكل رأس درجة زوجية، ومسار أويلر ليس دارة عندما تكون لرأسين بالضبط درجة فردية؛ ويسير المسار عندئذ من أحد الرأسين الفرديين إلى الآخر. تزور دارة هاملتون كل رأس مرة واحدة؛ وفي Kn منها (n − 1)!/2. للشجرة على n رأسًا n − 1 حافة، ويحتفظ بيان متصل ذو m حافة بشجرة ممتدة بعد حذف m − n + 1 حافة.

عُدّ

H = (4 − 1)!/2 = 6/2 = 3

الإجابة

H = 3
14.نظرية البيانات

الإجابة: d(F) = 30

أقصر المسارات والأشجار الممتدة: تثبّت خوارزمية ديكسترا رأسًا واحدًا في كل جولة: الرأس غير المثبّت ذا أصغر مسافة مؤقتة. تصبح مسافته نهائية، ويأخذ كل جار v القيمة d(v) = min(d(v), d(u) + w(u, v)). تبني خوارزمية كروسكال شجرة ممتدة دنيا بأخذ الحواف من الأخف إلى الأثقل وتخطّي كل حافة تُغلق دورة؛ وتنمّي خوارزمية برايم شجرة واحدة من رأس البداية بإضافة أخف حافة تغادرها دائمًا. وللشجرة الممتدة على n رأسًا n − 1 حافة.

ديكسترا جولةً جولةً

كل سطر: الرأس المثبَّت، ومسافته النهائية، والجيران الذين تتحسن مسافتهم.

A (0): B: 12, C: 14
B (12): D: 17, G: 25
C (14): E: 27
D (17): F: 30
G (25)
E (27)
F (30)

أقصر مسار

A → B → D → F
d(F) = 30

الإجابة

d(F) = 30
15.قواعد البيانات و SQL

الإجابة: D · 'unknown'

لماذا هذه هي الإجابة

تفحص COALESCE وسائطها من اليسار إلى اليمين وتُرجع أول وسيط ليس NULL، وهو هنا 'unknown'.

الإجابة

D · 'unknown'
16.قواعد البيانات و SQL

الإجابة: B · إنه في 2NF لكنه ليس في 3NF

لماذا هذه هي الإجابة

للمفتاح عمود واحد، فتتحقق 2NF، لكن emp_id → dept_id → dept_name اعتمادية متعدية تخالف 3NF.

الإجابة

B · إنه في 2NF لكنه ليس في 3NF
17.شبكات الحاسوب

الإجابة: C · لأن انخفاض التأخير أهم من إعادة إرسال كل حزمة مفقودة

لماذا هذه هي الإجابة

إعادة إرسال الحزم المفقودة ستزيد التأخير؛ والوسائط في الوقت الحقيقي تتحمل بعض الفقد، لذا تُستخدم بروتوكولات مبنية على UDP مثل RTP.

الإجابة

C · لأن انخفاض التأخير أهم من إعادة إرسال كل حزمة مفقودة
18.شبكات الحاسوب

الإجابة: C · يفشل اكتشاف MTU للمسار لأن رسائل "fragmentation needed" محجوبة

لماذا هذه هي الإجابة

يعتمد PMTUD على رسائل ICMP لمعرفة قيمة MTU الأصغر. فإذا أُسقطت تختفي الحزم الكبيرة بصمت، فينشأ اتصال "ثقب أسود".

الإجابة

C · يفشل اكتشاف MTU للمسار لأن رسائل "fragmentation needed" محجوبة
19.تقسيم شبكات IPv4

الإجابة: H = 14

تقسيم شبكات IPv4: يتكون العنوان من 32 بتة. تحدد البادئة /p عدد البتات الأولى التي تعرّف الشبكة؛ وتُرقّم البتات المتبقية 32 − p المضيفين. تحتوي الشبكة الفرعية على 2³²⁻ᵖ عنوانًا، لكن الأول (عنوان الشبكة) والأخير (عنوان البث) لا يُعطيان للمضيفين، فيتسع 2³²⁻ᵖ − 2 مضيفًا. الاستثناءات: الشبكة /31 (وصلة من نقطة إلى نقطة، RFC 3021) تستخدم كلا عنوانَيها الـ 2 للمضيفين، والشبكة /32 عنوان واحد فقط (مضيف واحد أو عنوان loopback).

البتات المستعارة

24 = 16 ≥ 10 → b = 4, /28

المضيفون في كل شبكة فرعية

24 − 2 = 14

الإجابة

H = 14
20.تقسيم شبكات IPv4

الإجابة: x = 128

VLSM: تحصل كل شبكة محلية على أصغر شبكة فرعية تحقّق 2ʰ − 2 ≥ عدد مضيفيها، أي البادئة 32 − h. تخصيص الشبكات الفرعية الأكبر أولًا يُبقي كل كتلة محاذية لمضاعف حجمها، لذا تُستنتج عناوين الشبكات بجمع أحجام الكتل.

حجم الكتلة لكل شبكة محلية

C: 53 مضيفون → 26 = 64 (/26)
B: 31 مضيفون → 26 = 64 (/26)
D: 21 مضيفون → 25 = 32 (/27)
A: 11 مضيفون → 24 = 16 (/28)

التخصيص، الأكبر أولًا

C: .0 – .63
B: .64 – .127
D: .128 – .159
A: .160 – .175

الإجابة

x = 128

LAN D: 192.168.30.128/27.

ExamProblems · examproblems.com/courses/computer-science-fundamentals