Форум программистов, компьютерный форум CyberForum.ru

Задача на proc помогите плз - C++

Восстановить пароль Регистрация
 
helpme_plz
0 / 0 / 0
Регистрация: 07.02.2012
Сообщений: 21
08.02.2012, 22:23     Задача на proc помогите плз #1
Описать процедуру Minmax(X, Y), записывающую в переменную X ми- нимальное из значений X и Y, а в переменную Y — максимальное из этих значений (X и Y — вещественные параметры, являющиеся одновременно входными и выходными). Используя четыре вызова этой процедуры, найти минимальное и максимальное из данных чисел A, B, C, D.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
08.02.2012, 22:27     Задача на proc помогите плз #2
C++
1
2
3
4
5
6
void minmax(double &x, double &y)
{
   double t = std::max(x, y);
   y = std::min(x, y);
   x = t;
}
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
08.02.2012, 22:30     Задача на proc помогите плз #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void minmax(double &x, double &y)
{
    double buf = x;
    x = min(x, y);
    y = max(buf, y);
}
 
int main()
{
    double a, b, c, d;     // Ввод сами осуществляйте
    minmax(a, b);       // Теперь в а - мин, в b - mах
    minmax(c, d);       // Теперь в с - мин, d - max
    minmax(a, c);       // а - минимум
    minmax(b, d);       // d - максимум
    return 0;
}
Чтоб получить макросы min и max по-моему нужно math.h включить, но не факт...
Если что, юзайте следующее

C
1
2
#define min((a), (b)) ((a) < (b) ? (a) : (b))
#define max((a), (b)) ((a) > (b) ? (a) : (b))
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
08.02.2012, 22:33     Задача на proc помогите плз #4
Цитата Сообщение от HomeR_J_SimpsoN Посмотреть сообщение
Чтоб получить макросы min и max по-моему нужно math.h включить, но не факт...
Нет там такого...

Цитата Сообщение от HomeR_J_SimpsoN Посмотреть сообщение
double &x
Где такое в Си видели?
helpme_plz
0 / 0 / 0
Регистрация: 07.02.2012
Сообщений: 21
08.02.2012, 22:34  [ТС]     Задача на proc помогите плз #5
а в ответе что выводить надо?
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
08.02.2012, 22:42     Задача на proc помогите плз #6
Цитата Сообщение от go Посмотреть сообщение
Где такое в Си видели?
Вам исправить тег на [cpp]?
Что за накат =)
А на счет макросов - я не в курсе где они лежат, посему тупо провел их реализацию.
Цитата Сообщение от HomeR_J_SimpsoN Посмотреть сообщение
minmax(a, c); // а - минимум
minmax(b, d); // d - максимум
Вот Вам и ответ.
helpme_plz
0 / 0 / 0
Регистрация: 07.02.2012
Сообщений: 21
08.02.2012, 22:47  [ТС]     Задача на proc помогите плз #7
spasibo
Сtrl
 Аватар для Сtrl
138 / 128 / 3
Регистрация: 19.07.2011
Сообщений: 184
08.02.2012, 22:50     Задача на proc помогите плз #8
Цитата Сообщение от helpme_plz Посмотреть сообщение
spasibo
Кнопка есть специальная для благодарности. Ну и мой вариант вдогонку...
C++
1
2
3
4
5
6
7
8
9
template <class T>
bool minmax(T &x, T &y)
{
  if (x == y)
    return false;
  if (x > y)
    std::swap(x, y);
  return true;    
}
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
08.02.2012, 22:51     Задача на proc помогите плз #9
Цитата Сообщение от Сtrl Посмотреть сообщение
Ну и мой вариант вдогонку...
C++
1
2
3
4
5
6
7
8
9
template <class T>
bool minmax(T &x, T &y)
{
  if (x == y)
    return false;
  if (x > y)
    std::swap(x, y);
  return true;    
}
Опять же) Шаблоны - в данный момент самое необходимое человеку, задающему подобный вопрос
Сtrl
 Аватар для Сtrl
138 / 128 / 3
Регистрация: 19.07.2011
Сообщений: 184
08.02.2012, 22:54     Задача на proc помогите плз #10
Цитата Сообщение от HomeR_J_SimpsoN Посмотреть сообщение
Опять же) Шаблоны - в данный момент самое необходимое человеку, задающему подобный вопрос
Человеку, задающему подобный вопрос, нужно готовое решение, а не понимание проблемы. Я предпочту дать самое качественное решение, а шаблоны обеспечивают универсальность. (Кстати, мой вариант и работает быстрее, ибо без лишних проверок).
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
08.02.2012, 22:56     Задача на proc помогите плз #11
Представляю лицо препода)))
И его желание узнать, что же все таки тут, в программе, происходит)
А о времени в подобных программах мне кажется излишне говорить.
2 пикосекунды ничего не решают. Задачи эти именно на понимание.
helpme_plz
0 / 0 / 0
Регистрация: 07.02.2012
Сообщений: 21
08.02.2012, 23:02  [ТС]     Задача на proc помогите плз #12
CTRL

то что вы написали Я это сделал) а у меня задание с 4мя переменными
HomeR_J_SimpsoN
59 / 59 / 2
Регистрация: 15.10.2010
Сообщений: 356
08.02.2012, 23:04     Задача на proc помогите плз #13
Цитата Сообщение от helpme_plz Посмотреть сообщение
CTRL

то что вы написали Я это сделал) а у меня задание с 4мя переменными
Прелестно)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2012, 23:21     Задача на proc помогите плз
Еще ссылки по теме:

Калькулятор комплексных чисел. Помогите плз найти ошибки C++
Решение уравнений помогите плз C++
помогите плз. с блок-схемой для задачки C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Сtrl
 Аватар для Сtrl
138 / 128 / 3
Регистрация: 19.07.2011
Сообщений: 184
08.02.2012, 23:21     Задача на proc помогите плз #14
Цитата Сообщение от helpme_plz Посмотреть сообщение
то что вы написали Я это сделал) а у меня задание с 4мя переменными
Функция main() в сообщении #3 весьма и весьма рабочая, берите. Только вывод результата на экран добавьте:
C++
1
std::cout << "min = " << a << "; max = " << d << std::endl;
Yandex
Объявления
08.02.2012, 23:21     Задача на proc помогите плз
Ответ Создать тему
Опции темы

Текущее время: 08:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru