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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.08.2014, 08:21   #1
Руско
 
Регистрация: 02.01.2014
Сообщений: 5
По умолчанию Проблема с переводом чисел по системам счисления (С#)

Нужно в консоли написать программу, которая будет переводит число из одной системы счисления в другую (от х2 до х36). Решил сперва переводить в десятичную, а потом уже в конечную. при переводе получается какая-то лажа и совершенно левые числа. пример кода

Код:
            string Chislo;
            int Sys1, Sys2, chislo, l, k = 0, i = 0, j = 0;
            int[] arr = new int[1024];
            Sys1 = Convert.ToInt32(Console.ReadLine());
            Sys2 = Convert.ToInt32(Console.ReadLine());
            Chislo = Console.ReadLine();
            chislo = Convert.ToInt32(Chislo);
            l = Chislo.Length;
            for (i = 0; i < l; i++ )
            {
                arr[i] = chislo/(10^(l-1-i));
                chislo = chislo % (10 ^ (l - 1 - i));
            }
                if ((Sys1 < Sys2) && (Sys1 < 10))
                {
                    for (i = 1; i < (l - 1); i++)
                    {
                        k = arr[i] * Sys1 ^ (l - i);
                    }
                }
        }
    }

Последний раз редактировалось Stilet; 21.08.2014 в 20:03.
Руско вне форума Ответить с цитированием
Старый 21.08.2014, 11:35   #2
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 821
По умолчанию

^ - операция исключающего ИЛИ.
http://msdn.microsoft.com/ru-ru/library/zkacc7k1.aspx

Math.Pow - метод возведения в степень.
http://msdn.microsoft.com/ru-ru/libr...v=vs.110).aspx
^-.-^ My GitHub
Fenex вне форума Ответить с цитированием
Старый 21.08.2014, 13:23   #3
Руско
 
Регистрация: 02.01.2014
Сообщений: 5
По умолчанию

спасибо. остальное нормально?
Руско вне форума Ответить с цитированием
Старый 21.08.2014, 21:00   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я не оч. ее проверял, но выложу:
Код:
using System;

namespace dd
{
	class MainClass
	{
		public static string ToCC(int x,int cc){
			int c;
			if (cc == 2 || cc == 16 || cc == 8)
				return Convert.ToString (x, cc);
			string res="",abc="0123456789ABCDEFGHIJKLMNOPQESTUVWXYZ";
			if (x < cc)
				return abc[x].ToString();
			while(x!=0){
				c = x % cc;
				res = abc[c]+res;
				x /= cc;
			}
			return res;
		}
		public static void Main (string[] args)
		{
			Console.WriteLine ("Число: "); 
				int i = Convert.ToInt32 (Console.ReadLine ());
			Console.WriteLine ("Система: "); 
				int x = Convert.ToInt32 (Console.ReadLine ());
			Console.WriteLine ("{0} -> {1} = {2}",i,x,ToCC(i,x)); 
			Console.ReadKey ();
		}
	}
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.08.2014, 10:43   #5
Руско
 
Регистрация: 02.01.2014
Сообщений: 5
По умолчанию

Спасибо. Обязательно посмотрю.
Руско вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача по системам счисления на Delphi Ameliya Помощь студентам 2 03.08.2012 00:09
Проблема с переводом Zalex Microsoft Office Word 1 14.07.2011 18:23
задача по системам счисления. Pascal Лемур Помощь студентам 1 13.01.2011 02:23
Задача по системам счисления Rusl92 Паскаль, Turbo Pascal, PascalABC.NET 2 29.11.2008 00:24