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

Перевод из n-ричной системы счисления, в k-ричную - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Оператор switch http://www.cyberforum.ru/cpp/thread263590.html
Сделать с помощью оператора switch: a*pow(x+7)-b когда x<5 && b!=0; (x-c*d)/a*x когда x>5 && b==0; x/c в других случаях. Добавлено через 25 минут Можно не решать, но хотябы объяснить как пользоватся оператором switch; Или написать часть программы Добавлено через 20 минут
C++ Отсортировать список по возрастанию таким образом Необходимо отсортировать список по возрастанию таким образом: максимальный элемент перебрасывается в начало нового списка.помогите)) http://www.cyberforum.ru/cpp/thread263470.html
Логические и Промежуточные операции C++
Задано целое без знаковое число N(3CA7 число в шестнадцатеричной системе счисления) распечатать его в 10 и 16 системе счисление.Определить количество байтов занимаемое числом. Выделить К(8) правых байтов, начиная с позиции Р(10) в числе N(3CA7).Распечатать. В исходном числе выделенные биты заменить на 1.Распечатать.
Функции C++
Составить функцию "сжатия" исходной последовательности символов: каждая подпоследовательность, состоящая из идущего несколько раз подряд символа заменяется на текст x(k), где х - символ, а k - число вхождений этого элемента в подпоследовательность. нужно на С
C++ if в C++ и C http://www.cyberforum.ru/cpp/thread262941.html
Как использовать оператор if в С++ и С ? Напимер: JavaScript if (условие) { тогда } else {}
C++ По массивам.... Добрый вечер:).На носу итоговая сессия, к сожалению для допуска на нее не могу справится с заданием который дал мне преподаватель (по программированию в СИ я слаба:().Да, я знаю , что оно легкое:) , помогите пожалуйста написать код для этой программки:), буду очень , очень! признательна! Вот собственно и сама программа: В консольном режиме С++ вывести на экран строки. В первой строке число 1. Во... подробнее

Показать сообщение отдельно
iama
 Аватар для iama
1249 / 974 / 48
Регистрация: 30.07.2010
Сообщений: 5,297
24.03.2011, 21:52     Перевод из n-ричной системы счисления, в k-ричную
Сабж. Само число не превышает 2^31, писал так:
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
35
36
37
38
39
40
#include <iostream>
#include <string>
#include <math.h>
 
using namespace std;
using std::string;
 
int from(char c)
{
  if (c > '9') return (int) c - 54;
  else return (int) c - 48;
}
 
char out(int n)
{
  if (n > 9) return (char) (n + 55);
  else return (char) (n + 48);
}
 
int main()
{
  long long p, n, k, i, l; string a, b = "";
 
  cin >> n >> a >> k;
  l = a.length();
  p = 0;
 
  for (i = 0; i < l; i++)
    p += pow(n, i) * from(a[l-i-1]);
 
  while (p) {
    b = out(p % k) + b;
    p /= k;
  }
 
  cout << b;
  if (b == "") cout << '0';
 
  return 0;
}
помогите с тестированием

Добавлено через 4 минуты
Уже нашел, удалите тему, извините, засоряю
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru