Форум: Форум C++Разное
Новые темы: 00
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Поменять местами первую и последнюю цифры числа. Например, из числа 8547 должно быть получено число 7548.
 
 автор: Morg   (20.09.2007 в 10:54)   письмо автору
 
 

Поменять местами первую и последнюю цифры числа. Например, из числа 8547 должно быть получено число 7548.

  Ответить  
 
 автор: cheops   (20.09.2007 в 12:00)   письмо автору
 
   для: Morg   (20.09.2007 в 10:54)
 

Можно поступить следующим образом
#include <iostream.h>
using namespace std;

int main()
{
  int number = 8547;
  char chrnum[80], result[80];
  int index = 0;

  // Переводим число number в строку chrnum
  // получится зеркальное отражение числа
  do
  {
    chrnum[index++] = number % 10 + 48;
    number = number / 10;
  } while(number);
  // Завершаем строку chrnum нулевым символом
  chrnum[index] = '\0';

  // Переворачиваем результат
  int chrlen = strlen(chrnum) - 1;
  for(int i = 0; i <= chrlen; i++)
  {
    // Меняем местами любые символы, кроме
    // первого и последнего
    if(i != 0 && i != chrlen) result[i] = chrnum[chrlen - i];
    else  result[i] = chrnum[i];
  }
  // Завершаем строку chrnum нулевым символом
  result[chrlen + 2] = '\0';

  cout << result << endl;

  return 0;
}

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования