Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
KathrineY
2 / 2 / 1
Регистрация: 20.11.2012
Сообщений: 197
1

Найти сумму двух наибольших из трех заданных различных чисел

17.02.2013, 14:58. Просмотров 1451. Ответов 9
Метки нет (Все метки)

Найти сумму двух наибольших из трех заданных различных чисел.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2013, 14:58
Ответы с готовыми решениями:

Из трёх заданных чисел найти сумму двух наибольших
Данные три числа. Найти сумму двух наибольших из них.

Сумма двух наибольших из трех заданных чисел
Даны три числа. Требуется найти сумму двух наибольших из них. Формат входных...

Нахождение суммы двух наибольших из трех различных чисел
Как это сделать?

Найти сумму двух наибольших числел из трех
Даны три различных числа. Найти сумму двух наибольших из них. с++ с формой.

Найти сумму 2 наибольших из трех чисел
1) Даны 3 целых числа. Найти сумму 2 наибольших из них. 2)дана структура...

9
Karuselia
24 / 10 / 1
Регистрация: 21.05.2012
Сообщений: 37
17.02.2013, 15:04 2
Находишь max1 и max2, а затем складываешь...
0
vua72
418 / 417 / 167
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
17.02.2013, 15:22 3
C++
1
 a>b ? (a > c ? a : c ) : b
Добавлено через 7 минут
не в тему, сорри

Добавлено через 3 минуты
C++
1
2
3
4
5
6
#include <iostream>
int main(){
    int a=1, b=2, c=3;
    std::cout<<std::max(a,b)*std::max(a,c)<<std::endl;
    return 0;
}
0
ITcrusader
Эксперт С++
177 / 163 / 21
Регистрация: 12.02.2013
Сообщений: 410
17.02.2013, 15:37 4
Цитата Сообщение от vua72 Посмотреть сообщение
C++
1
 a>b ? (a > c ? a : c ) : b
Добавлено через 7 минут
не в тему, сорри

Добавлено через 3 минуты
C++
1
2
3
4
5
6
#include <iostream>
int main(){
    int a=1, b=2, c=3;
    std::cout<<std::max(a,b)*std::max(a,c)<<std::endl;
    return 0;
}
Решение некорректно.
1. Нужна сумма чисел
2. Для, например, следующих данных: a = 3, b = 2, c = 1 будет выполняться операция над двумя тройками.
0
vua72
418 / 417 / 167
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
17.02.2013, 15:52 5
C++
1
2
3
4
5
6
7
#include <iostream>
int main(){
    int a=1, b=2, c=6;
    int rez=  a>b ? a+std::max(b,c) : b+std::max(a,c);
    std::cout<<rez<<std::endl;
    return 0;
}
0
Karuselia
24 / 10 / 1
Регистрация: 21.05.2012
Сообщений: 37
17.02.2013, 15:55 6
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include "stdafx.h"
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
    int a;
    int b;
    int c;
    cout << "Vvedite 3 chisla" << endl;
    cin >> a >> b >> c;
    int max1;
    int max2;
    int sum = 0;
    if ((a > b)&&(a > c)) max1 = a;
    if ((b > a)&&(b > c)) max1 = b;
    if ((c > b)&&(c > a)) max1 = c;
    if (max1 == a)
    {
        if (c > b) 
            max2 = c;
        else 
            max2 = b;
    }
    if (max1 == b)
    {
        if (a > c) 
            max2 = a;
        else 
            max2 = c;
    }
    if (max1 == c)
    {
        if (a > b) 
            max2 = a;
        else 
            max2 = b;
    }
    sum = max1 + max2;
    cout << "Result: " << sum << endl;
    getch();
    return 0;
}
Ну или так) Мой вариант для особо "одаренных"...
1
vua72
418 / 417 / 167
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
17.02.2013, 18:26 7
Цитата Сообщение от Karuselia Посмотреть сообщение
Кликните здесь для просмотра всего текста
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include "stdafx.h"
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
    int a;
    int b;
    int c;
    cout << "Vvedite 3 chisla" << endl;
    cin >> a >> b >> c;
    int max1;
    int max2;
    int sum = 0;
    if ((a > b)&&(a > c)) max1 = a;
    if ((b > a)&&(b > c)) max1 = b;
    if ((c > b)&&(c > a)) max1 = c;
    if (max1 == a)
    {
        if (c > b) 
            max2 = c;
        else 
            max2 = b;
    }
    if (max1 == b)
    {
        if (a > c) 
            max2 = a;
        else 
            max2 = c;
    }
    if (max1 == c)
    {
        if (a > b) 
            max2 = a;
        else 
            max2 = b;
    }
    sum = max1 + max2;
    cout << "Result: " << sum << endl;
    getch();
    return 0;
}


Ну или так) Мой вариант для особо "одаренных"...
Да уж, ну ладно свою функцию максимума объявить, но это действительно для особо одаренных.

Добавлено через 3 минуты
C++
1
rez=  a>b ? a+std::max(b,c) : b+std::max(a,c);
это же элементарно разворачивается
C++
1
2
3
4
5
6
int max (int a, int b){
 if (a>b) return a;
else return b;
}
...
if (a>b ) rez = a+max(b,c) ; else rez b+max(a,c);
0
Karuselia
24 / 10 / 1
Регистрация: 21.05.2012
Сообщений: 37
18.02.2013, 11:41 8
Ну для меня, к примеру, там были закорючки(в первом коде), а функции... Ну как то не складываются у меня отношения с функциями))
0
vua72
18.02.2013, 14:13
  #9

Не по теме:

Цитата Сообщение от Karuselia Посмотреть сообщение
Ну для меня, к примеру, там были закорючки(в первом коде), а функции... Ну как то не складываются у меня отношения с функциями))
С++, как минимум, поддерживает процедурный и ООП стили программирования.
В вашем случае, если уже изучались функции - писать тот код преступно, а использовать язык и не знать стандартных функций - вообще ахтунг.
"Закорючки", тернарный оператор, который используется довольно часто.
Но это все, имх, и не принимайте близко к сердцу, удачи вам в освоении программирования.

0
Olivеr
413 / 409 / 95
Регистрация: 06.10.2011
Сообщений: 832
18.02.2013, 14:30 10
Мой вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
 
using namespace std;
 
int main()
{
    int a,b,c;
    cin>>a>>b>>c;
    int sum = a + b + c - min(min(a,b),c);
    cout<<sum;
    return 0;
}
0
18.02.2013, 14:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2013, 14:30

Найти произведение двух наибольших из трех введенных с клавиатуры чисел
найти произведение двух наибольших из трех введенных с клавиатуры чисел

Определить в последовательности целых чисел сумму двух наибольших и сумму двух наименьших
Напишите программу, которая в последовательности целых чисел определяет сумму...

Дано не менее трех различных натуральных чисел, за которыми следует ноль. Определить три наибольших числа из них
Дано не менее трех различных натуральных чисел, за которыми следует ноль....


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

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

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