11-4.À¯Æ¿¸®Æ¼ Ŭ·¡½º

11-4-1.DateTime

DateTime ±¸Á¶Ã¼´Â ³¯Â¥¿Í ½Ã°£À» Ç¥ÇöÇÑ´Ù. ¼­±â 1³â 1¿ù 1ÀϺÎÅÍ 9999³â±îÁö õ¸¸ºÐÀÇ 1ÃÊ ´ÜÀ§·Î ÃøÁ¤ °¡´ÉÇϸç À±³â°ú ¿ùº° ³¯¼ö¸¦ ¾Ë¾Æ¼­ °è»êÇÑ´Ù. ¼¼°è Ç¥ÁØ½Ã¿Í ·ÎÄà ½Ã°£À» ¸ðµÎ Ç¥ÇöÇÒ ¼ö ÀÖ¾î ±¹Á¦È­¿¡ À¯¸®ÇÏ´Ù. ÇÁ·ÎÆÛƼ¿¡´Â ³¯Â¥¿Í ½Ã°£À» ±¸¼ºÇÏ´Â Year, Month, Day, Hour, Minute, Second µîÀÌ ÀÖ´Ù. ³â¿ùÀÏÀº 1ºÎÅÍ ½ÃÀÛÇÏ°í ½ÃºÐÃÊ´Â 0ºÎÅÍ ½ÃÀÛÇÑ´Ù. ÀÌ¿ÜÀÇ ÇÁ·ÎÆÛƼ´Â µµÇ¥·Î °£´ÜÇÏ°Ô Á¤¸®Çß´Ù.

 

ÇÁ·ÎÆÛƼ

ŸÀÔ

¼³¸í

DayOfWeek

DayOfWeek ¨Þ

¿äÀÏ. DayOfWeek ¿­°ÅÇü¾È¿¡ Sunday, Monday µîÀÇ »ó¼ö°¡ Á¤ÀǵǾî ÀÖ´Ù.

DayOfYear

int ¨Þ

ÀϳâÁßÀÇ ³¯ ¼öÀÌ´Ù. 1ºÎÅÍ 366 »çÀÌÀÇ ÇÑ °ªÀ» °¡Áø´Ù.

TimeOfDay

int ¨Þ

ÇÏ·çÁßÀÇ ½Ã°£À» Á¶»çÇÑ´Ù.

Milisecond

int ¨Þ

¹Ð¸®ÃÊ. 0~999 »çÀÌÀÇ ÇÑ °ªÀ» °¡Áø´Ù.

Ticks

long ¨Þ

³¯½Î¿Í ½Ã°£À» ³ªÅ¸³»´Â ƽ ¼öÀ̸ç 1³â 1¿ù 1ÀÏ 0½Ã ÀÌÈÄ °æ°úÇÑ ½Ã°£ÀÌ´Ù. ´ÜÀ§´Â õ¸¸ºÐÀÇ 1ÃÊÀÌ´Ù.

Kind

DateTimeKind

´å³Ý 2.0¿¡¼­ Ãß°¡µÇ¾úÀ¸¸ç ½Ã°£ÀÇ Á¾·ù¸¦ Ç¥ÇöÇÑ´Ù. ¼¼°è Ç¥ÁؽÃ(UTC)ÀÎÁö ·ÎÄà ½Ã°£ÀÎÁö ¶Ç´Â ÁöÁ¤µÇÁö ¾Ê¾Ò´ÂÁö¸¦ Ç¥½ÃÇÑ´Ù.

Date

DateTime

ÀÚ±â ÀÚ½ÅÀ» ¸®ÅÏÇÑ´Ù.

Now

DateTime ¨Þ¨ß

·ÎÄà ½Ã°£À» ³ªÅ¸³»´Â DateTime °´Ã¼¸¦ ¸®ÅÏÇÑ´Ù.

Today

DateTime ¨Þ¨ß

ÇöÀç ³¯Â¥¸¦ Á¶»çÇÑ´Ù. ½Ã°£Àº 0½Ã·Î ¸ÂÃçÁø´Ù.

UtcNow

DateTime ¨Þ¨ß

UTC ½Ã°£À» ³ªÅ¸³»´Â DateTime °´Ã¼¸¦ ¸®ÅÏÇÑ´Ù.

 

ŸÀÔ¶õÀÇ ¨ÞÀº Àбâ Àü¿ë(Read Only), ¨ß´Â Á¤Àû ¸â¹ö(Static), ¨â´Â °¡»ó ¸Þ¼­µå(Virtual), ¨Ü´Â º¸È£µÈ ¸â¹ö(Protected)¶ó´Â ¶æÀÌ´Ù. ¿À´Ã ³¯Â¥¸¦ Á¶»çÇÒ ¶§´Â Now ÇÁ·ÎÆÛƼ¸¦ Àаí Ãâ·ÂÇÒ ¶§´Â WriteLineÀ¸·Î °´Ã¼¸¦ Àü´ÞÇÑ´Ù. ÇöÀç ½Ã°£Àº WriteLine(DateTime.Now) ¹®ÀåÀ¸·Î °£´ÜÈ÷ Á¶»çÇÒ ¼ö ÀÖ´Ù.

»ý¼ºÀÚ´Â ³¯Â¥¸¸ ÃʱâÈ­ÇÏ´Â »ý¼ºÀÚ¿Í ½Ã°£±îÁö °°ÀÌ ÃʱâÈ­ÇÏ´Â ´ÙÀ½ µÎ °¡Áö¸¸ ¾Ë¾Æ µÎ¸é µÈ´Ù. ÀÌ ¿Ü¿¡ ƽ°ªÀ¸·Î ÃʱâÈ­Çϰųª ±×·¹°í¸®·Â, À²¸®¿ì½º·Â °°Àº ´Þ·ÂÀÇ Á¾·ù¸¦ ¼±ÅÃÇÏ´Â »ý¼ºÀÚµµ ÀÖ´Ù.

 

public DateTime (int year,int month,int day)

public DateTime (int year,int month,int day,int hour,int minute,int second)

 

³¯Â¥³¢¸® »óµî, ´ë¼Ò¸¦ ºñ±³Çϰųª ³¯Â¥°£ÀÇ °è»êÀ» ¼öÇàÇÏ´Â µ¡¼À, »¬¼À ¿¬»êÀÚµµ Á¤ÀǵǾî ÀÖ´Ù. µ¡¼ÀÀÇ ÇÇ¿¬»êÀÚ³ª »¬¼ÀÀÇ °á°ú´Â DateTime °´Ã¼°¡ ¾Æ´Ñ TimeSpan ±¸Á¶Ã¼ÀÌ´Ù. ³¯Â¥³¢¸® »« °á°ú´Â ´õ ÀÌ»ó ³¯Â¥°¡ ¾Æ´Ï¸ç ³¯Â¥¿Í ³¯Â¥¸¦ ´õÇÒ ¼ö´Â ¾ø´Ù. ÀÚ¿¬¾î·Î À̸¦ ¼³¸íÇØ º¸¸é ´ÙÀ½°ú °°Àº Ç¥ÇöÀÌ °¡´ÉÇÏ´Ù.

 

8¿ù 20ÀÏ¿¡¼­ 8¿ù 10ÀÏ°£ÀÇ °£°ÝÀº ¿­ÈêÀÌ´Ù.

8¿ù 10ÀÏ¿¡ ¿­ÈêÀ» ´õÇϸé 8¿ù 20ÀÏÀÌ´Ù.

 

³¯Â¥³¢¸® »©¸é ±× °á°ú´Â Á¤¼öÀÌ°í ³¯Â¥¿¡¼­ Á¤¼ö¸¦ ´õÇØ¾ß ´Ù¸¥ ³¯Â¥°¡ µÈ´Ù. 8¿ù 20ÀÏ¿¡¼­ 8¿ù 10ÀÏ°£ÀÇ °£°ÝÀ» 0¿ù 10ÀÏÀ̶ó°í ÇÏÁö ¾Ê´Â´Ù. ³¯Â¥´Â ƯÁ¤ÇÑ ÇÑ ½ÃÁ¡À» Ç¥ÇöÇÏ´Â °ÍÀ̸ç TimeSpanÀº µÎ ³¯Â¥°£ÀÇ °£°ÝÀ» Ç¥ÇöÇÑ´Ù. ´å³ÝÀº DateTime°ú TimeSpanÀ¸·Î ³¯Â¥°£ÀÇ ¿¬»êÀ» Áö¿øÇÑ´Ù.

TimeSpanÀº °£°ÝÀ» °æ°úÀÏ°ú ½ÃºÐÃʷΠǥÇöÇϸç Á¤¹Ðµµ´Â õ¸¸ºÐÀÇ 1ÃÊÀÌ´Ù. ³â, ¿ùÀº ¿ö³« º¯È­ ¹«½ÖÇؼ­ °£°ÝÀÇ ÃÖ´ë ´ÜÀ§´Â ÀÏÀÌ´Ù. 4°³¿ù 2ÀϺ¸´Ù´Â 132ÀÏ 3½Ã°£ 26ºÐÀ̶ó´Â ½ÄÀ¸·Î Ç¥ÇöÇÑ´Ù. 4°³¿ùÀº °æ¿ì¿¡ µû¶ó 132ÀÏÀÌ µÉ ¼öµµ ÀÖ°í 130ÀÏÀÌ µÉ ¼öµµ ÀÖ¾î ºÎÁ¤È®ÇÏ´Ù. TimeSpanÀÇ »ý¼ºÀÚ´Â ´ÙÀ½°ú °°´Ù.

 

public TimeSpan (int days,int hours,int minutes,int seconds,int milliseconds)

 

ÀϽúÐÃÊ¿Í ¹Ð¸®Ãʸ¦ ÁöÁ¤ÇÏ¿© ½Ã°£ °£°ÝÀ» ÃʱâÈ­ÇÑ´Ù. °£°ÝÀ» ½Ã°£ ´ÜÀ§³ª ºÐ, ÃÊ ´ÜÀ§·Î ȯ»êÇÏ´Â TotalHours, TotalMinutes, TotalSeconds ÇÁ·ÎÆÛƼ°¡ ÀÖ°í ½Ã°£, ºÐ, ÃÊ ´ÜÀ§·Î °£°ÝÀ» ¸¸µå´Â FromHours, FromMinutes, FromSeconds ¸Þ¼­µå°¡ ÀÖ´Ù. ¿¹¸¦ µé¾î 10¸¸ ½Ã°£ÀÇ °£°ÝÀ» ±¸ÇÏ°í ½Í´Ù¸é FromHours(100000)À» È£ÃâÇÑ´Ù.

³¯Â¥´Â Åë»óÀûÀÎ »ê¼ú½ÄÀ¸·Î ¿¬»êÇϱ⠱²ÀåÈ÷ ±î´Ù·Ó´Ù. 1970³â 6¿ù 29ÀϺÎÅÍ 2020³â 10¿ù 1ÀϱîÁö ¸î ÀÏÀ̳ª °æ°úÇß´ÂÁö °è»êÇÏ·Á¸é °¢ ´ÞÀÇ ³¯ ¼ö, À±³â µîÀ» ÀÏÀÏÀÌ °í·ÁÇؼ­ °è»êÇØ¾ß ÇÏ´Ï °áÄÚ ½±Áö ¾Ê´Ù. ¶Ç ¿À´ÃÀÌ y³â m¿ù dÀÏÀ̶ó°í ÇßÀ» ¶§ ³»ÀÏÀº y³â m¿ù d+1ÀÏÀ̶ó°í ´ÜÁ¤ÇÒ ¼ö ¾ø´Ù. ÀÌ·± ±ÍÂúÀº °è»êÀ» ¶óÀ̺귯¸®°¡ ´ë½ÅÇØ ÁØ´Ù.

 

TimeSpan

using System;

 

class CSTest {

             static void Main() {

                           DateTime A = new DateTime(2019, 8, 13);

                           DateTime B = new DateTime(2020, 6, 29);

                           TimeSpan C = B - A;

                           Console.WriteLine(C);

 

                           A = new DateTime(2019, 1, 1);

                           C = new TimeSpan(1000, 0, 0, 0);

                           B = A + C;

                           Console.WriteLine(B);

             }

}

½ÇÇà°á°ú

321.00:00:00

2021-09-27 ¿ÀÀü 12:00:00

 

ÀÌ ¿¹Á¦´Â µÎ ½ÃÁ¡°£ÀÇ °£°ÝÀÌ ¾ó¸¶³ª µÇ´ÂÁö¿Í ƯÁ¤ ³¯Â¥·ÎºÎÅÍ 1000ÀÏ ÈÄ°¡ ¾ðÁ¦ÀÎÁö¸¦ °è»êÇÑ´Ù. ³¯Â¥³¢¸® »©¸é °æ°ú ½Ã°£ÀÌ ³ª¿À°í ³¯Â¥¿¡ °æ°ú ½Ã°£À» ´õÇÏ¸é ´Ù¸¥ ³¯Â¥°¡ ³ª¿Â´Ù. ¼ö´É±îÁö ¸î ÀÏÀÌ ³²¾Ò´ÂÁö, ¼öÇÐ ¿©ÇàÀ» °¡·Á¸é ¸î ¹ãÀ» ´õ ÀÚ¾ß ÇÏ´ÂÁö ¾Ë ¼ö ÀÖ°í ¿À´Ã ž ¾Æ±âÀÇ ¹éÀÏ ÀÜÄ¡¸¦ ¾ðÁ¦ ÇÒ Áöµµ ½±°Ô °è»êÇÒ ¼ö ÀÖ´Ù. ¶óÀ̺귯¸®ÀÇ µµ¿òÀ» ¹ÞÁö ¾Ê°í ÀÌ·± °è»êÀ» Á¤È®ÇÏ°Ô ÇÏ´Â °ÍÀº ¿¹»óº¸´Ù ¾î·Æ´Ù.

´õ ªÀº ½Ã°£À» ÃøÁ¤ÇÒ ¶§´Â Stopwatch Ŭ·¡½º¸¦ È°¿ëÇÑ´Ù. Start ¸Þ¼­µå·Î ÃøÁ¤À» ½ÃÀÛÇÏ°í Stop ¸Þ¼­µå·Î ÃøÁ¤À» Á¾·áÇÏ¸ç °æ°úµÈ ½Ã°£Àº Elapsed ÇÁ·ÎÆÛƼ¸¦ Àд´Ù. ½Ã°£ °£°ÝÀÌ Ãµ¸¸ºÐÀÇ 1ÃÊ ´ÜÀ§ÀÎ TimeSpanÀ̾ Á¤¹ÐÇÑ ½Ã°£À» ÃøÁ¤ÇÒ ¼ö ÀÖ´Ù.

 

StopWatch

using System;

using System.Diagnostics;

 

class CSTest {

             static void Main() {

                           Stopwatch st = new Stopwatch();

                           st.Start();

                           for (int i = 0; i < 100000; i++) {

                                        Console.Write(i + ",");

                           }

                           st.Stop();

                           Console.WriteLine("\nÃÑ °æ°ú½Ã°£ = " + st.Elapsed);

             }

}

½ÇÇà°á°ú

ÃÑ °æ°ú½Ã°£ = 00:00:03.0457768

 

ÀÌ ¿¹Á¦´Â ½Ê¸¸°³ÀÇ Á¤¼ö¸¦ Ãâ·ÂÇÏ´Â ½Ã°£À» ÃøÁ¤ÇÑ´Ù. ·çÇÁ¸¦ µ¹±â Àü¿¡ Start¸¦ È£ÃâÇÏ°í ·çÇÁ°¡ ³¡³µÀ» ¶§ StopÀ» È£ÃâÇÑ ÈÄ Elapsed ÇÁ·ÎÆÛƼ¸¦ ÀÐÀ¸¸é µÈ´Ù. ½Ã½ºÅÛÀÇ ¼Óµµ¿¡ µû¶ó ´Þ¶óÁö´Âµ¥ º¸Åë 5ÃÊ ¹Ì¸¸¿¡ ³¡³½´Ù. ½ºÅé ¿öÄ¡´Â ÇÁ·Î±×·¥À» Æ©´×ÇÒ ¶§ À¯¿ëÇÏ´Ù. ´À¸®°Ô µ¿ÀÛÇÏ´Â ºÎºÐÀÇ ½Ã°£À» ºÐ¼®ÇÏ¿© º´¸ñ ºÎºÐ¿¡ ´ëÇØ ÃÖÀûÈ­ÇÏÇÏ¸é ¼Óµµ¸¦ Çâ»ó½Ãų ¼ö ÀÖ´Ù. ÄÄÇ»ÅÍÀÇ ¼Óµµ¸¦ ÃøÁ¤ÇѴٵ簡 »ç¿ëÀÚÀÇ ¹®ÀÚ ÀԷ Ÿ¼ö¸¦ ÃøÁ¤ÇÒ ¶§µµ ¿ä±äÇÏ°Ô »ç¿ëµÈ´Ù.

11-4-2.Math

Math´Â ¼öÇÐ ÇÔ¼ö¸¦ Á¦°øÇÑ´Ù. ¼öÇÐ ÇÔ¼ö¸¦ ÇϳªÀÇ ¹üÁÖ¿¡ ¹­¾î ³õ±â À§ÇÑ ÇÔ¼öÅëÀÌ´Ù. ¸ðµç ¸Þ¼­µå´Â Á¤ÀûÀ̹ǷΠMath.Sin() ½ÄÀ¸·Î °´Ã¼ ¾øÀÌ ¹Ù·Î È£ÃâÇÒ ¼ö ÀÖ´Ù. µÎ °³ÀÇ »ó¼ö¸¦ °¡Áö´Âµ¥ Math.E´Â ÀÚ¿¬ ·Î±×ÀÇ ¹ØÀ̸ç 2.71828182·Î Á¤ÀǵǾî ÀÖ´Ù. Math.PI´Â ¿øÁÖÀ²À̸ç 3.14159265·Î Á¤ÀǵǾî ÀÖ´Ù. ´ÙÀ½Àº ½ÇÁ¦ ¿¬»êÀ» ÇÏ´Â ¸Þ¼­µåÀÇ ¸ñ·ÏÀÌ´Ù. ÀÌ ¸Þ¼­µå°¡ °è»êÇØ ³»´Â °ªÀÇ Àǹ̴ ¿©±â¼­ ¼³¸íÇϱ⿡ ºÎÀûÀýÇϹǷΠÁ¤¼®°°Àº ¼öÇÐ Âü°í¼­¸¦ º¸ÀÚ.

 

¸Þ¼­µå

¼³¸í

Abs

Àý´ë°ªÀ» °è»êÇÑ´Ù.

Acos

¾ÆÅ© ÄÚ»çÀÎÀ» °è»êÇÑ´Ù.

Asin

¾ÆÅ© »çÀÎÀ» °è»êÇÑ´Ù.

Atan

¾ÆÅ© źÁ¨Æ®¸¦ °è»êÇÑ´Ù.

Atan2

¾ÆÅ© źÁ¨Æ®2¸¦ °è»êÇÑ´Ù.

BigMul

32ºñÆ® ¼ýÀÚ µÎ °³¸¦ °öÇÑ´Ù. int µÎ °³¸¦ °öÇØ longÀ» ¸¸µç´Ù.

Ceiling

Å©°Å³ª °°Àº ÃÖ¼ÒÀÇ Á¤¼ö, ¼öÁ÷¼±»óÀÇ ¹Ù·Î ¿À¸¥ÂÊ Á¤¼ö¸¦ ±¸ÇÑ´Ù.

Cos

ÄÚ»çÀÎÀ» °è»êÇÑ´Ù. Àμö´Â ¶óµð¾ÈÀÌ´Ù.

Cosh

ÇÏÀÌÆÛº¼¸¯ ÄÚ»çÀÎÀ» °è»êÇÑ´Ù.

DivRem

µÎ ¼öÀÇ ¸ò°ú ³ª¸ÓÁö¸¦ °è»êÇÑ´Ù.

Exp

E¸¦ °ÅµìÁ¦°öÇÑ´Ù.

Floor

À۰ųª °°Àº ÃÖ´ëÀÇ Á¤¼ö, ¼öÁ÷¼±»óÀÇ ¹Ù·Î ¿ÞÂÊ Á¤¼ö¸¦ ±¸ÇÑ´Ù.

Log

·Î±×¸¦ °è»êÇÑ´Ù.

Log10

¹ØÀ» 10À¸·Î ÇÏ´Â »ó¿ë ·Î±×¸¦ °è»êÇÑ´Ù.

Max

µÎ ¼öÁß Å« ¼ö¸¦ ¼±ÅÃÇÑ´Ù.

Min

µÎ ¼öÁß ÀÛÀº ¼ö¸¦ ¼±ÅÃÇÑ´Ù.

Pow

°Åµì Á¦°öÀ» °è»êÇÑ´Ù.

Round

¹Ý¿Ã¸²ÇÑ´Ù.

Sign

ºÎÈ£¸¦ Á¶»çÇÑ´Ù.

Sin

»çÀÎÀ» °è»êÇÑ´Ù.

Sinh

ÇÏÀÌÆÛº¼¸¯ »çÀÎÀ» °è»êÇÑ´Ù.

Sqrt

Á¦°ö±ÙÀ» °è»êÇÑ´Ù.

Tan

źÁ¨Æ®¸¦ °è»êÇÑ´Ù.

Tanh

ÇÏÀÌÆÛº¼¸¯ źÁ¨Æ®¸¦ °è»êÇÑ´Ù.

Truncate

¼Ò¼öºÎ¸¦ ¹ö¸®°í Á¤¼öºÎ¸¸ ÃëÇÑ´Ù.

 

»ï°¢ ÇÔ¼ö, ·Î±× ÇÔ¼ö, Áö¼ö ÇÔ¼ö µî ¼öÇÐ ½Ã°£¿¡ ¹è¿ü´ø À¢¸¸ÇÑ ÇÔ¼ö°¡ ´Ù Á¤ÀǵǾî ÀÖ´Ù. »ï°¢ ÇÔ¼ö·Î µ¿±×¶ó¹Ì¸¦ ±×¸®´Â ¿¹Á¦¸¦ ¸¸µé¾î º¸ÀÚ.

 

MathCircle

using System;

 

class CSTest {

             static void Main() {

                           for (double angle = 0; angle < 360; angle += 10) {

                                        Console.CursorLeft = 40 + (int)(Math.Cos(angle * Math.PI / 180) * 20);

                                        Console.CursorTop = 12 + (int)(Math.Sin(angle * Math.PI / 180) * 10);

                                        Console.Write('o');

                           }

             }

}

½ÇÇà°á°ú

 

¹®ÀÚ¸¦ Âï¾î ¿øÀ» ±×·È´Âµ¥ ±×·¡ÇÈ È¯°æÀ̶ó¸é ¸Å²ô·´°Ô ±×¸± ¼ö ÀÖ´Ù. ¿øÁÖ»óÀÇ ÇÑ Á¡Àº ºøº¯ÀÌ ¹ÝÁö¸§ÀÎ Á÷°¢ »ï°¢ÇüÀÇ ÇÑ ²ÀÁöÁ¡ÀÌ´Ù. Á¡ÀÇ ÁÂÇ¥¸¦ °è»êÇϴµ¥ »ï°¢ ÇÔ¼ö¸¦ »ç¿ëÇÑ´Ù. »ï°¢ ÇÔ¼ö´Â ¶óµð¾ÈÀ» Àμö·Î ¹ÞÀ¸¹Ç·Î °¢µµ¸¦ ¶óµð¾ÈÀ¸·Î º¯È¯Çؼ­ ³Ñ°Ü¾ß ÇÑ´Ù.

Random Ŭ·¡½º´Â ³­¼ö¸¦ »ý¼ºÇÑ´Ù. ³­¼ö´Â ¾Ë ¼ö ¾ø´Â ¹«ÀÛÀ§ ¼öÀÌ¸ç °ÔÀÓÀ̳ª ¾Ïȣȭó·³ ½±°Ô ¿¹ÃøÇÒ ¼ö ¾ø´Â ¼ýÀÚ¸¦ ¸¸µé¶§ »ç¿ëÇÑ´Ù. ´å³ÝÀÇ ³­¼ö ¹ß»ý±â´Â Donald E Knuth ¹Ú»çÀÇ °¨»ê ³­¼ö »ý¼º ¾Ë°í¸®ÁòÀ» »ç¿ëÇÑ´Ù. »ý¼ºÀÚ´Â ´ÙÀ½ µÎ °³°¡ Á¦°øµÈ´Ù.

 

Random ()

public Random (int Seed)

 

³­¼ö ¹ß»ý±â´Â ÀÏÁ¤ÇÑ ½ÃÀÛ°ªÀ¸·ÎºÎÅÍ ¿¬»êÀ» ÅëÇØ ºÒ±ÔÄ¢ÇÑ ¼ö¸¦ ¸¸µé¾î ³½´Ù. ½ÃÀÛ°ªÀÌ °°À¸¸é »ý¼ºÇÏ´Â ³­¼ö°¡ ¶È°°¾Æ ¿ÏÀüÇÑ ³­¼ö¸¦ ¾òÀ¸·Á¸é ½ÃÀÛ°ªÀ» ¸Å¹ø ´Ù¸£°Ô ÁöÁ¤ÇØ¾ß ÇÑ´Ù. µðÆúÆ® »ý¼ºÀÚ´Â ³­¼ö ¹ß»ý±â¸¦ ½Ã½ºÅÛ ½Ã°è·Î ÃʱâÈ­ÇÏ¿© ºÒ±ÔÄ¢ÇÑ ³­¼ö¸¦ ¾ò´Â´Ù. ½ÃÀÛ°ªÀ» ÁöÁ¤ÇÏ´Â »ý¼ºÀÚµµ ÀÖ´Ù.

³­¼ö ¹ß»ý±â¸¦ ÃʱâÈ­ÇÑ ÈÄ ´ÙÀ½ ¸Þ¼­µå·Î ³­¼ö¸¦ ¾ò´Â´Ù. ³­¼öÀÇ ¹üÀ§³ª ŸÀÔÀ» ÁöÁ¤ÇÏ´Â ¿©·¯ °¡Áö ¸Þ¼­µå°¡ Á¦°øµÇ´Âµ¥ »ç¿ë ¸ñÀû¿¡ ¸Â°Ô ¹üÀ§¸¦ Àß ¼±ÅÃÇØ¾ß ÇÑ´Ù. ¿¹¸¦ µé¾î ÀÓÀÇÀÇ ´ÞÀ» ¼±ÅÃÇÏ·Á¸é 0~12 ¹Ì¸¸ÀÇ ³­¼ö¸¦ ¾ò¾î 1À» ´õÇÏ¸é µÈ´Ù. ÀÏ´Ü ³­¼ö¸¦ ¾òÀº ÈÄ ¾à°£ÀÇ ÀÀ¿ëÀ» ÅëÇØ ¿øÇÏ´Â °ªÀ¸·Î °¡°øÇϴµ¥ ¦¼ö¸¸ ÇÊ¿äÇÏ´Ù¸é ±¸ÇØÁø ³­¼ö¿¡ 2¸¦ °öÇÏ¸é µÇ°í Ȧ¼ö¸¸ ÇÊ¿äÇÏ´Ù¸é ¿©±â¿¡ 1À» ´õÇÏ¸é µÈ´Ù.

 

¸Þ¼­µå

¼³¸í

Next()

0 ~ MaxValue(¾à 20¾ï) ¹Ì¸¸ÀÇ Á¤¼ö ³­¼ö¸¦ ¸¸µç´Ù.

Next(max)

0 ~ max ¹Ì¸¸ÀÇ Á¤¼ö ³­¼ö¸¦ ¸¸µç´Ù.

Next(min, max)

min ~ max ¹Ì¸¸ÀÇ Á¤¼ö ³­¼ö¸¦ ¸¸µç´Ù. minÀº Æ÷ÇԵȰí max´Â Á¦¿ÜµÈ´Ù.

NextBytes(byte [])

¹ÙÀÌÆ®ÀÇ ¹è¿­À» Àμö·Î Àü´ÞÇÏ¸é ³­¼ö·Î ä¿ö¼­ ¸®ÅÏÇÑ´Ù.

NextDouble()

0.0 ~ 1.0 ¹Ì¸¸ÀÇ ½Ç¼ö ³­¼ö¸¦ »ý¼ºÇÑ´Ù.

Sample()

0.0 ~ 1.0 ¹Ì¸¸ÀÇ ½Ç¼ö ³­¼ö¸¦ »ý¼ºÇÑ´Ù. ÀçÁ¤ÀÇ °¡´ÉÇÏ´Ù.

 

0 ~ max ¹Ì¸¸ÀÇ Á¤¼ö ³­¼ö¸¦ ¾ò´Â Next ¸Þ¼­µå°¡ °¡Àå ½Ç¿ëÀûÀÌ´Ù. ´ÙÀ½ ¿¹Á¦´Â ÀÌ ¸Þ¼­µå·Î È­¸éÀÇ ÀÓÀÇ À§Ä¡¿¡ Á¡À» 100°³ Âï´Â´Ù.

 

Random

using System;

 

class CSTest {

             static void Main() {

                           Random R = new Random();

                           for (int i = 0; i < 100; i++) {

                                        Console.CursorLeft = R.Next(80);

                                        Console.CursorTop = R.Next(24);

                                        Console.Write('o');

                           }

             }

}

 

¼öÆò ÁÂÇ¥´Â 80¹Ì¸¸, ¼öÁ÷ ÁÂÇ¥´Â 24 ¹Ì¸¸À¸·Î ÁÂÇ¥ÀÇ X, Y¸¦ ±¸ÇØ Á¡À» Ãâ·ÂÇß´Ù. ½ÇÇàÇÒ ¶§¸¶´Ù ¸Å¹ø Á¡ÀÌ ÂïÈ÷´Â ¸ð¾çÀÌ ´Ù¸£´Ù.

11-4-3.Environment

Environment´Â ¿î¿µÃ¼Á¦³ª ÄÄÇ»ÅÍ ½Ã½ºÅÛ ¶Ç´Â ÄÄÆÄÀÏ·¯ µî¿¡ ´ëÇÑ ¿©·¯ °¡Áö Á¤º¸¸¦ Á¦°øÇÑ´Ù. ½ÇÇà ȯ°æÀ» Á¶»çÇϰųª ȯ°æ¿¡ µû¶ó ´Ù¸¥ µ¿ÀÛÀ» ÇÒ ¶§ ÀÌ·± Á¤º¸°¡ ÇÊ¿äÇÏ´Ù. ¿î¿µÃ¼Á¦ ¹öÀü, »ç¿ëÀÚ À̸§, ¸Þ¸ð¸® »óȲ, °¢Á¾ Ư¼ö Æú´õ µîÀ» Á¶»çÇÏ´Â ÇÁ·ÎÆÛƼ¿Í ¸Þ¼­µå°¡ Á¦°øµÈ´Ù. µû·Î µµÇ¥¸¦ ¸¸µé ÇÊ¿ä ¾øÀÌ ¿¹Á¦¸¸ º¸ÀÌ¸é µÉ µíÇÏ´Ù.

 

Environment

using System;

 

class CSTest {

             static void Main() {

                           Console.WriteLine("MachineName : " + Environment.MachineName);

                           Console.WriteLine("UserName : " + Environment.UserName);

                           Console.WriteLine("Version : " + Environment.Version);

                           Console.WriteLine("WorkingSet : " + Environment.WorkingSet);

                           Console.WriteLine("CurrentDirectory : " + Environment.CurrentDirectory);

                           Console.WriteLine("SystemDirectory : " + Environment.SystemDirectory);

                           Console.WriteLine("OSVersion : " + Environment.OSVersion);

                           Console.WriteLine("ProcessorCount : " + Environment.ProcessorCount);

                           Console.WriteLine("TickCount : " + Environment.TickCount);

                           Console.WriteLine("UserDomainName : " + Environment.UserDomainName);

 

                           Console.WriteLine("³» ¹®¼­ Æú´õ : " + Environment.GetFolderPath(

                                        Environment.SpecialFolder.MyDocuments));

             }

}

½ÇÇà°á°ú

MachineName : DESKTOP-BA655EN

UserName : soen

Version : 4.0.30319.42000

WorkingSet : 9793536

CurrentDirectory : C:\dotNetStudy\CSTest\CSTest\bin\Debug

SystemDirectory : C:\WINDOWS\system32

OSVersion : Microsoft Windows NT 6.2.9200.0

ProcessorCount : 12

TickCount : 47960046

UserDomainName : DESKTOP-BA655EN

³» ¹®¼­ Æú´õ : C:\Users\soen\Documents

 

Environment Ŭ·¡½ºÀÇ °¢Á¾ ÇÁ·ÎÆÛƼ¿Í ¸Þ¼­µå¸¦ È£ÃâÇÏ¿© ¿©·¯ °¡Áö Á¤º¸¸¦ Á¶»çÇØ º¸¾Ò´Ù. ½ÇÇà °á°ú´Â ½Ã½ºÅÛ¸¶´Ù ´Ù¸£´Ù. ÀÚ½ÅÀÇ ½Ã½ºÅÛ¿¡¼­ ÀÌ ¿¹Á¦¸¦ ½ÇÇàÇØ º¸°í °¢ ÇÁ·ÎÆÛƼ°¡ ¾î¶² °ªÀ» Á¶»çÇÏ´ÂÁö »ìÆ캸¾Æ¶ó. ÇÁ·ÎÆÛƼ°¡ ¸®ÅÏÇÏ´Â °´Ã¼¸¦ ºÐ¼®ÇÏ¸é ´õ »ó¼¼ÇÑ Á¤º¸¸¦ ±¸ÇÒ ¼öµµ ÀÖ´Ù. ¿¹¸¦ µé¾î OSVersion ÇÁ·ÎÆÛƼ´Â OperatingSystem °´Ã¼¸¦ ¸®ÅÏÇϴµ¥ Ç÷§Æû, ¼­ºñ½º ÆÑ, ºô´õ ³Ñ¹ö µîÀÇ Á¤º¸°¡ Á¦°øµÈ´Ù.