007
22.08.2006, 21:09 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft... (Operator)
|
so auf die schnelle nicht groß getestet
C++: |
size_t min(size_t a, size_t b){return a<b?a:b;}
void paintHist(size_t *values,size_t n, size_t maxheight){ size_t i;
putchar('|'); for(i=0;i<n;++i){ printf("%3d",values[i]); } putchar('\n');
while(--maxheight){ putchar('|'); for(i=0;i<n;++i){ printf(" "); putchar(values[i]>=maxheight?'*':' '); } putchar('\n'); }
putchar('+'); for(i=0;i<n;++i) printf("--+"); putchar('\n'); putchar(' '); for(i=0;i<n;++i) printf("%3d",i); putchar('\n');
}
void fillHist(char a_str[300][30], size_t a_n, size_t *hist, size_t n){
size_t i; for(i=0;i<a_n;++i) ++hist[min(strlen(a_str[i]),n-1)];
}
int main(){
char stringarray [300][30]; size_t i,x[]={0,0,0,0,0,0,0,0,0,0};
i = 0; strcpy(stringarray[i++],"Hao"); strcpy(stringarray[i++],"Hao"); strcpy(stringarray[i++],"Hao"); strcpy(stringarray[i++],"Halo"); strcpy(stringarray[i++],"a"); strcpy(stringarray[i++],"Hallo"); strcpy(stringarray[i++],"Hallo"); strcpy(stringarray[i++],"Hallo"); strcpy(stringarray[i++],"Hallo"); strcpy(stringarray[i++],"Hallo"); strcpy(stringarray[i++],"Hallo1"); strcpy(stringarray[i++],"Hallo11"); strcpy(stringarray[i++],"Hallo111"); strcpy(stringarray[i++],"Hallo1111"); strcpy(stringarray[i++],"Hallo11111"); strcpy(stringarray[i++],"Hallo111111"); strcpy(stringarray[i++],"Hallo1111111");
fillHist(stringarray,i,x,sizeof(x)/sizeof(*x)); paintHist(x,sizeof(x)/sizeof(*x),20); }
|
Eingabe fehlt noch. würd ich aus ner Datei einlesen lassen sonst wird man ja blöd beim testen... -- ...fleißig wie zwei Weißbrote |