一括処理部品集2‖dosuumf.html                            《戻る 玄関へ
 《 男女別の度数処理をおこなう 》

【内容】
   任意表の任意項目(数値型)を対象として、用意した度数表に
 各階級の男女別の度数を入力します。
 度数表に各階級の男女別度数を入力した後に、人数・得点合計
 平均点・最高点・最低点・満点人数・0点人数を表に付け加え、
 累積度数などを計算表示します。
   度数処理をおこなう1,2と構造はほぼ同じです。男・女の別を
 「ケース」に分けて処理します。

【用例】
  名札 男女度数処理
    ・・・・・・
  繰り返し (&階級回=<&回 .and (.not #終端行))
   手続き実行 得点代入
   繰り返し (&階級値=<&点 .and (.not #終端行))
    ケース開始                                         
     ケース (#cond(#IS文字列([性])=1,[性]="男",#IS数値([性])=1,[性]=1))     @
       &合男=&合男+1,&点計合男=&点計合男+&点
       &高点合男=#大(&高点合男,&点),&低点合男=#小(&低点合男,&点)
       条件 (&満点=&点) &満男=&満男+1
       条件 (&点=0) &O男=&O男+1
     ケース (#cond(#IS文字列([性])=1,[性]="女",#IS数値([性])=1,[性]=2))     A
       &合女=&合女+1,&点計合女=&点計合女+&点
       &高点合女=#大(&高点合女,&点),&低点合女=#小(&低点合女,&点)
       条件 (&満点=&点) &満女=&満女+1
      条件 (&点=0) &O女=&O女+1
    ケース終了        
    ジャンプ 行番号=+1
    手続き実行 得点代入
   繰り返し終了
   編集表 &TBL2
    &N=&N+1
   &階級下=#全角(#STR(&階級値)),&階級上=#全角(#STR(&階級値+&階級幅-1))
   条件 (&N=1) &階級上=#連結(&階級下,"")
   条件 (&N>1) &階級上=#連結(&階級下,"〜")
   条件 (&階級幅=1) &階級上=#連結(&階級下,"")
   行挿入 [男子]=#COND(&合男=0,"",1,&合男) \                    B
        ,[女子]=#COND(&合女=0,"",1,&合女) \
        ,[階級]=&階級上,[合計]=&合男+&合女
   ジャンプ 行番号=+1
   &計合男=&計合男+&合男,&計合女=&計合女+&合女,&合男=0,&合女=0
   編集表 &TBL1
   &階級値=&階級値-&階級幅
  繰り返し終了
 手続き終了
 ***−−−−−−−−−−−−−−−−−−−−−−−−−−−
 名札 男女度数処理2
    行挿入 [男子]=#COND(&計合男=0,"",1,&計合男) \                C
         ,[女子]=#COND(&計合女=0,"",1,&計合女) \
         ,[階級]="人数合計",[合計]=&計合男+&計合女
    行挿入 [男子]=#COND(&点計合男=0,"",1,&点計合男) \
         ,[女子]=#COND(&点計合女=0,"",1,&点計合女) \
         ,[階級]="得点合計",[合計]=&点計合男+&点計合女
    行挿入 [男子]=#cond((&計合男=0 .or &点計合男=0),"",1,#四捨五入(&点計合男/&計合男,2)) \
          ,[女子]=#cond((&計合女=0 .or &点計合女=0),"",1,#四捨五入(&点計合女/&計合女,2)) \
          ,[階級]="平 均 点" \
          ,[合計]=#cond((&点計合男+&点計合女=0 .or &計合男+&計合女=0),"" \
         ,1,#四捨五入((&点計合男+&点計合女)/(&計合男+&計合女),2))
         &最高=#大(&高点合男,&高点合女)
    行挿入 [男子]=#COND(&高点合男=-1,"",1,&高点合男) \
         ,[女子]=#COND(&高点合女=-1,"",1,&高点合女) ,[階級]="最 高 点" \
          ,[合計]=#COND(&最高=-1,"",1,&最高)
         &最低=#小(&低点合男,&低点合女)
    行挿入 [男子]=#COND(&低点合男=999,"",1,&低点合男) \
         ,[女子]=#COND(&低点合女=999,"",1,&低点合女) ,[階級]="最 低 点" \
          ,[合計]=#COND(&最低=999,"",1,&最低)
    行挿入 [男子]=#COND(&満男=0,"",1,&満男) \
         ,[女子]=#COND(&満女=0,"",1,&満女) ,[階級]="満点人数" \
          ,[合計]=&満男+&満女
    行挿入 [男子]=#COND(&O男=0,"",1,&O男) \
         ,[女子]=#COND(&O女=0,"",1,&O女) ,[階級]="0点人数" ¥
          ,[合計]=&O男+&O女
    項目集計 [階級]
    &LL=&件数,&LL=&LL-7
    ジャンプ 行番号=先頭
    条件 (&LL>0) 選択 行数=&LL
    条件 (&LL>0) 置換 [番号]=#連番
    条件 (&LL>0) 置換 [%男]=#COND([男子]="","",1,#四捨五入([男子]/&計合男,3)*100) ¥
                  ,[%女]=#COND([女子]="","",1,#四捨五入([女子]/&計合女,3)*100) ¥
                  ,[%計]=#COND([合計]="","",1,#四捨五入([合計]/(&計合男+&計合女),3)*100)
    条件 (#選択状態<>0) 選択解除 *
 手続き終了

【解説】
 @ 男女別の処理をおこないます。
   項目[性]が整数型なら男には1を、文字型なら男を入力しておきます。
 A 同様に、項目[性]が整数型なら女には2を、文字型なら女を入力しておきます。
 B 各階級について、男女別の項目にそれぞれ度数を入力します。
   度数処理をおこなう1の【解説】を参照してください。
 C 度数処理をおこなう2の【解説】を参照してください。

【参考】
  男女別度数処理の例です。

 

                      END of FILE  戻る 玄関へ