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

Поменять первую и последнюю цифры в числе. - C++

Восстановить пароль Регистрация
 
Алексей Супрун
0 / 0 / 0
Регистрация: 11.06.2012
Сообщений: 21
12.06.2012, 10:09     Поменять первую и последнюю цифры в числе. #1
Нужна помощь в решение задачи. Дано число n. Как поменять первую и последнюю цифры.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Catstail
Модератор
 Аватар для Catstail
21486 / 10239 / 1668
Регистрация: 12.02.2012
Сообщений: 17,120
12.06.2012, 11:00     Поменять первую и последнюю цифры в числе. #2
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.h"
#include "stdlib.h"
#include "string.h"
#include "windows.h"
 
int swapFL(int n)
{
    int l;
    char s[20];
    char cf,cl;
    itoa(n,s,10);
    l=strlen(s);
    cf=s[0];
    cl=s[l-1];
    s[0]=cl;
    s[l-1]=cf;
    return atoi(s);
}
 
int main(int argc, char* argv[])
{
    int n;
    SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
    cout << "Введите целое число: ";
    cin >> n;
    cout << "Результат: " << swapFL(n) << endl;
    return 0;
}
Добавлено через 27 минут
Правда, если последняя цифра - нуль, будет "плюшка"
Алексей Супрун
0 / 0 / 0
Регистрация: 11.06.2012
Сообщений: 21
12.06.2012, 11:04  [ТС]     Поменять первую и последнюю цифры в числе. #3
А можно это записать как то попроще? Я совсем начинающий.
Alt_Shift
 Аватар для Alt_Shift
50 / 50 / 2
Регистрация: 28.05.2012
Сообщений: 161
12.06.2012, 11:29     Поменять первую и последнюю цифры в числе. #4
Цитата Сообщение от Алексей Супрун Посмотреть сообщение
А можно это записать как то попроще? Я совсем начинающий.
Так может быть?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "iostream"
#include "conio.h"
#include "windows.h"
 using namespace std;
 
void main()
{
   char *arr;//Объявлем массив символов
   int a,b,c;
   cout<<"Vvedite kolichestvo cifr v chisle"<<endl;//Просим ввести необходимое количество цифр в будущем числе
   cin>>a;
   a--;
   arr=new char[a];
   cout<<"Vvedite chislo"<<endl;
   cin>>arr;//заполняем массив символов числом
   c=arr[0];//Меняем местами
  b=arr[a];
   arr[0]=b;
   arr[a]=c;
   cout<<"Rezultat: "<<arr;
_getch();
}
Алексей Супрун
0 / 0 / 0
Регистрация: 11.06.2012
Сообщений: 21
12.06.2012, 11:39  [ТС]     Поменять первую и последнюю цифры в числе. #5
Всем большое спасибо!
g-h
67 / 67 / 1
Регистрация: 03.06.2012
Сообщений: 176
12.06.2012, 13:46     Поменять первую и последнюю цифры в числе. #6
Цитата Сообщение от Alt_Shift Посмотреть сообщение
b=arr[a];
Цитата Сообщение от Alt_Shift Посмотреть сообщение
arr[a]=c;
Здесь выходы за границы массива
C++
1
2
3
b = arr[a-1];
...
arr[a-1] = c;
rofl113
10 / 10 / 1
Регистрация: 26.02.2012
Сообщений: 36
12.06.2012, 14:00     Поменять первую и последнюю цифры в числе. #7
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 <stdafx.h>
#include <iostream>
#include <conio.h>
using namespace std;
 
int stepen10(int r)
{
 int T=1;
 while(r>0) {T*=10;r--;} 
 return T;
}
int main ()
{
 int N,A1,A2,counter;//A1 - 1 цифра; A2 - последняя цифра.
 cout<<"Vvedite chislo = ";
 cin>>N;
 A1=N%10;
 A2=N;
 counter=0;
 while(A2>10) {A2/=10;counter++;}
 N+=(A1-A2)*stepen10(counter);
 N+=A2-A1;
 cout<<"Otvet N = " <<N;
 getch();
return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2012, 14:06     Поменять первую и последнюю цифры в числе.
Еще ссылки по теме:

Поменять первую и последнюю цифру в трёхзначном числе C++
C++ Поменять в числе первую и вторую цифры
C++ Поменять первую и последнюю цифру в натуральном числе, представленном в семиричной системе счисления

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

Или воспользуйтесь поиском по форуму:
Алексей Супрун
0 / 0 / 0
Регистрация: 11.06.2012
Сообщений: 21
14.06.2012, 14:06  [ТС]     Поменять первую и последнюю цифры в числе. #8
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
#include <cstdlib>
#include <iostream>
#include <conio.h>
using namespace std;
 
int main(int argc, char *argv[])
{
    int N,i,;
    double *arr,temp;
    cout<<"N= ";
    cin>>N;
    arr=new double[N];
    for(i=0;i<N;i++)
    
    {
    cout<<"arr["<<i<<"]=";
    cin>>arr[i];
   }
   
    for(i=0;i<N;i++)
    {
    temp=arr[0];
    arr[0]=arr[N-1];
    arr[N-1]=temp;
    }
    for(i=0;i<N;i++)
    {
    cout<<arr[i];
    cout<<" ";
   } 
   cout<<"\n";
  system("PAUSE");
  return EXIT_SUCCESS;
}
Вот мне кажется самый удобный вариант.
Yandex
Объявления
14.06.2012, 14:06     Поменять первую и последнюю цифры в числе.
Ответ Создать тему
Опции темы

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