Подсчитать количество каждой буквы в тексте - C#
Формулировка задачи:
Первые два сделал. Осталось подсчитать кол-во каждой буквы.
Задание:
Дан текстовый файл textlab2.txt/. Требуется написать программу которая выполняет следующие функции:
1. Считает сколько раз в файле встретился символ “o”/.
Например:
Файл textlab2.txt
А роза упала на пол.
Результат
Символ “о” встретился 2 раза.
2. Выводит все различные символы , которые входят в текст файл.
. Например:
Файл textlab2.txt
А роза упала на пол.
В файл входят символы :
А
р
о
з
а
у
п
л
н
3. * Выводит все различные символы , которые входят в текст файл. И их количество.
В файл входят символы :
А -1
р -1
о - 2
з - 1
а -3
у - 1
п - 2
л - 2
н -1
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace Лабораторная_работа_2_repair
{
namespace Лабораторная_работа_2
{
class Program
{
static int CountCharString(string st, char ch)
{
int N;
N = 0;
for (int i = 0; i < st.Length; i++)
{
if (st[i] == ch) N++;
}
return N;
}
static void write(string st, char ch)
{
StreamReader sr; string st1; st1 = ""; string st2; st2 = "";
sr = new StreamReader("ntr.txt", System.Text.Encoding.GetEncoding(1251));
string stA; stA = "";
while (!sr.EndOfStream)
{
st = sr.ReadLine();
for (int i = 0; i < st.Length; i++)
{
if (CountCharString(stA, st[i]) == 0)
{
stA = stA + st[i];
}
}
}
for (int i = 0; i < stA.Length; i++) { if (stA[i] != '.') { st1 = st1 + stA[i]; } else { if (stA[i] == '.') { } else { st1 = st1 + stA[i]; } } }
for (int i = 0; i < st1.Length; i++) { if (st1[i] != ' ') { st2 = st2 + st1[i]; } else { if (st1[i] == ' ') { } else { st2 = st2 + st1[i]; } } }
for (int i = 0; i < st2.Length; i++) { Console.WriteLine(st2[i] + "--");}
}
static void Main(string[] args)
{
StreamReader sr;
string A; string F;
char B;
sr = new StreamReader("ntr.txt",System.Text.Encoding.GetEncoding(1251));
A = sr.ReadLine();
B = 'о';
F = sr.ReadLine();
Console.Write("Буква о : ");
Console.WriteLine(CountCharString(A, B));
write(F, B);
Console.ReadLine();
}
}
}
}Решение задачи: «Подсчитать количество каждой буквы в тексте»
textual
Листинг программы
if(dict.TryGetValue(c, out n)) n = 0; dict[c] = n + 1;