Как использовать значение из словаря символов? - C#

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

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

Надо, чтоб метод посчитал вероятность для каждой буквы, но выводит одно значение, не пойму что не так
public double[] ver(char[] mass)
    {
        A ob = new A();
        char[] Alpha = mass;
        
        int l = 0;
        double[] kol = new double[Alpha.Length];
        double[] ver = new double[Alpha.Length];//вероятность
 
        Dictionary<char, int> map = Alpha.GroupBy(x => x)
            .ToDictionary(x => x.Key, x => x.Count());
 
        foreach (KeyValuePair<char, int> pair in map)
        {
            Console.WriteLine(pair.Value);
        }
 
        for (int s = 0; s < Alpha.Length; s++)
        {
            foreach (KeyValuePair<char, int> pair in map)
            {
                kol[s] = pair.Value;
                break;
            }
            ver[s] = kol[s] / Alpha.Length;
            Console.WriteLine(ver[s]);
        }
        return ver;
    }

Решение задачи: «Как использовать значение из словаря символов?»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string text = "молоко";
            Console.WriteLine("Длина массива {0} {1}\n", text, text.Length);
            double[] v = ver(text.ToCharArray());
            Console.WriteLine("Массив вероятностей:");
            foreach (double d in v)
            {
                Console.WriteLine("{0,-6:f3}", d);
            }
            Console.ReadKey();
        }
 
        public static double[] ver(char[] mass)
        {
            double[] ver = new double[mass.Length];
            Dictionary<char, int> map = mass.GroupBy(x => x)
                .ToDictionary(x => x.Key, x => x.Count());
            for (int s = 0; s < mass.Length; s++)
            {
                    ver[s] = (double)map[mass[s]] / mass.Length;;
            }
            return ver;
        }
    }
}

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


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

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

15   голосов , оценка 3.6 из 5
Похожие ответы