基本情報技術者試験の過去問と解説
[TOP] [午前分野別] [午後分野別] [キーワード索引] [令和元年秋午前] [令和元年秋午後]

平成21年 秋期 基本情報技術者 午後 問13
問13   表計算

 次の表計算及びワークシートの説明を読んで,設問1,2に答えよ。

〔表計算の説明〕

 ある企業では,アルバイトの勤務を管理するための勤怠管理表と出勤割当表の作成を 手作業で行っていたが,これを表計算ソフトで行うことにした。

〔ワークシート:勤怠管理〕

(1) 表計算ソフトのワークシート“勤怠管理”を作成した。その例を図1に示す。

      A       B       C        D       E       F       G    
 1      ID  0004    氏名 情報太郎  
 2          
 3     日付 出社予定 出社時刻  退社時刻 勤務時間 勤怠理由 ペナルティ
 4   2009-09-01   1  10:00  17:15  6:15   0   0
 5   2009-09-02   0    0:00   0   0
 6   2009-09-03   1  10:00  12:30  2:00   0   1
 7   2009-09-04   1    0:00   0   3
 8   2009-09-05   1  12:15  17:00  4:00   1   0
 :     :      :   :   :   :   :   :
 33  2009-09-30   1  9:30  17:00  6:30   0   0
 34  2009-09-31   0    0:00   0   0
 35        合計 106:20    6

     図1 ワークシート“勤怠管理”の例

(2) 時刻及び時間の表記は h:mm,hh:mm 又は hhh:mm で表示されるが,内部では 24時間を1とする実数値で 記録されている。例えば,10:30 は 10.5/24 =0.4375,18:00 は 18/24 = 0.75 である。 計算にはこの数値を利用する。

(3) 図1中の各項目の説明は,次のとおりである。

 ID,氏名:アルバイトの識別番号と氏名である。

 日付:  1か月分の日付が yyyy-mm-dd の形式で表示される。日数 30 日以下の月で も 31 日まで列挙する。

出社予定:出社予定日には1を,出社予定でない日や 2009-09-31 のように存在しない日には0を格納する。

出社時刻:始業時刻は 10 時である。10 時に遅れた場合は遅刻扱いとなる。出社しなかった日, 又は存在しない日のセルは空白とする。

退社時刻:終業時刻は 17 時である。17 時前の退社は早退扱いとなる。出社しなかった日, 又は存在しない日のセルは空白とする。

勤務時間:出社してから退社するまでの時間である。ただし,12 時から 13 時までは昼休みであり, この時間は勤務時間に含まれない。出社しなかった日は 0:00 が表示される。 また,日をまたいで勤務することはない。

勤怠理由:初期値は0である。欠勤,遅刻,早退について正当な理由がある場合は1を設定する。

ペナルティ:正当な理由なく出社予定日に欠勤した場合は3を, 正当な理由なく遅刻又は早退した場合は1を表示する。これら以外の場合は0を表示する。

合計(勤務時間):当該月の勤務時間の合計を表示する。

合計(ペナルティ):当該月のペナルティの合計を表示する。

 ベナルティの合計は,出勤割当表を作成するときに利用する。

設問1 ワークシート“勤怠管理”に関する次の記述中の に入れる正しい答えを,解答群の中から選べ。

 各日のペナルティを算出するために,ワークシート“勤怠管理”のセル G4 には次の式を入力し, セル G5 〜 G34 に複写する。

IF(F4=1,0,IF(   ,3,
        IF(  ,1,0)))
 ペナルティの合計を算出するために,セル G35 には次の式を入力する。   合計(G4〜G34)

 各日の勤務時間を算出するために,ワークシート“勤怠管理”のセル E4 には 次の式を入力し,セル E5 〜 E34 に複写する。算術演算のとき,空白セルは0として取り扱われる。

 

 勤務時間の合計を算出するために,セル E35 には次の式を入力する。

  合計(E4〜E34) a に関する解答群 ア 否定(論理積(B4=0,C4=''))       イ 否定(論理積(B4=1,C4=''))

ウ 否定(論理和(B4=0,C4=''))       エ 否定(論理和(B4=1,C4=''))

オ 論理積(B4=1,C4='')          カ 論理和(B4=1,C4='')

b に関する解答群 ア 論理積(B4=1,論理積(C4≦(10/24),D4≧(17/24)))

イ 論理積(B4=1,論理和(C4>(10/24),D4<(17/24)))

ウ 論理積(C4≦(10/24),D4≧(17/24))

エ 論理和(B4=1,論理積(C4≦(10/24),D4≧(17/24)))

オ 論理和(B4=1,論理和(C4>(10/24),D4<(17/24)))

カ 論理和(C4>(10/24),D4<(17/24))

c に関する解答群 ア D4−C4−1/24

イ 最小(D4,12/24)−最小(C4,12/24)+最大(D4,13/24)−最大(C4,13/24)

ウ 最小(D4,13/24)−最小(C4,12/24)−1/24

エ 最小(D4,13/24)−最大(C4,12/24)−1/24

オ 最大(D4,12/24)−最小(C4,12/24)+最大(D4,13/24)−最小(C4,13/24)

力 最大(D4,13/24)−最小(C4,12/24)−1/24

キ 最大(D4,13/24)−最大(C4,12/24)−1/24

解答 a ←クリックすると正解が表示されます

解答 b ←クリックすると正解が表示されます

解答 c ←クリックすると正解が表示されます

基本情報技術者試験


〔ワークシート:勤務可能調査〕

 月末になると翌月の出勤割当表の作成に先立って,アルバイトの申告した勤務可能日に基づいて, ワークシート“勤務可能調査”を作成する。その例を図2に示す。ワークシート“勤務可能調査”では, 勤務可能なことを1で,勤務不可能なことを0で表す。また,存在しない日は,全員が0となる。

 なお,アルバイトは 15 名とする。

       A      B     C      D     E     F     G      H     …     P   
 1    ID
 2      日付  0001 0002 0003 0004 0005 0006  0007 … 0015
 3   2009-11-01 1 0 0 1 1 1 1 … 0
 4   2009-11-02 1 0 1 0 1 0 0 … 1
 5   2009-11-03 1 0 0 1 1 1 1 … 0
 :      :  : : : : : : : … :
 32  2009-11-30 0 0 1 0 1 0 1 … 1
 33  2009-11-31 0 0 0 0 0 0 0 … 0

     図2 ワークシート“勤務可能調査”の例

〔ワークシート:出勤割当表〕

(1) ワークシート”勤務可能調査”に基づいて,ワークシート“出勤割当表”を 作成する。その例を図3に示す。ワークシート“出勤割当表”では,勤務を割り当てた場合を1で, 割り当てなかった場合を0で表す。

       A      B     C      D     E     F     G      H     …     P     Q   
 1    ID 
 2      日付  0001 0002 0003 0004 0005 0006  0007 … 0015 合計
 3   2009-11-01 1 0 0 0 1 1 0 …  0 5
 4   2009-11-02 1 0 1 0 1 0 0 …  1 4
 5   2009-11-03 1 0 0 0 1 1 0 …  0 5
 :      :  : : : : : : : …  : :
 32  2009-11-30 0 0 1 0 1 0 1 …  1 5
 33  2009-11-31 0 0 0 0 0 0 0 …  0 0
 34    合計 21 6 8 1 16 14 9 …  17 
 35              
 36   経験順位 1 2 3 4 5 6 7 …  15 
 37  先々月ペナルティ 0 3 2 6 0 0 1 …  0  
 38  先々月ペナルティ順位 1 12 9 14 1 1 7 …  1 

    図3 ワークシート“出勤割当表”の例

(2) 図3中の各項目の説明は,次のとおりである。

 経験順位:業務経験が長い人ほど小さい値が入力されている。同順位の人はいない。

 先々月ペナルティ:各アルバイトの先々月のペナルティの合計が入力されている。

 先々月ペナルティ順位:各アルバイトの先々月ペナルティを昇順に順位付けする。
            先々月ペナルティが同じ場合は同順位となる。

(3) 出勤割当表の作成は,月初から月末まで順番に1日分ずつ次の規則に基づいて行う。

 (a) その日に出社可能な人が5人以下の場合は,その全員を割り当てる。

 (b) その日に出社可能な人が5人より多い場合は,その中から次の優先順位で5人を割り当てる。

  @ 先々月ペナルティ順位がより小さい。

  A @が等しい場合は,既に割当てが決められた期間(月初から前日まで)に割り当てられた回数がより少ない。

  B @,Aがともに等しい場合は,経験順位がより小さい。

(4) (3) の規則を定式化するために,出社の可否,先々月ペナルティ順位,前日まで の割当回数,経験順位からなる次のような7けたの数値(以下,評価値という)を定義する。

 この評価値が小さい人から,順番に出勤を割り当てる。評価値の計算には,ワークシート“出勤割当表”の 列 AB 〜 AP を使用する。

(5) ワークシート“出勤割当表”で用いる関数を表に示す。

    表 ワークシート”出勤割当表”で用いる関数
    書式           説明 
 順位(照合値,照合範囲,順序)  順序に0又は1を指定したとき,照合範囲をそれぞれ昇順又は降
順に整列し,照合値の順位を返す。照合範囲の中に同じ値が複数
個ある場合は同順位とし,次の順位は同順位の個数を加えた値と
なる。

(6) 複数のワークシート間でデータを参照する場合には,“ワークシート名!セル”又は“ワークシート名!セル範囲” という形式で指定する。

設問2 ワークシート“出勤割当表”に関する次の記述中の に 入れる正しい答えを,解答群の中から選べ。

 先々月ペナルティ順位を算出するために,ワークシート“出勤割当表”の セル B38 には次の式を入力し,セル C38 〜 P38 に複写する。

  順位(B37,$B37〜$P37,0)  次に,セル AB3 〜 AP33 に評価値を設定する。

 セル AB3 には次の式を入力し,セル AC3 〜 AP3 に複写する。

(((1−勤務可能調査!B3)*100+ )*100)*100+  セル AB4 には次の式を入力し,セル AB4 〜 AP33 に複写する。

(((1−勤務可能調査!B4)*100+ )*100+ )* 100
 +

 出勤者を決定するために,セル B3 には次の式を入力し,セル B3 〜 P33 に複写する。

 IF(論理積(
    ),1,0)

 各アルバイトの割当日数の合計を算出するために,セル B34 には次の式を入力し, セル C34 〜 P34 に複写する。

  合計( B3 〜 B33)  各日の合計割当人数を算出するために,セル Q3 には次の式を入力し,セル Q4 〜 Q33 に複写する。   合計( B3 〜 P3)

d〜f に関する解答群

ア B$3       イ B$36       ウ B$38

エ B3        オ B36       カ B38

キ 合計(B$3〜B3)  ク  合計(B$3〜$B3)

g, h に関する解答群 ア 勤務可能調査!B3=0          イ 勤務可能調査!B3=1

ウ 合計($B3〜$P3)≦5         エ 合計($B3〜$P3)≧5

オ 合計(勤務可能調査!$B3〜$P3)≦5   カ 合計(勤務可能調査!$B3〜$P3)≧5

キ 順位(AB3,$AB3〜$AP3,0)≦5     ク 順位(AB3,$AB3〜$AP3,1)≦5

ケ 順位(B3,$B3〜$P3,0)≦ 5      コ 順位(B3,$B3〜$P3,1)≦5

解答 d ←クリックすると正解が表示されます

解答 e ←クリックすると正解が表示されます

解答 f ←クリックすると正解が表示されます

解答 g、h ←クリックすると正解が表示されます


[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]