C++ Bc. 18: Porovnání verzí

Z GeoWikiCZ
Bez shrnutí editace
Bez shrnutí editace
Řádek 1: Řádek 1:
Napište funkci <tt>komentar()</tt>, která čte vstupní proud a přeskočí v něm všechny komentáře <tt>/* ... */</tt>.
std::istream& komentar(std::istream& inp);
Demonstrujte správnou činnost funkce v testovacím programu, který čte dvojice souřadnic x a y a počítá jejich těžiště.
''' Příklad '''
/* vstup obsahuje souradnice x a y */
/* x */ 123.54  /* y */ 345.53 
  738.34  542.43  433.22  543.98
  832.64  343.25  534.17  541.23
  892,83  336.34 /* konec dat */
Těžiště je (532.382, 463.284).
''' Poznámka:''' funkci bychom mohli definovat s typem <tt>void</tt>. Je-li ale
fuknce definována s návratovým typem reference na standardní vstupní proud, je formálně itereátorem a můžeme ji používat ve výrazech jako je například
while (data >> komentar >> x >> komentar >> y) { /* ... */ }
[ [[C plus plus Bc. | Zpět]] | [[C plus plus Bc. 18 cpp | C++]] ]
[ [[C plus plus Bc. | Zpět]] | [[C plus plus Bc. 18 cpp | C++]] ]

Verze z 12. 3. 2006, 16:12

Napište funkci komentar(), která čte vstupní proud a přeskočí v něm všechny komentáře /* ... */.

std::istream& komentar(std::istream& inp);

Demonstrujte správnou činnost funkce v testovacím programu, který čte dvojice souřadnic x a y a počítá jejich těžiště.

Příklad

/* vstup obsahuje souradnice x a y */
/* x */ 123.54  /* y */ 345.53  
 738.34  542.43   433.22  543.98 
 832.64  343.25   534.17  541.23
 892,83  336.34 /* konec dat */ 

Těžiště je (532.382, 463.284).

Poznámka: funkci bychom mohli definovat s typem void. Je-li ale fuknce definována s návratovým typem reference na standardní vstupní proud, je formálně itereátorem a můžeme ji používat ve výrazech jako je například

while (data >> komentar >> x >> komentar >> y) { /* ... */ }

[ Zpět | C++ ]