Нормализовать набор чисел / найти максимальные и минимальные значения в наборе чисел - PullRequest
0 голосов
/ 26 января 2012

Мне было интересно, может ли кто-нибудь помочь с этим:

У меня есть ряд уравнений, которые приводят к 5 числам (a, b, c, d, e).Я хотел бы нормализовать эти числа в масштабе от 0 до 1

Проблема в том, что я заранее не знаю числа, поэтому я не знаю значения max и min.Другими словами, максимальные и минимальные числа различаются каждый раз, когда пользователь вводит различные значения в уравнения.

Я знаю, что мог бы использовать

Y = 1 + (xA) * (10-1) / (BA)

Где y - нормализованное значение для x.A - это минимальное значение, а B - максимальное значение.

Одно из чисел (a, b, c, d, e) может быть максимальным значением, а другое - минимальным.

В общем, мне нужно сравнить эти числа, найти, какое из них является максимальным, а какое - минимальным, и добавить их к вышеупомянутой формуле для нормализации.

Есть идеи?

PS этоiPhone SDK

Ответы [ 2 ]

0 голосов
/ 26 января 2012
float min = a;
float max = a;

if (b < min)
  min = b;
if (b > max)
  max = b;

И повторить последние 4 строки для c, d и e

Примечание. Конечно, правильным способом было бы повторить использование массива C, а не просто повторять строки, но это поможет вам начать.

0 голосов
/ 26 января 2012

создайте массив и сравните его.

NSArray *array = [[NSArray alloc] initWithObjects:[NSNumber numberWithInt:a], [NSNumber numberWithInt:b],[NSNumber numberWithInt:c],[NSNumber numberWithInt:d], nil];
int max = [[array valueForKeyPath:@"@max.intValue"] intValue];
int min = [[array valueForKeyPath:@"@min.intValue"] intValue];

надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...