Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
angel5609
0 / 0 / 0
Регистрация: 08.10.2011
Сообщений: 34
#1

Вывести на экран число, которое получается если прочитать заданное число в обратном порядке - C++

28.10.2012, 15:16. Просмотров 1768. Ответов 13
Метки нет (Все метки)

Составить программу, которая выводит на экран число, получаемое, если прочитать заданное число в обратном порядке

Пример:
123 321
120 21
100 1
0 0

То есть 0 не должен выводиться!
Так вот что нужно добавить в эту программа, чтобы это условие выполнялось?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream.h>
#include<conio.h>
main()
{
      unsigned long long int x, k;
      cout<<"Vvedit' chislo - ";
      cin>>x;
      while(x>0)
      {
                k=x%10;
                x=x/10;
                cout<<k;
      }
      getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2012, 15:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести на экран число, которое получается если прочитать заданное число в обратном порядке (C++):

Заменить данное натуральное число на число, которое получается из исходного записью его цифр в обратном порядке. Например, дано число 156, нужно получ - C++
Вобщем,если не сложно,именно саму функцию помочь написать,ибо я просто не могу понять:) Добавлено через 22 минуты вот так...

Заменить данное число на число, которое получается из исходного записью цифр в обратном порядке - C++
Заменить данное натурально число на число, которое получается из исходного записью цифр в обратном порядке(например, дано число 156, нужно...

Заменить данное натуральное число на число, которое получается из исходного записью его цифр в обратном порядке - C++
1) Заменить данное натуральное число на число, которое получается из исходного записью его цифр в обратном порядке. Например, дано число...

Для каждого числа последовательности вывести новое число, которое получится после записи цифр числа в обратном порядке - C++
Пожалуйста, напишите программы в С++ по функциям!). 29. Вводится последовательность из N целых чисел. Для каждого числа...

найти число, которое получено из N перестановкой его цифр в обратном порядке - C++
Помогите пожалуйста, сессия скоро.. а я дуб дубом в си...... спасибо заранее!! Дано целое число N (N &gt; 0). Используя операции деления...

Ввывести новое число, которое получится после записи цифр числа в обратном порядке - C++
Добрый вечер, завтра утром сдавать лабы, а я никак не могу разобраться с массивами, на кону допуск к сессии. 1.Вводится...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
28.10.2012, 15:20 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream> 
 
int main() 
{   
    int number;
    std::cout << "Inter a number " << std::endl; 
    std::cin >> number; 
 
    while(number) 
    {   
        if(number % 10 != 0);  
        std::cout << number % 10 << " "; 
        number /= 10;
    } 
}
angel5609
0 / 0 / 0
Регистрация: 08.10.2011
Сообщений: 34
28.10.2012, 15:55  [ТС] #3
David Sylva, а зачем Вы полностью изменили мою программу?
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
28.10.2012, 16:00 #4
Цитата Сообщение от angel5609 Посмотреть сообщение
David Sylva, а зачем Вы полностью изменили мою программу?
Потому что я не смотрел на твою программу, а предложил своё решение.
Thinker
Эксперт C++
4225 / 2199 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
28.10.2012, 16:03 #5
Цитата Сообщение от angel5609 Посмотреть сообщение
полностью изменили мою программу...
чтобы запутать вас (и я тоже это сделаю):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
unsigned long Inverse(unsigned long a)
{
   unsigned long b = a % 10;
   while (a /= 10)
      b = b * 10 + a % 10;
   return b;
}
 
int main()
{
   std::cout << Inverse(123) << "\n";
   return 0;
}
на самом деле, способов много разных для решения одной задачи))
Байт
Эксперт C
15996 / 10264 / 1537
Регистрация: 24.12.2010
Сообщений: 19,359
28.10.2012, 16:11 #6
angel5609, ловите
C
1
2
3
4
5
6
7
8
9
  flag = 0;
while(x>0)
      {
                k=x%10;
                x=x/10;
                if (flag==0 && k==0) continue;
                flag = 1;
                cout<<k;
      }
angel5609
0 / 0 / 0
Регистрация: 08.10.2011
Сообщений: 34
29.10.2012, 00:47  [ТС] #7
Байт, а что такое "flag"?
Байт
Эксперт C
15996 / 10264 / 1537
Регистрация: 24.12.2010
Сообщений: 19,359
29.10.2012, 11:11 #8
Цитата Сообщение от angel5609 Посмотреть сообщение
Байт, а что такое "flag"?
C
1
 int flag;
kotleta
42 / 42 / 11
Регистрация: 13.09.2012
Сообщений: 196
29.10.2012, 11:20 #9
По-моему, навык разбираться в чужом коде наверное может быть пригодится программисту?

поэтому вот

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream.h>
#include<conio.h>
main()
{
      unsigned long long int x, k;
      cout<<"Vvedit' chislo - ";
      cin>>x;
      
      if(x == 0){  cout << 0; return; }
 
      while(x>0)
      {
                if( (k=x%10) != 0) cout << k;
                x=x/10;
      }
 
 
      getch();
}
Байт
Эксперт C
15996 / 10264 / 1537
Регистрация: 24.12.2010
Сообщений: 19,359
29.10.2012, 11:23 #10
kotleta, У вас число 102004 перейдет в 421
kotleta
42 / 42 / 11
Регистрация: 13.09.2012
Сообщений: 196
29.10.2012, 11:30 #11
ну тогда так...

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<iostream.h>
#include<conio.h>
main()
{
      unsigned long long int x, k;
      char f;
      cout<<"Vvedit' chislo - ";
      cin>>x;
      
      if(x == 0){  cout << 0; return; }
 
      for(f='0'; x>0;)
      {
                if( (k=x%10) != 0) 
                {
                 f='1';
                 cout << k;
                 x=x/10;
                }
                if(k == 0 && f == '1') cout << k;
 
      }
 
 
      getch();
}
angel5609
0 / 0 / 0
Регистрация: 08.10.2011
Сообщений: 34
29.10.2012, 15:36  [ТС] #12
kotleta, а у меня вообще чего-то не работаете программа(((
Вальдемар
-5 / 0 / 0
Регистрация: 29.07.2012
Сообщений: 61
29.10.2012, 16:59 #13
Цитата Сообщение от angel5609 Посмотреть сообщение
kotleta, а у меня вообще чего-то не работаете программа(((
препиши к майну int и return 0; в конце кода.

Цитата Сообщение от kotleta Посмотреть сообщение
if(x == 0){ cout << 0; return; }
только как будетработать это сточка кода?
angel5609
0 / 0 / 0
Регистрация: 08.10.2011
Сообщений: 34
31.10.2012, 01:37  [ТС] #14
Больше никаких не будет вариантов?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.10.2012, 01:37
Привет! Вот еще темы с ответами:

Найти число, которое образуется при записи цифр заданного натурального числа в обратном порядке - C++
Найти число, которое образуется при записи цифр заданногонатурального числа в обратном порядке. Например: для заданногочисла 1234 — это...

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

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

Если первое число окажется кратным 5 или второе число будет нечетным, то вывести на экран сумму их модулей - C++
4. Даны два числа N и М. Если первое число окажется кратным 5 или второе число будет нечетным, то вывести на экран сумму модулей заданных...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
31.10.2012, 01:37
Ответ Создать тему
Опции темы

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