chore(i18n,curriculum): processed translations - new ukrainian (#44447)
This commit is contained in:
@ -0,0 +1,71 @@
|
||||
---
|
||||
id: 5e7b9f060b6c005b0e76f05b
|
||||
title: Створіть свої власні функції
|
||||
challengeType: 11
|
||||
videoId: nLDychdBwUg
|
||||
bilibiliIds:
|
||||
aid: 249487483
|
||||
bvid: BV1Fv411J7bS
|
||||
cid: 376340281
|
||||
dashedName: build-your-own-functions
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео з поясненнями](https://www.youtube.com/watch?v=ksvGhDsjtpw)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який результат буде виведено на екран після виконання коду нижче?:
|
||||
|
||||
```python
|
||||
def fred():
|
||||
print("Zap")
|
||||
def jane():
|
||||
print("ABC")
|
||||
|
||||
jane()
|
||||
fred()
|
||||
jane()
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
<pre>Zap
|
||||
ABC
|
||||
jane
|
||||
fred
|
||||
jane</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>Zap
|
||||
ABC
|
||||
Zap</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>ABC
|
||||
Zap
|
||||
jane</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>ABC
|
||||
Zap
|
||||
ABC</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>Zap
|
||||
Zap
|
||||
Zap</pre>
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,61 @@
|
||||
---
|
||||
id: 5e7b9f0b0b6c005b0e76f06d
|
||||
title: Порівняння та сортування масивів
|
||||
challengeType: 11
|
||||
videoId: dZXzBXUxxCs
|
||||
bilibiliIds:
|
||||
aid: 931886163
|
||||
bvid: BV1HM4y1T7TK
|
||||
cid: 376533673
|
||||
dashedName: comparing-and-sorting-tuples
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок](https://www.youtube.com/watch?v=EhQxwzyT16E)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який код є аналогічним за результатом виконання до заданого нижче?:
|
||||
|
||||
```python
|
||||
lst = []
|
||||
for key, val in counts.items():
|
||||
newtup = (val, key)
|
||||
lst.append(newtup)
|
||||
lst = sorted(lst, reverse=True)
|
||||
print(lst)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
```python
|
||||
print( sorted( [ (v,k) for k,v in counts.items() ], reverse=True ) )
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
print( [ (k,v) for k,v in counts.items().sorted() ] )
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
print( sorted( [ (v,k) for k,v in counts.keys() ] ) )
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
print( [ (k,v) for k,v in counts.values().sort() ] )
|
||||
```
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,54 @@
|
||||
---
|
||||
id: 5e7b9f050b6c005b0e76f058
|
||||
title: Використання умовних операторів
|
||||
challengeType: 11
|
||||
videoId: gz_IfIsZQtc
|
||||
bilibiliIds:
|
||||
aid: 206949935
|
||||
bvid: BV1Jh411z7bY
|
||||
cid: 376337035
|
||||
dashedName: conditional-execution
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який код є правильним і при виконанні буде виведено "Yes" за умови, що x = 0 та y = 10?
|
||||
|
||||
## --answers--
|
||||
|
||||
```python
|
||||
if 0 == x:
|
||||
if y == 10:
|
||||
print("Yes")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
if 0 == x:
|
||||
if y == 10:
|
||||
print("Yes")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
if 0 == x:
|
||||
if y == 10:
|
||||
print("Yes")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
if 0 == x:
|
||||
if y == 10:
|
||||
print("Yes")
|
||||
```
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,56 @@
|
||||
---
|
||||
id: 5e7b9f6a0b6c005b0e76f097
|
||||
title: 'Візуалізація даних: списки розсилки'
|
||||
challengeType: 11
|
||||
videoId: RYdW660KkaQ
|
||||
bilibiliIds:
|
||||
aid: 334465586
|
||||
bvid: BV18w411R7dD
|
||||
cid: 377545473
|
||||
dashedName: data-visualization-mailing-lists
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок: geodata](https://www.youtube.com/watch?v=KfhslNzopxo)
|
||||
|
||||
\- [Відео-урок: Gmane model](https://www.youtube.com/watch?v=wSpl1-7afAk)
|
||||
|
||||
\- [Відео-урок: Gmane spider](https://www.youtube.com/watch?v=H3w4lOFBUOI)
|
||||
|
||||
\- [Відео-урок: Gmane Viz](https://www.youtube.com/watch?v=LRqVPMEXByw)
|
||||
|
||||
\- [Відео-урок: page rank](https://www.youtube.com/watch?v=yFRAZBkBDBs)
|
||||
|
||||
\- [Відео-урок: page spider](https://www.youtube.com/watch?v=sXedPQ_AnWA)
|
||||
|
||||
\- [Відео-урок: Page Viz](https://www.youtube.com/watch?v=Fm0hpkxsZoo)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Яка типова бібліотека візуалізації JavaScript?
|
||||
|
||||
## --answers--
|
||||
|
||||
DataViz.js
|
||||
|
||||
---
|
||||
|
||||
D3
|
||||
|
||||
---
|
||||
|
||||
Lowcharts
|
||||
|
||||
---
|
||||
|
||||
DATA6
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,34 @@
|
||||
---
|
||||
id: 5e7b9f6a0b6c005b0e76f096
|
||||
title: 'Візуалізація даних: Page Rank'
|
||||
challengeType: 11
|
||||
videoId: 6-w_qIUwaxU
|
||||
bilibiliIds:
|
||||
aid: 376950472
|
||||
bvid: BV1ho4y1Q72u
|
||||
cid: 377544599
|
||||
dashedName: data-visualization-page-rank
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Як працює алгоритм PageRank?
|
||||
|
||||
## --answers--
|
||||
|
||||
Він визначає, які сторінки найбільш пов'язані.
|
||||
|
||||
---
|
||||
|
||||
Він ранжує сторінки за кількістю переглядів.
|
||||
|
||||
---
|
||||
|
||||
Він визначає, які сторінки містять найважливіший контент.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,53 @@
|
||||
---
|
||||
id: 5e7b9f0a0b6c005b0e76f069
|
||||
title: Словники та цикли
|
||||
challengeType: 11
|
||||
videoId: EEmekKiKG70
|
||||
bilibiliIds:
|
||||
aid: 589401038
|
||||
bvid: BV1eq4y1X7xU
|
||||
cid: 376387132
|
||||
dashedName: dictionaries-and-loops
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок](https://www.youtube.com/watch?v=PrhZ9qwBDD8)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що буде виведено на екран після виконання наведеного нижче коду?:
|
||||
|
||||
```python
|
||||
counts = { 'chuck' : 1 , 'annie' : 42, 'jan': 100}
|
||||
for key in counts:
|
||||
if counts[key] > 10:
|
||||
print(key, counts[key])
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
<pre>annie 42
|
||||
jan 100</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>chuck 1
|
||||
annie 42
|
||||
jan 100</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>chuck 1</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>[Error]</pre>
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
@ -0,0 +1,47 @@
|
||||
---
|
||||
id: 5e7b9f090b6c005b0e76f068
|
||||
title: 'Словники: загального використання'
|
||||
challengeType: 11
|
||||
videoId: f17xPfIXct0
|
||||
bilibiliIds:
|
||||
aid: 805747023
|
||||
bvid: BV1v34y1D7ug
|
||||
cid: 414168867
|
||||
dashedName: dictionaries-common-applications
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що буде результатом виконання даного коду?
|
||||
|
||||
```python
|
||||
counts = { 'quincy' : 1 , 'mrugesh' : 42, 'beau': 100, '0': 10}
|
||||
print(counts.get('kris', 0))
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
2
|
||||
|
||||
---
|
||||
|
||||
quincy
|
||||
|
||||
---
|
||||
|
||||
0
|
||||
|
||||
---
|
||||
|
||||
10
|
||||
|
||||
---
|
||||
|
||||
помилка
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,44 @@
|
||||
---
|
||||
id: 5e7b9f080b6c005b0e76f063
|
||||
title: Файли як послідовність
|
||||
challengeType: 11
|
||||
videoId: cIA0EokbaHE
|
||||
bilibiliIds:
|
||||
aid: 974380307
|
||||
bvid: BV1p44y1m7br
|
||||
cid: 376388846
|
||||
dashedName: files-as-a-sequence
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок](https://www.youtube.com/watch?v=il1j4wkte2E)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що команда "continue" робить, якщо вона розташована всередині циклу?
|
||||
|
||||
## --answers--
|
||||
|
||||
Перехід до коду одразу після циклу.
|
||||
|
||||
---
|
||||
|
||||
Перехід до наступного рядка коду.
|
||||
|
||||
---
|
||||
|
||||
Перехід до наступної ітерації циклу.
|
||||
|
||||
---
|
||||
|
||||
Пропускає наступний блок коду.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,56 @@
|
||||
---
|
||||
id: 5e7b9f050b6c005b0e76f057
|
||||
title: Робота з виразами
|
||||
challengeType: 11
|
||||
videoId: dKgUaIa5ATg
|
||||
bilibiliIds:
|
||||
aid: 334428894
|
||||
bvid: BV1uw411R7gH
|
||||
cid: 376318468
|
||||
dashedName: intermediate-expressions
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок 1](https://youtu.be/t_4DPwsaGDY)
|
||||
|
||||
\- [Відео-урок 2](https://youtu.be/wgkC8SxraAQ)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що буде виведено в результаті виконання даного коду:
|
||||
|
||||
```python
|
||||
width = 15
|
||||
height = 12.0
|
||||
print(height/3)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
39
|
||||
|
||||
---
|
||||
|
||||
4
|
||||
|
||||
---
|
||||
|
||||
4.0
|
||||
|
||||
---
|
||||
|
||||
5.0
|
||||
|
||||
---
|
||||
|
||||
5
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,53 @@
|
||||
---
|
||||
id: 5e7b9f070b6c005b0e76f061
|
||||
title: Робота з рядками
|
||||
challengeType: 11
|
||||
videoId: KgT_fYLXnyk
|
||||
bilibiliIds:
|
||||
aid: 291983121
|
||||
bvid: BV1Zf4y157yG
|
||||
cid: 376394116
|
||||
dashedName: intermediate-strings
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок](https://www.youtube.com/watch?v=1bSqHot-KwE)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Яке значення матиме змінна i після виконання даного коду?
|
||||
|
||||
```python
|
||||
word = "bananana"
|
||||
i = word.find("na")
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
nanana
|
||||
|
||||
---
|
||||
|
||||
2
|
||||
|
||||
---
|
||||
|
||||
3
|
||||
|
||||
---
|
||||
|
||||
True
|
||||
|
||||
---
|
||||
|
||||
na
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,40 @@
|
||||
---
|
||||
id: 5e6a54c358d3af90110a60a3
|
||||
title: 'Вступ: Елементи мови Python'
|
||||
challengeType: 11
|
||||
videoId: aRY_xjL35v0
|
||||
bilibiliIds:
|
||||
aid: 674420725
|
||||
bvid: BV1MU4y1H7Lj
|
||||
cid: 376315889
|
||||
dashedName: introduction-elements-of-python
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який результат буде виведено на екран після виконання коду нижче:
|
||||
|
||||
```python
|
||||
x = 43
|
||||
x = x + 1
|
||||
print(x)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
x
|
||||
|
||||
---
|
||||
|
||||
x + 1
|
||||
|
||||
---
|
||||
|
||||
44
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,34 @@
|
||||
---
|
||||
id: 5e6a54af58d3af90110a60a1
|
||||
title: 'Вступ: Архітектура обладнання'
|
||||
challengeType: 11
|
||||
videoId: H6qtjRTfSog
|
||||
bilibiliIds:
|
||||
aid: 206977572
|
||||
bvid: BV1zh411z7Ak
|
||||
cid: 376199262
|
||||
dashedName: introduction-hardware-architecture
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Де програми зберігаються під час роботи?
|
||||
|
||||
## --answers--
|
||||
|
||||
Жорсткий диск.
|
||||
|
||||
---
|
||||
|
||||
Пам'ять.
|
||||
|
||||
---
|
||||
|
||||
Центральний процесор.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,43 @@
|
||||
---
|
||||
id: 5e6a54ba58d3af90110a60a2
|
||||
title: 'Вступ: Python як мова програмування'
|
||||
challengeType: 11
|
||||
videoId: 0QeGbZNS_bY
|
||||
bilibiliIds:
|
||||
aid: 674404602
|
||||
bvid: BV1GU4y1H7vB
|
||||
cid: 376315625
|
||||
dashedName: introduction-python-as-a-language
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що буде виведено в результаті виконання цього коду:
|
||||
|
||||
```python
|
||||
x = 6
|
||||
print(x)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
x
|
||||
|
||||
---
|
||||
|
||||
6
|
||||
|
||||
---
|
||||
|
||||
x = 6
|
||||
|
||||
---
|
||||
|
||||
(x)
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,46 @@
|
||||
---
|
||||
id: 5e6a54a558d3af90110a60a0
|
||||
title: 'Вступ: чому програмування?'
|
||||
challengeType: 11
|
||||
videoId: 3muQV-Im3Z0
|
||||
bilibiliIds:
|
||||
aid: 206882253
|
||||
bvid: BV1Fh411z7tr
|
||||
cid: 376314257
|
||||
videoLocaleIds:
|
||||
espanol: 3muQV-Im3Z0
|
||||
italian: 3muQV-Im3Z0
|
||||
portuguese: 3muQV-Im3Z0
|
||||
dashedName: introduction-why-program
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Встановити Python для Windows](https://youtu.be/F7mtLrYzZP8)
|
||||
|
||||
\- [Встановити Python для MacOS](https://youtu.be/wfLnZP-4sZw)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Кому варто навчатися програмуванню?
|
||||
|
||||
## --answers--
|
||||
|
||||
Студентам коледжу.
|
||||
|
||||
---
|
||||
|
||||
Людям, які хочуть стати розробниками програмного забезпечення.
|
||||
|
||||
---
|
||||
|
||||
Всім.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,43 @@
|
||||
---
|
||||
id: 5e7b9f070b6c005b0e76f05d
|
||||
title: 'Ітерації: визначені цикли'
|
||||
challengeType: 11
|
||||
videoId: hiRTRAqNlpE
|
||||
bilibiliIds:
|
||||
aid: 291987032
|
||||
bvid: BV1ff4y157Q3
|
||||
cid: 376385255
|
||||
dashedName: iterations-definite-loops
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Скільки рядків буде виведено в результаті виконання даного коду?:
|
||||
|
||||
```python
|
||||
for i in [2,1,5]:
|
||||
print(i)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
1
|
||||
|
||||
---
|
||||
|
||||
2
|
||||
|
||||
---
|
||||
|
||||
3
|
||||
|
||||
---
|
||||
|
||||
5
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,49 @@
|
||||
---
|
||||
id: 5e7b9f070b6c005b0e76f05e
|
||||
title: 'Цикли: ускладненні вирази'
|
||||
challengeType: 11
|
||||
videoId: AelGAcoMXbI
|
||||
bilibiliIds:
|
||||
aid: 334491369
|
||||
bvid: BV1tw411R7Mm
|
||||
cid: 376530765
|
||||
dashedName: iterations-loop-idioms
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Нижче наведено код який знаходить найменше значення у списку. Один з рядків коду містить помилку яка не буде дозволяти коду працювати правильно. Який це рядок?:
|
||||
|
||||
```python
|
||||
smallest = None
|
||||
print("Before:", smallest)
|
||||
for itervar in [3, 41, 12, 9, 74, 15]:
|
||||
if smallest is None or itervar < smallest:
|
||||
smallest = itervar
|
||||
break
|
||||
print("Loop:", itervar, smallest)
|
||||
print("Smallest:", smallest)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
3
|
||||
|
||||
---
|
||||
|
||||
4
|
||||
|
||||
---
|
||||
|
||||
6
|
||||
|
||||
---
|
||||
|
||||
7
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,52 @@
|
||||
---
|
||||
id: 5e7b9f070b6c005b0e76f05f
|
||||
title: 'Ітерації: Додаткові шаблони'
|
||||
challengeType: 11
|
||||
videoId: 9Wtqo6vha1M
|
||||
bilibiliIds:
|
||||
aid: 674492981
|
||||
bvid: BV1hU4y1H7tF
|
||||
cid: 376531204
|
||||
dashedName: iterations-more-patterns
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок](https://www.youtube.com/watch?v=kjxXZQw0uPg)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який з варіантів еквівалентий значенню False?
|
||||
|
||||
## --answers--
|
||||
|
||||
```python
|
||||
0 == 0.0
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
0 is 0.0
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
0 is not 0.0
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
0 = 0.0
|
||||
```
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,55 @@
|
||||
---
|
||||
id: 5e7b9f060b6c005b0e76f05c
|
||||
title: Цикли та ітерації
|
||||
challengeType: 11
|
||||
videoId: dLA-szNRnUY
|
||||
bilibiliIds:
|
||||
aid: 674492981
|
||||
bvid: BV1hU4y1H7tF
|
||||
cid: 376531204
|
||||
dashedName: loops-and-iterations
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що буде виведено на екран після виконання наведеного нижче коду?:
|
||||
|
||||
```python
|
||||
n = 0
|
||||
while True:
|
||||
if n == 3:
|
||||
break
|
||||
print(n)
|
||||
n = n + 1
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
<pre>0
|
||||
1
|
||||
2</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>0
|
||||
1
|
||||
2
|
||||
3</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>1
|
||||
2</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>1
|
||||
2
|
||||
3</pre>
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,52 @@
|
||||
---
|
||||
id: 5e7b9f170b6c005b0e76f08b
|
||||
title: Розробка реляційної бази даних
|
||||
challengeType: 11
|
||||
videoId: MQ5z4bdF92U
|
||||
bilibiliIds:
|
||||
aid: 249380678
|
||||
bvid: BV1vv411E76L
|
||||
cid: 377531786
|
||||
dashedName: make-a-relational-database
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Яку SQL команду ви б використали для того, щоб отримати всіх користувачів з електронною адресою `quincy@freecodecamp.org`?
|
||||
|
||||
## --answers--
|
||||
|
||||
```sql
|
||||
SELECT Users WHERE email="quincy@freecodecamp.org"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```sql
|
||||
SELECT Users WHERE email IS "quincy@freecodecamp.org"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```sql
|
||||
SELECT ALL Users WHERE email="quincy@freecodecamp.org"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```sql
|
||||
SELECT * FROM Users WHERE email IS "quincy@freecodecamp.org"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```sql
|
||||
SELECT * FROM Users WHERE email="quincy@freecodecamp.org"
|
||||
```
|
||||
|
||||
## --video-solution--
|
||||
|
||||
5
|
||||
|
@ -0,0 +1,60 @@
|
||||
---
|
||||
id: 5e7b9f060b6c005b0e76f059
|
||||
title: Додаткові умовні структури
|
||||
challengeType: 11
|
||||
videoId: HdL82tAZR20
|
||||
bilibiliIds:
|
||||
aid: 631930118
|
||||
bvid: BV1Nb4y1r7z2
|
||||
cid: 376337449
|
||||
dashedName: more-conditional-structures
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок 1](https://www.youtube.com/watch?v=crLerB4ZxMI)
|
||||
|
||||
\- [Відео-урок 2](https://www.youtube.com/watch?v=KJN3-7HH6yk)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Вам надано наведений нижче код:
|
||||
|
||||
```python
|
||||
temp = "5 degrees"
|
||||
cel = 0
|
||||
fahr = float(temp)
|
||||
cel = (fahr - 32.0) * 5.0 / 9.0
|
||||
print(cel)
|
||||
```
|
||||
|
||||
Який рядок/рядки мають бути всередині `try` блоку?
|
||||
|
||||
## --answers--
|
||||
|
||||
1
|
||||
|
||||
---
|
||||
|
||||
3
|
||||
|
||||
---
|
||||
|
||||
3,4
|
||||
|
||||
---
|
||||
|
||||
4
|
||||
|
||||
---
|
||||
|
||||
Жодна
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f0c0b6c005b0e76f072
|
||||
title: Мережеві протоколи
|
||||
challengeType: 11
|
||||
videoId: c6vZGescaSc
|
||||
bilibiliIds:
|
||||
aid: 931950996
|
||||
bvid: BV1cM4y1N7K6
|
||||
cid: 376388317
|
||||
dashedName: networking-protocol
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який тип HTTP запиту зазвичай використовується для доступу до веб-сайту?
|
||||
|
||||
## --answers--
|
||||
|
||||
POST
|
||||
|
||||
---
|
||||
|
||||
GET
|
||||
|
||||
---
|
||||
|
||||
WEB
|
||||
|
||||
---
|
||||
|
||||
ACCESS
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,34 @@
|
||||
---
|
||||
id: 5e7b9f0c0b6c005b0e76f074
|
||||
title: 'Мережа: Обробка тексту'
|
||||
challengeType: 11
|
||||
videoId: Pv_pJgVu8WI
|
||||
bilibiliIds:
|
||||
aid: 804442498
|
||||
bvid: BV16y4y1j7WW
|
||||
cid: 377329124
|
||||
dashedName: networking-text-processing
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який тип кодування використовує більшість сайтів?
|
||||
|
||||
## --answers--
|
||||
|
||||
UTF-8
|
||||
|
||||
---
|
||||
|
||||
UTF-16
|
||||
|
||||
---
|
||||
|
||||
UTF-32
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,41 @@
|
||||
---
|
||||
id: 5e7b9f0d0b6c005b0e76f075
|
||||
title: 'Мережа: Використання urllib в Python'
|
||||
challengeType: 11
|
||||
videoId: 7lFM1T_CxBs
|
||||
bilibiliIds:
|
||||
aid: 546908270
|
||||
bvid: BV1Xq4y1H7e6
|
||||
cid: 377331524
|
||||
dashedName: networking-using-urllib-in-python
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Як буде виглядати результат роботи даного коду?:
|
||||
|
||||
```python
|
||||
import urllib.request
|
||||
fhand = urllib.request.urlopen('http://data.pr4e.org/romeo.txt')
|
||||
for line in fhand:
|
||||
print(line.decode().strip())
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
Лише зміст "romeo.txt".
|
||||
|
||||
---
|
||||
|
||||
Верхній колонтитул і зміст "romeo.txt".
|
||||
|
||||
---
|
||||
|
||||
Верхній та нижній колонтитули, зміст "romeo.txt".
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,60 @@
|
||||
---
|
||||
id: 5e7b9f0d0b6c005b0e76f076
|
||||
title: 'Мережа: Веб-скрапінг з Python'
|
||||
challengeType: 11
|
||||
videoId: Uyioq2q4cEg
|
||||
bilibiliIds:
|
||||
aid: 674382625
|
||||
bvid: BV1oU4y1n7zQ
|
||||
cid: 377331774
|
||||
dashedName: networking-web-scraping-with-python
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок: socket1](https://www.youtube.com/watch?v=dWLdI43W-g)
|
||||
|
||||
\- [Відео-урок: urllib](https://www.youtube.com/watch?v=8yis2DvbBkI)
|
||||
|
||||
\- [Відео-урок: urllinks](https://www.youtube.com/watch?v=g9flPDG9nnY)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Яку Python бібліотеку використовують для парсингу HTML документів та отримання даних з них?
|
||||
|
||||
## --answers--
|
||||
|
||||
socket
|
||||
|
||||
---
|
||||
|
||||
http
|
||||
|
||||
---
|
||||
|
||||
BeautifulSoup
|
||||
|
||||
---
|
||||
|
||||
PrettyBiscuit
|
||||
|
||||
---
|
||||
|
||||
WonderfulSalad
|
||||
|
||||
---
|
||||
|
||||
HttpParser
|
||||
|
||||
---
|
||||
|
||||
GrunkleStan
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f0c0b6c005b0e76f071
|
||||
title: Робота з мережею у Python
|
||||
challengeType: 11
|
||||
videoId: _kJvneKVdNM
|
||||
bilibiliIds:
|
||||
aid: 419494612
|
||||
bvid: BV1r341167jT
|
||||
cid: 376385858
|
||||
dashedName: networking-with-python
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Яка бібліотека дає доступ до TCP сокетів?
|
||||
|
||||
## --answers--
|
||||
|
||||
tcp
|
||||
|
||||
---
|
||||
|
||||
socket
|
||||
|
||||
---
|
||||
|
||||
http
|
||||
|
||||
---
|
||||
|
||||
port
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,54 @@
|
||||
---
|
||||
id: 5e7b9f0c0b6c005b0e76f073
|
||||
title: 'Мережа: Напишіть веб-браузер'
|
||||
challengeType: 11
|
||||
videoId: zjyT9DaAjx4
|
||||
bilibiliIds:
|
||||
aid: 761908574
|
||||
bvid: BV1j64y1x7wx
|
||||
cid: 377319579
|
||||
dashedName: networking-write-a-web-browser
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що створює даний код?:
|
||||
|
||||
```py
|
||||
import socket
|
||||
|
||||
mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
mysock.connect(('data.pr4e.org', 80))
|
||||
cmd = 'GET http://data.pr4e.org/romeo.txt HTTP/1.0\r\n\r\n'.encode()
|
||||
mysock.send(cmd)
|
||||
|
||||
while True:
|
||||
data = mysock.recv(512)
|
||||
if len(data) < 1:
|
||||
break
|
||||
print(data.decode(),end='')
|
||||
mysock.close()
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
Простий веб-сервер.
|
||||
|
||||
---
|
||||
|
||||
Простий e-mail клієнт.
|
||||
|
||||
---
|
||||
|
||||
Простий список завдань.
|
||||
|
||||
---
|
||||
|
||||
Простий веб-браузер.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,71 @@
|
||||
---
|
||||
id: 5e7b9f170b6c005b0e76f087
|
||||
title: Життєвий цикл об'єкта
|
||||
challengeType: 11
|
||||
videoId: p1r3h_AMMIM
|
||||
bilibiliIds:
|
||||
aid: 461998717
|
||||
bvid: BV1JL411n7Hr
|
||||
cid: 377529681
|
||||
dashedName: object-lifecycle
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що виведе дана програма на екран?:
|
||||
|
||||
```python
|
||||
class PartyAnimal:
|
||||
x = 0
|
||||
name = ''
|
||||
def __init__(self, nam):
|
||||
self.name = nam
|
||||
print(self.name,'constructed')
|
||||
def party(self):
|
||||
self.x = self.x + 1
|
||||
print(self.name,'party count',self.x)
|
||||
|
||||
q = PartyAnimal('Quincy')
|
||||
m = PartyAnimal('Miya')
|
||||
|
||||
q.party()
|
||||
m.party()
|
||||
q.party()
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
<pre>
|
||||
Quincy constructed
|
||||
Miya constructed
|
||||
Quincy party count 1
|
||||
Miya party count 2
|
||||
Quincy party count 3
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
Quincy constructed
|
||||
Miya constructed
|
||||
Quincy party count 1
|
||||
Miya party count 1
|
||||
Quincy party count 2
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
Quincy constructed
|
||||
Quincy party count 1
|
||||
Quincy party count 2
|
||||
Miya constructed
|
||||
Miya party count 1
|
||||
</pre>
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,62 @@
|
||||
---
|
||||
id: 5e7b9f160b6c005b0e76f086
|
||||
title: 'Об''єкти: Приклад класу'
|
||||
challengeType: 11
|
||||
videoId: FiABKEuaSJ8
|
||||
bilibiliIds:
|
||||
aid: 589451777
|
||||
bvid: BV1rq4y1X7TG
|
||||
cid: 377523194
|
||||
dashedName: objects-a-sample-class
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що виведе дана програма на екран?:
|
||||
|
||||
```python
|
||||
class PartyAnimal:
|
||||
x = 0
|
||||
def party(self):
|
||||
self.x = self.x + 2
|
||||
print(self.x)
|
||||
|
||||
an = PartyAnimal()
|
||||
an.party()
|
||||
an.party()
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
<pre>
|
||||
So far 1
|
||||
So far 2
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
0
|
||||
0
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
2
|
||||
2
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
2
|
||||
4
|
||||
</pre>
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f170b6c005b0e76f088
|
||||
title: 'Об''єкти: Успадкування'
|
||||
challengeType: 11
|
||||
videoId: FBL3alYrxRM
|
||||
bilibiliIds:
|
||||
aid: 631990691
|
||||
bvid: BV1sb4y1r7GF
|
||||
cid: 377529901
|
||||
dashedName: objects-inheritance
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що таке успадкування в об'єктно-орієнтованому програмуванні?
|
||||
|
||||
## --answers--
|
||||
|
||||
Створення нового класу, при розширенні батьківського.
|
||||
|
||||
---
|
||||
|
||||
Побудований екземпляр класу.
|
||||
|
||||
---
|
||||
|
||||
Можливість створювати новий клас, як розширення вже існуючого класу.
|
||||
|
||||
---
|
||||
|
||||
В той час метод, який називається в той момент, коли клас використовується для побудови об'єкта.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,59 @@
|
||||
---
|
||||
id: 5e7b9f090b6c005b0e76f067
|
||||
title: Словники Python
|
||||
challengeType: 11
|
||||
videoId: dnzvfimrRMg
|
||||
bilibiliIds:
|
||||
aid: 631893305
|
||||
bvid: BV19b4y167kj
|
||||
cid: 376386176
|
||||
dashedName: python-dictionaries
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Чому даний словник буде еквівалентним після виконання наведеного нижче коду?:
|
||||
|
||||
```python
|
||||
dict = {"Fri": 20, "Thu": 6, "Sat": 1}
|
||||
dict["Thu"] = 13
|
||||
dict["Sat"] = 2
|
||||
dict["Sun"] = 9
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
```python
|
||||
{'Fri': 20, 'Thu': 6, 'Sat': 1}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
{'Fri': 20, 'Thu': 6, 'Sat': 1, 'Thu': 13, 'Sat': 2, 'Sun': 9}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
{'Sun': 9}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
{'Thu': 13, 'Sat': 2, 'Sun': 9}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
```python
|
||||
{'Fri': 20, 'Thu': 13, 'Sat': 2, 'Sun': 9}
|
||||
```
|
||||
|
||||
## --video-solution--
|
||||
|
||||
5
|
||||
|
@ -0,0 +1,42 @@
|
||||
---
|
||||
id: 5e7b9f060b6c005b0e76f05a
|
||||
title: Функції в Python
|
||||
challengeType: 11
|
||||
videoId: 3JGF-n3tDPU
|
||||
bilibiliIds:
|
||||
aid: 631881917
|
||||
bvid: BV1Xb4y167P4
|
||||
cid: 376337920
|
||||
dashedName: python-functions
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Яке призначення має ключове слово "def" в Python?
|
||||
|
||||
## --answers--
|
||||
|
||||
Це сленг, що означає "Даний код дуже крутий."
|
||||
|
||||
---
|
||||
|
||||
Воно вказує на початок функції.
|
||||
|
||||
---
|
||||
|
||||
Воно вказує на те, що наступна вкладена секція коду буде зберігатися для майбутнього використання.
|
||||
|
||||
---
|
||||
|
||||
Воно вказує початок функції, і те що наступна вкладена секція коду буде зберігатися для майбутнього використання.
|
||||
|
||||
---
|
||||
|
||||
Жоден з перерахованих вище.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,43 @@
|
||||
---
|
||||
id: 5e7b9f080b6c005b0e76f064
|
||||
title: Списки в Python
|
||||
challengeType: 11
|
||||
videoId: Y0cvfDpYC_c
|
||||
bilibiliIds:
|
||||
aid: 249460305
|
||||
bvid: BV1Dv411E7Uj
|
||||
cid: 376532993
|
||||
dashedName: python-lists
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Яким буде значення змінної x після виконання даного коду:
|
||||
|
||||
```python
|
||||
fruit = "banana"
|
||||
x = fruit[1]
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
banana
|
||||
|
||||
---
|
||||
|
||||
a
|
||||
|
||||
---
|
||||
|
||||
b
|
||||
|
||||
---
|
||||
|
||||
True
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f160b6c005b0e76f085
|
||||
title: Об'єкти в Python
|
||||
challengeType: 11
|
||||
videoId: uJxGeTYy0us
|
||||
bilibiliIds:
|
||||
aid: 889496260
|
||||
bvid: BV1ZP4y1s7G6
|
||||
cid: 377522762
|
||||
dashedName: python-objects
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що з приведених тверджень не є правильним для об'єктів у Python?
|
||||
|
||||
## --answers--
|
||||
|
||||
Об'єкти створюються та використовуються.
|
||||
|
||||
---
|
||||
|
||||
Об'єкти - це біти коду та дані.
|
||||
|
||||
---
|
||||
|
||||
Об'єкти приховують деталі.
|
||||
|
||||
---
|
||||
|
||||
Об'єкти — це один з п"яти стандартних типів даних.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,42 @@
|
||||
---
|
||||
id: 5e7b9f080b6c005b0e76f062
|
||||
title: Зчитування файлів
|
||||
challengeType: 11
|
||||
videoId: Fo1tW09KIwo
|
||||
bilibiliIds:
|
||||
aid: 334439927
|
||||
bvid: BV1pw411R7UK
|
||||
cid: 376532076
|
||||
dashedName: reading-files
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що використовується для ініціалізації переходу на новий рядок в типі даних string?
|
||||
|
||||
## --answers--
|
||||
|
||||
\\n
|
||||
|
||||
---
|
||||
|
||||
{new_line}
|
||||
|
||||
---
|
||||
|
||||
{n}
|
||||
|
||||
---
|
||||
|
||||
/n
|
||||
|
||||
---
|
||||
|
||||
/new
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,45 @@
|
||||
---
|
||||
id: 5e7b9f0b0b6c005b0e76f06f
|
||||
title: 'Регулярні вирази: відповідність і отримання даних'
|
||||
challengeType: 11
|
||||
videoId: LaCZnTbQGkE
|
||||
bilibiliIds:
|
||||
aid: 975629041
|
||||
bvid: BV1i44y1b7hE
|
||||
cid: 414167130
|
||||
dashedName: regular-expressions-matching-and-extracting-data
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що виведе дана програма на екран?:
|
||||
|
||||
```python
|
||||
import re
|
||||
s = 'A message from csev@umich.edu to cwen@iupui.edu about meeting @2PM'
|
||||
lst = re.findall('\\S+@\\S+', s)
|
||||
print(lst)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
['csev@umich.edu', 'cwen@iupui.edu']
|
||||
|
||||
---
|
||||
|
||||
['csev@umich.edu']
|
||||
|
||||
---
|
||||
|
||||
['umich.edu', 'iupui.edu']
|
||||
|
||||
---
|
||||
|
||||
['csev@', 'cwen@']
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f0b0b6c005b0e76f070
|
||||
title: 'Регулярні вирази: Практичні програми'
|
||||
challengeType: 11
|
||||
videoId: xCjFU9G6x48
|
||||
bilibiliIds:
|
||||
aid: 546924659
|
||||
bvid: BV1mq4y1H7rZ
|
||||
cid: 376386493
|
||||
dashedName: regular-expressions-practical-applications
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який з приведених варіантів можна використати для пошуку "$" у регулярному виразі?
|
||||
|
||||
## --answers--
|
||||
|
||||
$
|
||||
|
||||
---
|
||||
|
||||
\\dollar\\
|
||||
|
||||
---
|
||||
|
||||
\\$
|
||||
|
||||
---
|
||||
|
||||
!$
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,42 @@
|
||||
---
|
||||
id: 5e7b9f0b0b6c005b0e76f06e
|
||||
title: Регулярні вирази
|
||||
challengeType: 11
|
||||
videoId: Yud_COr6pZo
|
||||
bilibiliIds:
|
||||
aid: 759422542
|
||||
bvid: BV1W64y167YD
|
||||
cid: 376387549
|
||||
dashedName: regular-expressions
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який регулярний вираз підходить тільки для опису пробілу?
|
||||
|
||||
## --answers--
|
||||
|
||||
\\S
|
||||
|
||||
---
|
||||
|
||||
\\s
|
||||
|
||||
---
|
||||
|
||||
.
|
||||
|
||||
---
|
||||
|
||||
\_
|
||||
|
||||
---
|
||||
|
||||
\\.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f180b6c005b0e76f08c
|
||||
title: Проектування реляційних баз даних
|
||||
challengeType: 11
|
||||
videoId: AqdfbrpkbHk
|
||||
bilibiliIds:
|
||||
aid: 504388066
|
||||
bvid: BV1Qg411j742
|
||||
cid: 377532216
|
||||
dashedName: relational-database-design
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Якою є оптимальна кількість зберігань для даних в типі string в базі даних?
|
||||
|
||||
## --answers--
|
||||
|
||||
0
|
||||
|
||||
---
|
||||
|
||||
1
|
||||
|
||||
---
|
||||
|
||||
2
|
||||
|
||||
---
|
||||
|
||||
3
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f170b6c005b0e76f08a
|
||||
title: Реляційні бази даних і SQLite
|
||||
challengeType: 11
|
||||
videoId: QlNod5-kFpA
|
||||
bilibiliIds:
|
||||
aid: 249449958
|
||||
bvid: BV12v411E74H
|
||||
cid: 377530805
|
||||
dashedName: relational-databases-and-sqlite
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що НЕ є первинною структурою даних в базі даних?
|
||||
|
||||
## --answers--
|
||||
|
||||
index
|
||||
|
||||
---
|
||||
|
||||
table
|
||||
|
||||
---
|
||||
|
||||
row
|
||||
|
||||
---
|
||||
|
||||
column
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,34 @@
|
||||
---
|
||||
id: 5e7b9f180b6c005b0e76f08f
|
||||
title: 'Реляційні бази даних: Операції приєднання'
|
||||
challengeType: 11
|
||||
videoId: jvDw3D9GKac
|
||||
bilibiliIds:
|
||||
aid: 804461215
|
||||
bvid: BV1Ry4y1j7tv
|
||||
cid: 377542880
|
||||
dashedName: relational-databases-join-operation
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Під час використання JOIN у SQL-операторі, що робить ON?
|
||||
|
||||
## --answers--
|
||||
|
||||
Воно вказує з якою таблицею виконувати JOIN.
|
||||
|
||||
---
|
||||
|
||||
Воно визначає поля для JOIN.
|
||||
|
||||
---
|
||||
|
||||
Воно вказує на те, як саме таблиці мають бути об'єднані.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,52 @@
|
||||
---
|
||||
id: 5e7b9f190b6c005b0e76f090
|
||||
title: 'Реляційні бази даних: відношення типу багато-багато'
|
||||
challengeType: 11
|
||||
videoId: z-SBYcvEQOc
|
||||
bilibiliIds:
|
||||
aid: 291965127
|
||||
bvid: BV1Af4y1L7BK
|
||||
cid: 377543409
|
||||
dashedName: relational-databases-many-to-many-relationships
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок: email](https://www.youtube.com/watch?v=uQ3Qv1z_Vao)
|
||||
|
||||
\- [Відео-урок: roster](https://www.youtube.com/watch?v=qEkUEAz8j3o)
|
||||
|
||||
\- [Відео-урок: tracks](https://www.youtube.com/watch?v=I-E7avcPeSE)
|
||||
|
||||
\- [Відео-урок: twfriends](https://www.youtube.com/watch?v=RZRAoBFIH6A)
|
||||
|
||||
\- [Відео-урок: twspider](https://www.youtube.com/watch?v=xBaJddvJL4A)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що є прикладом зв'язку типу багато-багато?
|
||||
|
||||
## --answers--
|
||||
|
||||
учитель -> учень
|
||||
|
||||
---
|
||||
|
||||
клієнт -> замовлення
|
||||
|
||||
---
|
||||
|
||||
книга -> сторінка
|
||||
|
||||
---
|
||||
|
||||
місто -> країна
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,34 @@
|
||||
---
|
||||
id: 5e7b9f180b6c005b0e76f08e
|
||||
title: 'Реляційні бази даних: побудова відносин'
|
||||
challengeType: 11
|
||||
videoId: CSbqczsHVnc
|
||||
bilibiliIds:
|
||||
aid: 376996473
|
||||
bvid: BV1jo4y1S7VY
|
||||
cid: 377532966
|
||||
dashedName: relational-databases-relationship-building
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що робить команда INSERT у SQL?
|
||||
|
||||
## --answers--
|
||||
|
||||
Вона створює новий рядок перераховуючи поля, які ми хочемо додати, і значення, які ми хочемо додати до нового рядка.
|
||||
|
||||
---
|
||||
|
||||
Вона створює новий стовпчик перераховуючи рядки, які ми хочемо додати, і значення, які ми хочемо додати до нового стовпчика.
|
||||
|
||||
---
|
||||
|
||||
Вона створює нову таблицю перераховуючи рядки і поля, які ми хочемо додати, і значення, які ми хочемо додати до нової таблиці.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f180b6c005b0e76f08d
|
||||
title: Представлення відносин у реляційній базі даних
|
||||
challengeType: 11
|
||||
videoId: '-orenCNdC2Q'
|
||||
bilibiliIds:
|
||||
aid: 931953070
|
||||
bvid: BV1FM4y1N7hc
|
||||
cid: 377532529
|
||||
dashedName: representing-relationships-in-a-relational-database
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що таке foreign key?
|
||||
|
||||
## --answers--
|
||||
|
||||
Ключ, який не повинен бути там.
|
||||
|
||||
---
|
||||
|
||||
Ключ, який використовує нелатинські символи.
|
||||
|
||||
---
|
||||
|
||||
Число, яке вказує на первинний ключ від пов'язаного рядка в іншій таблиці.
|
||||
|
||||
---
|
||||
|
||||
Ключ, який "реальний світ" може використовувати для пошуку необхідного рядка.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,51 @@
|
||||
---
|
||||
id: 5e7b9f090b6c005b0e76f066
|
||||
title: Рядки та списки
|
||||
challengeType: 11
|
||||
videoId: lxcFa7ldCi0
|
||||
bilibiliIds:
|
||||
aid: 804401443
|
||||
bvid: BV1By4y1j7F9
|
||||
cid: 376385517
|
||||
dashedName: strings-and-lists
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок](https://www.youtube.com/watch?v=-9TfJF2dwHI)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Чому дорівнює n в цьому коді?
|
||||
|
||||
```python
|
||||
words = 'His e-mail is q-lar@freecodecamp.org'
|
||||
pieces = words.split()
|
||||
parts = pieces[3].split('-')
|
||||
n = parts[1]
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
mail
|
||||
|
||||
---
|
||||
|
||||
q
|
||||
|
||||
---
|
||||
|
||||
lar
|
||||
|
||||
---
|
||||
|
||||
`lar@freecodecamp.org`
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,63 @@
|
||||
---
|
||||
id: 5e7b9f070b6c005b0e76f060
|
||||
title: Рядки в Python
|
||||
challengeType: 11
|
||||
videoId: LYZj207fKpQ
|
||||
bilibiliIds:
|
||||
aid: 504434218
|
||||
bvid: BV1Lg41177s8
|
||||
cid: 376531802
|
||||
dashedName: strings-in-python
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що буде виведено на екран після виконання приведенного нижче коду?:
|
||||
|
||||
```python
|
||||
for n in "banana":
|
||||
print(n)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
<pre>
|
||||
n
|
||||
n
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
0
|
||||
1
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
0
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
b
|
||||
a
|
||||
n
|
||||
a
|
||||
n
|
||||
a
|
||||
</pre>
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,63 @@
|
||||
---
|
||||
id: 5e7b9f0a0b6c005b0e76f06c
|
||||
title: Колекція кортежів
|
||||
challengeType: 11
|
||||
videoId: 3Lxpladfh2k
|
||||
bilibiliIds:
|
||||
aid: 334468209
|
||||
bvid: BV1aw411R77G
|
||||
cid: 376533308
|
||||
dashedName: the-tuples-collection
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що буде виведено на екран після виконання приведенного нижче коду?:
|
||||
|
||||
```python
|
||||
d = dict()
|
||||
d['quincy'] = 1
|
||||
d['beau'] = 5
|
||||
d['kris'] = 9
|
||||
for (k,i) in d.items():
|
||||
print(k, i)
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
<pre>
|
||||
k i
|
||||
k i
|
||||
k i
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
quincy 0
|
||||
beau 1
|
||||
kris 2
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
quincy 1
|
||||
beau 5
|
||||
kris 9
|
||||
</pre>
|
||||
|
||||
---
|
||||
|
||||
<pre>
|
||||
1 quincy
|
||||
5 beau
|
||||
9 kris
|
||||
</pre>
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,42 @@
|
||||
---
|
||||
id: 5e7b9f0e0b6c005b0e76f07a
|
||||
title: Використання Web Services
|
||||
challengeType: 11
|
||||
videoId: oNl1OVDPGKE
|
||||
bilibiliIds:
|
||||
aid: 759406136
|
||||
bvid: BV1b64y16746
|
||||
cid: 377332189
|
||||
dashedName: using-web-services
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Які два найпоширеніші способи відправлення даних через Інтернет?
|
||||
|
||||
## --answers--
|
||||
|
||||
JSON і TXT
|
||||
|
||||
---
|
||||
|
||||
JSON і XML
|
||||
|
||||
---
|
||||
|
||||
XML і TXT
|
||||
|
||||
---
|
||||
|
||||
XML і PHP
|
||||
|
||||
---
|
||||
|
||||
PHP і TXT
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f050b6c005b0e76f056
|
||||
title: 'Змінні та вирази'
|
||||
challengeType: 11
|
||||
videoId: nELR-uyyrok
|
||||
bilibiliIds:
|
||||
aid: 419396811
|
||||
bvid: BV1iV411p7Mn
|
||||
cid: 376318116
|
||||
dashedName: variables-expressions-and-statements
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який символ використовується під час визначення(змінної)?
|
||||
|
||||
## --answers--
|
||||
|
||||
~
|
||||
|
||||
---
|
||||
|
||||
&
|
||||
|
||||
---
|
||||
|
||||
=
|
||||
|
||||
---
|
||||
|
||||
\|
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,42 @@
|
||||
---
|
||||
id: 5e7b9f690b6c005b0e76f095
|
||||
title: Візуалізація даних за допомогою Python
|
||||
challengeType: 11
|
||||
videoId: e3lydkH0prw
|
||||
bilibiliIds:
|
||||
aid: 291996462
|
||||
bvid: BV15f4y1L7jH
|
||||
cid: 377544192
|
||||
dashedName: visualizing-data-with-python
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Більшість даних має бути \_\_\_\_\__ перед використанням.
|
||||
|
||||
## --answers--
|
||||
|
||||
конвертована в формат JSON
|
||||
|
||||
---
|
||||
|
||||
зображена
|
||||
|
||||
---
|
||||
|
||||
очищена
|
||||
|
||||
---
|
||||
|
||||
записана до пам'яті
|
||||
|
||||
---
|
||||
|
||||
перетворена в пісню
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,50 @@
|
||||
---
|
||||
id: 5e7b9f150b6c005b0e76f080
|
||||
title: 'Веб-сервіси: Обмеження частоти API і безпека'
|
||||
challengeType: 11
|
||||
videoId: pI-g0lI8ngs
|
||||
bilibiliIds:
|
||||
aid: 249456172
|
||||
bvid: BV1Sv411E7qa
|
||||
cid: 377336269
|
||||
dashedName: web-services-api-rate-limiting-and-security
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Додаткові ресурси:
|
||||
|
||||
\- [Відео-урок: getJSON](https://www.youtube.com/watch?v=TJGJN0T8tak)
|
||||
|
||||
\- [Відео-урок: JSON](https://www.youtube.com/watch?v=vTmw5RtfGMY)
|
||||
|
||||
\- [Відео-урок: Twitter](https://www.youtube.com/watch?v=2c7YwhvpCro)
|
||||
|
||||
\- [Відео-урок: XML](https://www.youtube.com/watch?v=AopYOlDa-vY)
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
При створенні запиту з Twitter API яку інформацію необхідно завжди надсилати з запитом?
|
||||
|
||||
## --answers--
|
||||
|
||||
Twitter username
|
||||
|
||||
---
|
||||
|
||||
date range
|
||||
|
||||
---
|
||||
|
||||
search term
|
||||
|
||||
---
|
||||
|
||||
key
|
||||
|
||||
## --video-solution--
|
||||
|
||||
4
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f150b6c005b0e76f07f
|
||||
title: 'Веб-сервіси: API'
|
||||
challengeType: 11
|
||||
videoId: oUNn1psfBJg
|
||||
bilibiliIds:
|
||||
aid: 589451017
|
||||
bvid: BV1zq4y1X7A9
|
||||
cid: 377336011
|
||||
dashedName: web-services-apis
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що означає API?
|
||||
|
||||
## --answers--
|
||||
|
||||
Application Portable Intelligence
|
||||
|
||||
---
|
||||
|
||||
Associate Programming International
|
||||
|
||||
---
|
||||
|
||||
Application Program Interface
|
||||
|
||||
---
|
||||
|
||||
Action Portable Interface
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,60 @@
|
||||
---
|
||||
id: 5e7b9f140b6c005b0e76f07d
|
||||
title: 'Веб-сервіси: JSON'
|
||||
challengeType: 11
|
||||
videoId: ZJE-U56BppM
|
||||
bilibiliIds:
|
||||
aid: 419491911
|
||||
bvid: BV1r3411672w
|
||||
cid: 377332928
|
||||
dashedName: web-services-json
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що буде виведено на екран після виконання приведеного нижче коду?:
|
||||
|
||||
```python
|
||||
import json
|
||||
data = '''
|
||||
[
|
||||
{ "id" : "001",
|
||||
"x" : "2",
|
||||
"name" : "Quincy"
|
||||
} ,
|
||||
{ "id" : "009",
|
||||
"x" : "7",
|
||||
"name" : "Mrugesh"
|
||||
}
|
||||
]
|
||||
'''
|
||||
info = json.loads(data)
|
||||
print(info[1]['name'])
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
Quincy
|
||||
|
||||
---
|
||||
|
||||
Mrugesh
|
||||
|
||||
---
|
||||
|
||||
001
|
||||
|
||||
---
|
||||
|
||||
009
|
||||
|
||||
---
|
||||
|
||||
[Error]
|
||||
|
||||
## --video-solution--
|
||||
|
||||
2
|
||||
|
@ -0,0 +1,34 @@
|
||||
---
|
||||
id: 5e7b9f140b6c005b0e76f07e
|
||||
title: 'Веб-сервіси: Сервісно-орієнтовний підхід'
|
||||
challengeType: 11
|
||||
videoId: muerlsCHExI
|
||||
bilibiliIds:
|
||||
aid: 846899335
|
||||
bvid: BV1E54y1J7oz
|
||||
cid: 377333277
|
||||
dashedName: web-services-service-oriented-approach
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Згідно сервісно-орієнтовного підходу до розробки web-додатків, де розташовані дані?
|
||||
|
||||
## --answers--
|
||||
|
||||
Розповсюджені між багатьма комп'ютерними системами, які поєднані між собою через інтернет або внутрішню мережу.
|
||||
|
||||
---
|
||||
|
||||
В межах різних служб на головному веб-сервері.
|
||||
|
||||
---
|
||||
|
||||
На окремому сервері бази даних.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,34 @@
|
||||
---
|
||||
id: 5e7b9f0e0b6c005b0e76f07c
|
||||
title: 'Веб-сервіси: Схема XML'
|
||||
challengeType: 11
|
||||
videoId: yWU9kTxW-nc
|
||||
bilibiliIds:
|
||||
aid: 631951466
|
||||
bvid: BV1Vb4y1r7m7
|
||||
cid: 377332603
|
||||
dashedName: web-services-xml-schema
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що таке XSD?
|
||||
|
||||
## --answers--
|
||||
|
||||
Специфікація схеми W3C для XML.
|
||||
|
||||
---
|
||||
|
||||
Стандартна JSON схема з MOZ.
|
||||
|
||||
---
|
||||
|
||||
Розширюваний симуляційний драйвер
|
||||
|
||||
## --video-solution--
|
||||
|
||||
1
|
||||
|
@ -0,0 +1,47 @@
|
||||
---
|
||||
id: 5e7b9f0e0b6c005b0e76f07b
|
||||
title: 'Веб-сервіси: XML'
|
||||
challengeType: 11
|
||||
videoId: _pZ0srbg7So
|
||||
bilibiliIds:
|
||||
aid: 761920032
|
||||
bvid: BV1n64y1x7KW
|
||||
cid: 377332379
|
||||
dashedName: web-services-xml
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Що не так з наступним XML?:
|
||||
|
||||
```xml
|
||||
<person>
|
||||
<name>Chuck</name>
|
||||
<phone type="intl">
|
||||
+1 734 303 4456
|
||||
<email hide="yes" />
|
||||
</person>
|
||||
```
|
||||
|
||||
## --answers--
|
||||
|
||||
Тег закриття відсутній в email.
|
||||
|
||||
---
|
||||
|
||||
Пробіли призведуть до недійсності XML.
|
||||
|
||||
---
|
||||
|
||||
Тег закриття відсутній в phone.
|
||||
|
||||
---
|
||||
|
||||
Простий текст повинен бути закодований за допомогою UTF-8.
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
id: 5e7b9f090b6c005b0e76f065
|
||||
title: Робота зі списками
|
||||
challengeType: 11
|
||||
videoId: lCnHfTHkhbE
|
||||
bilibiliIds:
|
||||
aid: 376965958
|
||||
bvid: BV1No4y1S7oi
|
||||
cid: 376387989
|
||||
dashedName: working-with-lists
|
||||
---
|
||||
|
||||
# --question--
|
||||
|
||||
## --text--
|
||||
|
||||
Який метод використовується, щоб додати елемент в кінці списку?
|
||||
|
||||
## --answers--
|
||||
|
||||
insert
|
||||
|
||||
---
|
||||
|
||||
push
|
||||
|
||||
---
|
||||
|
||||
append
|
||||
|
||||
---
|
||||
|
||||
new
|
||||
|
||||
## --video-solution--
|
||||
|
||||
3
|
||||
|
@ -0,0 +1,105 @@
|
||||
---
|
||||
id: 5e44412c903586ffb414c94c
|
||||
title: Арифметичне форматування
|
||||
challengeType: 10
|
||||
forumTopicId: 462359
|
||||
dashedName: arithmetic-formatter
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Ви маєте [виконати цей проєкт за допомогою нашого стартового коду Replit](https://replit.com/github/freeCodeCamp/boilerplate-arithmetic-formatter).
|
||||
|
||||
Ми й досі в процесі розробки інтерактивної складової навчального курсу Python. Наразі можете ознайомитись із наступними відео на YouTube каналі freeCodeCamp.org. У них ви знайдете все необхідне для завершення цього проєкту:
|
||||
|
||||
- [Python for Everybody Video Course](https://www.freecodecamp.org/news/python-for-everybody/) (14 годин)
|
||||
- [Learn Python Video Course](https://www.freecodecamp.org/news/learn-python-video-course/) (10 години)
|
||||
|
||||
# --instructions--
|
||||
|
||||
У початковій школі школярів вчать вирішувати арифметичні приклади вертикально, бо це легше. Наприклад, "235 + 52" перетворюється на:
|
||||
|
||||
```py
|
||||
235
|
||||
+ 52
|
||||
-----
|
||||
```
|
||||
|
||||
Створіть функцію, яка отримує список рядків з арифметичними завданнями та вводить їх послідовно у вертикальному вигляді. Функція повинна при необхідності брати другий аргумент. Коли другий аргумент встановлено на `True`, відповіді повинні відображатися.
|
||||
|
||||
## Приклад
|
||||
|
||||
Виклик функції:
|
||||
|
||||
```py
|
||||
arithmetic_arranger(["32 + 698", "3801 - 2", "45 + 43", "123 + 49"])
|
||||
```
|
||||
|
||||
Виведення:
|
||||
|
||||
```py
|
||||
32 3801 45 123
|
||||
+ 698 - 2 + 43 + 49
|
||||
----- ------ ---- -----
|
||||
```
|
||||
|
||||
Виклик функції:
|
||||
|
||||
```py
|
||||
arithmetic_arranger(["32 + 8", "1 - 3801", "9999 + 9999", "523 - 49"], True)
|
||||
```
|
||||
|
||||
Виведення:
|
||||
|
||||
```py
|
||||
32 1 9999 523
|
||||
+ 8 - 3801 + 9999 - 49
|
||||
---- ------ ------ -----
|
||||
40 -3800 19998 474
|
||||
```
|
||||
|
||||
## Правила
|
||||
|
||||
Функція повернеться до правильного перетворення якщо наявні завдання відформатовані належним чином, в протилежному випадку, це буде **return** **string**, що описує помилку, яка має велике значення для користувача.
|
||||
|
||||
|
||||
- Ситуації, які приводять до помилки:
|
||||
- Якщо ** забагато завдань ** з'являються для функції. Ліміт **five**, що-небудь ще повернеться:`Error: Забагато завдань.`
|
||||
- Відповідні оператори, які приймають функцію **addition** and **subtraction**. Множення і ділення породжує помилку. Інші оператори, які не згадані у цій точці, тестовані не будуть. Отримана помилка буде:`Error: Оператор повинен бути '+' або '-'.`
|
||||
- Кожне число (операнд) повинен містити лише цифри. В іншому випадку, функція буде така:`Error: Числа повинні містити тільки цифри.`
|
||||
- Кожен операнд (також номер один з кожної сторони оператора) максимум може мати по чотири цифри по ширині. В іншому випадку, помилковий рядок видасть наступне:`Error: Числа не можуть бути більше чотирьох цифр.`
|
||||
- Якщо користувач подбав про правильний формат проблем, то перетворення буде слідувати наступним правилам:
|
||||
- Повинен бути лише один пробіл між оператором і найдовшим із двох операндів, оператор буде на тому ж рядку, що й другий операнд, обоє операндів будуть в однаковому порядку, як і надано (перший буде зверху, а другий - знизу).
|
||||
- Числа повинні бути вирівняні справа.
|
||||
- Має бути чотири пробіли між кожним завданням.
|
||||
- У нижній частині кожного завдання мають бути тире. Тире повинні йти по всій довжині кожного завдання індивідуально. (Приклад вище показує, як це повинно виглядати.)
|
||||
|
||||
## Розробка
|
||||
|
||||
Напишіть свій код на `arithmetic_arranger.py`. Для розробки, ви можете використати `main.py`, щоб перевірити вашу функцію `arithmetic_arranger()`. Натисніть кнопку "run" і `main.py` запуститься.
|
||||
|
||||
## Тестування
|
||||
|
||||
Розділи з тестами для цього проєкту знаходяться в `test_module.py`. Ми запускаємо тести з `test_module.py` в `main.py` для вашої зручності. Тести запустяться автоматично кожного разу, коли ви натиснете клавішу "run". Як альтернатива, ви можете запустити тести, ввівши у консолях `pytest`.
|
||||
|
||||
## Надіслати
|
||||
|
||||
Скопіюйте URL-адресу вашого проєкту та відправте його.
|
||||
|
||||
# --hints--
|
||||
|
||||
Функція повинна правильно відформатувати арифметичні проблеми та пройти тестування.
|
||||
|
||||
```js
|
||||
|
||||
```
|
||||
|
||||
# --solutions--
|
||||
|
||||
```js
|
||||
/**
|
||||
Backend challenges don't need solutions,
|
||||
because they would need to be tested against a full working project.
|
||||
Please check our contributing guidelines to learn more.
|
||||
*/
|
||||
```
|
@ -0,0 +1,108 @@
|
||||
---
|
||||
id: 5e44413e903586ffb414c94e
|
||||
title: Додаток для ведення бюджету
|
||||
challengeType: 10
|
||||
forumTopicId: 462361
|
||||
dashedName: budget-app
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Ви маєте [виконати цей проєкт за допомогою нашого стартового коду Replit](https://replit.com/github/freeCodeCamp/boilerplate-budget-app).
|
||||
|
||||
Ми й досі в процесі розробки інтерактивної складової навчального курсу Python. Наразі можете ознайомитись із наступними відео на YouTube каналі freeCodeCamp.org. У них ви знайдете все необхідне для завершення цього проєкту:
|
||||
|
||||
- [Python for Everybody Video Course](https://www.freecodecamp.org/news/python-for-everybody/) (14 годин)
|
||||
|
||||
- [Learn Python Video Course](https://www.freecodecamp.org/news/learn-python-video-course/) (10 години)
|
||||
|
||||
# --instructions--
|
||||
|
||||
Зробіть клас `Category` в `budget.py`. Реклама повинна використовувати об'єкти на основі різних бюджетних категорій, а саме *їжа*, *одяг*, та *розваги*. Коли об'єкти створені, вони передаються в назву категорії. Клас повинен мати приклад змінної, що називається `ledger`, яка є за списком. Клас також повинен містити наступні методи:
|
||||
|
||||
- Метод `deposit`, що приймає суму та опис. Якщо жодного опису не дано, то воно автоматично переходить до порожнього рядка. Метод повинен додати об'єкт до списку реєстрацій у вигляді `{"amount": amount, "description": description}`.
|
||||
- Метод `withdraw`, який схожий до методу `deposit`, але кількість, яку він передає, повинна зберігатися у реєстраційному списку як від'ємне число. Якщо недостатньо коштів, до реєстраційного списку додавати нічого не потрібно. Цей метод повинен переходити у `True`, якщо виведення займе місце, і в іншому випадку `False`.
|
||||
- Метод `get_balance`, що повертає поточний баланс категорії бюджету на основі депозитів і зняття.
|
||||
- Метод `transfer`, що приймає суму або іншу бюджетну категорію в якості аргументів. Метод повинен додати виведення суми та опис "Перенести до [Категорії Призначення Бюджету]". Метод повинен додати депозит до іншої бюджетної категорії, що містить суму та опис "Передача з [Категорії Джерела Бюджету]". Якщо недостатньо грошей, до реєстраційного списку додавати нічого не потрібно. Цей метод повинен переходити в `True`, якщо виведення займе місце, і в іншому випадку `False`.
|
||||
- Метод `check_funds`, що приймає суму в якості аргументу. Це переходить у `False`, якщо сума більша ніж баланс бюджетної категорії і повертає `True` в іншому випадку. Цей метод слід використовувати як метод `withdraw`, так і метод `transfer`.
|
||||
|
||||
Якщо бюджетний об'єкт надрукований, він повинен відображатися:
|
||||
|
||||
- Рядок заголовка із 30 символів, де є назва категорії знаходиться у рядку символів `*`.
|
||||
- Список елементів у реєстраційній базі. Кожен рядок повинен показувати опис і суму. Перші 23 символи опису повинні відображатися, а далі вже сума. Суму слід вирівняти з правого боку, помістити два десяткові знаки, та відобразити максимум 7 символів.
|
||||
- Рядок, що показує загальну категорію.
|
||||
|
||||
Ось приклад результату:
|
||||
|
||||
```bash
|
||||
*************Food*************
|
||||
initial deposit 1000.00
|
||||
groceries -10.15
|
||||
restaurant and more foo -15.89
|
||||
Transfer to Clothing -50.00
|
||||
Total: 923.96
|
||||
```
|
||||
|
||||
Окрім класу `Category`, створіть функцію (за межами класу) під назвою `create_spend_chart`, яка приймає список категорій в якості аргументу. Вона повинна повертати рядок зі стовпчиковою діаграмою.
|
||||
|
||||
Графік повинен показувати кількість відсотків, витрачених в кожній категорії, що передається до функції. Відсоток витраченого повинен бути розрахований лише за рахунок зняття, але не з депозитів. Внизу лівої частини графіку повинні бути мітки 0 - 100. "Стовпчики" у стовпчиковій діаграмі повинні бути створені із символу "0". Висота кожного стовпчика повинна бути округлена до найближчого 10. Горизонтальна лінія під стовпчиками повинна бути на двох пробілах біля кінцевої панелі. Кожна назва категорії повинна бути написана вертикально нижче стовпчика. Вгорі повинен бути заголовок, де вказано "Відсоток, витрачений категорією".
|
||||
|
||||
Ця функція буде тестуватися з чотирма категоріями.
|
||||
|
||||
Подивіться на приклад виходу нижче дуже близько і переконайтеся, що інтервал результатів повністю відповідає прикладу.
|
||||
|
||||
```bash
|
||||
Percentage spent by category
|
||||
100|
|
||||
90|
|
||||
80|
|
||||
70|
|
||||
60| o
|
||||
50| o
|
||||
40| o
|
||||
30| o
|
||||
20| o o
|
||||
10| o o o
|
||||
0| o o o
|
||||
----------
|
||||
F C A
|
||||
o l u
|
||||
o o t
|
||||
d t o
|
||||
h
|
||||
i
|
||||
n
|
||||
g
|
||||
```
|
||||
|
||||
Розділи з тестами для цього проєкту є в `test_module.py`.
|
||||
|
||||
## Розробка
|
||||
|
||||
Запишіть свій код в `budget.py`. Для розробки, ви можете використати `main.py` для перевірки вашого класу `Category`. Натисніть клавішу "run" і `main.py` запуститься.
|
||||
|
||||
## Тестування
|
||||
|
||||
Ми імпортували тести з `test_module.py` до `main.py` для вашої зручності. Тести запустяться автоматично кожен раз, коли ви натиснете клавішу "run".
|
||||
|
||||
## Надсилання
|
||||
|
||||
Скопіюйте URL-адресу вашого проєкту і відправте його до freeCodeCamp.
|
||||
|
||||
# --hints--
|
||||
|
||||
Ви повинні створити клас "Категорія" і пройти всі тести.
|
||||
|
||||
```js
|
||||
|
||||
```
|
||||
|
||||
# --solutions--
|
||||
|
||||
```js
|
||||
/**
|
||||
Backend challenges don't need solutions,
|
||||
because they would need to be tested against a full working project.
|
||||
Please check our contributing guidelines to learn more.
|
||||
*/
|
||||
```
|
@ -0,0 +1,118 @@
|
||||
---
|
||||
id: 5e444147903586ffb414c94f
|
||||
title: Калькулятор площі багатокутника
|
||||
challengeType: 10
|
||||
forumTopicId: 462363
|
||||
dashedName: polygon-area-calculator
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Ви маєте [виконати цей проєкт за допомогою нашого стартового коду Replit](https://replit.com/github/freeCodeCamp/boilerplate-polygon-area-calculator).
|
||||
|
||||
Ми й досі в процесі розробки інтерактивної складової навчального курсу Python. Наразі можете ознайомитись із наступними відео на YouTube каналі freeCodeCamp.org. У них ви знайдете все необхідне для завершення цього проєкту:
|
||||
|
||||
- [Python for Everybody Video Course](https://www.freecodecamp.org/news/python-for-everybody/) (14 годин)
|
||||
|
||||
- [Learn Python Video Course](https://www.freecodecamp.org/news/learn-python-video-course/) (10 години)
|
||||
|
||||
# --instructions--
|
||||
|
||||
У цьому проєкті ви будете використовувати програмування, що зорієнтоване на проєкті для створення класів "Rectangle" і "Square". Клас "Square" повинен бути підкласом до "Rectangle" і наслідувати його методи та атрибути.
|
||||
|
||||
## Клас "Rectangle"
|
||||
|
||||
Зробіть початковими атрибутами `width` та `height`, коли ви створюєте об'єкт Rectangle. Клас також повинен містити наступні методи:
|
||||
|
||||
- `set_width`
|
||||
- `set_height`
|
||||
- `get_area`: повертає площину (`width * height`)
|
||||
- `get_perimeter`: повертає периметр (`2 * width + 2 * height`)
|
||||
- `get_diagonal`: повертає діагональ (`(width ** 2 + height ** 2) ** .5`)
|
||||
- `get_picture`: повертає рядок, який представлений формою з "\*" ліній. Кількість рядків має бути рівною висоті, а кількість "\*" у кожному рядку має бути рівною ширині. Наприкінці кожного рядка має бути новий рядок (`\n`). Якщо ширина або висота більші за 50, то рядок повинен повернути: "Завеликий для зображення.".
|
||||
- `get_amount_inside`: бере іншу форму (квадрат чи трикутник) як аргумент. Повертає кількість разів, скільки потрібна форма може поміститися у задану форму (без обертання). Наприклад, прямокутник з шириною 4 і висотою 8 може вмістити два квадрати зі сторонами 4.
|
||||
|
||||
Додатково, якщо екземпляр Rectangle представлений як рядок, він має виглядати так: `Rectangle(width=5, height=10)`
|
||||
|
||||
## Клас Square
|
||||
|
||||
Клас Square має бути підкласом Rectangle. Коли ви створюєте об'єкт Square, зберігається довжина однієї сторони. Метод `__init__` має зберігати довжину сторони в атрибутах `width` та `height` з класу Rectangle.
|
||||
|
||||
Клас Square повинен мати доступ до методів класу Rectange, але також повинен містити метод `set_side`. Якщо екземпляр Square представлений у вигляді рядка, то це має виглядати так: `Square(side=9)`
|
||||
|
||||
Додатково, методи `set_width` та `set_height` на класі Square повинні встановити як ширину, так і висоту.
|
||||
|
||||
## Приклад використання
|
||||
|
||||
```py
|
||||
rect = shape_calculator.Rectangle(10, 5)
|
||||
print(rect.get_area())
|
||||
rect.set_height(3)
|
||||
print(rect.get_perimeter())
|
||||
print(rect)
|
||||
print(rect.get_picture())
|
||||
|
||||
sq = shape_calculator.Square(9)
|
||||
print(sq.get_area())
|
||||
sq.set_side(4)
|
||||
print(sq.get_diagonal())
|
||||
print(sq)
|
||||
print(sq.get_picture())
|
||||
|
||||
rect.set_height(8)
|
||||
rect.set_width(16)
|
||||
print(rect.get_amount_inside(sq))
|
||||
```
|
||||
|
||||
Цей код має повернути:
|
||||
|
||||
```bash
|
||||
50
|
||||
26
|
||||
Rectangle(width=10, height=3)
|
||||
**********
|
||||
**********
|
||||
**********
|
||||
|
||||
81
|
||||
5.656854249492381
|
||||
Square(side=4)
|
||||
****
|
||||
****
|
||||
****
|
||||
****
|
||||
|
||||
8
|
||||
```
|
||||
|
||||
Розділи з тестами для цього проєкту є в `test_module.py`.
|
||||
|
||||
## Розробка
|
||||
|
||||
Запишіть свій код в `shape_calculator.py`. Для розробки, ви можете використати `main.py`, щоб перевірити вашу функцію `shape_calculator()`. Натисніть клавішу "run" і `main.py` запуститься.
|
||||
|
||||
## Тестування
|
||||
|
||||
Ми імпортували тести з `test_module.py` до `main.py` для вашої зручності. Тести запустяться автоматично кожен раз, коли ви натиснете клавішу "run".
|
||||
|
||||
## Надсилання
|
||||
|
||||
Скопіюйте URL-адресу вашого проєкту і відправте його до freeCodeCamp.
|
||||
|
||||
# --hints--
|
||||
|
||||
Це має створити класи "Rectangle", "Square" та пройти тестування.
|
||||
|
||||
```js
|
||||
|
||||
```
|
||||
|
||||
# --solutions--
|
||||
|
||||
```js
|
||||
/**
|
||||
Backend challenges don't need solutions,
|
||||
because they would need to be tested against a full working project.
|
||||
Please check our contributing guidelines to learn more.
|
||||
*/
|
||||
```
|
@ -0,0 +1,92 @@
|
||||
---
|
||||
id: 5e44414f903586ffb414c950
|
||||
title: Калькулятор вірогідностей
|
||||
challengeType: 10
|
||||
forumTopicId: 462364
|
||||
dashedName: probability-calculator
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Ви маєте [виконати цей проєкт за допомогою нашого стартового коду Replit](https://replit.com/github/freeCodeCamp/boilerplate-probability-calculator).
|
||||
|
||||
Ми й досі в процесі розробки інтерактивної складової навчального курсу Python. Наразі можете ознайомитись із наступними відео на YouTube каналі freeCodeCamp.org. У них ви знайдете все необхідне для завершення цього проєкту:
|
||||
|
||||
- [Python for Everybody Video Course](https://www.freecodecamp.org/news/python-for-everybody/) (14 годин)
|
||||
|
||||
- [Learn Python Video Course](https://www.freecodecamp.org/news/learn-python-video-course/) (10 години)
|
||||
|
||||
# --instructions--
|
||||
|
||||
Уявімо, що у капелюсі лежить 5 синіх кульок, 4 червоні та 2 зелені кульки. Яка ймовірність того, що з 4 кульок, які ви витягнете, принаймні 1 буде червоною та 2 зеленими? І хоча можливо прорахувати вірогідність за допомогою вищої математики, легше буде написати програму для виконання великої кількості експериментів для оцінки приблизної вірогідності.
|
||||
|
||||
Для цього проєкту, напишіть програму, яка визначатиме вірогідність випадкового діставання певних кульок із капелюха.
|
||||
|
||||
Спершу створіть клас `Hat` в `prob_calculator.py`. Клас має взяти змінну кількість аргументів, яка вточнюватиме кількість кульок усіх кольорів із капелюха. Наприклад, клас об'єкту можна створити такими способами:
|
||||
|
||||
```py
|
||||
hat1 = Hat(yellow=3, blue=2, green=6)
|
||||
hat2 = Hat(red=5, orange=4)
|
||||
hat3 = Hat(red=5, orange=4, black=1, blue=0, pink=2, striped=9)
|
||||
```
|
||||
|
||||
Капелюх завжди створюється з принаймні однією кулькою. Аргументи, які передаються в об'єкт капелюха, під час створення мають конвертуватися в приклад змінної `contents`. `contents` має бути списком рядків з елементами для кожної кульки у капелюсі. Кожний елемент списку має бути назвою кольору, яка позначатиме кожну кульку певного кольору. Наприклад, якщо ваш капелюх `{"red": 2, "blue": 1}`, `contents` має бути `["red", "red", "blue"]`.
|
||||
|
||||
Клас `Hat` повинен мати метод `draw`, який приймає аргумент з позначенням кількості кульок, які можна витягти з капелюха. Цей метод має випадково витягати кульки з `contents` та повертати ці кульки списком рядків. Кульки не повинні повертатися до капелюха після того, як їх витягли (як в експерименті з урною без заміни). Якщо кількість кульок, яку треба витягти, перевищує доступну кількість, поверніть усі кульки.
|
||||
|
||||
Потім створіть функцію `experiment` в `prob_calculator.py` (не в класі `Hat`). Ця функція повинна приймати наступні аргументи:
|
||||
|
||||
- `hat`: об'єкт капелюха з кульками, який має скопійований у функцію.
|
||||
- `expected_balls`: об'єкт, який вказує на точну кількість кульок, котру треба вийняти з капелюха для експерименту. Наприклад, щоб визначити вірогідність того, що ви витягнете 2 сині кульки та 1 червону кульку з капелюха, встановіть `expected_balls` на `{"blue":2, "red":1}`.
|
||||
- `num_balls_drawn`: кількість кульок, які треба витягти з капелюха в кожному експерименті.
|
||||
- `num_experiments`: кількість експериментів, які треба провести. (Чим більше експериментів було проведено, тим точнішою буде приблизна вірогідність.)
|
||||
|
||||
`experiment` функція має повертати вірогідність.
|
||||
|
||||
Допустимо, ви хочете визначити вірогідність витягти щонайменше 2 червоні кульки та 1 зелену кульку, коли ви витягаєте 5 кульок з капелюха, де лежить 6 чорних, 4 червоні та 3 зелені кульки. Для цього нам треба виконати `N` експериментів, порахуйте скільки разів `M` ми можемо витягти принаймні 2 червоні кульки та 1 зелену кульку. Вирахуйте вірогідність як `M/N`. Кожен експеримент складається з: капелюха (з певними кульками), витягування певної кількості кульок та перевірка, чи ми витягли необхідні кульки.
|
||||
|
||||
Ось так ви можете викликати функцію `experiment` з 2000 експериментів (з прикладу зверху):
|
||||
|
||||
```py
|
||||
hat = Hat(black=6, red=4, green=3)
|
||||
probability = experiment(hat=hat,
|
||||
expected_balls={"red":2,"green":1},
|
||||
num_balls_drawn=5,
|
||||
num_experiments=2000)
|
||||
```
|
||||
|
||||
Оскільки все базується на випадкових витяганнях, то вірогідність буде злегка відрізнятися з кожним новим запуском коду.
|
||||
|
||||
*Підказка: спробуйте використати вже імпортовані модулі зверху `prob_calculator.py`. Не ініціалізуйте випадкове початкове значення в `prob_calculator.py`.*
|
||||
|
||||
## Розробка
|
||||
|
||||
Запишіть свій код в `prob_calculator.py`. Для розробки, ви можете використати `main.py` для перевірки вашого коду. Натисніть кнопку "run" і `main.py` запуститься.
|
||||
|
||||
Boilerplate містить команду `import` для `copy` та `random` модулів. Спробуйте використати їх у своєму проєкті.
|
||||
|
||||
## Тестування
|
||||
|
||||
Розділи з тестами для цього проєкту знаходяться в `test_module.py`. Ми імпортували тести з `test_module.py` до `main.py` для вашої зручності. Тести запустяться автоматично кожного разу, коли ви натиснете клавішу "run".
|
||||
|
||||
## Надсилання
|
||||
|
||||
Скопіюйте URL-адресу вашого проєкту і відправте його до freeCodeCamp.
|
||||
|
||||
# --hints--
|
||||
|
||||
Програма повинна правильно вираховувати ймовірності та пройти тестування.
|
||||
|
||||
```js
|
||||
|
||||
```
|
||||
|
||||
# --solutions--
|
||||
|
||||
```js
|
||||
/**
|
||||
Backend challenges don't need solutions,
|
||||
because they would need to be tested against a full working project.
|
||||
Please check our contributing guidelines to learn more.
|
||||
*/
|
||||
```
|
@ -0,0 +1,85 @@
|
||||
---
|
||||
id: 5e444136903586ffb414c94d
|
||||
title: Калькулятор часу
|
||||
challengeType: 10
|
||||
forumTopicId: 462360
|
||||
dashedName: time-calculator
|
||||
---
|
||||
|
||||
# --description--
|
||||
|
||||
Ви маєте [виконати цей проєкт за допомогою нашого стартового коду Replit](https://replit.com/github/freeCodeCamp/boilerplate-time-calculator).
|
||||
|
||||
Ми й досі в процесі розробки інтерактивної складової навчального курсу Python. Наразі можете ознайомитись із наступними відео на YouTube каналі freeCodeCamp.org. У них ви знайдете все необхідне для завершення цього проєкту:
|
||||
|
||||
- [Python for Everybody Video Course](https://www.freecodecamp.org/news/python-for-everybody/) (14 годин)
|
||||
|
||||
- [Learn Python Video Course](https://www.freecodecamp.org/news/learn-python-video-course/) (10 години)
|
||||
|
||||
# --instructions--
|
||||
|
||||
Напишіть функцію з назвою `add_time`, яка приймає два обов'язкових параметри та один необов'язковий параметр:
|
||||
|
||||
- початок часу в 12-годинному форматі годинника (закінчується на AM чи PM)
|
||||
- проміжок часу, який позначає кількість годин та хвилин
|
||||
- (необов'язкове) перший день тижня (без урахування регістру)
|
||||
|
||||
Функція має додати проміжок часу до початку часу та повернути результат.
|
||||
|
||||
Якщо результат буде наступним днем, то він має показати `(next day)` після часу. Якщо результат буде за декілька днів, то він має показати `(n days later)` після часу, де "n" — це кількість днів.
|
||||
|
||||
Якщо функції задано довільний параметр першого дня тижня, то вивід має показувати день тижня з результату. День тижня у виводі має показуватися перед часом та після кількості днів.
|
||||
|
||||
Нижче наведені приклади різних випадків, які має опрацьовувати функція. Слідкуйте за інтервалами та пунктуацією в результатах.
|
||||
|
||||
```py
|
||||
add_time("3:00 PM", "3:10")
|
||||
# Returns: 6:10 PM
|
||||
|
||||
add_time("11:30 AM", "2:32", "Monday")
|
||||
# Returns: 2:02 PM, Monday
|
||||
|
||||
add_time("11:43 AM", "00:20")
|
||||
# Returns: 12:03 PM
|
||||
|
||||
add_time("10:10 PM", "3:30")
|
||||
# Returns: 1:40 AM (next day)
|
||||
|
||||
add_time("11:43 PM", "24:20", "tueSday")
|
||||
# Returns: 12:03 AM, Thursday (2 days later)
|
||||
|
||||
add_time("6:30 PM", "205:12")
|
||||
# Returns: 7:42 AM (9 days later)
|
||||
```
|
||||
|
||||
Не імпортуйте бібліотеки Python. Припускаймо, що початок часу завжди валідний. Мінути у проміжку часу будуть цілим числом меншим за 60, але години можуть бути будь-яким числом.
|
||||
|
||||
## Розробка
|
||||
|
||||
Запишіть свій код в `time_calculator.py`. Для розробки, ви можете використати `main.py`, щоб перевірити вашу функцію `time_calculator()`. Натисніть кнопку "run" і `main.py` запуститься.
|
||||
|
||||
## Тестування
|
||||
|
||||
Розділи з тестами для цього проєкту знаходяться в `test_module.py`. Ми імпортували тести з `test_module.py` до `main.py` для вашої зручності. Тести запустяться автоматично кожного разу, коли ви натиснете клавішу "run".
|
||||
|
||||
## Надсилання
|
||||
|
||||
Скопіюйте URL-адресу вашого проєкту і відправте його до freeCodeCamp.
|
||||
|
||||
# --hints--
|
||||
|
||||
Функція повинна правильно додавати час і пройти тестування.
|
||||
|
||||
```js
|
||||
|
||||
```
|
||||
|
||||
# --solutions--
|
||||
|
||||
```js
|
||||
/**
|
||||
Backend challenges don't need solutions,
|
||||
because they would need to be tested against a full working project.
|
||||
Please check our contributing guidelines to learn more.
|
||||
*/
|
||||
```
|
Reference in New Issue
Block a user