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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.12.2010, 21:14   #1
Alovar
 
Регистрация: 25.12.2010
Сообщений: 4
Вопрос Системы счисления. C++

Привет всем. Я тут взялся за задачку в которой, если я правильно понял условие, нужно некоторое введеное нами целое десятичное число перевести во все системы счисления от двоичной до девятеричной и вывести сколько получилось цифр в общей сложности.

#include <iostream>
using namespace std;
void main()
{
int i, number, system = 2, arr[200], count=0;
cin>>number;
while(system<10)//начинаю цикл который переводит число до девятеричной системы
{
for(i=0; number>=system-1; i++, number=number/system, count++)
{
arr[i]=number%system;//записываю остатки в массив и счетчиком count считаю сколько их уже накопилось
}
cout<<count;//вывожу кол-во цифр для каждой системы по отдельности, в двоичной работает, но не дальше
system++;
}
}

Кажется я плохо понял циклы, но по моей логике вроде правильно)
делаю в визуал студио 2008.
Alovar вне форума Ответить с цитированием
Старый 25.12.2010, 23:14   #2
kaljan775
:D
Форумчанин
 
Аватар для kaljan775
 
Регистрация: 26.09.2010
Сообщений: 570
По умолчанию

Код:
#include <iostream>

using namespace std;

int main(){
	int a;
	int sum=0;
	cin>>a;
	char c[100];
	for (int i=2;i<10;i++){
		itoa(a,c,i);
		cout<<c<<endl;
		sum=sum+strlen(c);
	}
	cout<<"kolchestwo chisel: "<<sum<<endl;
	system("pause");
return 0;
}
Пишу ПО, создаю сайты, делаю курсовые работы, за деньги
C#, .NET, MS SQL, AngularJS, HTML, jQuery
kaljan775 вне форума Ответить с цитированием
Старый 25.12.2010, 23:26   #3
andrewpalkin
Форумчанин
 
Аватар для andrewpalkin
 
Регистрация: 23.11.2010
Сообщений: 458
По умолчанию

Цитата:
Сообщение от Alovar Посмотреть сообщение
Кажется я плохо понял циклы, но по моей логике вроде правильно)
делаю в визуал студио 2008.
Ну так если ты думаешь , что все правильно , то зачем выложил ? В чем вопрос то ?

Код:
#include <iostream>

using namespace std;

int numbers(int num, int sys)
{
	int count = 0;
	if(num/sys > 0)
		count = numbers(num/sys,sys);
	cout<<num%sys;
	
	return count + 1;
}

void main()
{
	int number, sys = 2, count=0, countAll = 0;
	cout<<"Enter your number : "; cin>>number;

	while(sys<10)
	{
		cout<<"Number in the " <<sys << " system , is " ; 
		count = numbers(number,sys); countAll+= count;
		cout<<" . Total digits in number = " << count << "\n";
		sys++;
	}

	cout<<"\nTotal digits in all numbers = " << countAll;

}
--- Если я вам помог , то помогите и вы мне . Не просто просите решить задачу , а пробуйте ее сами решить ! Я не пишу программы с нуля , я помогаю поправить код ! ---

Последний раз редактировалось andrewpalkin; 25.12.2010 в 23:58.
andrewpalkin вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Системы Счисления amki6 Помощь студентам 0 11.03.2010 18:32
Системы счисления alexmikt Фриланс 2 27.02.2010 02:52
Системы счисления glupayastudentka Помощь студентам 3 28.06.2009 21:13
Системы счисления бедный_студент Помощь студентам 8 18.02.2009 23:25
Системы счисления vdv08 Паскаль, Turbo Pascal, PascalABC.NET 1 08.05.2008 17:32