Реализовать набор подпрограмм для выполнения операций над числами в шеснадцатеричной СС - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Задача - неабходимо реализовать в виде модуля набор подпрограмм для выполнения следующих операций над натуральными числами в шеснадцатеричной системе счисления: 1) Сложения; 2) Вычитания; 3) Умножения; 4) Деления; 5) Перевода из двоичной системы счисления в шеснадцатеричную; 6) Перевода из шеснадцатиричной системы счисления в десятичную; 7) Функции проверки правильности записи числа в шеснадцатеричной системе счисления; 8) Функции реализующие операции отношения; Простите за дурацкий лексикон и незнание основ, но вопрос - как следует реализовать код, что бы Шарп понимал, что я работаю именно с шеснадцатеричной сс, подходил к преподу с вопросом, а можно ли переводить числа введеные скажем в text box в 10ю сс, проводить с ними необходимые операции, а затем снова переводить в 16ю сс...и затем уже выводить результат...на что она сообщила что "перехитрить самого себя" мне не удастся и что бы модуль работал именно с 16й сс...помогите, с чего начать? От чего отолкнуться? Работает с 10й сс
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Collections;
  8. namespace ModOperaciy
  9. {
  10. public class Class1
  11. {
  12. public static int SummaFunc(int x, int y)
  13. {
  14. return (x + y);
  15. }
  16. public static int RaznostFunc(int x, int y)
  17. {
  18. return (x - y);
  19. }
  20. public static int ProizvedenieFunc(int x, int y)
  21. {
  22. return (x * y);
  23. }
  24. public static int ChastnoeFunc(int x, int y)
  25. {
  26. return (x / y);
  27. }
  28. public static string Otnoshenye(int x, int y, string z)
  29. {
  30. if (x == y) z = "числа равны";
  31. else if (x > y) z = x + " больше";
  32. else if (x < y) z = y + " больше";
  33. return z;
  34. }
  35.  
  36. public static long ToDec(string value, int fromBase) //Перевод в десятичную
  37. {
  38. const string TABLE = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  39. long rank = 1, result = 0;
  40. for (var i = value.Length - 1; i >= 0; i--)
  41. {
  42. var index = TABLE.IndexOf(value[i]);
  43. result += rank * index;
  44. rank *= fromBase;
  45. }
  46. return result;
  47. }
  48. public static string DecToHex(int chislo) //Перевод из десятичной системы в шестнадцатеричную
  49. {
  50. string hout = "", b = "";
  51. int q;
  52.  
  53. while (chislo > 0)
  54. {
  55. q = chislo % 16;
  56. chislo = chislo / 16;
  57. if (q >= 0 && q < 10)
  58. b = q.ToString();
  59. else
  60. if (q == 10)
  61. b = "A";
  62. else if (q == 11)
  63. b = "B";
  64. else if (q == 12)
  65. b = "C";
  66. else if (q == 13)
  67. b = "D";
  68. else if (q == 14)
  69. b = "E";
  70. else if (q == 15)
  71. b = "F";
  72. hout =hout + b;
  73. }
  74. return new string(hout.ToCharArray().Reverse().ToArray());
  75. }
  76. }
  77. }

Решение задачи: «Реализовать набор подпрограмм для выполнения операций над числами в шеснадцатеричной СС»

textual
Листинг программы
  1.  {
  2.  
  3.  
  4.           //  string s1 = "0xa";
  5.           // string s2 = "0xa";
  6.             string s1 = Console.ReadLine();
  7.             string s2 = Console.ReadLine();
  8.             int a, b;
  9.             a = int.Parse(s1);
  10.             b = int.Parse(s2);
  11.             Console.WriteLine("0x{0}", Convert.ToString(a + b, 16));
  12.             Console.ReadKey();
  13.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.091 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы