Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
#1

max i min - C++

17.10.2013, 14:51. Просмотров 964. Ответов 20
Метки нет (Все метки)

как такое сделать?



max i min
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.10.2013, 14:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос max i min (C++):

Найти max и min, если min левее max, то среднее арифметическое между ними - C++
#include <iostream.h> #include <stdio.h> #include <conio.h> #include <math.h> void main() { int n,a; int...

Даны целые числа а, b, с. Вычислить в-сумму у = min (a, b + c) + max (ac, b)-min (a2, c) - C++
Даны целые числа а, b, с. Вычислить в-сумму у = min (a, b + c) + max (ac, b)-min (a2, c). Как эту программу реализовать в код?

Найти min(max(x, y), max(x, z), max(z, d) - C++
Даны различные действительные числа x, y, z, d. Найти min(max(x, y), max(x, z), max(z, d)).

Найти max {min (a, b), min (c, d)}. - C++
Найти max {min (a, b), min (c, d)}.

Max и Min в Си++ - C++
сформировать одномерный массив целых чисел используя ДСЧ. расспечатать полученный массив поменять местами мах и мин удалить из...

max min - C++
Всем доброго времени суток. нужна ваша помощь ув. программеры. Дана целочисленная матрица размера 6*9. Определить функцию поиска значения и...

20
dzrkot
zzzZZZ...
523 / 353 / 54
Регистрация: 11.09.2013
Сообщений: 2,025
17.10.2013, 14:59 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
using namespace std;
 
double min(double &x,double &y)
{
if (x>y)
return y;
else
return x;
}
 
double max(double &x,double &y)
{
if (x>y)
return x;
else
return y;
}
 
int main()
{
double p,x,y,z;
cout<<"Please enter x,y,z\n";
cin>>x>>y>>z;
p=(min(x,y)-max(y,z))/2;
cout<<"p = "<<p<<endl;
cout<<"9 ne 4itau knig i ne xo4y"
"y4it's9, poetomy zada4i rewaut za men9";
return 0;
}
я модуль не заметил на картинке
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
17.10.2013, 15:18 #3
dzrkot, а зачем изобретать min/max? Разберитесь, что есть в std, который Вы так резво используете. Не придется писать велосипеды.
0
dzrkot
zzzZZZ...
523 / 353 / 54
Регистрация: 11.09.2013
Сообщений: 2,025
17.10.2013, 15:22 #4
Цитата Сообщение от Tulosba Посмотреть сообщение
dzrkot, а зачем изобретать min/max? Разберитесь, что есть в std, который Вы так резво используете. Не придется писать велосипеды.
надо бы, просто пишу под микроконтроллеры, поэтому такие вещи привык руками делать))
0
MrGluck
Модератор
Эксперт CЭксперт С++
7491 / 4606 / 692
Регистрация: 29.11.2010
Сообщений: 12,596
17.10.2013, 15:32 #5
Цитата Сообщение от dzrkot Посмотреть сообщение
if (x>y)
return y;
else
return x;
прочтите про тернарный оператор
C++
1
return x > y ? y : x;
с STL:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <algorithm>
#include <cmath>
 
double foo(const int x, const int y, const int z)
{
    return abs(std::min(x, y) - std::max(y, z)) / 2.0;
}
 
int main()
{
    int x, y, z;
    std::cin >> x >> y >> z;
    double p = foo(x, y, z);
    std::cout << p;
}
Tulosba, я думаю надо сначала бы самому написать нечто похожее, прежде чем использовать алгоритмы.
0
dzrkot
zzzZZZ...
523 / 353 / 54
Регистрация: 11.09.2013
Сообщений: 2,025
17.10.2013, 15:36 #6
Цитата Сообщение от MrGluck Посмотреть сообщение
прочтите про тернарный оператор
C++
1
return x > y ? y : x;
я вообще-то в курсе что это) почему не использовал? забыл о нём вообще))
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
17.10.2013, 15:39  [ТС] #7
вот ,я разобралась,но почему выбивает
fatal error iostream no such file or directory

#include <iostream>
#include <conio.h>
#include <complex>
#include <math.h>



int main()
{
double x,y,z,a,b;
using namespace std;


cout<<"x=";
cin>>x;
cout<<"y=";
cin>>y;
cout<<"z=";
cin>>z;

if(x>y)
a=y;

else
a=x;

if(y>z)
b=y;

else
b=z;

p=(abs (a-b))/2;

cout<<"p="<<p<<endl<<"Press any key to finish...";


getch();
return 0;
}
0
dzrkot
zzzZZZ...
523 / 353 / 54
Регистрация: 11.09.2013
Сообщений: 2,025
17.10.2013, 15:41 #8
у вас visual studio ? тогда #include "stdfx" ещё надо в начале

2)р необъявлен
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
17.10.2013, 15:43  [ТС] #9
нет ,не visual
Я открыла другую ,и она работает с iostream.а именно эта -нет
0
MrGluck
Модератор
Эксперт CЭксперт С++
7491 / 4606 / 692
Регистрация: 29.11.2010
Сообщений: 12,596
17.10.2013, 15:49 #10
Цитата Сообщение от Katya99 Посмотреть сообщение
#include <iostream>
C++
1
#include <iostream.h>
Видимо вы на борланде сидите
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
17.10.2013, 15:49 #11
Цитата Сообщение от MrGluck Посмотреть сообщение
return abs(std::min(x, y) - std::max(y, z)) / 2.0;
А почему не std::abs() ?
Цитата Сообщение от MrGluck Посмотреть сообщение
я думаю надо сначала бы самому написать нечто похожее, прежде чем использовать алгоритмы.
Это кстати регулярная дилемма. Обычно не всегда понятно, что знает (должен знать) ТС для решения поставленной задачи. Поэтому мне кажется имеет смысл сначала предложить решение с учетом стандартной библиотеки (тем более, что тут не какой-то сложный для понимания новичком алгоритм), а уж потом, если ТС скажет: "мы этого не проходили", предложить ему рукописный вариант. Или еще какой на дефайнах
0
MrGluck
Модератор
Эксперт CЭксперт С++
7491 / 4606 / 692
Регистрация: 29.11.2010
Сообщений: 12,596
17.10.2013, 15:50 #12
Цитата Сообщение от Katya99 Посмотреть сообщение
Я открыла другую ,и она работает с iostream.а именно эта -нет
Не обижайтесь, но вас трудно понять, попробуйте строить предложения более осмысленно.
0
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
17.10.2013, 15:52 #13
Цитата Сообщение от dzrkot Посмотреть сообщение
просто пишу под микроконтроллеры, поэтому такие вещи привык руками делать))
Видимо не достаточно пишете. Иначе бы:
1. знали про тернарный оператор.
2. использовали бы скорее макросы MAX/MIN.
0
Katya99
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 96
17.10.2013, 15:55  [ТС] #14
дело в том ,что я вставила в другую,где тоже иострим без h и там она работает.
0
MrGluck
Модератор
Эксперт CЭксперт С++
7491 / 4606 / 692
Регистрация: 29.11.2010
Сообщений: 12,596
17.10.2013, 16:02 #15
Цитата Сообщение от Tulosba Посмотреть сообщение
А почему не std::abs() ?
http://www.cplusplus.com/reference/complex/abs/
http://www.cplusplus.com/reference/cmath/abs/
Заметил интересную вещь, в описании cmath (и cstdlib) оно не из std. Хотя вроде бы, когда меняли с <*.h> на <c*> заключали функции в стандартное пространство имен.
Не знаю в чем профит std, если есть глобальная функция.

Кстати тут:
http://www.cplusplus.com/reference/cmath/abs/ она вроде как должна проходить по перегрузке double abs (T x), но тем не менее, вызывается int abs(int x), иначе бы при входных параметрах 2 2 3, если делить на 2 а не 2.0, выдавало бы 0.5 а не 0 (int/int)

Добавлено через 2 минуты
Цитата Сообщение от Tulosba Посмотреть сообщение
Или еще какой на дефайнах
макросы в С++ вы одобряете?)
0
17.10.2013, 16:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.10.2013, 16:02
Привет! Вот еще темы с ответами:

Max(x,y,z) min(x,y,z) на c++ - C++
max(x,y,z) min(x,y,z) на c++ Добавлено через 47 секунд пожалуйста помогите!

min(x,y) max(x,y) - C++
заданы действительные числа х, у. получить min(x,y) max(x,y)?

204. Min and Max - C++
Given three real numbers x, y, z. Output the minimum and the maximum values of them. First output the minimum, then the maximum value ...

Max и min в матрице - C++
С клавиатуры вводится массив целых чисел. Подсчитать сумму элементов над главной диагональю. Вывести номера строк, на пересечении...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru