Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/40: Рейтинг темы: голосов - 40, средняя оценка - 4.75
1 / 1 / 1
Регистрация: 26.02.2018
Сообщений: 155

Передвинуть только последнюю цифру числа в начало

13.09.2018, 02:12. Показов 8128. Ответов 9

Студворк — интернет-сервис помощи студентам
Дано натуральное трёхзначное число n. В нём зачеркнули последнюю цифру и приписали её в начало. Найдите полученное число.
Формат входных данных
Вводится целое число n (100≤n≤999).
Формат выходных данных
Требуется вывести искомое число.

Примеры
вход
123
выход
312

вход
404
выход
440
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.09.2018, 02:12
Ответы с готовыми решениями:

Переставить последнюю цифру числа в начало
Как поставить последнюю цифру на первое место слева. К примеру число 321 -> 132, 578 - > 857

В каждой группе символов, состоящих только из цифр, последнюю цифру переставить в начало группы
- Написать программу, которая читает с клавиатуры произвольную строку символов, преобразует ее и выводит результат на дисплей в виде...

Заменить последнюю цифру числа на минимальную цифру этого же числа
заменить последнюю цифру числа на минимальную цифру этого же числа

9
14 / 11 / 3
Регистрация: 12.09.2018
Сообщений: 61
13.09.2018, 02:26
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
 
using namespace std;
 
int main(int argc, char* argv[]) {
    int number = atoi(argv[1]);
    cout << ((number % 10) * 100 + number / 10) << endl;
    
    return 0;
}
0
Эксперт по математике/физикеЭксперт С++
 Аватар для Ilot
2222 / 1424 / 419
Регистрация: 16.05.2013
Сообщений: 3,639
Записей в блоге: 6
13.09.2018, 08:13
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <string>
 
int main(int argc, char* argv[]) {
    std::string str;
    std::cin >> str;
    if(!str.empty())
        std::swap(str.at(0), str.at(str.size() - 1));
    std::cout << str;
}
0
1 / 1 / 1
Регистрация: 26.02.2018
Сообщений: 155
13.09.2018, 13:04  [ТС]
программа переворачивает всё число, а нужно только последнюю цифру передвинуть в начало.
Программа показывает: ввод - 123, выход - 321. А правильный ответ 312
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
13.09.2018, 13:13
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <string>
#include <algorithm>
 
int main() {
    std::string str;
    std::cin >> str;
    if (!str.empty())
        std::rotate(str.begin(), str.end() - 1, str.end());
    std::cout << str;
}
1
1 / 1 / 1
Регистрация: 26.02.2018
Сообщений: 155
13.09.2018, 13:19  [ТС]
Код работает, спасибо! Но, к сожалению, я не понимаю его, особенно:
C++
1
std::rotate(str.begin(), str.end() - 1, str.end())
Можно ли как-нибудь заменить на полегче?
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
13.09.2018, 13:23
https://ru.cppreference.com/w/cpp/algorithm/rotate
Там есть возможная реализация, можешь оттуда взять.
0
174 / 134 / 105
Регистрация: 14.04.2016
Сообщений: 719
13.09.2018, 14:18
Лучший ответ Сообщение было отмечено Kalighost как решение

Решение

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int a = 1, b;
    while (a > 0)
    {
        printf("Enter number: ");
        scanf("%d", &a);
        if (a > 999 || a < 100) {
            printf("Wrong number!\n");
            continue;
        }
        
        b = a % 10;
        b = b * 100 + (a / 10);
        printf("%d - %d\n", a, b);
 
    }
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    int a = 1, b;
    while (a > 0)
    {
        printf("Enter number: ");
        scanf("%d", &a);
        if (a > 9999999 || a < 10) {
            printf("Wrong number!\n");
            continue;
        }
        b = a % 10;
        for (int i = 10; a / i > 0; i *= 10)
            b *= 10;
        b = a / 10 + b;
        printf("%d - %d\n", a, b);
 
    }
1
1 / 1 / 1
Регистрация: 26.02.2018
Сообщений: 155
13.09.2018, 19:17  [ТС]
Огромное Вам спасибо!
Вот код для с++
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std;
 
int main(){
 
    int a = 1, b = 0;
 
    while (a > 0){
    cin >> a;
        b = a % 10;
 
        for (int i = 10; a / i > 0; i *= 10)
            b *= 10;
 
        b = a / 10 + b;
        cout << b;
    }
 
    system("pause");
    return 0;
}
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
13.09.2018, 20:12
Цитата Сообщение от Kalighost Посмотреть сообщение
вход
404
выход
440
А если введу 440? Что должно вывести? У Вас выводит 44. Где нуль?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.09.2018, 20:12
Помогаю со студенческими работами здесь

Вывести вначале последнюю цифру трехзначного числа, а затем — его среднюю цифру
//Дано трехзначное число. Вывести вначале его последнюю цифру //(единицы), а затем — его среднюю цифру (десятки). var a,b,c: integer; ...

Написать функцию, которая в заданном натуральном числе а переставляет последнюю цифру в начало
Помогите написать функцию, которая в заданном натуральном числе а переставляет последнюю цифру в начало. У меня есть код, но его нужно...

В трехзначном числе зачеркнули последнюю справа цифру и переписали ее в начало. Найти полученное число
вычислить значения при разных значениях переменных: Дано трехзначное число.В нем зачеркнули последнюю справа цифру и переписали ее...

Выводит только последнюю цифру (
зАДАНИЕ . Вывести сумму всех чисел натурального числа . Пример 123 = 6 . var Form1: TForm1; z, s: string; sum, z2 :...

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


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru