Определить повторение символа в строке - C#
Формулировка задачи:
Определить и вывести на экран номера позиций и количество повторений запрашиваемого символа в строке, введенной с клавиатуры
есть код на паскале
Я попыталась реализовать метод через флаг уникальности, чтобы счетчик был на неуникальные символы, но не могу понять общий принцип, что должно происходить и как вывести и определить номера позиций
var s: string; c: char; i,k: byte; begin write('Введите строку: '); readln(s); write('Введите символ: '); readln(c); k:=0; write('Номера позиций: '); for i:= 1 to length(s) do if s[i]=c then begin write(i, ' '); inc(k); end; writeln; writeln('Количество повторений заданного символа: ', k); end.
static void fifth() { Console.WriteLine("Введите строку: "); string a = //не понимаю, нужно ли что-то со строкой сделать или нет int s = 0; for (int i = 0; i < a.Length; i++) { bool isUnique = false; //флаг уникальности for (int j = 0; j < i; j++) { if (a[i] == a[j]) isUnique = true; //если число уже было, то флаг = true } if (isUnique) s++; //если значение уникальное увеличиваем счетчик } Console.WriteLine("Повторений элемента " + s + "");
Решение задачи: «Определить повторение символа в строке»
textual
Листинг программы
static void fifth() { int k = 0; Console.Write("Введите строку: "); string a = Console.ReadLine(); Console.Write("Введите символ: "); char c = Console.ReadKey().KeyChar; Console.WriteLine(); for (int i = 0; i < a.Length; i++) { if (a[i] == c) { Console.Write(i + " "); k++; } } Console.WriteLine("Количество повторений заданного символа: " + k); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д