Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2016, 20:00   #1
_D4rki_
 
Регистрация: 17.10.2016
Сообщений: 9
По умолчанию Перевод из 10-тичной сс в (-2)-ичную

Перевести число из 10-тичной системы счисления в (-2)-ичную.
Записью числа в (-2)-ичной системе счисления называется набор чисел a0, a1, …, an-1, каждое из которых равно 0 или 1, причем n = 1 или an-1 ≠ 0 и выполнено равенство:

Один из тестов не проходит. Помогите, пожалуйста, найти ошибку.

Код:
#include <iostream> 
#include <string> 
using namespace std;
int main()
{
	long long val, k = 0;
	cin >> val;
	long long res[1000];
	while (val != 0)
	{
		k++;
		int rem = val % -2;
		val = val / -2;
		if (rem < 0)
		{
			rem += 2;
			val += 1;
		}
		res[k] = rem;
	}
	long long sum = 0, step = 1;
	for (int i = 1; i <= k; i++) {
		cout << res[i] << " ";
		sum = sum + res[i]*step;
		step *= -2;
	}
	cout << "\n";
	cout << k << " " << sum;
	return 0;
}
Переменную sum задал специально, чтобы проверить правильность выполнения условий задачи, но так ничего и не смог найти.
_D4rki_ вне форума Ответить с цитированием
Старый 20.10.2016, 20:55   #2
_D4rki_
 
Регистрация: 17.10.2016
Сообщений: 9
По умолчанию

Нашел и исправил.
_D4rki_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевести число в q-ичную систему DenSeven Паскаль, Turbo Pascal, PascalABC.NET 10 28.06.2016 14:17
Преобразовать заданное целое число из p - ичной системы счисления в q - ичную Wedmochka Паскаль, Turbo Pascal, PascalABC.NET 2 30.05.2012 14:00
Как посчитать дробную и целую часть числа переводя его из 10-тичной в 8-ричную систему?! diallfam Помощь студентам 2 06.05.2012 01:44
Программа для перевода из 4-ичной СС в 5-ичную (с ограничением ввода цифр) -=Andriushka=- Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 04.10.2011 10:59
перевод из 10-тичной в 11-ричную систему счисления metallldoctor Помощь студентам 0 11.03.2010 13:51