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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2014, 18:49   #1
nata4k@
 
Регистрация: 31.05.2013
Сообщений: 3
По умолчанию Шестнадцатеричная система

Помогите, ооооочень прошу и умоляю Я немного понимаю в С#, но сама не могу написать прогу.
Требуется:Составить описание класса для представления шестнадцатеричных чисел.Обеспечить выполнение операций сложения, вычитания, умножения шестнадцатеричных чисел.:
nata4k@ вне форума Ответить с цитированием
Старый 13.06.2014, 23:45   #2
yarik111475
 
Регистрация: 04.05.2014
Сообщений: 5
По умолчанию

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            HexNumber h1 = new HexNumber(250);
            HexNumber h2 = new HexNumber(146);

            Console.WriteLine(h1);
            Console.WriteLine(h2);
            Console.WriteLine(h1 - h2);
            Console.WriteLine(h1 + h2);
            Console.WriteLine(h1 * h2);

            Console.ReadLine();
        }
    }
    public class HexNumber
    {
        private int number;
        public HexNumber(int n)
        {
            number = n;
        }
        public static HexNumber operator +(HexNumber h1, HexNumber h2)
        {
            int n1 = int.Parse(h1.ToString().Substring(2, h1.ToString().Length - 2), System.Globalization.NumberStyles.HexNumber);
            int n2 = int.Parse(h2.ToString().Substring(2, h1.ToString().Length - 2), System.Globalization.NumberStyles.HexNumber);
            return new HexNumber(n1 + n2);
        }

        public static HexNumber operator -(HexNumber h1, HexNumber h2)
        {
            int n1 = int.Parse(h1.ToString().Substring(2,h1.ToString().Length-2), System.Globalization.NumberStyles.HexNumber);
            int n2 = int.Parse(h2.ToString().Substring(2, h1.ToString().Length - 2), System.Globalization.NumberStyles.HexNumber);
            return new HexNumber(n1 - n2);
        }

        public static HexNumber operator *(HexNumber h1, HexNumber h2)
        {
            int n1 = int.Parse(h1.ToString().Substring(2, h1.ToString().Length - 2), System.Globalization.NumberStyles.HexNumber);
            int n2 = int.Parse(h2.ToString().Substring(2, h1.ToString().Length - 2), System.Globalization.NumberStyles.HexNumber);
            return new HexNumber(n1 * n2);
        }
        public override string ToString()
        {
            return string.Format("{0}{1}", "0x", number.ToString("X"));
        }
    }
}
yarik111475 вне форума Ответить с цитированием
Старый 24.06.2014, 21:27   #3
kva52
 
Регистрация: 23.06.2014
Сообщений: 5
По умолчанию Уточнение сообщения yarik111475

В операторах +, -, * вместо

int n2 = int.Parse(h2.ToString().Substring(2 , h1.ToString().Length - 2), System.Globalization.NumberStyles.H exNumber);

должно быть

int n2 = int.Parse(h2.ToString().Substring(2 , h2.ToString().Length - 2), System.Globalization.NumberStyles.H exNumber);
kva52 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
шестнадцатеричная сс rinoolik Помощь студентам 2 22.12.2012 20:22
ЕАИСТО (единая автоматизированная информационная система технического осмотра)система ioff83 HTML и CSS 0 09.01.2012 16:43
двоичная шестнадцатеричная системы Kukurudza Общие вопросы C/C++ 1 05.09.2011 15:17
Какому типу соответствует шестнадцатеричная константа 0xF7u atenon Общие вопросы C/C++ 7 06.01.2011 19:34
Система принятия решения (Экспертная система) daranton Microsoft Office Excel 4 01.05.2010 17:55