Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/89: Рейтинг темы: голосов - 89, средняя оценка - 4.67
0 / 0 / 1
Регистрация: 15.08.2014
Сообщений: 28
1

Найти максимальное число из 4-х переменных

15.08.2014, 22:37. Показов 16399. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Найти максимальное число из 4-х (возможно разных) переменных
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.08.2014, 22:37
Ответы с готовыми решениями:

Найти число в двоичной записи которого максимальное число единиц
Среди простых чисел ,не превосходящих N ,найти такое ,в двоичной записи которого максимальное...

Найти максимальное число в массиве и определить, сколько цифр числа делятся на число Z
Массив intA=

Среди простых чисел найти найти такое, в двоичной записи которого максимальное число единиц.
Помогите пожалуйста! Среди простых чисел, не превосходящих n, найти такое, в двоичной записи...

Найти максимальное число
как найти максимальное число?

16
2277 / 1768 / 741
Регистрация: 27.07.2012
Сообщений: 5,251
15.08.2014, 22:41 2
C++
1
2
3
4
5
6
7
8
#include <algorithm>
int main(void)
{
    int a = 1, b = 2, c = 3, d = 4;
    using std::max;
    int maximum = max(a, max(b, max(c, d)));
    return 0;
}
1
Модератор
Эксперт CЭксперт С++
5284 / 2371 / 342
Регистрация: 20.02.2013
Сообщений: 5,770
Записей в блоге: 20
15.08.2014, 22:44 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <algorithm>
 
int main ()
{
   int a, b, c, d;
   std::cout << "Enter values of variable a: ";
   std::cin >> a;
   std::cout << "Enter values of variable b: ";
   std::cin >> b;
   std::cout << "Enter values of variable c: ";
   std::cin >> c;
   std::cout << "Enter values of variable d: ";
   std::cin >> d;
   std::cout << "The largest value is: " << std::max(a, b, c, d) << std::endl;
   return 0;
}
1
0 / 0 / 1
Регистрация: 15.08.2014
Сообщений: 28
15.08.2014, 22:44  [ТС] 4
а что значит std?
0
2277 / 1768 / 741
Регистрация: 27.07.2012
Сообщений: 5,251
15.08.2014, 22:50 5
Цитата Сообщение от abil Посмотреть сообщение
а что значит std?
Пространство имён стандартной библиотеки, где лежат всякие разные функции, в том числе и функция max, которая возвращает большее из двух переданных ей чисел.
1
Модератор
Эксперт CЭксперт С++
5284 / 2371 / 342
Регистрация: 20.02.2013
Сообщений: 5,770
Записей в блоге: 20
15.08.2014, 23:20 6
Чё-то я свой код проверил, и понял, что напортачил. В первом варианте, который я привёл, всё будет работать, если будет две переменных для сравнения:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <algorithm>
 
int main ()
{
    int a, b;
    std::cout << "Enter values of variable a: ";
    std::cin >> a;
    std::cout << "Enter values of variable b: ";
    std::cin >> b;
    std::cout << "The largest value is: " << std::max(a, b) << std::endl;
 
    return 0;
}
А вот такой код работает, когда переменных больше двух:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <algorithm>
#include <vector>
 
int main ()
{
    int vecSize;
    std::cout << "How many variables you want to enter? ";
    std::cin >> vecSize;
    std::vector <int> vec(vecSize);
    for (int i=0; i<vec.size(); ++i)
    {
        std::cout << "Enter value of " << i+1 << " variable: ";
        std::cin >> vec[i];
    }
 
    std::cout << "The largest element is "
              << *std::max_element(vec.begin(), vec.end())
              << std::endl;
 
    return 0;
}
0
2277 / 1768 / 741
Регистрация: 27.07.2012
Сообщений: 5,251
15.08.2014, 23:23 7
gru74ik, по условию переменных четыре. Ни больше, ни меньше.
0
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
15.08.2014, 23:29 8
Цитата Сообщение от John Prick Посмотреть сообщение
int maximum = max(a, max(b, max(c, d)));
а можно так
C++
1
int maximum = max( max(a,b), max(c, d));
1
Модератор
Эксперт CЭксперт С++
5284 / 2371 / 342
Регистрация: 20.02.2013
Сообщений: 5,770
Записей в блоге: 20
15.08.2014, 23:31 9
Цитата Сообщение от John Prick Посмотреть сообщение
gru74ik, по условию переменных четыре. Ни больше, ни меньше.
Ну тогда так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <algorithm>
#include <vector>
 
int main ()
{
    const int vecSize = 4;
    std::vector <int> vec(vecSize);
    for (int i=0; i<vecSize; ++i)
    {
        std::cout << "Enter value of " << i+1 << " variable: ";
        std::cin >> vec[i];
    }
 
    std::cout << "The largest element is "
              << *std::max_element(vec.begin(), vec.end())
              << std::endl;
 
    return 0;
}
1
2277 / 1768 / 741
Регистрация: 27.07.2012
Сообщений: 5,251
15.08.2014, 23:33 10
gru74ik, да понятно, что это работает. Просто у ТС такая задача, что векторы и даже наверное stl тут неуместны.
1
Модератор
Эксперт CЭксперт С++
5284 / 2371 / 342
Регистрация: 20.02.2013
Сообщений: 5,770
Записей в блоге: 20
15.08.2014, 23:35 11
Цитата Сообщение от John Prick Посмотреть сообщение
gru74ik, да понятно, что это работает. Просто у ТС такая задача, что векторы и даже наверное stl тут неуместны.
Ну тогда тупо в лоб на ифах, как тут.
0
Мой лучший друг-отладчик!
167 / 167 / 30
Регистрация: 24.06.2012
Сообщений: 662
Записей в блоге: 5
16.08.2014, 02:18 12
А можно немного поизвращаться
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <algorithm>
#include <cmath>
 
using namespace std;
typedef long long ll;
 
int main()
{
    ll a,b,c,d;
    cin>>a>>b>>c>>d;
    cout<<abs(min(min(-a,-b),min(-c,-d)));
    system("pause");
    return 0;
}
0
2664 / 2239 / 240
Регистрация: 03.07.2012
Сообщений: 8,141
Записей в блоге: 1
16.08.2014, 11:15 13
Извращаться нужно грамотно (ответ будет неверным, если все числа отрицательные).
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
16.08.2014, 12:06 14
C++11:
C++
1
std::max( { a, b, c, d } );
1
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
16.08.2014, 16:27 15
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int a, b, c, d;
 
std::cin >> a >> b >> c >> d;
 
int max = a;
 
if ( b > max )
   max = b;
 
if ( c > max )
   max = c;
 
if ( d > max )
   max = d;
 
std::cout << max << std::endl;
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
16.08.2014, 17:27 16
можно так вот извратится
C++
1
2
int max = a+b + abs(a-b) + c+d + abs(c-d) + abs( (a+b + abs(a-b)) - (c+d + abs(c-d)) );
max /= 4;
0
430 / 384 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
16.08.2014, 23:42 17
C
1
2
3
4
5
6
7
int max4(int a, int b, int c, int d)
{
    if( b > a ) { a = b; }
    if( d > c ) { c = d; }
    if( c > a ) { a = c; }
    return a;
}
0
16.08.2014, 23:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.08.2014, 23:42
Помогаю со студенческими работами здесь

Найти максимальное число
Даны 6 различных чисел. Определить максимальное из них. (Определить функцию, находящую максимум из...

Найти максимальное число
Не получается сделать эти три задания 1. Пользователь вводит 2 числа, программа находит...

Найти максимальное число
Всем доброго времени суток. Суть такова: юзер вводит число от 1 до 100 (включительно). Далее...

Массив. Найти максимальное число
Дан массив целых случайных чисел (размер массива определяет пользователь, но в диапазоне ). Найти...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru