|
Тут собираем годные задачи (javascript)
Этот пост будет пополняться лучшими задачами которые мы будем писать в каментах)
а пока тут пусть полежит ссылочка на это видео http://www.youtube.com/watch?v=KaqC5FnvAEc __________________________________________________ Задача № 0 Создать переменную видимую только в блоке (аналог let в ECMA6).
for ( var i = 0; i < 10; i++ ){
var ololo = i; // сделать так чтобы ololo был виден только в блоке с циклом
}
// но не тут
window.ololo // undefined
__________________________________________________ Задача № 1 Составить функцию, которая продолжала бы числовую последовательность (арифметическую). Например : var mySequence = continueSequence([ 1, 4, 7, 10 ]); mySequence(); // 13 mySequence(); // 16 __________________________________________________ Задача № 2 Реализовать функцию для сложения чисел, которые превышают Number.MAX_VALUE plus( "1e500", "1e500" ); // "2e500" (экпоненциальный вид для краткости. думаю, все знают про них) |
Интересная задача которая возникла пока с 2d игрался.
Определение коллизий 2х спрайтов. Принадлежность точки прямоугольнику, это элементарно. а вот столкновение двух прямоугольников как определить ? придумал вот такое алгоритм. Идея в том что, разница между двумя крайними точками системы из двух столкнувшихся прямоугольников,будет всегда меньше суммы ширин, двух прямоуоугольников. Если условие выполняется для высоты и ширины, значит есть пересечение.
r=function(x,y,w,h,x1,y1,w1,h1){
var sx=x<x1?x:x1,
sy=y<y1?y:y1,
ex=x+w>x1+w1?x+w:x1+w1,
ey=y+h>y1+h1?y+h:y1+h1;
return ex-sx<w+w1 && ey-sy<h+h1;
//if (ex-sx<w+w1 && ey-sy<h+h1)return true;
//else return false
}
// true
alert(r(
0,0,100,100,
50,50,100,100
));
// false
alert(r(
0,0,100,100,
150,50,100,100
));
// true
alert(r(
51,51,100,100,
50,50,100,100
));
// (один квадрат внутри другого) true
alert(r(
0,0,100,100,
50,50,10,10
));
|
Просто проверяешь принадлежит ли каждая вершина многоугольника к другому, если ни одна не принадлежит, то проверяешь пересекаются ли их отрезки друг с другом.
|
Задача № 0
|
Цитата:
Цитата:
|
|
Эту не выбрал потому что там концовку ждать долго
|
Цитата:
Был бы многоугольник веротно пришлось бы бить на треугольники. Алгоритм вроде тесты проходит, но в движок встроить неудаётся. |
Цитата:
|
Стоп так ты про прямоугольники паришься? так это вообще не задача даже О_О это же слишком сложно для простых умов..
Я то думал ты про многоугольники. Цитата:
|
| Часовой пояс GMT +3, время: 03:30. |
|