SHOW:
|
|
- or go back to the newest paste.
| 1 | // https://zero.p2p.shpp.me/tasks/3_5_christmas_tree.html | |
| 2 | // "Ёлочка" | |
| 3 | - | let size = +prompt('Размер ёлочки')
|
| 3 | + | |
| 4 | - | let i |
| 4 | + | let size = 5 // беремо розмір ялинки без пінька |
| 5 | - | let j |
| 5 | + | let row // рядок |
| 6 | - | for(i = 0; i < size; i++){
|
| 6 | + | let col // колонка |
| 7 | - | for(j = 0; j < (size - 1) + (size - 2); j++){
|
| 7 | + | for(row = 0; row < size; row++) { // поки не перебрали віс рядки
|
| 8 | - | if(i + j >= size - 2 && j - i < size - 1 && i != size - 1 || i == size - 1 && j == i - 1){
|
| 8 | + | for(col = 0; col < (size * 2 - 1); col++) { // по колонкам в межах ширини ялини
|
| 9 | if(col >= size - row - 1 && col < size + row) { // на рядку size - row - 1 це початок зони зірок, size + row - кінець
| |
| 10 | console.put('*')
| |
| 11 | } | |
| 12 | - | console.put(' ')
|
| 12 | + | |
| 13 | console.put('-')
| |
| 14 | } | |
| 15 | } | |
| 16 | - | } |
| 16 | + | |
| 17 | } | |
| 18 | /* але це не самий простий шлях, якщо буде бажання (бажано після свого сотаточного варіату) перегляньте ревью https://pastebin.com/DrA5U2j4 - якщо ви геній, то не завадить, якщо просто схильні ускладнювати - може допомогти. | |
| 19 | Там щось про таке | |
| 20 | раджу розбити спочатку задачу на підзадачі - декомпозувати, а потім кожну закодити: | |
| 21 | * отримати висоту | |
| 22 | * перебирати рядкі (кількість ітерацій = висота), | |
| 23 | * виводити потрібну кількість пробілів в поточному рядку | |
| 24 | * виводити потрібну кількість зірок в поточному рядку | |
| 25 | * виводити потрібну кількість пробілів в поточному рядку (це опционально) | |
| 26 | * перевести рядок | |
| 27 | * вивести пінь | |
| 28 | * | |
| 29 | * */ | |
| 30 | /* Гарного коду! */ | |
| 31 | зараз догнав, що в супердовгій умові ще й піньок був.. ну ні.. не варто, цікаво , але не варто так - декомпозуйте на прості підзадачи та їх виконуйте, - раджу) | |
| 32 | ps | |
| 33 | ну а побавитися можна і з піньком, но вже не простіша.) | |
| 34 | if((col >= size - row - 1 && col < size + row) && (row < size || col == size - 1)) |