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

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

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

N = −888 bit
U =
2.أنظمة العدصعبة
8 bit1 px1280 px720 pxM = ? KiB

صورة غير مضغوطة أبعادها 1280 × 720 بكسل و8 بت لكل بكسل. كم تشغل من الذاكرة M بوحدة KiB (1 KiB = 1024 بايت)؟

1280 × 720 px8 bit/px1 KiB = 1024 B
M = KiB
3.المنطق القضوي والبراهينمتوسطة
(q → p) ∧ (r → p)(q ∧ r) → pq ∨ (r → p)(q → p) ∨ (r → p)

أي صيغة تكافئ (q ∨ r) → p منطقيًا؟ انقر عليها.

(q ∨ r) → p
  1. 1(q → p) ∧ (r → p)
  2. 2(q ∧ r) → p
  3. 3q ∨ (r → p)
  4. 4(q → p) ∨ (r → p)
4.المنطق القضوي والبراهينصعبة
∃x (¬A(x) ∧ ∃y R(x, y))∃x (A(x) ∧ ∀y ¬R(x, y))∃x (A(x) → ∀y ¬R(x, y))∀x (A(x) ∧ ∀y ¬R(x, y))

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

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

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

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

قلّاب D يُحفَّز بالحافة الموجبة يبدأ بـ Q = 0 ويتلقى المداخل المعروضة. انقر على أول حافة ساعة ينتقل عندها Q من 1 عائدًا إلى 0.

Q₀ = 0D
  1. 1حافة الساعة 1
  2. 2حافة الساعة 2
  3. 3حافة الساعة 3
  4. 4حافة الساعة 4
  5. 5حافة الساعة 5
  6. 6حافة الساعة 6
  7. 7حافة الساعة 7
7.نظرية الأعداد والحساب المودوليمتوسطة

جد أصغر عدد صحيح موجب x مع x ≡ 6 (mod 9) و x ≡ 12 (mod 13).

x ≡ 6 (mod 9)x ≡ 12 (mod 13)
x =
8.نظرية الأعداد والحساب المودوليصعبة
24c = me​ mod n?m = cd​ mod nm(n, e) = (55, 7)d

شفّر الرسالة m = 24 بالمفتاح العام لـ RSA (n, e) = (55, 7). جد النص المشفّر c.

n = 55e = 7m = 24
c =
9.الخوارزميات والتعقيدمتوسطة

تُنفِّذ دالة حلقة من n تكرارًا، ثم بشكل منفصل حلقة أخرى من n تكرارًا. ما تعقيدها الزمني؟

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

كيف تكشف خوارزمية Bellman–Ford دورة سالبة الوزن قابلة للبلوغ من المصدر؟

  1. Aتعدّ الدورات بالبحث بالعمق أولًا
  2. Bتتحقق مما إذا كانت لأي حافة وزن سالب
  3. Cبعد V − 1 جولة تتحقق مما إذا كان يمكن بعدُ إرخاء أي حافة
  4. Dتُنفّذ خوارزمية Dijkstra مرتين وتقارن نتيجتَي المسافات
11.هياكل البياناتمتوسطة

لعقدة في شجرة بحث ثنائية شجرة فرعية يمنى. أين يقع تاليها في الترتيب الوسطي (in-order successor)؟

  1. Aالعقدة الأقصى يمينًا في شجرتها الفرعية اليسرى
  2. Bالعقدة الأقصى يسارًا في شجرتها الفرعية اليمنى
  3. Cابنها الأيمن، دائمًا
  4. Dأبوها، دائمًا
12.هياكل البياناتصعبة

ما التكلفة المستهلكة (amortised) لكل عملية في بنية union-find (المجموعات المنفصلة) مع الدمج حسب الرتبة وضغط المسار؟

  1. AO(n)
  2. BO(n²)
  3. CO(α(n))، أي دالة أكرمان العكسية، وهي ثابتة عمليًا
  4. DO(log n) بالضبط
13.نظرية البياناتمتوسطة
ABCDEدارة أويلرمسار أويلر دون دارةلا هذه ولا تلك

هل للبيان المتصل دارة أويلر، أم مسار أويلر ليس دارة، أم لا هذه ولا تلك؟ انقر على إجابتك.

|V| = 5|E| = 5
  1. 1دارة أويلر
  2. 2مسار أويلر دون دارة
  3. 3لا هذه ولا تلك
14.نظرية البياناتصعبة
810883372ABCDEF

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

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

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

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

ماذا يُرجع SELECT name, dept, AVG(salary) OVER (PARTITION BY dept) FROM emp؟

  1. Aكل صف موظف مع متوسط راتب قسمه
  2. Bخطأ لأن name ليس في GROUP BY
  3. Cالموظفين الذين يكسبون أكثر من متوسط قسمهم فقط
  4. Dصفًا واحدًا لكل قسم مع متوسط راتبه
17.شبكات الحاسوبمتوسطة

ما الغرض من المصافحة الثلاثية (three-way handshake) في TCP؟

  1. Aتشفير البيانات
  2. Bإنشاء الاتصال ومزامنة أرقام التسلسل
  3. Cالعثور على عنوان IP لمضيف قبل إمكانية إرسال البيانات إليه
  4. Dإغلاق الاتصال بسرعة
18.شبكات الحاسوبصعبة

في نموذج TCP/IP، أي طبقة تضيف أرقام المنافذ؟

  1. Aطبقة الوصلة
  2. Bطبقة النقل
  3. Cطبقة الإنترنت
  4. Dطبقة التطبيقات
19.تقسيم شبكات IPv4متوسطة
/24 → /2511111111111111111111111110000000بتات الشبكةبتات المضيف

تُقسَّم الشبكة 192.168.195.0/24 إلى شبكات فرعية /25، مرقّمة 1، 2، 3، … بدءًا من أدنى عنوان (الشبكة الفرعية 1 تبدأ عند .0). ما الثُمانية الرابعة x من عنوان الشبكة للشبكة الفرعية 2؟

192.168.195.0/24/25الشبكة الفرعية 2 (الشبكة الفرعية 1 تبدأ عند .0)
x =
20.تقسيم شبكات IPv4صعبة
الثُمانية الأخيرة = 115012816413211608041211الشبكةالمضيف

عنوان مضيف هو 10.20.151.115/28. ما الثُمانية الرابعة x من آخر عنوان مضيف قابل للاستخدام في شبكته الفرعية؟

10.20.151.115/28
x =

3المحاليل

1.أنظمة العد

الإجابة: U = 168

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

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

88 = 0101 1000
مقلوب: 1010 0111
+1 → 1010 1000

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

1010 1000₂ = 256 − 88 = 168

الإجابة

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

الإجابة: M = 900 KiB

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

البتات والبايتات

1280·720·8 = 7372800 bit = 921600 B

حوّل إلى KiB

921600/1024 = 900 KiB

الإجابة

M = 900 KiB
3.المنطق القضوي والبراهين

الإجابة: (q → p) ∧ (r → p)

التكافؤ المنطقي: تتكافأ صيغتان (≡) عندما يكون لهما القيمة نفسها في كل صف من جدول الصدق. الحشو يساوي 1 في كل صف، والتناقض يساوي 0 في كل صف، والممكن ليس هذا ولا ذاك. قوانين مفيدة: دي مورغان، ¬(a ∧ b) ≡ ¬a ∨ ¬b و ¬(a ∨ b) ≡ ¬a ∧ ¬b؛ و a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (العكس النقيض)؛ و ¬(a → b) ≡ a ∧ ¬b؛ وقوانين التوزيع، a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).

القانون

(a ∨ b) → c يحتاج إلى c كلما تحقق a أو b: (a → c) ∧ (b → c).
(q ∨ r) → p ≡ (q → p) ∧ (r → p)

تحقق بجدول الصدق

p = 1, q = 1, r = 1: 1 | 1 1 1 1
p = 1, q = 1, r = 0: 1 | 1 1 1 1
p = 1, q = 0, r = 1: 1 | 1 1 1 1
p = 1, q = 0, r = 0: 1 | 1 1 1 1
p = 0, q = 1, r = 1: 0 | 0 0 1 0
p = 0, q = 1, r = 0: 0 | 0 1 1 1
p = 0, q = 0, r = 1: 0 | 0 1 0 1
p = 0, q = 0, r = 0: 1 | 1 1 1 1

الإجابة

(q → p) ∧ (r → p)

الأعمدة بعد الشريط هي الخيارات بالترتيب المعروض.

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

الإجابة: ∃x (A(x) ∧ ∀y ¬R(x, y))

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

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

¬∀x (A(x) → ∃y R(x, y)) ≡ ∃x (A(x) ∧ ∀y ¬R(x, y))

الإجابة

∃x (A(x) ∧ ∀y ¬R(x, y))

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

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

الإجابة: N = 3

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

ABCD000111100001111000011312141507060120130150140809111010

جمّع الآحاد

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

B′CD
A′B′C
A′BC′

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

F = B′CD + A′B′C + A′BC′
N = 3

الإجابة

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

الإجابة: حافة الساعة 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 بعد كل حافة

يَنسخ قلّاب D القيمة D عند كل حافة صاعدة: Q⁺ = D.

1: D = 1 → Q = 1
2: D = 1 → Q = 1
3: D = 0 → Q = 0
4: D = 0 → Q = 0
5: D = 0 → Q = 0
6: D = 1 → Q = 1
7: D = 0 → Q = 0

أول تغير من 1 إلى 0

حافة الساعة 3

الإجابة

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

الإجابة: x = 51

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

التطابق الأول

x = 6 + 9k

التطابق الثاني

6 + 9k ≡ 12 (mod 13) → 9k ≡ 6 (mod 13)
k ≡ 3·6 ≡ 5 (mod 13)

النتيجة

x = 6 + 9·5 = 51
x = 51
تحقّق: 51 mod 9 = 6, 51 mod 13 = 12

الإجابة

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

الإجابة: c = 29

القوى المودولية و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.

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

7 = 4 + 2 + 1
241 ≡ 24 (mod 55)
242 ≡ 26 (mod 55)
244 ≡ 16 (mod 55)
247 ≡ 24·26·16 ≡ 29 (mod 55)

النص المشفّر

c = 29

الإجابة

c = 29
9.الخوارزميات والتعقيد

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

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

n + n = 2n، وتُسقط المعاملات الثابتة، فتكون الدالة O(n).

الإجابة

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

الإجابة: C · بعد V − 1 جولة تتحقق مما إذا كان يمكن بعدُ إرخاء أي حافة

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

تُوجد كل المسافات الأقصر الحقيقية خلال V − 1 جولة، فإذا أمكن بعدُ تحسين حافة فلا بد من وجود دورة سالبة.

الإجابة

C · بعد V − 1 جولة تتحقق مما إذا كان يمكن بعدُ إرخاء أي حافة
11.هياكل البيانات

الإجابة: B · العقدة الأقصى يسارًا في شجرتها الفرعية اليمنى

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

كل المفاتيح الأكبر القريبة من العقدة في شجرتها الفرعية اليمنى، وأصغرها هو العقدة الأقصى يسارًا هناك.

الإجابة

B · العقدة الأقصى يسارًا في شجرتها الفرعية اليمنى
12.هياكل البيانات

الإجابة: C · O(α(n))، أي دالة أكرمان العكسية، وهي ثابتة عمليًا

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

مع كلا التحسينين تستغرق العمليات زمنًا مستهلكًا قدره O(α(n))، وα(n) ≤ 4 لأي قيمة واقعية لـ n.

الإجابة

C · O(α(n))، أي دالة أكرمان العكسية، وهي ثابتة عمليًا
13.نظرية البيانات

الإجابة: مسار أويلر دون دارة

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

الدرجات

deg(A) = 2, deg(B) = 3, deg(C) = 2, deg(D) = 1, deg(E) = 2

الرؤوس الفردية

B, D → 2
مسار أويلر دون دارة

الإجابة

مسار أويلر دون دارة

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

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

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

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

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

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

A (0): B: 8
B (8): C: 18, D: 16, E: 10
E (10): D: 13, F: 17
D (13): F: 16
F (16)
C (18)

أقصر مسار

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

الإجابة

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

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

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

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

الإجابة

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

الإجابة: A · كل صف موظف مع متوسط راتب قسمه

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

بخلاف GROUP BY تُبقي دالة النافذة كل صف مُدخل وتضيف قيمة محسوبة على قسمها (partition)، وهو هنا القسم الوظيفي.

الإجابة

A · كل صف موظف مع متوسط راتب قسمه
17.شبكات الحاسوب

الإجابة: B · إنشاء الاتصال ومزامنة أرقام التسلسل

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

تُنشئ المصافحة الاتصال ويتفق الطرفان خلالها على أرقام التسلسل الأولية قبل إرسال البيانات.

الإجابة

B · إنشاء الاتصال ومزامنة أرقام التسلسل
18.شبكات الحاسوب

الإجابة: B · طبقة النقل

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

تحتوي ترويسات TCP وUDP على منفذي المصدر والوجهة؛ أما طبقة الإنترنت (IP) فتضيف العناوين.

الإجابة

B · طبقة النقل
19.تقسيم شبكات IPv4

الإجابة: x = 128

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).

حجم الكتلة

27 = 128

الشبكة الفرعية رقم 2

الشبكة: (2 − 1)·128 = 128
البث: 128 + 128 − 1 = 255

الإجابة

x = 128
20.تقسيم شبكات IPv4

الإجابة: x = 126

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

حجم الكتلة

24 = 16

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

الشبكة: ⌊115/16⌋·16 = 112
البث: 112 + 16 − 1 = 127
المضيفون القابلون للاستخدام: 113 … 126

الإجابة

x = 126

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