Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   помогите нарисовать фигуру через консоль (https://javascript.ru/forum/misc/61471-pomogite-narisovat-figuru-cherez-konsol.html)

savasda 19.02.2016 21:53

помогите нарисовать фигуру через консоль
 
все мозги уже сломал, ребята помогите пожалуйста с такой задачей. Требуется вывести в консоль такую фигуру

ума не приложу как это реализовать, натолкните на идею плиз

savasda 19.02.2016 21:58

пробовал через двумерный массив, но что-то пошло не так)

Vlasenko Fedor 19.02.2016 22:19

Я не верстальщик, так что только подтолкну. В консоли можно использовать также css стили для оформления
Пример
var styles = [
    "width: 0;",
    "height: 0;",
    "border-style: solid;",
    "border-width: 50px 0 50px 86.6px;",
    "border-color: transparent transparent transparent #007bff;",
].join(";");

console.log("%c ", styles);

savasda 19.02.2016 22:27

тут суть в том чтобы использовать для рисования символы unicodeю вот к примеру черный квадрат - "\u2588\u2588". Как написать цикл который заполнит "холст" 55х55 в виде такой фигуры?!

savasda 19.02.2016 22:37

и получится закрашенный квадрат 55 на 55(

Vlasenko Fedor 19.02.2016 22:48

var len = 55 * 55;
var str = "";
while(len--){
    str += '\u2588\u2588';
    len % 55 === 0 && ( str += "\n");
}
console.log( str);

savasda 19.02.2016 22:53

Цитата:

Сообщение от Poznakomlus (Сообщение 408499)
var len = 55 * 55;
var str = "";
while(len--){
    str += '\u2588\u2588';
    len % 55 === 0 && ( str += "\n");
}
console.log( str);

и на выходе снова имеем квадрат 55х55 полностью закрашенный!

Vlasenko Fedor 20.02.2016 00:06

надеюсь вы найдете как усовершенствовать этот черновик
var gaps = '';
var symbols = '';
var len = 55;
var str1 = '';
var str2 = ''

while(len--){
    gaps += ' ';
    symbols += '\u2588'
}

for(var i = 1, j = 53, z = 1; i <= 27; i += 1, j -=2, z += 2){
    str1 += symbols.slice(0, i) + gaps.slice(0, j) + symbols.slice(0, i) + "\n";
    str2 += "\n" + symbols.slice(0, 28 - i) + gaps.slice(0, z) + symbols.slice(0, 28 - i);
}
console.log( "\n\n" + str1 + symbols + str2);

savasda 20.02.2016 00:27

блин сложно то как все!

savasda 20.02.2016 00:27

зато работает!)


Часовой пояс GMT +3, время: 03:21.