<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for Parks Computing</title>
	<atom:link href="http://www.parkscomputing.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.parkscomputing.com</link>
	<description>Pedagogy for the autodidactic programmer</description>
	<lastBuildDate>Mon, 21 Nov 2011 07:10:02 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
	<item>
		<title>Comment on Accelerated C++ Solutions by Joe Yang</title>
		<link>http://www.parkscomputing.com/accelerated-cpp-solutions/comment-page-1/#comment-127</link>
		<dc:creator>Joe Yang</dc:creator>
		<pubDate>Mon, 21 Nov 2011 07:10:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/#comment-127</guid>
		<description>If you said become ture, I will appreciate it very much.
Thx.</description>
		<content:encoded><![CDATA[<p>If you said become ture, I will appreciate it very much.<br />
Thx.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Chapter 3 &#8211; Working with Batches of Data by Akim</title>
		<link>http://www.parkscomputing.com/accelerated-cpp-solutions/03-workingwithbatchesofdata/comment-page-1/#comment-126</link>
		<dc:creator>Akim</dc:creator>
		<pubDate>Sun, 20 Nov 2011 08:07:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/#comment-126</guid>
		<description>omg, your 3.4 exercise answer is compact, simple and accurate.. :O

my code used vector and kind of long for its simple task, thought so  there just some additional to the program, and thnx for the writing titled &quot;George Orwell and Effective Coding&quot;, very inspirational...

srry for bad grammar, by non-native english person ;)</description>
		<content:encoded><![CDATA[<p>omg, your 3.4 exercise answer is compact, simple and accurate.. :O</p>
<p>my code used vector and kind of long for its simple task, thought so  there just some additional to the program, and thnx for the writing titled &#8220;George Orwell and Effective Coding&#8221;, very inspirational&#8230;</p>
<p>srry for bad grammar, by non-native english person ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Accelerated C++ Solutions by Chris H.</title>
		<link>http://www.parkscomputing.com/accelerated-cpp-solutions/comment-page-1/#comment-125</link>
		<dc:creator>Chris H.</dc:creator>
		<pubDate>Thu, 17 Nov 2011 18:47:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/#comment-125</guid>
		<description>Thank you so much for taking the time to work through these exercises!
I appreciate the explanations given; they really clear up any confusion I had and help reinforce
the important concepts. Can&#039;t wait until you&#039;ve got solutions for every exercise! Keep up the 
good work!</description>
		<content:encoded><![CDATA[<p>Thank you so much for taking the time to work through these exercises!<br />
I appreciate the explanations given; they really clear up any confusion I had and help reinforce<br />
the important concepts. Can&#8217;t wait until you&#8217;ve got solutions for every exercise! Keep up the<br />
good work!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Accelerated C++ Solutions by Chris N.</title>
		<link>http://www.parkscomputing.com/accelerated-cpp-solutions/comment-page-1/#comment-121</link>
		<dc:creator>Chris N.</dc:creator>
		<pubDate>Thu, 13 Oct 2011 10:01:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/#comment-121</guid>
		<description>Many thanks for this!!! Really nive that other people can post their solution too!
Hope to see next chapters soon!!! I think that there are some people that could also help and send you code to finish this work sooner and you can mention their names next to each solution.</description>
		<content:encoded><![CDATA[<p>Many thanks for this!!! Really nive that other people can post their solution too!<br />
Hope to see next chapters soon!!! I think that there are some people that could also help and send you code to finish this work sooner and you can mention their names next to each solution.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Please Stop Holding Project Status Meetings by paulmooreparks</title>
		<link>http://www.parkscomputing.com/2011/01/please-stop-holding-project-status-meetings/comment-page-1/#comment-120</link>
		<dc:creator>paulmooreparks</dc:creator>
		<pubDate>Fri, 07 Oct 2011 21:57:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/?p=363#comment-120</guid>
		<description>Excellent comments, and I actually agree with them all. Your last paragraphs sums up my biggest concern with status meetings. When they become little more than a round-robin session, they lose benefit. I&#039;m a big fan of meetings, but only those where the participants are engaged and have a real stake in what is being discussed.</description>
		<content:encoded><![CDATA[<p>Excellent comments, and I actually agree with them all. Your last paragraphs sums up my biggest concern with status meetings. When they become little more than a round-robin session, they lose benefit. I&#8217;m a big fan of meetings, but only those where the participants are engaged and have a real stake in what is being discussed.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Please Stop Holding Project Status Meetings by MB</title>
		<link>http://www.parkscomputing.com/2011/01/please-stop-holding-project-status-meetings/comment-page-1/#comment-119</link>
		<dc:creator>MB</dc:creator>
		<pubDate>Fri, 07 Oct 2011 21:07:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/?p=363#comment-119</guid>
		<description>Couple of thoughts....

1. Folks won&#039;t read the emails, they won&#039;t offer opinions if they do, and the manager loses track of the suggestions and who&#039;s contributing if there&#039;s no visibility. 

2. It&#039;s much easier to paint a rosy picture of things going well in an email update than face-to-face, where body language or buckling under questions often gives more info about what&#039;s *really* done.

3. I think you misunderstand the purpose of status meetings. They&#039;re not for the rote reporting of status to manager, they&#039;re to foster conversations, thoughts, and knowledge transfer among the *team*. Not being &quot;engaged&quot; just because the task being discussed isn&#039;t &quot;yours&quot; is unprofessional. While your dedication to writing code and being efficient is admirable, the dereliction of team obligations is anything but. Maybe there&#039;s a slightly different expectation in your contractor role, but as a manager myself I expect team members to be &quot;engaged&quot; on everything the team is working on and the weekly meeting is the bare minimum time to show that. If you don&#039;t know what&#039;s being talked about, I&#039;d strongly suggest learning - as it&#039;s obviously important to the team.

That being said - emailed project updates are reasonable to avoid taking time from the meeting. But then, how to facilitate the conversation among otherwise reticent developers to open up and share &quot;their&quot; project info in a public setting?</description>
		<content:encoded><![CDATA[<p>Couple of thoughts&#8230;.</p>
<p>1. Folks won&#8217;t read the emails, they won&#8217;t offer opinions if they do, and the manager loses track of the suggestions and who&#8217;s contributing if there&#8217;s no visibility. </p>
<p>2. It&#8217;s much easier to paint a rosy picture of things going well in an email update than face-to-face, where body language or buckling under questions often gives more info about what&#8217;s *really* done.</p>
<p>3. I think you misunderstand the purpose of status meetings. They&#8217;re not for the rote reporting of status to manager, they&#8217;re to foster conversations, thoughts, and knowledge transfer among the *team*. Not being &#8220;engaged&#8221; just because the task being discussed isn&#8217;t &#8220;yours&#8221; is unprofessional. While your dedication to writing code and being efficient is admirable, the dereliction of team obligations is anything but. Maybe there&#8217;s a slightly different expectation in your contractor role, but as a manager myself I expect team members to be &#8220;engaged&#8221; on everything the team is working on and the weekly meeting is the bare minimum time to show that. If you don&#8217;t know what&#8217;s being talked about, I&#8217;d strongly suggest learning &#8211; as it&#8217;s obviously important to the team.</p>
<p>That being said &#8211; emailed project updates are reasonable to avoid taking time from the meeting. But then, how to facilitate the conversation among otherwise reticent developers to open up and share &#8220;their&#8221; project info in a public setting?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Comments on Accelerated C++ Solutions by Louis</title>
		<link>http://www.parkscomputing.com/2011/09/comments-on-accelerated-c-solutions/comment-page-1/#comment-115</link>
		<dc:creator>Louis</dc:creator>
		<pubDate>Wed, 21 Sep 2011 19:32:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/?p=697#comment-115</guid>
		<description>Hopefully I covered all my bases with the html this time!
5-10



#include &lt;istream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &quot;read_words.h&quot;

using std::vector;      using std::endl;        using std::istream;
using std::string;

istream&amp; read_words(istream&amp; in, vector&lt;string&gt;&amp; words)
{
    if (in)
    {
        words.clear();
        string word;
        
        while (in &gt;&gt; word)
        {
            words.push_back(word);
        }
        
        in.clear();
    }
    
    return in;
}


The function to determine if the word is a palindrome


#include &lt;string&gt;
#include &quot;palindrome.h&quot;

using std::string;

bool palindrome(string s)
{
    // Compare the first and last letter. Then increment i and decrement j
    // to compare the second and second to last letter. Repeat until i != j
    // or until a palindrome is confirmed
    for (string::const_iterator i = s.begin(), j = s.end() - 1; i &lt; j; ++i, --j)
        {
            if (*i != *j)
                return false;                
        } 
        
    return true;
}


And main()!


#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &quot;palindrome.h&quot;
#include &quot;read_words.h&quot;

using std::cout;        using std::cin;         using std::endl;
using std::vector;      using std::string;

int main(void)
{
    cout &lt;&lt; &quot;Enter the list of words you wish to check for palindromes, &quot; 
            &lt;&lt; endl &lt;&lt; &quot;followed by end-of-file: &quot;;
    
    vector&lt;string&gt; words;
    while (words.empty())
        read_words(cin, words);
    
    string::size_type maxlen = 0;
    string longest;
    
    cout &lt;&lt; endl &lt;&lt; endl;
    
    // Start at the first word in the vector and output each palindrome
    // immediately after they have been found
    for (vector&lt;string&gt;::const_iterator it = words.begin(); 
            it != words.end(); ++it)
    {
        if (palindrome(*it))
        {
            cout &lt;&lt; *it &lt;length() &gt; maxlen)
            {                
                maxlen = it-&gt;length();                
                longest = *it;
            } // end inner if               
    
        } // end outer if      
    
    } // end for
        
    cout &lt;&lt; &quot;The longest palindrome is: &quot; &lt;&lt; longest &lt;&lt; endl;

    return 0;        
}

</description>
		<content:encoded><![CDATA[<p>Hopefully I covered all my bases with the html this time!<br />
5-10</p>
<p>#include &lt;istream&gt;<br />
#include &lt;string&gt;<br />
#include &lt;vector&gt;<br />
#include &#8220;read_words.h&#8221;</p>
<p>using std::vector;      using std::endl;        using std::istream;<br />
using std::string;</p>
<p>istream&amp; read_words(istream&amp; in, vector&lt;string&gt;&amp; words)<br />
{<br />
    if (in)<br />
    {<br />
        words.clear();<br />
        string word;</p>
<p>        while (in &gt;&gt; word)<br />
        {<br />
            words.push_back(word);<br />
        }</p>
<p>        in.clear();<br />
    }</p>
<p>    return in;<br />
}</p>
<p>The function to determine if the word is a palindrome</p>
<p>#include &lt;string&gt;<br />
#include &#8220;palindrome.h&#8221;</p>
<p>using std::string;</p>
<p>bool palindrome(string s)<br />
{<br />
    // Compare the first and last letter. Then increment i and decrement j<br />
    // to compare the second and second to last letter. Repeat until i != j<br />
    // or until a palindrome is confirmed<br />
    for (string::const_iterator i = s.begin(), j = s.end() &#8211; 1; i &lt; j; ++i, &#8211;j)<br />
        {<br />
            if (*i != *j)<br />
                return false;<br />
        } </p>
<p>    return true;<br />
}</p>
<p>And main()!</p>
<p>#include &lt;iostream&gt;<br />
#include &lt;string&gt;<br />
#include &lt;vector&gt;<br />
#include &#8220;palindrome.h&#8221;<br />
#include &#8220;read_words.h&#8221;</p>
<p>using std::cout;        using std::cin;         using std::endl;<br />
using std::vector;      using std::string;</p>
<p>int main(void)<br />
{<br />
    cout &lt;&lt; &quot;Enter the list of words you wish to check for palindromes, &quot;<br />
            &lt;&lt; endl &lt;&lt; &quot;followed by end-of-file: &quot;;</p>
<p>    vector&lt;string&gt; words;<br />
    while (words.empty())<br />
        read_words(cin, words);</p>
<p>    string::size_type maxlen = 0;<br />
    string longest;</p>
<p>    cout &lt;&lt; endl &lt;&lt; endl;</p>
<p>    // Start at the first word in the vector and output each palindrome<br />
    // immediately after they have been found<br />
    for (vector&lt;string&gt;::const_iterator it = words.begin();<br />
            it != words.end(); ++it)<br />
    {<br />
        if (palindrome(*it))<br />
        {<br />
            cout &lt;&lt; *it &lt;length() &gt; maxlen)<br />
            {<br />
                maxlen = it-&gt;length();<br />
                longest = *it;<br />
            } // end inner if               </p>
<p>        } // end outer if      </p>
<p>    } // end for</p>
<p>    cout &lt;&lt; &quot;The longest palindrome is: &quot; &lt;&lt; longest &lt;&lt; endl;</p>
<p>    return 0;<br />
}</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Comments on Accelerated C++ Solutions by Louis</title>
		<link>http://www.parkscomputing.com/2011/09/comments-on-accelerated-c-solutions/comment-page-1/#comment-113</link>
		<dc:creator>Louis</dc:creator>
		<pubDate>Wed, 21 Sep 2011 19:03:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/?p=697#comment-113</guid>
		<description>5-11.
I really hope the code tags work in html, or I&#039;m gonna be lookin&#039; stupid.

Our friend read_words is back!
&lt;code&gt;
#include 
#include 
#include 
#include &quot;read_words.h&quot;

using std::vector;      using std::endl;        using std::istream;
using std::string;

istream&amp; read_words(istream&amp; in, vector&amp; words)
{
    if (in)
    {
        words.clear();
        string word;
        
        while (in &gt;&gt; word)
        {
            words.push_back(word);
        }
        
        in.clear();
    }
    
    return in;
}
&lt;/code&gt;
I did a little extra with the function to find ascenders and descenders. The only function you actually need is the one at the bottom &quot;ascende_descende&quot;, but I figured why not add functions to find them separately in case that was ever needed
&lt;code&gt;
#include 
#include 
#include &quot;ascenders_descenders.h&quot;

using std::string;      using std::vector;

// Ascenders are parts of lowercase letters that extend above the text line
// Find and report whether a word contains any Ascenders
// Ascenders: b, d, f, h, k, l, and t
bool ascenders(string s)
{
    string ascende = &quot;bdfhklt&quot;;    
    
    // Compare each letter in the current word to each ascender
    // if a match is found, return true
    for (string::const_iterator it = s.begin(); it != s.end(); ++it)
    {
        for (string::const_iterator iter = ascende.begin();
                iter &lt; ascende.end(); ++iter)
        {
            if (*it == *iter)
                return true;
        } // end for()

    } // end for()
    
    return false;
} // end ascenders()

// Descenders are parts of lowercase letters that descend below the text line
// Find and report whether a word contains any Descenders
// Descenders: g, j, p, q, and y
bool descenders(string s)
{    
    string descende = &quot;gjpqy&quot;;    
    
    // Compare each letter in the current word to each descender
    // if a match is found, return true
    for (string::const_iterator it = s.begin(); it != s.end(); ++it)
    {
        for (string::const_iterator iter = descende.begin();
                iter &lt; descende.end(); ++iter)
        {
            if (*it == *iter)
                return true;
        } // end for()
    
    } // end for()

    return false;
} // end descenders()

// Ascenders are parts of lower case letters that extend above the text line
// Descenders are parts of lower case letters that descend below the text line
// Find and report whether a word contains either Ascenders or Descenders
// Ascenders: b, d, f, h, k, l, and t
// Descenders: g, j, p, q, and y
bool ascende_descende(string s)
{
    string a_d = &quot;bdfhkltgjpqy&quot;;
    
    // Compare each letter in the current word to each ascender and descender
    // if a match is found, return true
    for (string::const_iterator it = s.begin(); it != s.end(); ++it)
    {
        for (string::const_iterator iter = a_d.begin();
                iter &lt; a_d.end(); ++iter)
        {
            if (*it == *iter)
                return true;
        } // end for()
        
    } // end for()
    
    return false;
} // end ascende_descende()
&lt;/code&gt;
And lastly, main() which is only using the ascende_decende() function
&lt;code&gt;
#include 
#include 
#include 
#include &quot;ascenders_descenders.h&quot;
#include &quot;read_words.h&quot;

using std::cout;        using std::endl;        using std::string;
using std::vector;      using std::cin;

int main(void)
{
    cout &lt;&lt; &quot;Input desired words, followed by end-of-file. The program will &quot;
            &lt;&lt; &quot;then locate and &quot; &lt;&lt; endl &lt;&lt; &quot;print words with \&quot;ascenders\&quot; &quot;
            &lt;&lt; &quot;or \&quot;descenders\&quot;: &quot;;    
    
    vector words;
    
    while (words.empty())
        read_words(cin, words);
    
    string::size_type maxlen = 0;
    string longest;
    
    // Format output        
    cout &lt;&lt; endl &lt;&lt; &quot;These words contain at least one &quot;                    
            &lt;&lt; &quot;\&quot;ascender\&quot; or \&quot;descender\&quot;&quot;
            &lt;&lt; endl &lt;&lt; string(58, &#039;-&#039;) &lt;&lt; endl;     
    
    // Check for ascenders and descenders and output if either is true
    // if both are false, check to see if the current word is longer than
    // maxlen, and if it is, set maxlen to the size of the word and insert
    // the word into the variable longest    
    for (vector::const_iterator it = words.begin();            
            it != words.end(); ++it)    
    {       
        if (ascende_descende(*it))                  
            cout &lt;&lt; *it &lt;length() &gt; maxlen)       
        {            
            longest = *it;           
            maxlen = it-&gt;length();        
        } // end if...else
    
    } // end for()          
    
    // Output the longest word found that is not an ascender or descender    
    cout &lt;&lt; endl &lt;&lt; &quot;The longest word containing no &quot;            
            &lt;&lt; &quot;\&quot;ascenders\&quot; or \&quot;descenders\&quot; is: &quot;            
            &lt;&lt; longest;    

    return 0;
} // end program
&lt;/code&gt;
And an example run
&lt;code&gt;
Input desired words, followed by end-of-file. The program will then locate and 
print words with &quot;ascenders&quot; or &quot;descenders&quot;: output
nope
no
zoos
roar
rawr
konichiwa

These words contain at least one &quot;ascender&quot; or &quot;descender&quot;
----------------------------------------------------------
output
nope
konichiwa

The longest word containing no &quot;ascenders&quot; or &quot;descenders&quot; is: zoos
&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>5-11.<br />
I really hope the code tags work in html, or I&#8217;m gonna be lookin&#8217; stupid.</p>
<p>Our friend read_words is back!<br />
<code><br />
#include<br />
#include<br />
#include<br />
#include "read_words.h"</p>
<p>using std::vector;      using std::endl;        using std::istream;<br />
using std::string;</p>
<p>istream&amp; read_words(istream&amp; in, vector&amp; words)<br />
{<br />
    if (in)<br />
    {<br />
        words.clear();<br />
        string word;</p>
<p>        while (in &gt;&gt; word)<br />
        {<br />
            words.push_back(word);<br />
        }</p>
<p>        in.clear();<br />
    }</p>
<p>    return in;<br />
}<br />
</code><br />
I did a little extra with the function to find ascenders and descenders. The only function you actually need is the one at the bottom &#8220;ascende_descende&#8221;, but I figured why not add functions to find them separately in case that was ever needed<br />
<code><br />
#include<br />
#include<br />
#include "ascenders_descenders.h"</p>
<p>using std::string;      using std::vector;</p>
<p>// Ascenders are parts of lowercase letters that extend above the text line<br />
// Find and report whether a word contains any Ascenders<br />
// Ascenders: b, d, f, h, k, l, and t<br />
bool ascenders(string s)<br />
{<br />
    string ascende = "bdfhklt";    </p>
<p>    // Compare each letter in the current word to each ascender<br />
    // if a match is found, return true<br />
    for (string::const_iterator it = s.begin(); it != s.end(); ++it)<br />
    {<br />
        for (string::const_iterator iter = ascende.begin();<br />
                iter &lt; ascende.end(); ++iter)<br />
        {<br />
            if (*it == *iter)<br />
                return true;<br />
        } // end for()</p>
<p>    } // end for()</p>
<p>    return false;<br />
} // end ascenders()</p>
<p>// Descenders are parts of lowercase letters that descend below the text line<br />
// Find and report whether a word contains any Descenders<br />
// Descenders: g, j, p, q, and y<br />
bool descenders(string s)<br />
{<br />
    string descende = &quot;gjpqy&quot;;    </p>
<p>    // Compare each letter in the current word to each descender<br />
    // if a match is found, return true<br />
    for (string::const_iterator it = s.begin(); it != s.end(); ++it)<br />
    {<br />
        for (string::const_iterator iter = descende.begin();<br />
                iter &lt; descende.end(); ++iter)<br />
        {<br />
            if (*it == *iter)<br />
                return true;<br />
        } // end for()</p>
<p>    } // end for()</p>
<p>    return false;<br />
} // end descenders()</p>
<p>// Ascenders are parts of lower case letters that extend above the text line<br />
// Descenders are parts of lower case letters that descend below the text line<br />
// Find and report whether a word contains either Ascenders or Descenders<br />
// Ascenders: b, d, f, h, k, l, and t<br />
// Descenders: g, j, p, q, and y<br />
bool ascende_descende(string s)<br />
{<br />
    string a_d = &quot;bdfhkltgjpqy&quot;;</p>
<p>    // Compare each letter in the current word to each ascender and descender<br />
    // if a match is found, return true<br />
    for (string::const_iterator it = s.begin(); it != s.end(); ++it)<br />
    {<br />
        for (string::const_iterator iter = a_d.begin();<br />
                iter &lt; a_d.end(); ++iter)<br />
        {<br />
            if (*it == *iter)<br />
                return true;<br />
        } // end for()</p>
<p>    } // end for()</p>
<p>    return false;<br />
} // end ascende_descende()<br />
</code><br />
And lastly, main() which is only using the ascende_decende() function<br />
<code><br />
#include<br />
#include<br />
#include<br />
#include "ascenders_descenders.h"<br />
#include "read_words.h"</p>
<p>using std::cout;        using std::endl;        using std::string;<br />
using std::vector;      using std::cin;</p>
<p>int main(void)<br />
{<br />
    cout &lt;&lt; &quot;Input desired words, followed by end-of-file. The program will &quot;<br />
            &lt;&lt; &quot;then locate and &quot; &lt;&lt; endl &lt;&lt; &quot;print words with \&quot;ascenders\&quot; &quot;<br />
            &lt;&lt; &quot;or \&quot;descenders\&quot;: &quot;;    </p>
<p>    vector words;</p>
<p>    while (words.empty())<br />
        read_words(cin, words);</p>
<p>    string::size_type maxlen = 0;<br />
    string longest;</p>
<p>    // Format output<br />
    cout &lt;&lt; endl &lt;&lt; &quot;These words contain at least one &quot;<br />
            &lt;&lt; &quot;\&quot;ascender\&quot; or \&quot;descender\&quot;&quot;<br />
            &lt;&lt; endl &lt;&lt; string(58, &#039;-&#039;) &lt;&lt; endl;     </p>
<p>    // Check for ascenders and descenders and output if either is true<br />
    // if both are false, check to see if the current word is longer than<br />
    // maxlen, and if it is, set maxlen to the size of the word and insert<br />
    // the word into the variable longest<br />
    for (vector::const_iterator it = words.begin();<br />
            it != words.end(); ++it)<br />
    {<br />
        if (ascende_descende(*it))<br />
            cout &lt;&lt; *it &lt;length() &gt; maxlen)<br />
        {<br />
            longest = *it;<br />
            maxlen = it-&gt;length();<br />
        } // end if...else</p>
<p>    } // end for()          </p>
<p>    // Output the longest word found that is not an ascender or descender<br />
    cout &lt;&lt; endl &lt;&lt; &quot;The longest word containing no &quot;<br />
            &lt;&lt; &quot;\&quot;ascenders\&quot; or \&quot;descenders\&quot; is: &quot;<br />
            &lt;&lt; longest;    </p>
<p>    return 0;<br />
} // end program<br />
</code><br />
And an example run<br />
<code><br />
Input desired words, followed by end-of-file. The program will then locate and<br />
print words with "ascenders" or "descenders": output<br />
nope<br />
no<br />
zoos<br />
roar<br />
rawr<br />
konichiwa</p>
<p>These words contain at least one "ascender" or "descender"<br />
----------------------------------------------------------<br />
output<br />
nope<br />
konichiwa</p>
<p>The longest word containing no "ascenders" or "descenders" is: zoos<br />
</code></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on I have a wide screen. Let me use it. by Louis</title>
		<link>http://www.parkscomputing.com/2011/04/i-have-a-wide-screen-let-me-use-it/comment-page-1/#comment-112</link>
		<dc:creator>Louis</dc:creator>
		<pubDate>Wed, 21 Sep 2011 18:25:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/?p=629#comment-112</guid>
		<description>I like something in between those two pictures. Something that doesn&#039;t take up the whole screen, but does take up most of it. Like this website for example. Websites like the bottom picture just look... bloated.</description>
		<content:encoded><![CDATA[<p>I like something in between those two pictures. Something that doesn&#8217;t take up the whole screen, but does take up most of it. Like this website for example. Websites like the bottom picture just look&#8230; bloated.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Accelerated C++ Solutions by Taylan Karaman</title>
		<link>http://www.parkscomputing.com/accelerated-cpp-solutions/comment-page-1/#comment-111</link>
		<dc:creator>Taylan Karaman</dc:creator>
		<pubDate>Sun, 18 Sep 2011 06:26:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.parkscomputing.com/#comment-111</guid>
		<description>Thanks a lot for the solutions. They were great help for me.</description>
		<content:encoded><![CDATA[<p>Thanks a lot for the solutions. They were great help for me.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

