Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Trong bài viết này minh sẽ hướng dẫn các bạn cách đếm số lần xuất hiện của một ký tự trong một chuỗi trong C#. Đây là một bài khá đơn giản nếu các bạn đã có kiến thức về vòng lặp while, for.

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Mình sẽ thực hiện hai chương trình với hai cách khác nhau để các bạn có thể so sánh, bắt đầu thôi nào !

1. Đếm số lần xuất hiện ký tự trong chuỗi sử dụng vòng lặp

Trong chương trình này mình sẽ sử dụng vòng lặp while và for để lặp từng ký tự trong chuỗi. Sau đó hiển thị các ký tự đó đồng thời số lần xuất hiện trong chuỗi ra màn hình console.

*Lưu ý: ở đây mình sẽ không hiển thị khoảng trắng, vì vậy mình sẽ sử dụng phương thức Replace() để thay thế khoảng trắng bằng rỗng.

Bài viết này được đăng tại [free tuts .net]

using System; using System.Linq; namespace ConsoleApp5 { class Program { static void Main(string[] args) { Console.Write("Nhap vao chuoi: "); string message = Console.ReadLine(); //Xóa khoảng trắng khỏi chuỗi message = message.Replace(" ", string.Empty); //sử dụng vòng lặp while và for để lặp và đếm số lần xuất hiện của ký tự while (message.Length > 0) { Console.Write(message[0] + " : "); int count = 0; for (int j = 0; j < message.Length; j++) { if (message[0] == message[j]) { count++; } } Console.WriteLine(count); message = message.Replace(message[0].ToString(), string.Empty); } Console.WriteLine("\n ----Chuong trinh nay duoc dang tai Freetuts.net---- \n"); Console.ReadKey(); } } }

Kết quả:

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

2. Đếm số lần xuất hiện ký tự trong chuỗi sử dụng class Dictionary

Trong chương trình dưới đây, mình đã tạo một Dictionary để lưu trữ từng ký tự và số lượng của nó. Với đầu vào được nhập từ bàn phím, mình sẽ sử dụng vòng lặp foreach để lặp hết các ký tự trong chuỗi. Ký tự nào chưa xuất hiện trong Dictionary thì thêm nó vào và gán số lượng cho nó là 1. Nếu đã xuất hiện trong Dictionary thì tăng số lượng ký tự đó lên 1.

Sau khi đã đếm xong thì sử dụng tiếp vòng lặp foreach để hiển thị các ký tự trong Dic với số lần hiển thị của nó trong chuỗi.

*Lưu ý: Các bạn cần khai báo thư viện System.Collections.Generic; để sử dụng Dictionary nhé.

using System; using System.Linq; using System.Collections.Generic; namespace ConsoleApp5 { class Program { static void Main(string[] args) { Console.Write("Nhap vao chuoi: "); string message = Console.ReadLine(); //khai báo và sử dụng class Dictionary lưu ký tự và số lượng Dictionary dict = new Dictionary(); //sử dụng vòng lặp for để lặp từng ký tự //nếu chưa có trong Dic thì thêm vào và tăng ký tự đó lên 1 //nếu tồn tại rồi thì tăng ký tự đó lên 1 foreach (char ch in message.Replace(" ", string.Empty)) { if (dict.ContainsKey(ch)) { dict[ch] = dict[ch] + 1; } else { dict.Add(ch, 1); } } //hiển thị ký tự và số lần xuất hiện ra màn hình foreach (var item in dict.Keys) { Console.WriteLine(item + " : " + dict[item]); } Console.WriteLine("\n ----Chuong trinh nay duoc dang tai Freetuts.net---- \n"); Console.ReadKey(); } } }

Kết quả:

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Như vậy là chúng ta đã thực hiện xong chương trình đếm số lượng ký tự xuất hiện trong chuỗi trong C#. Các bạn hãy luyện tập thật nhiều để sử dụng nó thành thạo nhé, chúc các bạn thành công !!!

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Bài tập này chúng ta sẽ thực hiện một chương trình đếm số lần ký tự xuất hiện trong chuỗi trong Java.

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Đây là một dạng bài tập khá phổ biến trong các dạng bài tập căn bản.

Ở ví dụ này, các bạn phải nắm rõ được cách tạo hàm và cách sử sử dụng hàm trong java. Bởi vì đây là một kiến thức vô cùng quan trọng khi học các ngôn ngữ lập trình.

Ví dụ: Đếm số lần ký tự xuất hiện trong chuỗi

Để thực hiện chương trình này chúng ta sẽ tạo một hàm để kiểm tra, trong hàm này chúng ta sẽ tạo một mảng có kich thước là 256 (phạm vi trên ASCII). Sau đó lưu trữ số lần xuất hiện so với giá trị ASCII của giá trị đó, cuối cùng là tạo một mảng để chứa các ký tự của mảng đã cho và so sánh các ký tự trong chuỗi, khi kết quả trùng khớp thì số lượng ký tự đó sẽ được hiển thị ra màn hình.

Bài viết này được đăng tại [free tuts .net]

class DemKyTuTrongChuoi { static void DemKyTu(String str) { int counter[] = new int[256]; int len = str.length(); for (int i = 0; i < len; i++) counter[str.charAt(i)]++; char array[] = new char[str.length()]; for (int i = 0; i < len; i++) { array[i] = str.charAt(i); int flag = 0; for (int j = 0; j <= i; j++) { if (str.charAt(i) == array[j]) flag++; } if (flag == 1) System.out.println("Số lần xuất hiện của " + str.charAt(i) + " trong chuỗi:" + counter[str.charAt(i)]); } } public static void main(String[] args) { String str = "Hello world"; System.out.println("Chuỗi là: "+ str); DemKyTu(str); } }

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

Như vậy chúng ta đã thực hiện xong chương trình đếm số lần xuất hiện ký tự trong chuỗi. Chúc các bạn thực hiện thành công !!!

Viết chương trình nhập vào một chuỗi ký tự in ra số lần xuất hiện từng ký tự trong chuỗi

#include

#include

#include

using namespace std;

int main()

{

char s[256];

char t;

printf("vui long nhap chuoi: ");

gets(s);

puts(s);

printf("vui long 1 ky tu: ");

scanf("%c",&t);

printf("%c ",t);

int dem=0;

for(int i=0;i<=strlen(s);i++)

{

if(s[i]==t) dem=dem+1;

}

printf(" so lan xuat hien ky tu %c la: %d ",t,dem);

    return 0;

}

//viết trong hàm 

for(int i=0;i<=strlen(s);i++)

printf("vui long nhap chuoi: ");

printf("vui long 1 ky tu: ");

printf("so lan xuat hien cua ky tu %c la: %d",t,dem(s,t));