Помощь - Поиск - Пользователи - Календарь
Полная версия: Процедура MIN MAX
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Ада и другие языки
Tonny_Bennet
Помогите написать на C++ а то я вообще не представляю как это можно написать .. .sad.gif
Описать процедуру Min max (x,y) записывающей в переменную y иеньшее из значений x и y, а в переменную y - максимальное из этих значений. ( x и y - вещественные параметры, являющиеся одновременно входными и выходными). Используя четыре вызова процедуры найти минимум и максимум из данных чисел A,B,C,D.
volvo
#include <stdio.h>
#include <math.h>

void min_max(float &x, float &y) {

float T = x;

x = (x + y - abs(x - y)) / 2;
y = (T + y) - x;
}

int main() {

float A = 14.5, B = 17.5, C = 45.9, D = 11.5;
min_max(A, B);
min_max(C, D);

min_max(A, C);
min_max(B, D);
printf("min value = %.2f ; max value = %.2f\n", A, D);

return 0;

}
Это?
Tonny_Bennet
можт.... если честно то то не мне.... завтра покажу прогу человеку. если это то, что нужно, то просто замечательно. Если нет то напишу в топик. Но всё равно большое спасибо.

P.S. А ты не смотрел другие темы созданные мой? Мож тоже помочь чем нить можно????

not_censored
Цитата(Tonny_Bennet @ 18.05.2007 18:58) *

Помогите написать на C++ а то я вообще не представляю как это можно написать .. .sad.gif
Описать процедуру Min max (x,y) записывающей в переменную y иеньшее из значений x и y, а в переменную y - максимальное из этих значений. ( x и y - вещественные параметры, являющиеся одновременно входными и выходными). Используя четыре вызова процедуры найти минимум и максимум из данных чисел A,B,C,D.


Может лучше так:
Код

inline void minmax(float *x, float *y)
{
   register float tx = *x;
   *x = (*x > *y) ? *x : *y;
   *y = (tx < *y) ? tx : *y;
}

?

Вызывать:
Код
minmax(&A, &B);
volvo
Может и лучше, только это не функция на С++ (во-первых), почему бы НЕ пользоваться преимуществами языка, там где это можно сделать, а во-вторых можно привести еще 20 способов реализации - я привел только один из возможных...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.