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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 130, средняя оценка - 4.88
Venia
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 4
08.01.2009, 23:38     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #1
Сегодняшнее домашнее задание основано именно на этом принципе, однако, вам придется использовать еще и циклы.

1. Пользователь вводит с клавиатуры число - программа должна показать сколько в данном числе цифр. Число вводится целиком в одну переменную.

Примечание: Например, пользователь ввел число 12345. На экране должно появиться сообщение о том, что в числе 5 цифр.
2. Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран.

Примечание: Например, пользователь ввел число 12345. На экране должно появиться число наоборот - 54321.
3. Пользователь вводит с клавиатуры число, необходимо показать на экран сумму его цифр.

Примечание: Например, пользователь ввел число 12345. На экране должно появиться сообщение о том, что сумма цифр числа 15.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2009, 23:38     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран.
Посмотрите здесь:

C++ необходимо перевернуть его (число) и вывести на экран.
пользователь вводит число, вывести на экран его побитово C++
C++ пользователь вводит число, вывести на экран его побитово
C++ С клавиатуры задается двухзначное целое число. Необходимо вывести на экран все его делители
Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DenisDpUa
Сообщений: n/a
09.01.2009, 19:04     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #2
Ты в Шаге учишься? У меня такое же задание. Если найдеш ответ кинь его сюда!

Добавлено через 2 часа 6 минут 43 секунды
Пользователь вводит с клавиатуры число - программа должна показать сколько в данном числе цифр. Число вводится целиком в одну переменную.
C++
1
2
3
4
5
6
7
8
9
10
11
12
void main()
{
    int digit,i=0;
    cout<<"Vvedite chislo:\n";
    cin>>digit;
    for(;digit>0;i++){
        digit/=10;
    }
    cout<<" V dannom chisle "<<i<<" cifr\n\n";
cin.get();
cin.get();  
}
Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void main()
{
    int digit,sum;
    cout<<"Vvedite chislo:\n";
    cin>>digit;
    cout<<"Vashe chislo naoborot = ";
    while(digit>0){
        sum=digit%10;
        digit/=10;
        cout<<sum;
    }
cin.get();
cin.get();  
}
Пользователь вводит с клавиатуры число, необходимо показать на экран сумму его цифр.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void main()
{
    int digit,sum,i=0;
    cout<<"Vvedite chislo:\n";
    cin>>digit;
    while(digit>0){
        sum=digit%10;
        digit/=10;
        i+=sum;
    }
    cout<<"Summa cifr dannogo chisla = "<<i;
 
cin.get();
cin.get();  
}
umnyashka
0 / 0 / 0
Регистрация: 08.01.2009
Сообщений: 8
10.01.2009, 15:49     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #3
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>
using namespace std;
void main()
{
 
unsigned int a;
 
int s=0,b=1;
 cout<<"\n\n\tENTER DIGIT ";
 cin>>a;
if((a<400000000)&&(a>0))
    { 
    
        for (int i=1;i<=10;i++)
        {
                if(a/b)
                {
                    s++;
                }
         b=b*10;
 
        }  
 cout<<"\n\n\tNumber of digits in the number of "<<s<<"\n\n";
    }
else
 
         cout<<"\n\n\t\tdo not write drivel"<<"\n\n";
}
Добавлено через 47 секунд
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>
using namespace std;
void main()
{
    
    int c,m=0;
    int b=1000000000,e=1,summa=0;
    cout<<"\n\n\t Enter digit ";
    cin>>c;
    if((c<400000000)&&(c>0))
    {
        for(int x=10;x>0;x--)
       {
            m=c/b;
            c-=b*m;
            b/=10;
            summa=summa+m*e;
            if(summa!=0)
            {
                
                e=e*10;
            }
        }
    cout<<"\n\n\tperewertysh= "<<summa<<"\n\n\n";
    }
    else 
        cout<<"\n\n\tYou have entered incorrect numbers\n\n";
}
Добавлено через 55 секунд
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>
using namespace std;
void main()
{
    int a,b=100000000;
    int summa=0,n=0;
    cout<<"\n\n\t\tenter digit ";
    cin>>a;
    if((a<400000000)&&(a>0))
    {
    for(int i=1;i<10;i++)
    {
        n=a/b;
        a=a-n*b;
        summa=summa+n;
        b=b/10;
        //cout<<"\n a="<<a<<" b="<<b<<" n="<<n<<" summa="<<summa; 
    }
 
    cout<<" \n\n\t\tsumma="<<summa<<"\n\n\n";
    }
    else
        cout<<"\n\n\t\tYou have entered incorrect numbers\n\n";
 
}
\/ector
 Аватар для \/ector
0 / 0 / 0
Регистрация: 19.01.2010
Сообщений: 12
25.01.2010, 22:14     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #4
[QUOTE=DenisDpUa;91176]Ты в Шаге учишься? У меня такое же задание. Если найдеш ответ кинь его сюда!

Добавлено через 2 часа 6 минут 43 секунды
Пользователь вводит с клавиатуры число - программа должна показать сколько в данном числе цифр. Число вводится целиком в одну переменную.
C++
1
2
3
4
5
6
7
8
9
10
11
12
void main()
{
    int digit,i=0;
    cout<<"Vvedite chislo:\n";
    cin>>digit;
    for(;digit>0;i++){
        digit/=10;
    }
    cout<<" V dannom chisle "<<i<<" cifr\n\n";
cin.get();
cin.get();  
}

Если пользователь введет 000444 ваше решение будет неправильным)
m0hze
0 / 0 / 0
Регистрация: 25.01.2010
Сообщений: 5
26.01.2010, 16:00     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #5
А резве strlen уже не в моде?
\/ector
 Аватар для \/ector
0 / 0 / 0
Регистрация: 19.01.2010
Сообщений: 12
07.02.2010, 12:00     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #6
Для данного задания strlen еще не изучен
Sam_SA
 Аватар для Sam_SA
0 / 0 / 0
Регистрация: 12.07.2010
Сообщений: 6
16.07.2010, 21:14     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #7
СПС БОЛЬШОЕ.
Все нормально работает
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9372 / 5422 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
17.07.2010, 01:37     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #8
три в одном
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
 
int main(void){
    int num, rests, rnum, cnt, sum;
    
    rnum = cnt = sum = 0;
    printf("Число: ");
    if ( scanf("%d", &num) != 1 )
        return 1;
    
    do {
        rests = num % 10;
        rnum = rnum * 10 + rests;
        sum += rests;
        ++cnt;
    } while ( num /= 10 );
    
    printf("Перевёрнутое число: %d\nКоличество цифр: %d\nСумма цифр: %d\n", rnum, cnt, sum);
    
    return 0;
}
Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран.

Цитата Сообщение от \/ector Посмотреть сообщение
Если пользователь введет 000444
... то не нужно его больше за компьютер пускать!
skynet120
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 76
18.02.2013, 13:10     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #9
C++
1
while(digit>0){sum=digit%10; digit/=10; cout<<sum;}
кто может рассказать что здесь происходит, а то моего понимания совсем нехватает

Добавлено через 12 часов 4 минуты
C++
1
while(digit>0){sum=digit%10; digit/=10; cout<<sum;}
кто может рассказать что здесь происходит, а то моего понимания совсем не хватает
avfed
14 / 12 / 2
Регистрация: 24.01.2013
Сообщений: 23
18.02.2013, 13:19     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #10
в sum берем остаток от деления на 10(по сути цифру) а само число целочисленное делим на 10, по сути убираем выведенную цифру
skynet120
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 76
18.02.2013, 14:06     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #11
Цитата Сообщение от avfed Посмотреть сообщение
в sum берем остаток от деления на 10(по сути цифру) а само число целочисленное делим на 10, по сути убираем выведенную цифру
а как в sum попадает остаток, я всегда думал что % дает целочисленное деление
к тому же sum у нас int и не видит дробной части
avfed
14 / 12 / 2
Регистрация: 24.01.2013
Сообщений: 23
18.02.2013, 15:05     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #12
% даёт остаток от деления, а / в приложении к целым типам даёт целочисленное деление
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,332
Завершенные тесты: 1
18.02.2013, 15:23     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #13
skynet120,
Код
Полная запись    | Аналогичная сокращенная запись
  x = x + 1;     |      x += 1;
  x = x - 1;     |      x -= 1;
  x = x * 1;     |      x *= 1;
  x = x / 1;     |      x /= 1;
  x = x % 1;     |      x %= 1;
skynet120
0 / 0 / 0
Регистрация: 22.01.2013
Сообщений: 76
18.02.2013, 15:41     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #14
Цитата Сообщение от avfed Посмотреть сообщение
% даёт остаток от деления, а / в приложении к целым типам даёт целочисленное деление
спасибо понял, что то я попутал
madfax
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 15
05.06.2016, 12:27     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #15
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
46
47
48
49
50
51
52
53
54
55
56
#include <iostream>
 
using::std::cin;
using::std::cout;
using::std::endl;
 
void main(){
    int number, temp;
    char tsk;
 
    do{
        cout << "\nenter the task n0 you want to perform:\n  1 digits  2 reverse  3 sum  4 quit ";
        cin >> tsk;
 
        switch (tsk)
        {
        case '1':
            number = 123456, temp = 0;
 
            for (; number > 0; temp++)
                number /= 10;
            cout << temp << endl;
            break;
 
        case '2':
            number = 123456, temp = 0;
 
            while (number > 0)
            {
                temp = temp * 10 + number % 10;
                number /= 10;
            }
            cout << temp << endl;
            break;
 
        case '3':
            number = 123456, temp = 0;
 
            while (number > 0)
            {
                temp += number % 10;
                number /= 10;
            }
            cout << temp << endl;
            break;
 
        case '4':
            cout << "the program has exited with code 0\n\n";
            break;
 
        default:
            cout << "error 400  bad request\n";
        }
    } while (tsk != '4');
 
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2016, 12:38     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран.
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
Unknownx
Заблокирован
05.06.2016, 12:38     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран. #16
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
size_t revnum(size_t res, size_t num){
    res = res + num % 10;
    if( num /= 10 )
    {
        res = res * 10;
        res = revnum(res, num);
    }
    return res;
}
 
int main(){
    size_t num = 12345678;
    size_t rev = 0;
    rev = revnum(rev, num);
    cout<<rev<<endl;
    return 0;
}
http://codepad.org/jiZYKqYd
87654321
Yandex
Объявления
05.06.2016, 12:38     Пользователь вводит с клавиатуры число, необходимо перевернуть его (число) и вывести на экран.
Ответ Создать тему
Опции темы

Текущее время: 19:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru