Chia sẻ source code in chữ Hello world trong khung ‘*’.

Xin chào các bạn, trong bài này mình sẽ chia sẻ cách in chữ Hello world trong khung ‘*’ bằng C# . Bài này mình bị hỏi khi đi phỏng vấn ở Asian Tech hồi tháng 5 năm nay, tuy dạng bài này không khó nhưng mình đã khá lúng túng trong quá trình làm bài (chắc vì làm trên giấy 🙂 )

static void Main(string[] args)
{
 string input = "hello world from tham davies.";
 string[] splitedInput = input.Trim().Split(' ');

 InFrame(splitedInput);

 Console.ReadKey();
 }
 static void InFrame(string[] source)
 {
 int n = GetLongestLength(source);

 PrintStars(n);

 Console.WriteLine();
 foreach (var item in source)
 {
 Console.Write("* " + item);
 if (item.Length < n)
 {
 for (int i = 0; i < n - item.Length; i++)
 Console.Write(" ");
 }
 Console.Write(" *");
 Console.WriteLine();
 }
 PrintStars(n);
 }
// Lấy độ dài dài nhất của chuỗi
 static int GetLongestLength(string[] source)
 {
 return source.OrderByDescending(x => x.Length)
 .First().Length;
 }
// In ký tự * làm viền
 static void PrintStars(int n)
 {
 for (int i = 0; i < n + 4; i++)
 Console.Write("*");
}

Hy vọng sẽ giúp ích cho các bạn. enjoy coding 🙂

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s