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

Целое четырехзначное число заменить числом, получающимся при записи его цифр в обратном порядке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Некомпилится простой код! http://www.cyberforum.ru/cpp-beginners/thread443755.html
Привет! Сразу к делу. Вот код #include <cstdlib> #include <iostream> #include <string.h> using namespace std; int main(int argc, char *argv) { unsigned long fibo;
C++ Опистать структуру с именем PRICE, содержащую следующие параметры 1. Опистаь структуру с именем PRICE, содержащую следующие параметры: -название товара; -название магазина в которм продаеться товар; -стоимость товара в рублях. Написать програму выполняющюю следующие действия: -вывод информаци о товаре, продающемся в магазине, название которого ввиденно с клавиатуры. -если такого магазина нет вывести на экран соответсвующее собщение. 2.Составить... http://www.cyberforum.ru/cpp-beginners/thread443745.html
vector C++
Как я понял в С++ vector это замена динамическому массиву, как в Delphi ss : array of String; Только тут vector <string> ss; Только как с ним работать? Как задать длину? Аналог дэльфийскому SetLength тут есть?
Ищу код перевода числа в строку и назад... C++
itoa и atoi не подходят...
C++ Помогите поставить размер строки http://www.cyberforum.ru/cpp-beginners/thread443718.html
как сделать чтобы не подчёркивало l в квадратных скобках? const int l=n-m+1; char str;
C++ Потоки Я нашел в интернете отличную статью про потоки и многопоточность и на её основе написал следующую программу: #include "stdafx.h" #include <process.h> #include <stdio.h> #include <iostream> #include <conio.h> int a; void Thread1( void* pParams ) { int max = a; подробнее

Показать сообщение отдельно
Сtrl
 Аватар для Сtrl
139 / 129 / 3
Регистрация: 19.07.2011
Сообщений: 184
10.02.2012, 02:18     Целое четырехзначное число заменить числом, получающимся при записи его цифр в обратном порядке
Ха-ха, easybudda, а если там будет не 4, а 100 цифр?
На C++ я сделал так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
template <class T>
T numeric_reverse(T number, const T base = 10)
{
    if (number < base && number >= 0)
        return number;
    T rnumber = number;
    T mbase = 1;
    do {
        mbase *= base;
    } while (rnumber /= base);
    do {
        rnumber += (number % base) * (mbase /= base);
    } while (number /= base);
    return rnumber;
}
 
int main() 
{ 
    std::cout << numeric_reverse(1234);
    std::cin.get();
}
В обычном Си я не силен, но после адаптации получилось вот так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
 
int numeric_reverse(int number, const int base)
{
    int rnumber = number;
    int mbase = 1;
    if (number < base && number >= 0)
        return number;
    do {
        mbase *= base;
    } while (rnumber /= base);
    do {
        rnumber += (number % base) * (mbase /= base);
    } while (number /= base);
    return rnumber;
}
 
int main() 
{ 
    printf("%d", numeric_reverse(1234, 10));
    getchar();
}
 
Текущее время: 09:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru