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

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

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.10.2011, 20:33   #1
KL1CK3R
 
Регистрация: 15.09.2011
Сообщений: 3
Восклицание Из троичной системы в десятичную

Задание: ввести число в троичной системе и вывести в десятичной.
Подскажите пожалуйста как реализовать эту программу,подскажите алгоритм или блок схему,а то никак не могу понять что и зачем, препод сказал что надо использовать строку, крутил по-всякому,не получается,всё застревает когда я хочу в строке сделать обратный порядок цифр и потом основываясь на каждой цифре применять к ней формулу(с формулой и переводом из троичной в десятичную на бумаге проблем нет). Вообщем не могу конвертировать из строки в массив чисел к примеру, вообщем прошу подсказать последовательность действий,что и за чем, а код я сам буду додумывать,нужен лишь толчок Заранее благодарен
KL1CK3R вне форума Ответить с цитированием
Старый 14.10.2011, 00:22   #2
Lasur
Форумчанин
 
Аватар для Lasur
 
Регистрация: 13.10.2011
Сообщений: 143
По умолчанию

Код:
using System;

public class Test
{
	static void Main()
	{
		//Число в 3-ой сис-ме счисления, которое вводит юзер
		int x = int.Parse(Console.ReadLine());
		//Число в 10-ой сис-ме счисления, которое нужно получить
		int res = 0;
		//В цикле проходим по всем цифрам числа 
		for (int i = 0; x != 0; i++)
		{
			//Увеличиваем искомое число на (цифру на i-ом месте слева, умноженную на (3 в степени i))
			res += (x%10)*(int)Math.Pow(3, i);
			//"Убиваем" текущую последнюю цифру введенного числа, чтобы получить следующую слева цифру
			x /= 10;
		}
		//Выводим найденное число
		Console.WriteLine(res);
		Console.ReadLine();
	}
}
Вроде работает правильно, если какая ошибка - говори, исправлю.
Обьяснять я не шибко умею, поэтому лучше читай
Викиучебник:Системы счисления
или
Перевод чисел из одной системы счисления в другую.
Все имена, фамилии, ники, даты и события упоминаемые в моих постах, являются вымышленными. Все совпадения с реально существующими - случайны.
Lasur вне форума Ответить с цитированием
Старый 15.10.2011, 13:47   #3
KL1CK3R
 
Регистрация: 15.09.2011
Сообщений: 3
По умолчанию

Огромное спасибо за решение.Сам парился долго,так ни к чему и не пришёл,была проблема с алгоритмом(
KL1CK3R вне форума Ответить с цитированием
Старый 16.10.2011, 11:36   #4
Alex2012
Пользователь
 
Регистрация: 27.01.2010
Сообщений: 43
По умолчанию

Перегрузить ToString() можно:
Код:
int a=Convert.ToInt32(textbox1.text)
label1.Text=Convert.ToString(a,10);//можно в 2, 8, 10, 16 троичной вроде нет

Последний раз редактировалось Alex2012; 16.10.2011 в 11:48.
Alex2012 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод из шестнадцатеричной системы в десятичную AnderoN Общие вопросы Delphi 3 07.05.2011 19:55
Перевод из троичной системы Pti44ka Помощь студентам 1 16.05.2010 22:49
си++ перевод числа из шестнадцатиричной системы в десятичную. Bonne Помощь студентам 1 18.04.2010 19:19
Перевод числа из двоичной системы в десятичную С++ kontroller Помощь студентам 2 15.02.2010 20:39