- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
......
int a1=0,a2=0,a3=0,a4=0,a5=0,a6=0,a7=0,a8=0,a9=0,a10=0;
for (int i=0;i<arl->Count;i++)
{
if(arl[i]<0.1)
{
a1++;
}
if(arl[i]<0.2&&arl[i]>0.1)
{
a2++;
}
if(arl[i]<0.3&&arl[i]>0.2)
{
a3++;
}
if(arl[i]<0.4&&arl[i]>0.3)
{
a4++;
}
if(arl[i]<0.5&&arl[i]>0.4)
{
a5++;
}
if(arl[i]<0.6&&arl[i]>0.5)
{
a6++;
}
if(arl[i]<0.7&&arl[i]>0.6)
{
a7++;
}
if(arl[i]<0.8&&arl[i]>0.7)
{
a8++;
}
if(arl[i]<0.9&&arl[i]>0.8)
{
a9++;
}
if(arl[i]<1&&arl[i]>0.9)
{
a10++;
}
}
.....
guest 12.02.2010 02:50 # +2
KoirN 12.02.2010 03:23 # 0
xaionaro 27.02.2010 19:37 # 0
А так спору нет, такие вещи должны быть скорее наглядными, чем быстрыми, ибо я сомневаюсь, что такая извращённая оптимизация в данной программе в данном куске кода имеет смысл :)
xaionaro 27.02.2010 19:58 # 0
xaionaro 28.02.2010 18:39 # 0
guest 28.02.2010 18:03 # +1
PS не знаю как на сях пишется else if, может вместе
xaionaro 28.02.2010 18:08 # 0
guest 28.02.2010 18:53 # +1
И я уже сомневаюсь, что тут говнокод: такое обычно пишется в целях отладки, а потом стирается, так что нечего и задумываться об общем случае. Автор может в легкую менять диапазоны и делать их перекрывающимися, например
Впрочем для проверки рендома это лишнее, так что плюсанул.
xaionaro 28.02.2010 19:11 # 0
guest 12.02.2010 09:27 # 0
const int n = 10; // количество диапазонов
const int l = 0; // нижняя
const int h = 1; // и верхняя границы
const double d = (h-l)/n; // шаг
int *result = new int[n]
for (int i = 0; i < n; ++i) result[i] = 0;
for (int i = 0;i < arl->Count; ++i)
{
for (int j=n-1; j >= 0; ++j)
{
if (arl[i] > j * d)
{
result[j+1]++;
break;
}
}
}
guest 12.02.2010 09:28 # 0
guest 13.02.2010 12:24 # 0