Карта сайта

Это автоматически сохраненная страница от 18.03.2014. Оригинал был здесь: http://2ch.hk/b/res/64567075.html
Сайт a2ch.ru не связан с авторами и содержимым страницы
жалоба / abuse: admin@a2ch.ru

Втр 18 Мар 2014 17:00:48
Решитика задачку
Решитика задачку Я вам покушать подумать принёс.
Вот задачка из углублённого школьного курса любой школьник сделает по комбинаторике и теории вероятности + немного пограммирования на плюсах. Предлагайте свои решения или поливаем говном моё.

То что я надумал:

предел int-а от -2 147 483 648(MinInt) до 2 147 483 647(MaxInt), в условии сказано, что числа чётные, смело делим пополам.
Условие a=b не влияет на решение
Если подумать, то из условия c<d получаем сумму E(i) от 0 до MaxInt-2, то есть если C равно MinInt, то выражение будет истинным при d от MinInt-1 до MaxInt...Не сложно догадаться, что в таком случае C ограниченно значением MaxInt-1




Втр 18 Мар 2014 17:03:35
Ну же, котаны


Втр 18 Мар 2014 17:04:57



Втр 18 Мар 2014 17:20:06
Ну, как минимум размер инта зависит от платформы, так что единственный правильный ответ: зависит от платформы.

Втр 18 Мар 2014 17:29:53
>>64568111
Ну скажем самое распространённое, Шиндоушс 32- int в 4 байта

Втр 18 Мар 2014 17:38:01
Начнём с того, что эта параша не скомпилируется.

Втр 18 Мар 2014 17:41:28

#include<iostream>
#include<limits.h>
using namespace std;


int main()
{
int max = INT_MAX;
int min = INT_MIN;
unsigned border = max+min;
unsigned int count = 0;
unsigned int nonCount = 0;
cout<<border<<endl;
for(unsigned int a = 0, b = 0, c = 0, d = 0; a < border && b<border && c<border && d < border; a++, b++, c++, d++)
{
if(a % 2 && b %2 && c %2 && d % 2)
{
cout<<"Processed even: "<<nonCount<<endl;
nonCount++;
if(a == b && c < d)
{
cout<<"Match Found"<<endl;
count++;
}
}
}
cout<<"Total: "<<count<<endl;
return 0;
}

Втр 18 Мар 2014 17:46:06
>>64569420
>a++, b++, c++, d++
дебил

Втр 18 Мар 2014 17:47:26
>>64569679
Проблемы?

Втр 18 Мар 2014 17:59:35
>>64569751
Начнем с того, что все перебираемые тобой числа будут одинаковыми т.к. ты начинаешь отсчет с нуля и каждую итерацию цикла ты увеличиваешь их на 1.

Продолжим тем, что a == b && c < d это не a = b & c < d.

Втр 18 Мар 2014 18:13:46
>>64570497
Не число, а цифра, мудак.

Втр 18 Мар 2014 18:18:46
>>64571347
цифр всего 10, мудак

Втр 18 Мар 2014 18:24:10
>>64571623
Мразь тупая. Число будет образовано от a,b,c,d - от цифр, которые будут здесь одинаковыми, за каждую итерацию оно не может быть одинаковым, дебила кусок, одинаковыми будут цифры.

Втр 18 Мар 2014 18:25:58
Раз уж так unsigned int, то
>>64569420
>if(a % 2 && b %2 && c %2 && d % 2)
Убирай, -2 147 483 648 до 2 147 483 647

Втр 18 Мар 2014 18:29:08
>>64569420
И цикл не правильный, нужно перебрать все возможные комбинации, а у тебя они одинаково изменяются
И вообще я не просил код писать, есть у кого замечания по поводу решения в ОП посте?

Втр 18 Мар 2014 18:39:01
>>64571911
> Число будет образовано от a,b,c,d - от цифр, которые будут здесь одинаковыми


Втр 18 Мар 2014 18:41:31
>>64567075
Последним будет выполняться присвоение. Следовательно условие всегда истинно. Все соснули.

Втр 18 Мар 2014 18:54:59
>>64572921
А вообще антоша прав, там не сравнение(a==b&&c<d), а присваивание(a=b), но & взятие адреса

Втр 18 Мар 2014 18:56:52
Наверное всё таки имелось в виду a==b&&c<d нежели a=b&c<d, ибо как второй вариант треш из-за присваивания

Втр 18 Мар 2014 18:57:31
>>64567075
Это они специально = а не == написали?

Втр 18 Мар 2014 18:57:55
>>64573767
быстра фикс
первый вариант

Втр 18 Мар 2014 18:58:46

Втр 18 Мар 2014 18:59:49
>>64573799
Тест всё таки на знание, а не на нахождения заковырчестых изъёбок и ошибок

Втр 18 Мар 2014 19:05:07
>>64569420
Ебать ты дно.
Сложил минимум и максимум инта, они отличаются только знаком, т.е. цикл сработает хуй раз.


Втр 18 Мар 2014 19:07:17
>>64573649
>& взятие адреса
тащемта это bitwise and

Втр 18 Мар 2014 19:09:21
>>64574241
модуль от минимума на 1 больше чем от максимума, если быть совсем точным

Втр 18 Мар 2014 19:18:14
>>64574459
Согласен, обосрался в этом, но цикл все сработает -хуй раз.

Втр 18 Мар 2014 19:39:13

int count = 0;
int i, t = 0;
int a, b, c, d = 0;
int[] array = new int[2 147 483 647];

for (i = -2 147 483 648; i < 2 147 483 647; i++)
{
if (i % 2 == 0)
{
array[t] = i;
t++;
}
}
for (t = 0; t < array.Count - 1; t++)
{
// c = array[t];
// d = array[t + 1];
count += array.Count;
}
Console.Writeline(count);



← К списку тредов