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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Asker
114 / 102 / 11
Регистрация: 18.12.2010
Сообщений: 378
#1

Перевести число в эквивалентное обозначение буквами - C++

19.06.2013, 12:02. Просмотров 297. Ответов 0
Метки нет (Все метки)

Помогите, пожалуйста!

Дано натуральное число N, нужно вывести название столбца (как в Excel), который бы имел номер N, т.е.
если N = 1, вывести A
если N = 2, вывести B
если N = 3, вывести C
...
если N = 26, вывести Z
если N = 27, вывести AA
если N = 28, вывести AB и т.д.

Я пытался написать эту программу:
C++
1
2
3
4
5
6
7
8
9
int n;
int j = 0;
int st[6] = {1, 26, 676, 17576, 456976, 11881376}; // Степени с осн. 26
while (n/st[j] > 0) j++;
for (int i=j-1; i>=0; i--)
{
    cout << (char((n/st[i])+'A' - 1));
    n%=st[i];
}
, но он неправильно работает со значениями, кратными 26; т.е. если ввести 26, вместо Z программа выдаёт A@ (потому что остаток от деления 26 на 26 равен нулю). Как это можно исправить (или по другому написать)?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.06.2013, 12:02     Перевести число в эквивалентное обозначение буквами
Посмотрите здесь:

Перевести число из десятичной в двоичную C++
Перевести двоичное число в десятичное C++
C++ Как перевести число с 10 в двоичную
C++ Определить число вхождений в строку подстроки "аба", вывести символы строки, не являющейся буквами или цифрами
C++ Написать и протестировать функцию, которая преобразует строку шестнадцатеричных цифр в эквивалентное ей целое десятичное число
C++ Число символов строке не являющихся ни буквами, ни цифрами
C++ Записать целое число буквами (можно ли упростить код?)
Написать и протестировать функцию , которая преобразует строку двоичных цифр в эквивалентное ей целое число C++
Эквивалентное число для отрезка C++
C++ Найти эквивалентное значение
Перевести десятичное число в unicode C++
C++ Определить число элементов в массиве, являющихся гласными буквами латинского алфавита

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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