#include <stdio.h>
/* program tworzy histogram dlugosci wyrazow */
int main() /* oraz wylicza ilosc bialych znakow. */
/* white - ilosc bialych znakow (spacja || '\n' || '\t' || EOF) */
{ /* c - wpisywany znak; */
int c, i, white; /* i - ilosc liter w slowie; */
int dlugosc[10];
for(i=0; i<10; ++i)
dlugosc[i]=0;
i=0;
do
{
if(c==' '||c=='\n'||c=='\t'||c==EOF)
if(i==0)
++white;
else if(i<9)
{
++dlugosc[i];
++white;
i=0;
}
else
{
i=9;
++dlugosc[i];
++white;
i=0;
}
else
++i;
}
while(c!=EOF);
for(i=1; i<10; ++i)
printf(" wyrazow o dlugosciach 1, 2, 3, ..., 7, 8, (9 lub wiecej) znakow\noraz %d bialych znakow.\n", white
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiAgICAgICAgICAgICAgICAgICAgIC8qIHByb2dyYW0gdHdvcnp5IGhpc3RvZ3JhbSBkbHVnb3NjaSB3eXJhem93ICovCmludCBtYWluKCkgICAgICAgICAgIC8qIG9yYXogd3lsaWN6YSBpbG9zYyBiaWFseWNoIHpuYWtvdy4gKi8KICAgICAgICAgICAgICAgICAgICAgLyogd2hpdGUgLSBpbG9zYyBiaWFseWNoIHpuYWtvdyAoc3BhY2phIHx8ICdcbicgfHwgJ1x0JyB8fCBFT0YpICovCnsgICAgICAgICAgICAgICAgICAgIC8qIGMgLSB3cGlzeXdhbnkgem5hazsgKi8KICBpbnQgYywgaSwgd2hpdGU7ICAgLyogaSAtIGlsb3NjIGxpdGVyIHcgc2xvd2llOyAqLwogIGludCBkbHVnb3NjWzEwXTsgICAKIAogIGZvcihpPTA7IGk8MTA7ICsraSkKICAgZGx1Z29zY1tpXT0wOwogCiAgaT0wOwogCiAgZG8KICAgIHsKICAgIGM9Z2V0Y2hhcigpOwogICAgaWYoYz09JyAnfHxjPT0nXG4nfHxjPT0nXHQnfHxjPT1FT0YpCiAgICAgIGlmKGk9PTApCiAgICAgICAgKyt3aGl0ZTsKICAgICAgZWxzZSBpZihpPDkpCiAgICAgICAgewogICAgICAgICAgKytkbHVnb3NjW2ldOwogICAgICAgICAgKyt3aGl0ZTsKICAgICAgICAgIGk9MDsKICAgICAgICB9CiAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICBpPTk7CiAgICAgICAgICArK2RsdWdvc2NbaV07CiAgICAgICAgICArK3doaXRlOwogICAgICAgICAgaT0wOwogICAgICAgIH0KICAgIGVsc2UKICAgICAgKytpOwogICAgfQogIHdoaWxlKGMhPUVPRik7CiAKICBwcmludGYoIlxuTmFwaXNhbGVzIik7CiAKICBmb3IoaT0xOyBpPDEwOyArK2kpCiAgICBwcmludGYoIiAlZCIsIGRsdWdvc2NbaV0pOwogCiAgcHJpbnRmKCIgd3lyYXpvdyBvIGRsdWdvc2NpYWNoIDEsIDIsIDMsIC4uLiwgNywgOCwgKDkgbHViIHdpZWNlaikgem5ha293XG5vcmF6ICVkIGJpYWx5Y2ggem5ha293LlxuIiwgd2hpdGUpOwogCiAgcmV0dXJuIDA7Cn0=