Как создать перегрузку для оператора "%"? - C#
Формулировка задачи:
Здравствуйте! Подскажите как создать перегрузку для оператора %. Нужно чтобы вместо деления по модулю он просто находил процент числа. Например 20%10 вернул бы 5.
Есть какие-то наброски, явно бредовые, так что вот:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Procent q = new Procent(20, 10); double w = q.pr % q.ch; Console.WriteLine(w); Console.Read(); } } class Procent { public int pr; public int ch; public Procent(int procent, int chislo) { pr = procent; ch = chislo; } public static Procent operator % (Procent a, Procent b) { return new Procent(a.pr / 100 * b.ch, ?????); } } }
Решение задачи: «Как создать перегрузку для оператора "%"?»
textual
Листинг программы
class Program { static void Main(string[] args) { Procent q = new Procent(20); double w = 10 % q; Console.WriteLine(w); Console.Read(); } } class Procent { public int Proc { get; set; } public Procent(int procent) { Proc = procent; } public static double operator %(double a, Procent b) { return a * (b.Proc / 100d); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д