Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.74/389: Рейтинг темы: голосов - 389, средняя оценка - 4.74
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 24

Как перевернуть число?

30.07.2009, 15:10. Показов 77742. Ответов 50
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран.

Примечание: Например, пользователь ввел число 12345. На экране должно появиться число наоборот - 54321.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.07.2009, 15:10
Ответы с готовыми решениями:

Как перевернуть число?
Как перевернуть число? Пример: 1210 - 1012

Как перевернуть число?
как перевернуть любое число в Паскале ?

Как перевернуть число
как перевернуть число? например: 0123450=0543210

50
 Аватар для kirill29
2098 / 1263 / 173
Регистрация: 01.02.2009
Сообщений: 2,842
30.07.2009, 15:14
ИМХО Полученную строку разбиваем на массив символов и выводим этот массив в обратной последовательности
0
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 24
30.07.2009, 15:16  [ТС]
а можно желатеньно кодом??? а то я kirill29, помоги пожалуйсто
0
 Аватар для 0xAX
2451 / 362 / 9
Регистрация: 27.06.2009
Сообщений: 880
30.07.2009, 15:31
Как то так
C#
1
2
3
4
5
6
int a = 123;
string s = a.ToString();
char[] ar = s.ToCharArray();
Array.Reverse(ar);
s = new String(ar);
a = Convert.ToInt32(s);
з.ы. Студии под рукой нет проверить негде.
0
Эксперт по компьютерным сетямЭксперт Pascal/Delphi
 Аватар для TAVulator
4191 / 1292 / 237
Регистрация: 27.07.2009
Сообщений: 3,962
30.07.2009, 15:32
на паскале это бы выглядело так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
const
 S: string = '12345';
var
 i: byte;
 R: string;
Begin
 R:='';
 For i:=length(S) downto 1 do
  R:=R+S[i];
 Writeln(R);
End.
Может кто-нить переведет на C# ?
0
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 24
30.07.2009, 15:42  [ТС]
Цитата Сообщение от only# Посмотреть сообщение
Как то так
C#
1
2
3
4
5
6
int a = 123;
string s = a.ToString();
char[] ar = s.ToCharArray();
Array.Reverse(ar);
s = new String(ar);
a = Convert.ToInt32(s);
з.ы. Студии под рукой нет проверить негде.
не получается((


А вообще желательно что бы использовали числа от 0 до 5 , и можно было написать любое значное число из этих цифр, и он их переворачивал
0
 Аватар для 0xAX
2451 / 362 / 9
Регистрация: 27.06.2009
Сообщений: 880
30.07.2009, 15:46
Что именно не получается? используйте Console.ReadLine и вводите чисел сколько надо.
0
 Аватар для kirill29
2098 / 1263 / 173
Регистрация: 01.02.2009
Сообщений: 2,842
30.07.2009, 15:46
Вот так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
static void Main(string[] args)
        {
            Console.WriteLine("Число");
            string s = Console.ReadLine();
            char[] str = s.ToCharArray();;
            string a;
            for (int i = str.Length-1; i > -1; --i) 
            {
                a = Convert.ToString(str[i]);
                Console.Write(a);
            }
            Console.ReadKey();
        }
1
85 / 85 / 6
Регистрация: 13.10.2008
Сообщений: 144
30.07.2009, 15:52
Цитата Сообщение от vauper Посмотреть сообщение
не получается((


А вообще желательно что бы использовали числа от 0 до 5 , и можно было написать любое значное число из этих цифр, и он их переворачивал
Там был рабочий код.
Можно так ещё:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
static void Main(string[] args) {
 
            int number, result = 0;
        
            Console.Write("enter number: ");
            number = Int32.Parse(Console.ReadLine());
 
            while (number > 0) {
                result *= 10;
                result += number % 10;
                number /= 10;
            }
 
            Console.WriteLine(result);
        }
1
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
30.07.2009, 16:07
Как перевернуть число?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
static class IntExt
{
    public static int Reverse(this int i)
    {
        int res = 0;
        while (i != 0)
        {
            int remaind;
            i = Math.DivRem(i, 10, out remaind);
            res = res * 10 + remaind;
        }
        return res;
    }
}
 
int i = 12345.Reverse();
PS. кстати, остальные кривульки не работают с отрицательными числами
3
85 / 85 / 6
Регистрация: 13.10.2008
Сообщений: 144
30.07.2009, 16:22
[QUOTE=Rififi;228828][I]Как переверну
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
30.07.2009, 16:29
введите 010.
Загадка: это разные числа, или одно число?

010

00000010

0000000000000000000000000000000000000000 0000000000010

0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 000000000000000000000010

0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 00000000000000000000000000000010
0
85 / 85 / 6
Регистрация: 13.10.2008
Сообщений: 144
30.07.2009, 16:35
При компиляции твоего кода у меня при i = 010 результат получается 1.
П.С. понятия не имею, что стало мои предыдущим постом.
0
 Аватар для kirill29
2098 / 1263 / 173
Регистрация: 01.02.2009
Сообщений: 2,842
30.07.2009, 17:05
Цитата Сообщение от Rififi Посмотреть сообщение
PS. кстати, остальные кривульки не работают с отрицательными числами
Теперь работает:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
static void Main(string[] args)
        {
            Console.WriteLine("Число");
            string s = Console.ReadLine();
            char[] str = s.ToCharArray();
            char a, b;
            Array.Reverse(str);
            if (str[str.Length - 1] == '-') 
            {
                a = str[str.Length - 1];
                b = str[str.Length - 2];
                str[str.Length - 2] = a;
                str[str.Length - 1] = b;
            }
            Console.Write(str);
            Console.ReadKey(); 
        }
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
30.07.2009, 17:19
kirill29,
Теперь работает:
Ага, только работает всё чудесатее и чудесатее :ROFL:

Число
-123
32-1
0
85 / 85 / 6
Регистрация: 13.10.2008
Сообщений: 144
30.07.2009, 17:39
Ну с отрицательными все элементарно:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int number, result = 0;
    bool neg = false;
 
    Console.Write("enter number: ");
    number = Int32.Parse(Console.ReadLine());
 
    if (number < 0) {
        neg = true;
        number *= -1;
    }
 
    while(number > 0){
        result *= 10;
        result += number % 10;
        number /= 10;
    }
 
    if (neg) result *= -1;
    Console.WriteLine(result);
Просто я подумал что если "перевернуть" скажем 0100, то должно получится 0010 т.е. 10. Может это и неправильно.
0
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 24
31.07.2009, 13:17  [ТС]
Цитата Сообщение от kirill29 Посмотреть сообщение
Вот так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
static void Main(string[] args)
        {
            Console.WriteLine("Число");
            string s = Console.ReadLine();
            char[] str = s.ToCharArray();;
            string a;
            for (int i = str.Length-1; i > -1; --i) 
            {
                a = Convert.ToString(str[i]);
                Console.Write(a);
            }
            Console.ReadKey();
        }
Намного проще код получается такой и без заморочек


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
using System;
using System.Collections.Generic;
using System.Text;
 
namespace ConsoleApplication4
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Введите число");
          
            string s = Console.ReadLine();
            Console.WriteLine("Ваше число в обратном виде");
            for (int i = s.Length - 1; i > -1; --i)
            {
                Console.Write((s[i]));
            }
            Console.ReadKey();
        }
    }
}
0
 Аватар для kirill29
2098 / 1263 / 173
Регистрация: 01.02.2009
Сообщений: 2,842
31.07.2009, 13:29
Или, как в посте #4: без циклов
C#
1
2
3
4
5
6
7
8
9
static void Main(string[] args)
        {
            Console.WriteLine("Введите значение");
            string s = Console.ReadLine();
            char[] str = s.ToCharArray();
            Array.Reverse(str);
            Console.Write(str);
            Console.ReadKey(); 
        }
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
31.07.2009, 13:30
vauper, тогда уже так, что ли
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
        static void Main()
        {
            Console.WriteLine("Введите число");
            string s = Console.ReadLine();
            Console.WriteLine("Ваше число в обратном виде");
            if (s[0] != '-')
                for (int i = s.Length - 1; i > -1; --i)
                    Console.Write((s[i]));
            else
            {
                Console.Write("-");
                for (int i = s.Length - 1; i > 0; --i)
                    Console.Write((s[i]));
            }
            Console.Read();
        }
0
0 / 0 / 0
Регистрация: 30.07.2009
Сообщений: 24
31.07.2009, 14:14  [ТС]
а какой код будет если например прочитать строку. Вывести слова содержащиеся в ней в обратном порядке
пример
ввод мама мыла раму
Вывод раму мыла мама
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.07.2009, 14:14
Помогаю со студенческими работами здесь

Как перевернуть натуральное число?
Было 12345 Стало 54321

Как перевернуть Число не выходя из цикла...
var b:array of string; a:array of integer; lim,i,n,k,l,j,w,e,p:integer; s,s1:string; begin read(n); for i:=2 to n do if (i=2)...

Определите минимальное число монеток, которые нужно перевернуть как остальные
На столе лежат n монеток. Некоторые из них лежат вверх решкой, а некоторые – гербом. Определите минимальное число монеток, которые нужно...

Пользователь вводит с клавиатуры число, необходимо перевернуть его (число)
Написать на Lua(использовать цикл for): Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран(к...

Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран
2. Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран.


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru