Article View: be.comp.programming
Article #4697Re: Oefening in C++ (schaakbord)
From: Robrecht Jacques
Date: Sun, 06 Jul 2003 20:43
Date: Sun, 06 Jul 2003 20:43
40 lines
2234 bytes
2234 bytes
Davy Loots wrote:
> #include <iostream.h>
>
> int main(int argc, char* argv[])
> {
> int k, n;
> cout << "Geef het aantal velden : ";
> cin >> n;
> cout << "Geef het aantal sterretjes per vak : ";
> cin >> k;
...
Het is niet nodig om het bord char per char te teken. Bv:
String stars(k,'*'), spaces(k,' ');
String odd_line(""), even_line("");
String odd(""), even("");
for (int i = 0; i < n-1; ++i) // loop over columns
odd_line += ( (i%2) == 0 ? stars : spaces );
even_line = spaces + odd_line;
odd_line += ( (n%2) == 0 ? spaces : stars );
for (int i = 0; i < k; ++i) { // group 'k' lines together
even += even_line + endl;
odd += odd_line + endl;
}
for (int i = 0; i < n; ++i) // loop over rows
cout << ( ((i+n)%2) == 0 ? odd : even );
> return 0;
> }
En verdere 'optimalisaties' zijn natuurlijk ook mogelijk. Bv de laatste
loop over 'int i=n; i<2*n; ++i' laten lopen en dan testen op i%2 ipv
(i+n)%2.
Robrecht
Technical Details
Message-ID:
<3f088aaa$0$288$ba620e4c@reader1.news.skynet.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-04!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed.icl.net!newsfeed.fjserv.net!skynet.be!skynet.be!louie!tlk!not-for-mailReferences:
<be8qtj$ec3$1@reader08.wxs.nl> <3f07f2cb$0$6524$afc38c87@sisyphus.news.be.easynet.net> <be9cv4$m$1@reader08.wxs.nl> <2mYNa.9385$7h.12942@afrodite.telenet-ops.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,c3467730e88beae5 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-07-06 13:46:38 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-04!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed.icl.net!newsfeed.fjserv.net!skynet.be!skynet.be!louie!tlk!not-for-mail From: "Robrecht Jacques" <Robrecht.Jacques@advalvas.be> Newsgroups: be.comp.programming References: <be8qtj$ec3$1@reader08.wxs.nl> <3f07f2cb$0$6524$afc38c87@sisyphus.news.be.easynet.net> <be9cv4$m$1@reader08.wxs.nl> <2mYNa.9385$7h.12942@afrodite.telenet-ops.be> Subject: Re: Oefening in C++ (schaakbord) Date: Sun, 6 Jul 2003 22:43:35 +0200 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Lines: 42 Message-ID: <3f088aaa$0$288$ba620e4c@reader1.news.skynet.be> Organization: -= Belgacom Usenet Service =- NNTP-Posting-Host: 217.136.219.71 X-Trace: 1057524394 reader1.news.skynet.be 288 217.136.219.71:1026 X-Complaints-To: usenet-abuse@skynet.be