Другие языки программирования и технологии
Помогите пожaлуйста по C++
Нужно написать программу , пользователь вводит 3-х значное число, например 123. Программа переворачивает число в обратно порядке, получается 321 и умножает на 2 , и в итоге пользователь видит 642. Помогите пожалуйста с той частью как перевести число из 123 в 321, желательно в самом простом варианте на уровне начального обучения в С++ .Заранее всем спасибо !
#include <iostream>
#include <clocale>
using namespace std;
void main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
int a, temp = 0, result = 0, x = 100;
cout << " Введите трёхначное число: ";
cin >> a;
do
{
temp = a % 10;
result += temp * x;
a /= 10;
x /= 10;
}
while (x >= 1);
result *= 2;
cout << "\n Результат = " << result;
fflush(stdin);
cin.get();
}
#include <clocale>
using namespace std;
void main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
int a, temp = 0, result = 0, x = 100;
cout << " Введите трёхначное число: ";
cin >> a;
do
{
temp = a % 10;
result += temp * x;
a /= 10;
x /= 10;
}
while (x >= 1);
result *= 2;
cout << "\n Результат = " << result;
fflush(stdin);
cin.get();
}
for (int i=0;i < 3;i++){
namber+=input % 10 * pow(10,2-i);
}
namber*=2; как то так
namber+=input % 10 * pow(10,2-i);
}
namber*=2; как то так
функция для получения строки в обратном порядке
char* str_rev(const char* ptr)
{
int i, j;
int sz=strlen(ptr);
char* result=strdup(ptr);
for(i=0, j=sz-1; i < j; ++i, --j)
{
char tmp=result;
result=result[j];
result[j]=tmp;
}
return result;
}
char* str_rev(const char* ptr)
{
int i, j;
int sz=strlen(ptr);
char* result=strdup(ptr);
for(i=0, j=sz-1; i < j; ++i, --j)
{
char tmp=result;
result=result[j];
result[j]=tmp;
}
return result;
}
int Convert(int n)
{
int r = 0;
do
{
r = 10 * r + n % 10;
} while ( n /= 10 );
return 2 * r;
}
{
int r = 0;
do
{
r = 10 * r + n % 10;
} while ( n /= 10 );
return 2 * r;
}
можно и так:
#include "stdafx.h"
#include<iostream>
#include<string>
using namespace std;
int main(int argc, _TCHAR* argv[])
{
string str ("123");
string::reverse_iterator it;
for ( it = str.rbegin() ; it < str.rend(); it++ )
cout << *it;
cout << endl;
return 0;
}
#include "stdafx.h"
#include<iostream>
#include<string>
using namespace std;
int main(int argc, _TCHAR* argv[])
{
string str ("123");
string::reverse_iterator it;
for ( it = str.rbegin() ; it < str.rend(); it++ )
cout << *it;
cout << endl;
return 0;
}
Используй функцию перевода в строку. На паскале будет так: inttostr(123), а вот на си, извини, не помню, itoa(123) кажется. А уж строку как хочешь потом можешь вертеть. Потом обратно в число и умножаешь.
Похожие вопросы
- Помогите, лёгкий код C++
- помогите закончить код C++
- Помогите решить задачу c#
- Поможет ли знание C# в школе?
- Помогите с задачей C#, пожалуйста
- Помогите реализовать на C#
- помогите с задачей - C#
- помогите!!! вопрос по C++ нужно написать программку "заполните массив так, чтобы все его элементы были различны.
- Помогите плизз с C++
- помогите пожалуйста с C#