<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Tolower on Sobamemil</title>
    <link>https://blog.sobamemil.com/en/tags/tolower/</link>
    <description>Recent content in Tolower on Sobamemil</description>
    <image>
      <title>Sobamemil</title>
      <url>https://blog.sobamemil.com/images/og-image.png</url>
      <link>https://blog.sobamemil.com/images/og-image.png</link>
    </image>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Wed, 04 Mar 2020 17:45:19 +0900</lastBuildDate>
    <atom:link href="https://blog.sobamemil.com/en/tags/tolower/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>C&#43;&#43; Programming Ch.4 Exercise 13 Solution</title>
      <link>https://blog.sobamemil.com/en/posts/067-%EB%AA%85%ED%92%88-c-programming-%EC%8B%A4%EC%8A%B5-%EB%AC%B8%EC%A0%9C-4%EC%9E%A5-13%EB%B2%88/</link>
      <pubDate>Wed, 04 Mar 2020 17:45:19 +0900</pubDate>
      <guid>https://blog.sobamemil.com/en/posts/067-%EB%AA%85%ED%92%88-c-programming-%EC%8B%A4%EC%8A%B5-%EB%AC%B8%EC%A0%9C-4%EC%9E%A5-13%EB%B2%88/</guid>
      <description>&lt;p&gt;&lt;b&gt;Problem:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;영문자로 구성된 텍스트에 대해 각 알파벳에 해당하는 문자가 몇 개인지 출력하는 히스토그램 클래스 Histogram을 만들어보자.&lt;/p&gt;
&lt;p&gt;대문자는 모두 소문자로 변환하여 처리한다.&lt;/p&gt;
&lt;p&gt;Histogram 클래스를 활용하는 사례와 Execution Result는 다음과 같다.&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;&lt;/th&gt;
          &lt;th&gt;&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;1  2  3  4  5&lt;/td&gt;
          &lt;td&gt;Histogram elvisHisto(&amp;quot;Wise men say, only fools rush in But I can&#39;t help, &amp;quot;);  elvisHisto.put(&amp;quot;falling in love with you&amp;quot;);  elvisHisto.putc(&#39;-&#39;);  elvisHisto.put(&amp;quot;Elvis Presley&amp;quot;);  elvisHisto.print();&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;b&gt;Execution Result:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://img.sobamemil.com/posts/67/img_1.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Objective &amp;amp; Hints:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;클래스 만들기 종합 응용&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Code:&lt;/b&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;&lt;/th&gt;
          &lt;th&gt;&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55&lt;/td&gt;
          &lt;td&gt;#include&lt;iostream&gt;  #include&lt;string&gt;  using namespace std;    class Histogram {  string sent;  public:  Histogram(string sent);  void put(string sent);  void putc(char c);  void print();  };    Histogram::Histogram(string text){  sent = text;  cout &amp;lt;&amp;lt; sent &amp;lt;&amp;lt; endl;  }  void Histogram::put(string text){  sent += text;  cout &amp;lt;&amp;lt; text;  }  void Histogram::putc(char c){  sent += c;  cout &amp;lt;&amp;lt; c;  }  void Histogram::print(){  int alpha[26] = { 0 };  int num = 0;  for (int i = 0; i &amp;lt; sent.length(); i++) {  if(isalpha(sent[i])){  char c = tolower(sent[i]);  alpha[c - &#39;a&#39;]++;  num++;  }  }  cout &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl;  cout &amp;lt;&amp;lt; &amp;quot;총 알파벳 수 &amp;quot; &amp;lt;&amp;lt; num;  cout &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl;  for (int i = 0; i &amp;lt; 26; ++i) {  char c = &#39;a&#39; + i;  cout &amp;lt;&amp;lt; c &amp;lt;&amp;lt; &amp;quot; (&amp;quot; &amp;lt;&amp;lt; alpha[i] &amp;lt;&amp;lt; &amp;quot;)\t: &amp;quot;;  for (int j = 0; j &amp;lt; alpha[i]; ++j) {  cout &amp;lt;&amp;lt; &amp;quot;*&amp;quot;;  }  cout &amp;lt;&amp;lt; endl;  }  }    int main() {  Histogram elvisHisto(&amp;quot;Wise men say, only fools rush in But I can&#39;t help, &amp;quot;);  elvisHisto.put(&amp;quot;falling in love with you&amp;quot;);  elvisHisto.putc(&#39;-&#39;);  elvisHisto.put(&amp;quot;Elvis Presley&amp;quot;);  elvisHisto.print();  }&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;b&gt;Explanation:&lt;/b&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>C&#43;&#43; Programming Ch.2 Exercise 16 Solution</title>
      <link>https://blog.sobamemil.com/en/posts/042-%EB%AA%85%ED%92%88-c-programming-%EC%8B%A4%EC%8A%B5-%EB%AC%B8%EC%A0%9C-2%EC%9E%A5-16%EB%B2%88/</link>
      <pubDate>Fri, 28 Feb 2020 20:24:43 +0900</pubDate>
      <guid>https://blog.sobamemil.com/en/posts/042-%EB%AA%85%ED%92%88-c-programming-%EC%8B%A4%EC%8A%B5-%EB%AC%B8%EC%A0%9C-2%EC%9E%A5-16%EB%B2%88/</guid>
      <description>&lt;p&gt;&lt;b&gt;Problem:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;영문 텍스트를 입력받아 알파벳 히스토그램을 그리는 프로그램을 작성하라. 대문자는 모두 소문자로 집계하며, 텍스트 입력의 끝은 &#39;;&#39; 문자로 한다.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Objective &amp;amp; Hints:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;문자열 읽기, C++ 프로그램 종합 응용&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Input File:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;입력할 텍스트 파일을 첨부하였습니다.&lt;/p&gt;
&lt;p&gt;[2-16.txt&lt;/p&gt;
&lt;p&gt;0.00MB](&lt;a href=&#34;https://blog.kakaocdn.net/dna/EsAHK/btqChFfPBnw/AAAAAAAAAAAAAAAAAAAAAOhcwRebixdRiSrFB2r5c8Z4mBZDeCt4ibUUEp2n5aCw/2-16.txt?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1788188399&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=PEoHUr5ktP9MyFLvskuQj0jS1Q8%3D&amp;amp;attach=1&amp;amp;knm=tfile.txt&#34;&gt;https://blog.kakaocdn.net/dna/EsAHK/btqChFfPBnw/AAAAAAAAAAAAAAAAAAAAAOhcwRebixdRiSrFB2r5c8Z4mBZDeCt4ibUUEp2n5aCw/2-16.txt?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;expires=1788188399&amp;allow_ip=&amp;allow_referer=&amp;signature=PEoHUr5ktP9MyFLvskuQj0jS1Q8%3D&amp;attach=1&amp;knm=tfile.txt&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Execution Result:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://img.sobamemil.com/posts/42/img_1.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Code:&lt;/b&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;&lt;/th&gt;
          &lt;th&gt;&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29&lt;/td&gt;
          &lt;td&gt;#include&lt;iostream&gt;  #include&lt;cstring&gt;  using namespace std;    int main() {  int tot=0; // 총 알파벳 개수  int alpha[27]={0}; // 각각의 알파벳을 나타냄  char text[10000]; // text를 저장할 배열    cout &amp;lt;&amp;lt; &amp;quot;영문 텍스트를 입력하세요. 히스토그램을 그립니다.\n텍스트의 끝은 ; 입니다. 10000개까지 가능합니다.\n&amp;quot;;  cin.getline(text,10000,&#39;;&#39;); // 최대 10,000개의 영문 텍스트를 &#39;;&#39;전까지 입력받는다    for (int i = 0; i&amp;lt;strlen(text); i++) { // text[0]부터 text의 끝까지  if (isalpha(text[i])) { // text[i]가 알파벳이면 참  if(text[i]&amp;lt;91) text[i] = tolower(text[i]); // text[i]가 대문자이면 소문자로 변경  tot++;  alpha[text[i] - 97]++; // 각각의 알파벳이 몇개인지 카운트  }  }    cout &amp;lt;&amp;lt; &amp;quot;총 알파벳 수 &amp;quot; &amp;lt;&amp;lt; tot &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl;  for (int i = 0; i &amp;lt; 26; ++i) { // 알파벳의 소문자 총 개수는 26개 (a~z)  cout &amp;lt;&amp;lt; (char)(i+&#39;a&#39;) &amp;lt;&amp;lt; &amp;quot;(&amp;quot; &amp;lt;&amp;lt; alpha[i] &amp;lt;&amp;lt; &amp;quot;)&amp;quot;; // a부터 z까지 출력 후 각 (알파벳의 개수) 출력  cout &amp;lt;&amp;lt; &amp;quot;\t:  &amp;quot;; // 포맷을 출력하기 위해 탭과 &amp;quot;:&amp;quot; 출력  for (int j = 1; j &amp;lt;= alpha[i]; j++) // 각 알파벳의 개수만큼 &amp;quot;*&amp;quot; 출력  cout &amp;lt;&amp;lt; &amp;quot;*&amp;quot;;  cout &amp;lt;&amp;lt; endl;  }  }&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;b&gt;Explanation:&lt;/b&gt;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
