/*
第2種情報処理技術者試験 平成7年度・秋期・午後 問11
BohYoh Shibata PREPARATION
*/
#include <stdio.h>
#include <string.h>
#define TMAX 19
#define HMAX 20
#define OP_TM 10
#define CL_TM 19
main()
{
char shina[8], scode[9], dummy[16];
int kosu, yyyy, mm, dd, ji, fun, stcd, nen;
static long gaku, kstack[TMAX][HMAX];
FILE *fp;
int wi, wj, wk;
printf( "*** POSデータ 売上状況集計プログラム ***\n\n" );
printf( " 商品コードと対象年を入力して下さい。\n\n" );
printf( "商品コード(8けた) =" );
scanf( "%8c", scode );
scode[8] = '\0';
printf( "年(4けた) =" );
scanf( "%04d",&nen );
for ( wi = 0; wi < TMAX; wi++ )
for ( wj = 0; wj < HMAX; wj++ ) kstack[wi][wj] = 0;
fp = fopen( "pos.f","r" );
while( fscanf( fp, "%8c %06ld %04d %04d-%02d-%02d %02d:%02d %04d %15c",
shina, &gaku, &kosu, &yyyy, &mm, &dd, &ji, &fun, &stcd, dummy ) != EOF ) {
if (( nen == yyyy ) && ( strncmp( shina,scode,8 ) == 0 ))
kstack[stcd][ji] += gaku * kosu;
}
fclose( fp );
printf( "*** 商品の時間帯別売上状況 ***\n" );
printf( "商品コード = %s 集計対象年 = %4d\n", scode, nen );
printf( "時間帯 売上額 1000 2000 3000 4000 5000 6000 7000 8000 9000\n" );
printf( "------:-------:----+----+----+----+----+----+----+----+----+\n" );
for ( wi = 0; wi < TMAX; wi++ ) {
printf( "\n 店コード = %04d\n", wi );
for ( wj = OP_TM; wj < CL_TM; wj++ ) {
printf( "%02d時台: %06ld:", wj, kstack[wi][wj]/1000 );
for ( wk = (int)(kstack[wi][wj]/200000L); wk > 0; wk-- )
printf( "*" );
printf( "\n" );
}
}
}