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

أوراق القوانين، وأهم خطوات الحل لكل موضوع، و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 بتات0−12806403201608040201

اضبط البتات بحيث تخزن −30 في المتمم الثنائي بـ 8 بتات. إذا قُرئ كعدد بدون إشارة، فما قيمة النمط U؟

N = −308 bit
U =
2.أنظمة العدصعبة
انقر على البتات لضبطها012806403201608040201

اضبط البتات على الناتج بـ 8 بتات لـ 1100 1000 OR 1000 0011. ما قيمة الناتج R بالعشري؟

1100 1000OR1000 0011
R =
3.المنطق القضوي والبراهينمتوسطة
pqrp ∧ (r ∨ q)¬(p ∧ (r ∨ q))((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q))111?110?101?100?011?010?001?000?

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

((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q))
N =
4.المنطق القضوي والبراهينصعبة
∃x (P(x) ∧ ¬Q(x))∀x (P(x) → ¬Q(x))∀x (P(x) ∧ ¬Q(x))∃x (¬P(x) ∧ Q(x))

أي عبارة تكافئ ¬∀x (P(x) → Q(x)) مع نقل النفي إلى الداخل تمامًا؟ انقر عليها.

¬∀x (P(x) → Q(x))
  1. 1∃x (P(x) ∧ ¬Q(x))
  2. 2∀x (P(x) → ¬Q(x))
  3. 3∀x (P(x) ∧ ¬Q(x))
  4. 4∃x (¬P(x) ∧ Q(x))
5.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتمتوسطة
ABCD000111100001111000011312041517160121130150141819011010

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

F(A, B, C, D) = Σm(2, 3, 5, 6, 7, 8, 9, 13)
N =
6.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتصعبة
CLKJK12345678

قلّاب JK يُحفَّز بالحافة الموجبة يبدأ بـ Q = 0 ويتلقى المداخل المعروضة عند 8 حافة ساعة صاعدة. كم مرة N يغيّر Q حالته؟

Q₀ = 0JK
N =
7.نظرية الأعداد والحساب المودوليمتوسطة

جد دالة أويلر φ φ(27)، أي عدد الأعداد الصحيحة من 1 إلى 27 التي أولية مع 27.

n = 27 = 33
φ(27) =
8.نظرية الأعداد والحساب المودوليصعبة

استخدم التربيع المتكرر لإيجاد 47142 mod 70.

a = 47k = 142n = 70
47142 mod 70 =
9.الخوارزميات والتعقيدمتوسطة

يستخدم فرز سريع العنصر الأول محورًا دائمًا. على أي مدخل يُظهر سلوك أسوأ الحالات؟

  1. Aمصفوفة عناصرها كلها مختلفة
  2. Bمصفوفة مرتبة مسبقًا
  3. Cمصفوفة طولها 2
  4. Dمصفوفة بترتيب عشوائي
10.الخوارزميات والتعقيدصعبة

ما حل علاقة التكرار T(n) = 2T(n/2) + n log n؟

  1. AΘ(n log n)
  2. BΘ(n log² n)
  3. CΘ(n)
  4. DΘ(n²)
11.هياكل البياناتمتوسطة

أي طريقة لحل التصادمات تخزّن المفاتيح المتصادمة في قائمة داخل الدلو نفسه؟

  1. Aالسبر الخطي
  2. Bالسبر التربيعي
  3. Cالتجزئة المزدوجة
  4. Dالتسلسل المنفصل (separate chaining)
12.هياكل البياناتصعبة

التعقيد الزمني لعملية decrease-key في الكومة الثنائية (مع معرفة موضع العنصر) هو:

  1. AO(n)
  2. BO(n log n)
  3. CO(1)
  4. DO(log n)
13.نظرية البياناتمتوسطة

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

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

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

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

متى تكون WHERE EXISTS (subquery) صحيحة لصف ما؟

  1. Aعندما يُرجع الاستعلام الفرعي صفًا واحدًا بالضبط
  2. Bعندما يُرجع الاستعلام الفرعي عددًا أكبر من الصفر
  3. Cعندما يُرجع الاستعلام الفرعي صفًا واحدًا على الأقل
  4. Dعندما لا يُرجع الاستعلام الفرعي أي قيم NULL
16.قواعد البيانات و SQLصعبة

لماذا يُعد SELECT dept, name, COUNT(*) FROM emp GROUP BY dept غير صالح في SQL المعياري؟

  1. Aلأن name ليس مجمَّعًا ولا داخل دالة تجميعية، فليست له قيمة واحدة لكل مجموعة
  2. Bلأن dept يجب أن يظهر داخل دالة تجميعية
  3. Cلأن COUNT(*) لا يمكن استخدامها مع GROUP BY
  4. Dلأن GROUP BY يجب أن تسرد جميع أعمدة الجدول
17.شبكات الحاسوبمتوسطة

لماذا يرسل المبدّل أحيانًا إطارًا عبر جميع المنافذ باستثناء المنفذ الذي جاء منه؟

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

كيف تختلف التجزئة (fragmentation) في IPv6 عنها في IPv4؟

  1. Aلا يسمح IPv6 بحزم أكبر من 576 بايت
  2. Bتجزّئ موجّهات IPv6 كل حزمة أكبر من 64 بايت قبل تمريرها على المسار
  3. Cلا تجزّئ الموجّهات حزم IPv6 أبدًا؛ ولا يجزّئها إلا المصدر باستخدام اكتشاف MTU للمسار
  4. Dيجزّئ IPv6 في طبقة النقل داخل TCP
19.تقسيم شبكات IPv4متوسطة
255.255.255.12811111111111111111111111110000000بتات الشبكةبتات المضيف

تستخدم شبكة فرعية القناع 255.255.255.128. كم عنوان مضيف قابلًا للاستخدام H فيها؟

255.255.255.128
H =
20.تقسيم شبكات IPv4صعبة
الثُمانية الأخيرة = 93012816403211618140211الشبكةالمضيف

عنوان مضيف هو 10.20.247.93/29. ما الثُمانية الرابعة x من عنوان شبكته؟

10.20.247.93/29
x =

3المحاليل

1.أنظمة العد

الإجابة: U = 226

ضبط البتات: قيمة كل بت قوة للعدد اثنين (128 و64 … و1). الرقم السداسي عشري الواحد يساوي أربع بتات تمامًا، وفي المتمم الثنائي بـ 8 بتات تساوي قيمة البت الأيسر −128. وتعمل العمليات على مستوى البت على كل موضع بت على حدة.

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

30 = 0001 1110
مقلوب: 1110 0001
+1 → 1110 0010

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

1110 0010₂ = 256 − 30 = 226

الإجابة

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

الإجابة: R = 203

ضبط البتات: قيمة كل بت قوة للعدد اثنين (128 و64 … و1). الرقم السداسي عشري الواحد يساوي أربع بتات تمامًا، وفي المتمم الثنائي بـ 8 بتات تساوي قيمة البت الأيسر −128. وتعمل العمليات على مستوى البت على كل موضع بت على حدة.

بتًا ببت

تعطي OR القيمة 1 حيث يكون أحد البتين على الأقل 1.

1100 1000
OR 1000 0011
= 1100 1011

قيمة الناتج

1100 1011₂ = 203

الإجابة

R = 203
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: ¬q = 0, ¬q ∨ r = 1, (¬q ∨ r) ∧ p = 1, r ∨ q = 1, p ∧ (r ∨ q) = 1, ¬(p ∧ (r ∨ q)) = 0, ((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q)) = 1
p = 1, q = 1, r = 0: ¬q = 0, ¬q ∨ r = 0, (¬q ∨ r) ∧ p = 0, r ∨ q = 1, p ∧ (r ∨ q) = 1, ¬(p ∧ (r ∨ q)) = 0, ((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q)) = 0
p = 1, q = 0, r = 1: ¬q = 1, ¬q ∨ r = 1, (¬q ∨ r) ∧ p = 1, r ∨ q = 1, p ∧ (r ∨ q) = 1, ¬(p ∧ (r ∨ q)) = 0, ((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q)) = 1
p = 1, q = 0, r = 0: ¬q = 1, ¬q ∨ r = 1, (¬q ∨ r) ∧ p = 1, r ∨ q = 0, p ∧ (r ∨ q) = 0, ¬(p ∧ (r ∨ q)) = 1, ((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q)) = 1
p = 0, q = 1, r = 1: ¬q = 0, ¬q ∨ r = 1, (¬q ∨ r) ∧ p = 0, r ∨ q = 1, p ∧ (r ∨ q) = 0, ¬(p ∧ (r ∨ q)) = 1, ((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q)) = 1
p = 0, q = 1, r = 0: ¬q = 0, ¬q ∨ r = 0, (¬q ∨ r) ∧ p = 0, r ∨ q = 1, p ∧ (r ∨ q) = 0, ¬(p ∧ (r ∨ q)) = 1, ((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q)) = 1
p = 0, q = 0, r = 1: ¬q = 1, ¬q ∨ r = 1, (¬q ∨ r) ∧ p = 0, r ∨ q = 1, p ∧ (r ∨ q) = 0, ¬(p ∧ (r ∨ q)) = 1, ((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q)) = 1
p = 0, q = 0, r = 0: ¬q = 1, ¬q ∨ r = 1, (¬q ∨ r) ∧ p = 0, r ∨ q = 0, p ∧ (r ∨ q) = 0, ¬(p ∧ (r ∨ q)) = 1, ((¬q ∨ r) ∧ p) ∨ ¬(p ∧ (r ∨ q)) = 1

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

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

الإجابة

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

الإجابة: ∃x (P(x) ∧ ¬Q(x))

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

انقل النفي إلى الداخل

¬∀x (P(x) → Q(x)) ≡ ∃x (P(x) ∧ ¬Q(x))

الإجابة

∃x (P(x) ∧ ¬Q(x))

الخيارات الأخرى إما تُبقي كمّمًا دون تغيير، أو تغيّر ترتيب الكمّمات، أو تنفي الصيغة الداخلية نفيًا خاطئًا.

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

الإجابة: N = 3

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

ABCD000111100001111000011312041517160121130150141819011010

جمّع الآحاد

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

BC′D
A′C
AB′C′

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

F = BC′D + A′C + AB′C′
N = 3

الإجابة

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

الإجابة: N = 3

القلّابات والعدّادات: لا يتغير القلّاب إلا عند الحافة الفعالة للساعة. يَنسخ D مدخله (Q⁺ = D)؛ و T يتبدّل عندما T = 1؛ و JK يحتفظ عند 00، ويصفّر عند 01، ويضبط عند 10، ويتبدّل عند 11. للعدّاد الثنائي ذي n بتّات 2ⁿ حالة ويعدّ بالنمط 2ⁿ؛ وعدّاد mod-N يعدّ 0 و 1 … حتى N − 1 ثم يعود إلى 0، ويحتاج إلى أصغر n يحقق 2ⁿ ≥ N قلّابات. تُنصّف كل مرحلة في العدّاد المتموّج التردد، فيعمل الخرج الأخير لعدّاد mod-N بالتردد fclk/N. لعدّاد جونسون من n قلّابات 2n حالة، وللعدّاد الحلقي n.

Q بعد كل حافة

قلّاب JK: 00 يحتفظ، 01 يصفّر (Q = 0)، 10 يضبط (Q = 1)، 11 يتبدّل.

1: J = 0, K = 0 → Q = 0
2: J = 0, K = 1 → Q = 0
3: J = 0, K = 0 → Q = 0
4: J = 0, K = 0 → Q = 0
5: J = 1, K = 0 → Q = 1
6: J = 0, K = 1 → Q = 0
7: J = 0, K = 1 → Q = 0
8: J = 1, K = 0 → Q = 1

عُدّ التغيرات

0 → 0 → 0 → 0 → 0 → 1 → 0 → 0 → 1
N = 3

الإجابة

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

الإجابة: φ(27) = 18

المعكوسات والتطابقات: للعدد 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).

العوامل الأولية

27 = 33

دالة أويلر φ

φ(27) = 27 − 9 = 18

الإجابة

φ(27) = 18
8.نظرية الأعداد والحساب المودولي

الإجابة: 47142 mod 70 = 9

القوى المودولية وRSA: احسب aᵏ mod n بالتربيع المتكرر: اكتب k بالنظام الثنائي، وربّع، واختزل بعد كل خطوة، واضرب القوى التي بتّها 1. فيرما: aᵖ⁻¹ ≡ 1 (mod p) لعدد أولي p لا يقسم a، فيمكن اختزال الأس بالنسبة إلى p − 1. RSA: اختر عددين أوليين p و q، و n = p·q و φ(n) = (p − 1)(q − 1)؛ الأس العام e أولي مع φ(n)، والأس الخاص d = e⁻¹ mod φ(n). شفّر بـ c = mᵉ mod n وفكّ التشفير بـ m = cᵈ mod n.

الأس الثنائي

142 = 100011102 = 128 + 8 + 4 + 2

التربيع المتكرر

471 ≡ 47 (mod 70)
472 ≡ 39 (mod 70)
474 ≡ 51 (mod 70)
478 ≡ 11 (mod 70)
4716 ≡ 51 (mod 70)
4732 ≡ 11 (mod 70)
4764 ≡ 51 (mod 70)
47128 ≡ 11 (mod 70)

اضرب القوى المطلوبة

47142 ≡ 39·51·11·11 ≡ 9 (mod 70)

الإجابة

47142 mod 70 = 9
9.الخوارزميات والتعقيد

الإجابة: B · مصفوفة مرتبة مسبقًا

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

في المدخلات المرتبة يكون المحور دائمًا الأصغر، فيكون أحد الجانبين فارغًا والآخر فيه n − 1 عنصر، فيكون التعقيد O(n²).

الإجابة

B · مصفوفة مرتبة مسبقًا
10.الخوارزميات والتعقيد

الإجابة: B · Θ(n log² n)

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

يُجري المستوى k نحو n log(n / 2ᵏ) عملًا، والجمع على log n مستوى يعطي Θ(n log² n)، وهي الحالة الثانية الموسعة من النظرية الرئيسية.

الإجابة

B · Θ(n log² n)
11.هياكل البيانات

الإجابة: D · التسلسل المنفصل (separate chaining)

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

يحتفظ التسلسل بقائمة مترابطة (أو بنية أخرى) لكل دلو، بينما تبحث العنونة المفتوحة عن خانة فارغة أخرى داخل الجدول نفسه.

الإجابة

D · التسلسل المنفصل (separate chaining)
12.هياكل البيانات

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

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

بعد إنقاص المفتاح يصعد العنصر بما لا يتجاوز ارتفاع الكومة. تحقق كومات فيبوناتشي decrease-key في O(1) مستهلك.

الإجابة

D · O(log n)
13.نظرية البيانات

الإجابة: H = 360

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

عُدّ

H = (7 − 1)!/2 = 720/2 = 360

الإجابة

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

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

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

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

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

A (0): B: 1
B (1): C: 10, D: 14, G: 16
C (10): E: 15, G: 14
D (14): F: 20
G (14)
E (15): F: 16
F (16)

أقصر مسار

A → B → C → E → F
d(F) = 16

الإجابة

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

الإجابة: C · عندما يُرجع الاستعلام الفرعي صفًا واحدًا على الأقل

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

لا تتحقق EXISTS إلا مما إذا أُنتج أي صف؛ وتكون NOT EXISTS صحيحة عندما لا يُرجع الاستعلام الفرعي أي صفوف.

الإجابة

C · عندما يُرجع الاستعلام الفرعي صفًا واحدًا على الأقل
16.قواعد البيانات و SQL

الإجابة: A · لأن name ليس مجمَّعًا ولا داخل دالة تجميعية، فليست له قيمة واحدة لكل مجموعة

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

يجب أن يكون كل عمود في قائمة SELECT في GROUP BY أو داخل دالة تجميعية (أو معتمدًا داليًا على أعمدة التجميع)؛ وإلا كانت القيمة ملتبسة.

الإجابة

A · لأن name ليس مجمَّعًا ولا داخل دالة تجميعية، فليست له قيمة واحدة لكل مجموعة
17.شبكات الحاسوب

الإجابة: D · لأن عنوان MAC للوجهة ليس في جدول عناوينه بعد

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

في حالة عنوان أحادي البث غير معروف يُغرق المبدّل جميع المنافذ بالإطار. وعندما ترد الوجهة يتعلم المبدّل منفذها من عنوان MAC للمصدر.

الإجابة

D · لأن عنوان MAC للوجهة ليس في جدول عناوينه بعد
18.شبكات الحاسوب

الإجابة: C · لا تجزّئ الموجّهات حزم IPv6 أبدًا؛ ولا يجزّئها إلا المصدر باستخدام اكتشاف MTU للمسار

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

يُسقط موجّه IPv6 الحزمة الكبيرة جدًا ويعيد رسالة ICMPv6 Packet Too Big، فيرسل المصدر حزمًا أصغر أو يستخدم ترويسة امتداد التجزئة.

الإجابة

C · لا تجزّئ الموجّهات حزم IPv6 أبدًا؛ ولا يجزّئها إلا المصدر باستخدام اكتشاف MTU للمسار
19.تقسيم شبكات IPv4

الإجابة: H = 126

IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).

طول البادئة

255.255.255.128 = /25

المضيفون القابلون للاستخدام

27 − 2 = 126

الإجابة

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

الإجابة: x = 88

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

حجم الكتلة

23 = 8

الشبكة الفرعية لهذا المضيف

الشبكة: ⌊93/8⌋·8 = 88
البث: 88 + 8 − 1 = 95
المضيفون القابلون للاستخدام: 89 … 94

الإجابة

x = 88

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