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

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

Войти
Регистрация
Восстановить пароль
 
Никита199615
0 / 0 / 0
Регистрация: 24.10.2013
Сообщений: 20
#1

Максимально возможное число из трёх цифр - C++

29.06.2014, 09:56. Просмотров 998. Ответов 10
Метки нет (Все метки)

"Пользователь вводит с клавиатуры трехзначное натуральное число, которое сохраняется в переменную n проверить корректность ввода, составить и вывести на экран число из цифр введенного числа n, так, чтобы выведенное число оказалось максимальным из возможных. Например, если пользователь ввел число 195, то программа должна вывести число 951."
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.06.2014, 09:56
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Максимально возможное число из трёх цифр (C++):

Переставить десятичные цифры числа так, чтобы получить максимально возможное число, записанное теми же цифрами - C++
Задача 37. Дано натуральное число n<1000. Переставить его десятичные цифры так, чтобы получить максимально возможное число, записанное...

Из цифр двух натуральных чисел составить наибольшее возможное число, сохраняя первоначальную последовательность цифр. - C++
подскажите пожалуйста.. Из цифр двух натуральных чисел составить наибольшее возможное число, сохраняя первоначальную последовательность...

Максимально возможное значение указателя - C++
Вопрос по адресной арифметике - можно ли как-то получить наибольшее для данной платформы значение указателя? То есть, такой указатель, что...

Найти число на отрезке [x;y], произведение цифр которого максимально - C++
Помогите, пожалуйста, написать программу: Найти число на отрезке , произведение цифр которого максимально. Если есть несколько таких чисел,...

Найти число последовательности, у которого количество одинаковых цифр максимально - C++
1. Найти число последовательности, у которого количество одинаковых цифр максимально.с использованием функций!?!

Найти число последовательности, у которого количество одинаковых цифр максимально - C++
Найти число последовательности, у которого количество одинаковых цифр максимально?

10
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
29.06.2014, 10:32 #2
Никита199615, вводите число, разделяете его на цифры с помощью взятия остатка и в дальнейшем просто упорядочиваете эти цифры по возрастанию и выводите на печать.
0
Никита199615
0 / 0 / 0
Регистрация: 24.10.2013
Сообщений: 20
29.06.2014, 10:35  [ТС] #3
можно программу пожалуйста.
0
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
29.06.2014, 10:39 #4
Никита199615, а это мне надо или вам? Откройте любой справочник по С++ и просто сделайте все пошагово, если что-то не получается, то вы спрашивайте. Ведь за то время которое вы сидите и ждете ответа, вы могли бы уже написать что нибудь.
1
Никита199615
0 / 0 / 0
Регистрация: 24.10.2013
Сообщений: 20
29.06.2014, 12:13  [ТС] #5
ох. если бы я что нибудь понимал в с++
яб хоть что-то написал
0
Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
29.06.2014, 12:38 #6
Никита199615, я практически все расписал во втором посте.

Не по теме:

Цитата Сообщение от Никита199615 Посмотреть сообщение
если бы я что нибудь понимал
Не мне вас жизни учить, но с такими суждениями только бутылки идти собирать.

0
Kerry_Jr
Эксперт PHP
2210 / 2006 / 702
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
29.06.2014, 12:41 #7
Вроде работает
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
#include <iostream>
#include <cstdlib>
 
int main()
{
    setlocale(LC_ALL, "");
    int n, a, b, c;
    do
    {
        system("cls");
        std::cout << "Введите трехзначное число: "; std::cin >> n;
        if (n > 99 && n < 1000) break;
    }
    while (true);
    a = n % 10;
    b = (n % 100 - a) / 10;
    c = n / 100;
    int min, med, max;
    max = a > b ? (a > c ? a : c) : (b > c ? b : c);
    min = c < a ? (c < b ? c : b) : (a < b ? a : b);
    med = a < max && a > min ? a : (b < max && b > min ? b : c);
    n = max * 100 + med * 10 + min;
    std::cout << n << std::endl;
    return 0;
}
1
gru74ik
Модератор
Эксперт CЭксперт С++
4364 / 1940 / 210
Регистрация: 20.02.2013
Сообщений: 5,145
Записей в блоге: 22
29.06.2014, 12:44 #8
Цитата Сообщение от Никита199615 Посмотреть сообщение
ох. если бы я что нибудь понимал в с++
яб хоть что-то написал
Чтобы хоть что-то начать понимать в С++, достаточно неделю-другую часа по два каждый вечер почитать книжку, параллельно выполняя упражнения в какой-нибудь простенькой среде разработки или в онлайн-IDE.
0
Tulosba
:)
Эксперт С++
4705 / 3240 / 297
Регистрация: 19.02.2013
Сообщений: 9,046
29.06.2014, 13:08 #9
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
#include <algorithm>
#include <cctype>
#include <iostream>
#include <string>
 
int main() {
    
    std::string s;
 
    while(1)
    {
        std::getline( std::cin, s );
        if( std::all_of( s.begin(), s.end(), isdigit ) )
        {
            break;
        }
        std::cout << "Only digits allowed, try again" << std::endl; 
    }
    
    std::sort( s.begin(), s.end() );
    std::reverse( s.begin(), s.end() );
    
    std::cout << s << std::endl;
 
    return 0;
}
2
Bend3r
149 / 136 / 18
Регистрация: 29.07.2012
Сообщений: 709
29.06.2014, 13:09 #10
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
#include <iostream.h>
#include <Windows.h>
 
using namespace std;
 
void bubble(int* a, int n) //функция сортировки массива
{
  for (int i = n - 1; i >= 0; i--)
    for (int j = 0; j < i; j++)
    {
      if (a[j] < a[j+1])
      {
        int tmp = a[j];
        a[j] = a[j + 1];
        a[j + 1] = tmp;
      }
    }
}
 
void main(int argc, _TCHAR* argv[]) {
    int n, mas[3];
    cin >> n;
    mas[0] = n % 10;
    mas[1] = n / 10 % 10;
    mas[2] = n / 10 / 10;
    bubble(mas,3);
    cout << mas[0] << mas[1] << mas[2] << endl;
    system("pause");
}
Добавлено через 1 минуту
Tulosba, универсально и умно
1
Никита199615
0 / 0 / 0
Регистрация: 24.10.2013
Сообщений: 20
29.06.2014, 13:18  [ТС] #11
Спасибо. буду учить. просто срочно надо.
0
29.06.2014, 13:18
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.06.2014, 13:18
Привет! Вот еще темы с ответами:

Из десятичных цифр заданного числа сформировать максимально большое число - C++
Прошу помочь с решением, заранее благодарен. Вам задано натуральное число. Если можно переставить его цифры так, чтобы получилось...

Дано трёхзначное число. Определить,какая из его трёх цифр больше. - C++
Помогите плз как пишется на С++)

Купить максимально возможное количество "Клинского" - C++
Студент группы АСУ Вася Пупкин вместо занятий решил ударить по пиву. У него в карманах могут находится монеты достоинством 10 руб., 5 руб.,...

Составить из массива чисел наибольшее возможное число - C++
Подскажите в какую сторону думать . Мне кажется что нужно как-то сравнивать числа по 1 разряду и сортировать по возрастанию?


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

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

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