summaryrefslogtreecommitdiff
path: root/0478.json
blob: 3d279c7346ccc33fee6708cb5021b006f5e88b9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
{
    "2015": {
        "0478_s15_qp_11.pdf": {
            "1": "this document consists of 15 printed pages and 1 blank page. dc (rw/cgw) 101511/2 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *5619870491* computer science  0478/11 paper 1  theory may/june 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 75.",
            "2": "2 0478/11/m/j/15 \u00a9 ucles 20151 (a) state what is meant by the terms: parallel data transmission  ... ..  .. .  .. . serial data transmission  . ..  .. .  .. .  [2]  (b) give one benefit of each type of data transmission.   parallel data transmission benefit ...   .. .   serial data transmission benefit ...   .. .  [2]  (c) give one application of each type of data transmission. each application must be different.   parallel data transmission application  .. ..  .. .   serial data transmission application  .. ..  .. .  [2]",
            "3": "3 0478/11/m/j/15 \u00a9 ucles 2015 [turn over2 (a) state what is meant by the term usb.  .. .  .. .  [1]  (b) describe two benefits of using usb connections between a computer and a device. 1     .. .  .. . 2     .. .  .. .  [2]",
            "4": "4 0478/11/m/j/15 \u00a9 ucles 20153 (a) complete the truth table for the following logic circuit: a b cx abcworkspace x 000 001 010 011 100 101 110 111  [4]",
            "5": "5 0478/11/m/j/15 \u00a9 ucles 2015 [turn over (b) draw a logic circuit which corresponds to the following logic statement: x = 1 if ((a is  not  1  or  b is 1)   and   c is 1)  or  (b is  not  1  and   c is 1) a b x c  [3]  (c) write a logic statement which corresponds to the following logic circuit: a b cx  .. .  .. .  .. .  [3]",
            "6": "6 0478/11/m/j/15 \u00a9 ucles 20154 choose six correct terms from the following list to complete the spaces in the paragraphs below:  \u0081 encryption  \u0081 file name  \u0081 firewall  \u0081 html tags/text  \u0081 ip address  \u0081 protocol  \u0081 proxy server  \u0081 ssl certificate  \u0081 web server name  a user enters a url. the web browser breaks up the url into  three  components: 1  2  3    the web server returns the selected web page.  the web browser reads the  from the selected page and  shows the correctly formatted page on the user\u2019s screen.  a  is used between the user\u2019s computer and the network to  examine the data traffic to make sure it meets certain criteria.  to speed up the access to the web pages next time, a  is  used between the computer and web server; this device uses a cache to store the website home page after it has been accessed for the first time.  [6]",
            "7": "7 0478/11/m/j/15 \u00a9 ucles 2015 [turn over5 five storage devices are described in the table below.  in column 2, name the storage device being described.  in columns 3, 4, or 5, tick ( \uf0fc) to show the appropriate category of storage. 1 2 345 description of storage devicename of  storage devicecategory of storage primary secondary off-line optical media which use one spiral  track; red lasers are used to read and write data on the media surface; makes use of dual-layering technology to increase the storage capacity non-volatile memory chip; contents of  the chip cannot be altered; it is often used to store the start up routines in a computer (e.g. the bios) optical media which use concentric  tracks to store the data; this allows read and write operations to be carried out at the same time non-volatile memory device which  uses nand flash memories (which consist of millions of transistors wired in series on single circuit boards) optical media which use blue laser  technology to read and write data on the media surface; it uses a single 1.1 mm polycarbonate disc  [10]",
            "8": "8 0478/11/m/j/15 \u00a9 ucles 20156 (a) viruses, pharming and phishing are all examples of potential internet security issues.   explain what is meant by each of these three  terms. virus   .  .. .  .. .  .. . pharming  . .  .. .  .. .  .. . phishing  . ...  .. .  .. .  .. .  [6]  (b) an online bank requires a client to supply an 8-digit code each time they wish to access their  account on the bank\u2019s website.   rather than ask the client to use a keyboard, they are requested  to use an on-screen keypad (shown on the right) to input the 8-digit code.   the position of the digits on the keypad can change each time  the website is visited.  2   5   1 6   8   39   0   4 7   the client uses a mouse or touch screen to select each of the  8 digits.   (i) explain why the bank has chosen to use this method of entering the 8 digits.  .. .  .. .  .. .  .. .  [2]",
            "9": "9 0478/11/m/j/15 \u00a9 ucles 2015 [turn over  (ii) name and describe another  measure that the bank could introduce to improve the  security of their website. name  .  description  .. ..  .. .  .. .  .. .  [2]",
            "10": "10 0478/11/m/j/15 \u00a9 ucles 20157 (a) one of the key features of von neumann computer architecture is the use of buses.   three buses and three descriptions are shown below.   draw a line to connect each bus to its correct description. bus description address busthis bus carries signals used  to coordinate the computer\u2019s activities control busthis bi-directional bus is used  to exchange data between processor, memory and input/output devices data busthis uni-directional bus carries  signals relating to memory addresses between processor and memory  [2]",
            "11": "11 0478/11/m/j/15 \u00a9 ucles 2015 [turn over (b) the seven stages in a von neumann fetch-execute cycle are shown in the table below.   put each stage in the correct sequence by writing the numbers 1 to 7 in the right hand column.  the first one has been done for you. stagesequence  number the instruction is then copied from the memory location contained  in the mar (memory address register) and is placed in the mdr (memory data register) the instruction is finally decoded and is then executed the pc (program counter) contains the address of the next instruction  to be fetched1 the entire instruction is then copied from the mdr (memory data register) and placed in the cir (current instruction register) the address contained in the pc (program counter) is copied to the  mar (memory address register) via the address bus the address part of the instruction, if any, is placed in the mar  (memory address register) the value in the pc (program counter) is then incremented so that it  points to the next instruction to be fetched  [6]",
            "12": "12 0478/11/m/j/15 \u00a9 ucles 20158 an alarm clock is controlled by a microprocessor. it uses the 24 hour clock. the hour is represented  by an 8-bit register, a, and the number of minutes is represented by another 8-bit register, b.  (a) identify what time is represented by the following two 8-bit registers. ab 1 2 8 6 4 3 2 1 6 8421 1 2 8 6 4 3 2 1 6 8421 00010010:00110101 hours   minutes  .  [2]  (b) an alarm has been set for 07:30. two 8-bit registers,  c and d, are used to represent the  hours and minutes of the alarm time.   show how 07:30 would be represented by these two registers: cd : hours minutes  [2]  (c) describe how the microprocessor can determine when to sound the clock alarm.  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "13": "13 0478/11/m/j/15 \u00a9 ucles 2015 [turn over (d) the lcd (liquid crystal display) on the clock face is back-lit using blue leds (light emitting  diodes). the brightness of the clock face is determined by the level of light in the room. the amount of light given out by the leds is controlled by a control circuit.   describe how the sensor, microprocessor and leds are used to maintain the correct  brightness of the clock face.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[3]  (e) modern lcd monitors and televisions use led back-lit technology.   give two advantages of using this new technology compared to the older cold cathode  fluorescent lamp (ccfl) method. 1     .. .  .. . 2     .. .  .. .  [2]",
            "14": "14 0478/11/m/j/15 \u00a9 ucles 20159 draw a line to connect each question to the correct answer. question answer what is the denary (base 10)  equivalent to the hexadecimal digit e? 8 if 1 gb = 2x then what is the  value of x? 12 how many bits are there in one byte?14 if the broadband data download rate is 40 megabits per second, how many seconds will it take to download a 60 mb file? 19 what is the denary (base 10) value of the binary number 0 0 1 0 0 1 0 0 ?30 what hexadecimal value is obtained when the two hexadecimal digits c and d  are added together?36  [5]",
            "15": "15 0478/11/m/j/15 \u00a9 ucles 201510 five statements about interpreters and compilers are shown in the table below.  study each statement.  tick (\uf0fc) to show whether the statement refers to an interpreter or to a compiler. statement interpreter compiler takes one statement at a time and executes itgenerates an error report at the end of translation of the  whole program stops the translation process as soon as the first error is  encountered slow speed of execution of program loops translates the entire program in one go  [5]",
            "16": "16 0478/11/m/j/15 \u00a9 ucles 2015permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s15_qp_12.pdf": {
            "1": "this document consists of 14 printed pages and 2 blank pages. dc (st/fd) 101512/1 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *7518664861* computer science  0478/12 paper 1  theory may/june 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 75.",
            "2": "2 0478/12/m/j/15 \u00a9 ucles 20151 (a) four statements about cookies are shown in the table below.    study each statement.     tick (\u2713) to show whether the statement is true or false. statement true false they are a form of spywarethey are used only in advertisingthey are used to track browser usethey act in the same way as a virus [4]   (b) five descriptions and five security issues are shown below.    draw a line to connect each description to the correct security issue.  description security issue malicious code installed on the hard drive of a  user\u2019s computer or on the web server; this code will re-direct user to a fake web site without their consenthacking software that gathers information by monitoring  key presses on a user\u2019s computer and relays the information back to the person who sent the softwarepharming program or code that replicates itself and is  designed to amend, delete or copy data and files  on a user\u2019s computer without their consentphishing the act of gaining illegal access to a computer  system without the owner\u2019s consentspyware creator of code sends out a legitimate-looking  email in the hope of gathering personal and financial data; it requires the recipient to follow a link in the email or open an attachmentvirus  [4]",
            "3": "3 0478/12/m/j/15 \u00a9 ucles 2015 [turn over2 the majority of mobile phones use touch screens. three common technologies are used by  different mobile phone manufacturers.   choose one of the following mobile phone technologies: \u0081 resistive  \u0081 capacitive \u0081 infrared chosen technology   ..  (i) describe how your chosen technology works to allow a user to make selections by touching  the screen.  .. .  .. .  .. .  .. .  .. .[2]  (ii) give one benefit and one drawback of your chosen technology when used on mobile phone  touch screens. benefit .. .  .. . drawback .. .  .. .  [2]",
            "4": "4 0478/12/m/j/15 \u00a9 ucles 20153 four input devices, four descriptions and four applications are shown below.  draw a line to connect each input device to its correct description. then connect each description  to its correct application.  input device description application barcode readercopies paper documents and  converts the text and pictures  into a computer-readable formvoice  recognition microphone  reads labels containing parallel  dark and light lines using laser  light or leds; the width of each  line represents a binary codereading  passports ph sensordetects changes in acidity  levels; data is often in  analogue formautomatic stock  control scannerdevice that allows audio  signals to be converted into  electric signals; these can be  interpreted by a computer after  being converted into digital formmonitor soil in a  greenhouse  [6]  ",
            "5": "5 0478/12/m/j/15 \u00a9 ucles 2015 [turn over4 (a) state what is meant by the term ssl.  .. .  .. .  .. .[1]  (b) the following stages take place when a user wishes to access a secure website.    put each stage in sequence by writing the numbers 1 to 6 in the column on the right. the first  one has been done for you. stagesequence number the encrypted data is then shared securely between the web browser  and the web server the web browser attempts to connect to a website which is secured by  ssl 1 the web server sends the web browser a copy of its ssl certificate the web browser requests the web server to identify itself the web server will then send back some form of acknowledgement to  allow the ssl encrypted session to begin the web browser checks whether the ssl certificate is trustworthy; if it  is, then the web browser sends a message back to the web server [5]  ",
            "6": "6 0478/12/m/j/15 \u00a9 ucles 20155 parity checks are often used to check for errors that may occur during data transmission.  (a) a system uses even parity .    tick (\u2713) to show whether the following three bytes have been transmitted correctly or  incorrectly. received byte byte transmitted correctly byte transmitted incorrectly 1 1 0 0 1 0 0 0 0 1 1 1 1 1 0 00 1 1 0 1 0 0 1 [3]  (b) a parity byte is used to identify which bit has been transmitted incorrectly in a block of data.   the word \u201cf l o w c h a r t\u201d was transmitted using nine bytes of data (one byte per  character). a tenth byte, the parity byte, was also transmitted.   the following block of data shows all ten bytes received after transmission. the system uses  even parity  and column 1 is the parity bit. letter column  1column  2column  3column  4column  5column  6column  7column  8 byte 1 f10100110 byte 2 l10101100 byte 3 o10101111 byte 4 w 10110111 byte 5 c10100011 byte 6 h00101000 byte 7 a00100101 byte 8 r10110010 byte 9 t10110100 parity  byte10111110   (i) one  of the bits has been transmitted incorrectly.     write the byte number and column number of this bit: byte number  ..  column number   .  [2] ",
            "7": "7 0478/12/m/j/15 \u00a9 ucles 2015 [turn over  (ii) explain how you arrived at your answer for part (b)(i) .  .. .  .. .  .. .  .. .[2]  (c) give the denary (base 10) value of the byte: 1 0 1 1 1 1 1 0  .. .  .. .[1]  (d) a parity check may not identify that a bit has been transmitted incorrectly.   describe one situation in which this could occur.  .. .  .. .  .. .[1]",
            "8": "8 0478/12/m/j/15 \u00a9 ucles 20156 a gas fire has a safety circuit made up of logic gates. it generates an alarm (x = 1) in response to  certain conditions. input descriptionbinary  valueconditions g gas pressure1 gas pressure is correct 0 gas pressure is too high c carbon monoxide level1 carbon monoxide level is correct 0 carbon monoxide level is too high l gas leak detection1 no gas leak is detected 0 gas leak is detected  the output x = 1 is generated under the following conditions: gas pressure is correct and  carbon monoxide level is too high or carbon monoxide level is correct and  gas leak is detected  (a) draw a logic circuit for this safety system. * &; / [5]",
            "9": "9 0478/12/m/j/15 \u00a9 ucles 2015 [turn over (b) complete the truth table for the safety system. gclworkspace x 000 001010011100101110111 [4]  (c) complete the truth table for the xor gate: abc 00 011011  [1]  ",
            "10": "10 0478/12/m/j/15 \u00a9 ucles 20157 (a) street lighting is controlled automatically. a light sensor and a microprocessor are used to  decide when to switch each street light on or off.   describe how the sensor, microprocessor and light interact to switch the street light on or off.   include in your answer how the microprocessor stops the street lights being frequently  switched on and off due to brief changes in the light intensity.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]  (b) name three  different sensors (other than light and ph) and describe an application for each  of these sensors.   a different application is needed for each sensor. sensor 1  . .. application  .. ..  .. . sensor 2  . .. application  .. ..  .. . sensor 3  . .. application  .. ..  .. . [6]",
            "11": "11 0478/12/m/j/15 \u00a9 ucles 2015 [turn over8 five computing terms are described below.   write the name of the term being described. software that anyone can download for free from the internet  and then use without having to pay any fees. the usual copyright laws apply and a user license is important.   software that gives the user the chance to try it out free of  charge before actually buying it. the software is subject to the usual copyright laws. as a rule, not all the features found in the full version are available at this stage.   software where users have freedom to run, copy, change and  adapt it. this is an issue of liberty and not of price since the software guarantees freedom and the right to study and modify the software by having access to the actual source code.   set of principles that regulates the use of computers in  everyday life. this covers intellectual property rights, privacy issues and the effects of computers on society in general.   the taking of somebody\u2019s idea or software and claim that the  idea or software code were created by the \u201ctaker\u201d.   [5]  ",
            "12": "12 0478/12/m/j/15 \u00a9 ucles 20159 (a) five statements about interpreters and compilers are shown in the table below.    study each statement.    tick (\u2713) to show whether the statement refers to an interpreter or to a compiler. statement interpreter compiler creates an executable file that runs directly on the  computer more likely to crash the computer since the machine  code produced runs directly on the processor easier to debug since each line of code is analysed  and checked before being executed slow speed of execution of program loopsit is more difficult to modify the executable code,  since it is in machine code format  [5]  (b) state why a compiler or an interpreter is needed when running a high-level program on a  computer.  .. .  .. .  .. .[1]  (c) give one benefit of writing a program in a high-level language.  .. .  .. .  .. .[1]  (d) give one benefit of writing a program in a low-level language.  .. .  .. .  .. .[1]  ",
            "13": "13 0478/12/m/j/15 \u00a9 ucles 2015 [turn over (e) study the following three sections of code.   a: 1 0 1 0 1 1 0 1    1 1 0 0 1 1 1 0   1 0 1 1 0 1 1 1    b:  lda x    inc x   sta y   c:  for x \u2190 1 to 10       read n   endfor   identify, using the letters a, b or c, which of the above codes is an example of assembly  code, high-level language code or machine code: assembly code   . high-level language code  .  machine code  . .. [2]",
            "14": "14 0478/12/m/j/15 \u00a9 ucles 201510 letters from the alphabet are represented in a computer by the following denary (base 10) values:  a = 97  g  =  103 i =  105 l =  108 n  =  110  the word \u201c a l i g n \u201d is stored as: 97 108 105 103 110  (a) convert each of the five values to binary. the first one has been done for you. letter denary value a (97): 01100001 l (108): i (105): g (103): n (110):  [2]  (b) an encryption system works by shifting the binary value for a letter one place to the left. \u201ca\u201d  then becomes:  11000010   this binary value is then converted to hexadecimal; the hexadecimal value for \u201ca\u201d will be: c 2   for the two letters \u201cl \u201d and \u201cg\u201d, shift the binary values one place to the left and convert these  values into hexadecimal: hexadecimal l:. g:.  [4]",
            "15": "15 0478/12/m/j/15 \u00a9 ucles 2015blank page",
            "16": "16 0478/12/m/j/15 \u00a9 ucles 2015permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s15_qp_13.pdf": {
            "1": "this document consists of 15 printed pages and 1 blank page. dc (leg/cgw) 111632 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *0320288079* computer science  0478/13 paper 1  theory may/june 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 75.",
            "2": "2 0478/13/m/j/15 \u00a9 ucles 20151 (a) state what is meant by the terms: parallel data transmission  ... ..  .. .  .. . serial data transmission  . ..  .. .  .. .  [2]  (b) give one benefit of each type of data transmission.   parallel data transmission benefit ...   .. .   serial data transmission benefit ...   .. .  [2]  (c) give one application of each type of data transmission. each application must be different.   parallel data transmission application  .. ..  .. .   serial data transmission application  .. ..  .. .  [2]",
            "3": "3 0478/13/m/j/15 \u00a9 ucles 2015 [turn over2 (a) state what is meant by the term usb.  .. .  .. .  [1]  (b) describe two benefits of using usb connections between a computer and a device. 1     .. .  .. . 2     .. .  .. .  [2]",
            "4": "4 0478/13/m/j/15 \u00a9 ucles 20153 (a) complete the truth table for the following logic circuit: a b cx abcworkspace x 000 001 010 011 100 101 110 111  [4]",
            "5": "5 0478/13/m/j/15 \u00a9 ucles 2015 [turn over (b) draw a logic circuit which corresponds to the following logic statement: x = 1 if ((a is  not  1  or  b is 1)   and   c is 1)  or  (b is  not  1  and   c is 1) a b x c  [3]  (c) write a logic statement which corresponds to the following logic circuit: a b cx  .. .  .. .  .. .  [3]",
            "6": "6 0478/13/m/j/15 \u00a9 ucles 20154 choose six correct terms from the following list to complete the spaces in the paragraphs below:  \u0081 encryption  \u0081 file name  \u0081 firewall  \u0081 html tags/text  \u0081 ip address  \u0081 protocol  \u0081 proxy server  \u0081 ssl certificate  \u0081 web server name  a user enters a url. the web browser breaks up the url into  three  components: 1  2  3    the web server returns the selected web page.  the web browser reads the  from the selected page and  shows the correctly formatted page on the user\u2019s screen.  a  is used between the user\u2019s computer and the network to  examine the data traffic to make sure it meets certain criteria.  to speed up the access to the web pages next time, a  is  used between the computer and web server; this device uses a cache to store the website home page after it has been accessed for the first time.  [6]",
            "7": "7 0478/13/m/j/15 \u00a9 ucles 2015 [turn over5 five storage devices are described in the table below.  in column 2, name the storage device being described.  in columns 3, 4, or 5, tick ( \uf0fc) to show the appropriate category of storage. 1 2 345 description of storage devicename of  storage devicecategory of storage primary secondary off-line optical media which use one spiral  track; red lasers are used to read and write data on the media surface; makes use of dual-layering technology to increase the storage capacity non-volatile memory chip; contents of  the chip cannot be altered; it is often used to store the start up routines in a computer (e.g. the bios) optical media which use concentric  tracks to store the data; this allows read and write operations to be carried out at the same time non-volatile memory device which  uses nand flash memories (which consist of millions of transistors wired in series on single circuit boards) optical media which use blue laser  technology to read and write data on the media surface; it uses a single 1.1 mm polycarbonate disc  [10]",
            "8": "8 0478/13/m/j/15 \u00a9 ucles 20156 (a) viruses, pharming and phishing are all examples of potential internet security issues.   explain what is meant by each of these three  terms. virus   .  .. .  .. .  .. . pharming  . .  .. .  .. .  .. . phishing  . ...  .. .  .. .  .. .  [6]  (b) an online bank requires a client to supply an 8-digit code each time they wish to access their  account on the bank\u2019s website.   rather than ask the client to use a keyboard, they are requested  to use an on-screen keypad (shown on the right) to input the 8-digit code.   the position of the digits on the keypad can change each time  the website is visited.  2   5   1 6   8   39   0   4 7   the client uses a mouse or touch screen to select each of the  8 digits.   (i) explain why the bank has chosen to use this method of entering the 8 digits.  .. .  .. .  .. .  .. .  [2]",
            "9": "9 0478/13/m/j/15 \u00a9 ucles 2015 [turn over  (ii) name and describe another  measure that the bank could introduce to improve the  security of their website. name  .  description  .. ..  .. .  .. .  .. .  [2]",
            "10": "10 0478/13/m/j/15 \u00a9 ucles 20157 (a) one of the key features of von neumann computer architecture is the use of buses.   three buses and three descriptions are shown below.   draw a line to connect each bus to its correct description. bus description address busthis bus carries signals used  to coordinate the computer\u2019s activities control busthis bi-directional bus is used  to exchange data between processor, memory and input/output devices data busthis uni-directional bus carries  signals relating to memory addresses between processor and memory  [2]",
            "11": "11 0478/13/m/j/15 \u00a9 ucles 2015 [turn over (b) the seven stages in a von neumann fetch-execute cycle are shown in the table below.   put each stage in the correct sequence by writing the numbers 1 to 7 in the right hand column.  the first one has been done for you. stagesequence  number the instruction is then copied from the memory location contained  in the mar (memory address register) and is placed in the mdr (memory data register) the instruction is finally decoded and is then executed the pc (program counter) contains the address of the next instruction  to be fetched1 the entire instruction is then copied from the mdr (memory data register) and placed in the cir (current instruction register) the address contained in the pc (program counter) is copied to the  mar (memory address register) via the address bus the address part of the instruction, if any, is placed in the mar  (memory address register) the value in the pc (program counter) is then incremented so that it  points to the next instruction to be fetched  [6]",
            "12": "12 0478/13/m/j/15 \u00a9 ucles 20158 an alarm clock is controlled by a microprocessor. it uses the 24 hour clock. the hour is represented  by an 8-bit register, a, and the number of minutes is represented by another 8-bit register, b.  (a) identify what time is represented by the following two 8-bit registers. ab 1 2 8 6 4 3 2 1 6 8421 1 2 8 6 4 3 2 1 6 8421 00010010:00110101 hours   minutes  .  [2]  (b) an alarm has been set for 07:30. two 8-bit registers,  c and d, are used to represent the  hours and minutes of the alarm time.   show how 07:30 would be represented by these two registers: cd : hours minutes  [2]  (c) describe how the microprocessor can determine when to sound the clock alarm.  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "13": "13 0478/13/m/j/15 \u00a9 ucles 2015 [turn over (d) the lcd (liquid crystal display) on the clock face is back-lit using blue leds (light emitting  diodes). the brightness of the clock face is determined by the level of light in the room. the amount of light given out by the leds is controlled by a control circuit.   describe how the sensor, microprocessor and leds are used to maintain the correct  brightness of the clock face.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[3]  (e) modern lcd monitors and televisions use led back-lit technology.   give two advantages of using this new technology compared to the older cold cathode  fluorescent lamp (ccfl) method. 1     .. .  .. . 2     .. .  .. .  [2]",
            "14": "14 0478/13/m/j/15 \u00a9 ucles 20159 draw a line to connect each question to the correct answer. question answer what is the denary (base 10)  equivalent to the hexadecimal digit e? 8 if 1 gb = 2x then what is the  value of x? 12 how many bits are there in one byte?14 if the broadband data download rate is 40 megabits per second, how many seconds will it take to download a 60 mb file? 19 what is the denary (base 10) value of the binary number 0 0 1 0 0 1 0 0 ?30 what hexadecimal value is obtained when the two hexadecimal digits c and d  are added together?36  [5]",
            "15": "15 0478/13/m/j/15 \u00a9 ucles 201510 five statements about interpreters and compilers are shown in the table below.  study each statement.  tick (\uf0fc) to show whether the statement refers to an interpreter or to a compiler. statement interpreter compiler takes one statement at a time and executes itgenerates an error report at the end of translation of the  whole program stops the translation process as soon as the first error is  encountered slow speed of execution of program loops translates the entire program in one go  [5]",
            "16": "16 0478/13/m/j/15 \u00a9 ucles 2015permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s15_qp_21.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (cw/cgw) 95070/2 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *1228833815* computer science  0478/21 paper 2 problem-solving and programming may/june 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50.",
            "2": "2 0478/21/m/j/15 \u00a9 ucles 2015section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material write and test a program to complete the three  tasks.  task 1a data logger records the temperature on the roof of a school twice a day, at midday and midnight.  input and store the temperatures recorded for a month. y ou must store the temperatures in two one-dimensional arrays, one for the midday temperatures and one for the midnight temperatures. all the temperatures must be validated on entry and any invalid temperatures rejected. y ou must decide your own validation rules. y ou may assume that there are 30 days in a month. task 2calculate the average temperature for midday and the average temperature for midnight. output  these averages with a suitable message for each one. task 3select the day with the highest midday temperature and the day with the lowest midnight temperature.   then output each of these temperatures, the corresponding day and a suitable message. y our program must include appropriate prompts for the entry of data. error messages and other  outputs need to be set out clearly and understandably. all variables, constants and other identifiers must have meaningful names. each task must be fully tested.",
            "3": "3 0478/21/m/j/15 \u00a9 ucles 2015 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) in task 1 , you had to store the midday temperatures and midnight temperatures in  arrays.    write suitable declarations for these two arrays.  .. .  .. .[2]   (ii) it has been decided to record the temperatures for one week rather than one month.    write the new array declarations that you would use.  .. .  .. .[1]   (iii) declare two other variables that you have used and state what you used each one for. variable 1  ... use ... .. variable 2  ... use ... ..[4]",
            "4": "4 0478/21/m/j/15 \u00a9 ucles 2015 (b) write an algorithm to complete task 2 , using either pseudocode, programming statements  or a flowchart. use temperatures for one week  only. y ou should assume that task 1 has  already been completed.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "5": "5 0478/21/m/j/15 \u00a9 ucles 2015 [turn over (c) give a set of midday temperature data, for a week, that could be used to check your validation  rules for task 1 . explain why you chose this data set. data set .. ...  .. . reason for choice . .  .. .  .. .[2]  (d) explain how you select the day with the highest midday temperature (part of task 3 ). y ou may  include pseudocode or programming statements as part of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[6]",
            "6": "6 0478/21/m/j/15 \u00a9 ucles 2015section b 2 read this section of program code that should input 10 positive numbers and then output the  smallest number input.  1 small = 0 2 counter = 0 3 repeat 4   input num 5   if num < small then num = small 6   counter = counter + 1 7   print small 8 until counter < 10 there are four errors in this code.  locate these errors and suggest a corrected piece of code for each error. 1   ...  ..  2   ...  ..  3   ...  ..  4   ...  .. [4]",
            "7": "7 0478/21/m/j/15 \u00a9 ucles 2015 [turn overquestion 3 begins on page 8.",
            "8": "8 0478/21/m/j/15 \u00a9 ucles 20153 the flowchart below inputs the weight of a number of parcels in kilograms. parcels weighing more  than 25 kilograms are rejected. a value of \u20131 stops the input.  the following information is output: the total weight of the parcels accepted and number of parcels  rejected. start input weight is weight = \u20131?output total, reject is weight > 25?7rwdo\u0003\u0138\u0003\u0013 5hmhfw\u0003\u0138\u0003\u0013 7rwdo\u0003\u0138\u00037rwdo\u0003\u000e\u0003:hljkw5hmhfw\u0003\u0138\u00035hmhfw\u0003\u000e\u0003\u0014yes yesno noend",
            "9": "9 0478/21/m/j/15 \u00a9 ucles 2015 [turn overcomplete the trace table for the input data: 1.8, 26.0, 7.0, 11.3, 10.0, 2.5, 25.2, 5.0, 19.8, 29.3, \u20131 total reject weight output [5] 4 five data types and five data samples are shown below.  draw a line to link each data type to the correct data sample. data type data sample integer 'a' real 2 char 2.0 string true boolean \"twelve\" [4]",
            "10": "10 0478/21/m/j/15 \u00a9 ucles 20155 explain the difference between a variable and a constant in a program.  ..   ..   ..   .. [2] 6 identify three  different loop structures that you can use when writing pseudocode. 1   ...  ..  2   ...  ..  3   ...  .. [3] 7 a database, property , was set up to show the prices of properties for sale and the features of  each property. part of the database is shown below. property typebrochure  nonumber of  bedroomsnumber of  bathroomsgarden garageprice  in $ bungalow b17 7 4 y es y es 750,000apartment a09 2 1 no no 100,000house h10 4 2 y es no 450,000house h13 3 2 y es no 399,000apartment a01 2 2 no y es  95,000apartment a16 1 1 no no 150,000house h23 3 1 no y es 250,000house h46 2 1 y es y es 175,000  (a) give the number of fields that are in each record.  .. .[1]",
            "11": "11 0478/21/m/j/15 \u00a9 ucles 2015 (b) state which field you would choose for the primary key.  .. .   give a reason for choosing this field.   .. .  .. .[2]  (c) state the data type you would choose for each of the following fields. garage   .  number of bedrooms   . price in $   . .[3]  (d) the query-by-example grid below selects all houses with more than 1 bathroom and more  than 2 bedrooms. field: property typenumber of  bedroomsnumber of  bathroomsprice in $ brochure no table: property property property property property sort: ascending show: \uf0fc \uf0fc criteria: = 'house' >2 >1 or:   show what would be output.  .. .  .. .[2]  (e) complete the query-by-example grid below to select and show the brochure number, property  type and price of all properties with a garage below $200,000. field: table: sort: show: criteria: or: [4]",
            "12": "12 0478/21/m/j/15 \u00a9 ucles 2015blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        },
        "0478_s15_qp_22.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (cw/cgw) 95074/2 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *6651977550* computer science  0478/22 paper 2 problem-solving and programming may/june 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [   ] at the end of each question or part question. the maximum number of marks is 50.",
            "2": "2 0478/22/m/j/15 \u00a9 ucles 2015section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material write and test a program to complete the three  tasks.  task 1a school keeps records of the weights of each pupil. the weight, in kilograms, of each pupil is  recorded on the first day of term. input and store the weights and names recorded for a class of 30 pupils. y ou must store the weights in a one-dimensional array and the names in another one-dimensional array. all the weights must be validated on entry and any invalid weights rejected. y ou must decide your own validation rules. y ou may assume that the pupils\u2019 names are unique. output the names and weights of the pupils in the class. task 2the weight, in kilograms, of each pupil is recorded again on the last day of term. calculate and store  the difference in weight for each pupil. task 3for those pupils who have a difference in weight of more than 2.5 kilograms, output, with a suitable  message, the pupil\u2019s name, the difference in weight and whether this is a rise or a fall. y our program must include appropriate prompts for the entry of data. error messages and other  outputs need to be set out clearly and understandably. all variables, constants and other identifiers must have meaningful names. each task must be fully tested.",
            "3": "3 0478/22/m/j/15 \u00a9 ucles 2015 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) declare the array to store the pupils\u2019 names.  .. .[1]   (ii) declare the array to store the pupils\u2019 weights.  .. .[1]   (iii) it has been decided to record the weights for the whole school of 600 pupils rather than  one class.    write suitable new declarations for these two arrays.  .. .  .. .[1]  (b) write an algorithm to complete task 2 , using either pseudocode, programming statements  or a flowchart. use weights for the whole school . y ou should assume that task 1 has already  been completed.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "4": "4 0478/22/m/j/15 \u00a9 ucles 2015 (c) (i) describe suitable validation rules for task 1 .  .. .  .. .  .. .  .. .[2]   (ii) give two pupil weights that you could use to check the validation used in task 1 . explain  why you chose each weight. weight 1  . ... reason for choice   .  .. . weight 2  . ... reason for choice   .  .. .[4]  (d) explain how you select the pupils with a fall in weight of more than 2.5 kilograms (part of  task 3 ). y ou may include pseudocode or programming statements as part of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[6]",
            "5": "5 0478/22/m/j/15 \u00a9 ucles 2015 [turn oversection b 2 read this section of program code that should input 30 positive numbers and then output the  largest number input.  1 large = 9999 2 counter = 0 3 while counter > 30 4 do 5   input num 6   if num < large then large = num 7   counter = counter - 1 8 endwhile 9 print large there are four errors in this code.  locate these errors and suggest a corrected piece of code for each error. 1   ...  ..  2   ...  ..  3   ...  ..  4   ...  .. [4]",
            "6": "6 0478/22/m/j/15 \u00a9 ucles 20153 (a) the flowchart below inputs six single digit numbers.  the predefined function mod gives the  value of the remainder, for example, y \u2190 10 mod 3  gives the value y = 1 start input a, b, c, d, e, f output 'reject'output  'accept'is check = f?check @ total mod 11 yes nototal @ a*1 + b*2 + c*3 + d*4 + e*5  end",
            "7": "7 0478/22/m/j/15 \u00a9 ucles 2015 [turn overcomplete a trace table for each of the two sets of input data. set 1 5, 2, 4, 3, 1, 5set 2 3, 2, 1, 0, 7, 3trace table set 1    5, 2, 4, 3, 1, 5 a b c d e f total check output trace table set 2    3, 2, 1, 0, 7, 3 a b c d e f total check output [4]  (b) state the purpose of the flowchart in part (a) .  .. .  .. .[1]  (c) identify a problem with this flowchart and explain how to correct it. problem  .. ..  .. . solution  .   .. .  .. .  .. .[3]",
            "8": "8 0478/22/m/j/15 \u00a9 ucles 20154 four programming concepts and four examples of programming code are shown below.  draw a line to link each programming concept to the correct example of programming code. programming  conceptexample of programming code counting sum = sum + value[n] repetition if value = 10 then print 'x' selection for counter = 1 to 10 totalling amount = amount + 1 sum = num1 + num2 [4] 5 (a) write an algorithm, using pseudocode and a for \u2026 to \u2026 next  loop structure, to input  1000 numbers into an array.  .. .  .. .  .. .  .. .  .. .  .. .[2]  (b) rewrite your algorithm using another loop structure.  .. .  .. .  .. .  .. .  .. .  .. .  .. .[4]",
            "9": "9 0478/22/m/j/15 \u00a9 ucles 2015 [turn overquestion 6 begins on page 10.",
            "10": "10 0478/22/m/j/15 \u00a9 ucles 20156 a database, marks, was set up to record the test results for a class of students. part of the  database is shown below. student name class id maths english science history geography paul smith 0017 70 55 65 62 59ravi gupta 0009 29 34 38 41 44chin hwee 0010 43 47 50 45 52john jones 0013 37 67 21 28 35diana abur 0001 92 88 95 89 78rosanna king 0016 21 13 11 27 15  (a) give the number of fields that are in each record.  .. .[1]  (b) state which field you would choose for the primary key.  .. .   give a reason for choosing this field.  .. .  .. .[2]  (c) the query-by-example grid below selects all students with more than 60 marks in history or  more than 60 marks in geography. field: student name history geography table: marks marks marks sort: ascending show: \u2713 criteria: >60 or: >60   show what would be output.  .. .  .. .[2]",
            "11": "11 0478/22/m/j/15 \u00a9 ucles 2015 (d) complete the query-by-example grid below to select and show the student names only of all  students with less than 40 marks in both maths and english. field: table: sort: show: criteria: or: [3]",
            "12": "12 0478/22/m/j/15 \u00a9 ucles 2015blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        },
        "0478_s15_qp_23.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (slm) 108498 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *0816194257* computer science  0478/23 paper 2 problem-solving and programming may/june 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50.",
            "2": "2 0478/23/m/j/15 \u00a9 ucles 2015section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material write and test a program to complete the three  tasks.  task 1a data logger records the temperature on the roof of a school twice a day, at midday and midnight.  input and store the temperatures recorded for a month. y ou must store the temperatures in two one-dimensional arrays, one for the midday temperatures and one for the midnight temperatures. all the temperatures must be validated on entry and any invalid temperatures rejected. y ou must decide your own validation rules. y ou may assume that there are 30 days in a month. task 2calculate the average temperature for midday and the average temperature for midnight. output  these averages with a suitable message for each one. task 3select the day with the highest midday temperature and the day with the lowest midnight temperature.   then output each of these temperatures, the corresponding day and a suitable message. y our program must include appropriate prompts for the entry of data. error messages and other  outputs need to be set out clearly and understandably. all variables, constants and other identifiers must have meaningful names. each task must be fully tested.",
            "3": "3 0478/23/m/j/15 \u00a9 ucles 2015 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) in task 1 , you had to store the midday temperatures and midnight temperatures in  arrays.    write suitable declarations for these two arrays.  .. .  .. .[2]   (ii) it has been decided to record the temperatures for one week rather than one month.    write the new array declarations that you would use.  .. .  .. .[1]   (iii) declare two other variables that you have used and state what you used each one for. variable 1  ... use ... .. variable 2  ... use ... ..[4]",
            "4": "4 0478/23/m/j/15 \u00a9 ucles 2015 (b) write an algorithm to complete task 2 , using either pseudocode, programming statements  or a flowchart. use temperatures for one week  only. y ou should assume that task 1 has  already been completed.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "5": "5 0478/23/m/j/15 \u00a9 ucles 2015 [turn over (c) give a set of midday temperature data, for a week, that could be used to check your validation  rules for task 1 . explain why you chose this data set. data set .. ...  .. . reason for choice . .  .. .  .. .[2]  (d) explain how you select the day with the highest midday temperature (part of task 3 ). y ou may  include pseudocode or programming statements as part of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[6]",
            "6": "6 0478/23/m/j/15 \u00a9 ucles 2015section b 2 read this section of program code that should input 10 positive numbers and then output the  smallest number input.  1 small = 0 2 counter = 0 3 repeat 4   input num 5   if num < small then num = small 6   counter = counter + 1 7   print small 8 until counter < 10 there are four errors in this code.  locate these errors and suggest a corrected piece of code for each error. 1   ...  ..  2   ...  ..  3   ...  ..  4   ...  .. [4]",
            "7": "7 0478/23/m/j/15 \u00a9 ucles 2015 [turn overquestion 3 begins on page 8.",
            "8": "8 0478/23/m/j/15 \u00a9 ucles 20153 the flowchart below inputs the weight of a number of parcels in kilograms. parcels weighing more  than 25 kilograms are rejected. a value of \u20131 stops the input.  the following information is output: the total weight of the parcels accepted and number of parcels  rejected. start input weight is weight = \u20131?output total, reject is weight > 25?7rwdo\u0003\u0138\u0003\u0013 5hmhfw\u0003\u0138\u0003\u0013 7rwdo\u0003\u0138\u00037rwdo\u0003\u000e\u0003:hljkw5hmhfw\u0003\u0138\u00035hmhfw\u0003\u000e\u0003\u0014yes yesno noend",
            "9": "9 0478/23/m/j/15 \u00a9 ucles 2015 [turn overcomplete the trace table for the input data: 1.8, 26.0, 7.0, 11.3, 10.0, 2.5, 25.2, 5.0, 19.8, 29.3, \u20131 total reject weight output [5] 4 five data types and five data samples are shown below.  draw a line to link each data type to the correct data sample. data type data sample integer 'a' real 2 char 2.0 string true boolean \"twelve\" [4]",
            "10": "10 0478/23/m/j/15 \u00a9 ucles 20155 explain the difference between a variable and a constant in a program.  ..   ..   ..   .. [2] 6 identify three  different loop structures that you can use when writing pseudocode. 1   ...  ..  2   ...  ..  3   ...  .. [3] 7 a database, property , was set up to show the prices of properties for sale and the features of  each property. part of the database is shown below. property typebrochure  nonumber of  bedroomsnumber of  bathroomsgarden garageprice  in $ bungalow b17 7 4 y es y es 750,000apartment a09 2 1 no no 100,000house h10 4 2 y es no 450,000house h13 3 2 y es no 399,000apartment a01 2 2 no y es  95,000apartment a16 1 1 no no 150,000house h23 3 1 no y es 250,000house h46 2 1 y es y es 175,000  (a) give the number of fields that are in each record.  .. .[1]",
            "11": "11 0478/23/m/j/15 \u00a9 ucles 2015 (b) state which field you would choose for the primary key.  .. .   give a reason for choosing this field.   .. .  .. .[2]  (c) state the data type you would choose for each of the following fields. garage   .  number of bedrooms   . price in $   . .[3]  (d) the query-by-example grid below selects all houses with more than 1 bathroom and more  than 2 bedrooms. field: property typenumber of  bedroomsnumber of  bathroomsprice in $ brochure no table: property property property property property sort: ascending show: \uf0fc \uf0fc criteria: = 'house' >2 >1 or:   show what would be output.  .. .  .. .[2]  (e) complete the query-by-example grid below to select and show the brochure number, property  type and price of all properties with a garage below $200,000. field: table: sort: show: criteria: or: [4]",
            "12": "12 0478/23/m/j/15 \u00a9 ucles 2015blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        },
        "0478_w15_qp_11.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (sjf/cgw) 101515/5 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *9942271244* computer science  0478/11 paper 1  theory october/november 2015  1 hour 45 minutes candidates answer on the question paper.no additional materials are required.no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen.you may use an hb pencil for any diagrams, graphs or rough working.do not use staples, paper clips, glue or correction fluid.do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 75.",
            "2": "2 0478/11/o/n/15 \u00a9 ucles 20151 (a) four hardware items are shown in the table below.    for each hardware item: \u2022 name a suitable application\u2022 state how it is used in the application   give a different application in each case. hardware  itemapplicationhow the hardware  item is used barcode  reader.. ..  microphone.. ..  touch  screen.. ..  infrared  sensor.. ..  [8]",
            "3": "3 0478/11/o/n/15 \u00a9 ucles 2015 [turn over (b) describe two differences between blu-ray discs and dvds. 1     .. . 2     .. . [2]  (c) describe two differences between dvd-r and dvd-ram. 1     .. . 2     .. . [2] 2 (a) convert the hexadecimal number b5 into binary:  .. .   convert the binary number 1 1 1 1 0 1 1 0 into hexadecimal:  .. .  [2]  (b) give two examples where hexadecimal numbers are used in computer science. 1     .. . 2     .. . [2]  (c) state two benefits of using hexadecimal numbers in computer science. 1     .. . 2     .. .    [2]",
            "4": "4 0478/11/o/n/15 \u00a9 ucles 20153 (a) three statements about cookies are shown below.    study each statement.   tick (9) to show whether the statement is true or false. statement true false cookies can destroy or modify data in a computer  without the user\u2019s knowledge cookies generate website pop-upscookies allow a website to detect whether a viewer  has viewed specific web pages [3]  (b) two features of von neumann architecture are the use of registers and the use of buses.    give the names of two registers and two buses.   registers 1     .. . 2     .. . buses1     .. . 2     .. . [4]",
            "5": "5 0478/11/o/n/15 \u00a9 ucles 2015 [turn over4 six computer terms and six descriptions are shown below.  draw a line to link each term to its appropriate description. term description browsersignal sent to a processor which may cause  a break in execution of the current routine, according to priorities htmlcompany that provides individual\u2019s access to  the internet and other services such as web hosting and emails internet service  providersoftware application used to locate, retrieve  and display content on the world wide web e.g. web pages, videos and other files interrupthardware identification number that uniquely  identifies each device on a network; it is manufactured into every network card and cannot be altered ip addressauthoring language used to create documents  on the world wide web; uses tags and attributes mac addresslocation of a given computer/device on a  network; can be a static or dynamic value  [5]  ",
            "6": "6 0478/11/o/n/15 \u00a9 ucles 20155 (a) inkjet printers and laser printers are two common types of printer.   describe the features and principles of operation of each type of printer.   (i) inkjet printer  .. .  .. .  .. .  .. .  .. .  .. .  .. .  ..  [4]   (ii) laser printer  .. .  .. .  .. .  .. .  .. .  .. .  .. .  ..  [4]  (b) another type of printer is the 3d printer.   describe 3d printing.  .. .  .. .  .. .  .. .  .. .  ..  [3]",
            "7": "7 0478/11/o/n/15 \u00a9 ucles 2015 [turn over6 (a) state what is meant by encryption.  .. .  ..  [1]  (b) state what is meant by symmetric encryption.  .. .  ..  [1]  (c) complete the diagram: plain textencryption  algorithm  [1]",
            "8": "8 0478/11/o/n/15 \u00a9 ucles 20157 (a) describe what is meant by lossy and lossless compression when applied to files. lossy     .. .  .. . lossless  . ...  .. .  .. . [2]  (b) name and describe one type of file that uses lossy compression. name  . ... description  .. ..  .. .  .. .    [2]  (c) a company advertises its backup memory device as having 500 gb of storage.    a customer wishes to know how many 8 mb files could be stored on the device.    the company claimed that up to 62 500 files (assuming each file is 8 mb) could be stored.  the customer calculated that 64 000 files could be stored.  explain the difference between these two storage values. show any calculations you use in  your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  ..  [3]",
            "9": "9 0478/11/o/n/15 \u00a9 ucles 2015 [turn over8 state three  features of a typical operating system. 1   ...  ..  2   ...  ..  3   ...  ..    [3] 9 (a) nicolae made the following statement:   \u201cdata input is validated by typing it in twice\u201d   state why this statement is incorrect.  .. .  ..  [1]  (b) nicolae needs to send 30 photos to a friend and he chooses to send all 30 together as a  single email attachment. each photo is 1.8 mb in size, but the maximum possible attachment size is only 20 mb.   state how nicolae can solve this problem.  .. .  ..  [1]",
            "10": "10 0478/11/o/n/15 \u00a9 ucles 201510 characters can be represented in a computer by a numerical code.  the following list shows 16 characters with their numerical codes in denary:   a = 97 e = 101 k = 107 t = 116 b = 98 g = 103 m = 109 u = 117c = 99 h = 104 o = 111 w = 119d = 100 i = 105 r = 114 . = 46 (code for the full stop)  web addresses can be written using hexadecimal rather than denary. hexadecimal codes are  preceded by a % sign. for example, the word \u201c c a g e \u201d is written as:   either 99 97 103 101 (in denary)   or  %63 %61 %67 %65 (in hexadecimal)  (a) complete the conversion of the following web address into hexadecimal: w w w.cie.org.u k %77 %77 %77   [3]  (b) complete the web address from the given hexadecimal codes: %77 %77 %77 %2e %72 %6f %63 %6b %69 %63 %74 %2e %63 %6f %6d www   [3] 11 a passenger logs onto an airline website and types in the reference number for their flight. once  the passenger accesses their account they can choose their seat and also print out a boarding pass which contains a unique barcode. this barcode is scanned at the airport check-in desk.  name one input and one output device found at the check-in desk and give a reason for your  choice. input device  . . reason  ... ..  ..  output device   ... reason  ... ..  ..    [4]",
            "11": "11 0478/11/o/n/15 \u00a9 ucles 201512 parity checks are used to check for errors during data transmission. a system uses odd parity.  (a) complete the following two bytes of data so that they both have odd parity: 1111000 0000111    [2]  (b) name and describe another method which can be used to check whether data has been  correctly transmitted. name of method  ...  description  .. ..  .. .  .. .    [2] 13 identify which five computer terms are being described below.  (a) a system designed to prevent unauthorised access to or from a private network or intranet; it  examines all data traffic to and from the network and filters out anything that does not meet certain criteria.  ..  [1]  (b) software that can be used on a trial basis before buying the full version; it often does not  include all the features of the full version or has a time limit before it stops working.  .. .[1]  (c) a protocol for transmitting private documents via the internet; it uses two keys to encrypt the  data \u2013 a public key and a private key.  .. .[1]  (d) a standard adopted by the electronic music industry for controlling devices that produce  music, such as synthesisers and sound cards.  .. .[1]  (e) a device that allows audio signals to be converted into electrical signals which can be  interpreted by a computer after being converted into digital signals.  .. .[1]",
            "12": "12 0478/11/o/n/15 \u00a9 ucles 2015permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w15_qp_12.pdf": {
            "1": "this document consists of 12 printed pages. dc (ac/cgw) 101516/3 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *5949952513* computer science  0478/12 paper 1 theory october/november 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required.no calculators allowed. read these instructions first write your centre number, candidate number and name on all the work you hand in. write in dark blue or black pen.you may use an hb pencil for any diagrams, graphs or rough working.do not use staples, paper clips, glue or correction fluid.do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.",
            "2": "2 0478/12/o/n/15 \u00a9 ucles 20151 there are a number of security risks associated with using the internet.  name three  of these risks. for each, state why it is a risk and describe how the risk can be  minimised. security risk 1 ...  why it is a risk  . .  ..   ..  how to minimise the risk  . .  ..   ..  security risk 2 ...  why it is a risk .. .  ..   ..  how to minimise the risk  . .  ..   ..  security risk 3 ...  why it is a risk  . .  ..   ..  how to minimise the risk  . .  ..   ..    [9]",
            "3": "3 0478/12/o/n/15 \u00a9 ucles 2015 [turn over2 seven computer terms and seven descriptions are shown below.  draw a line to link each computer term to its most appropriate description. computer term description interfacereduction of file size by permanently removing  some redundant information from the file interruptfile compression format designed to make photo files smaller in size for storage and for transmission jpegfile compression system for music which does not noticeably affect the quality of the sound lossless  compressionhardware component that allows the user to communicate with a computer or operating system lossy  compressionthe file is reduced in size for transmission and storage; it is then put back together again later producing a file identical to the original midisignal sent to a processor which may cause  a break in execution of the current routine, according to priorities mp3 formatstandard adopted by the electronic music  industry for controlling devices such as synthesisers and sound cards   [6]",
            "4": "4 0478/12/o/n/15 \u00a9 ucles 20153 the flowchart on the opposite page shows what happens when the barcode on a product is  scanned at the checkout in a supermarket. the barcodes are used in an automatic stock control  system.  several of the statements in the flowchart are missing.  using item number only from the list below, complete the flowchart.   item  numberstatement 1 add flag to product record to indicate re-order made 2 any more barcodes to scan? 3 has the scanned barcode been found in the file? 4 has the re-order flag already been added to the product record? 5 is number of product in stock <= re-order level? 6 number of product in stock is reduced by 1 7 output an error message 8 automatically send out order for new product",
            "5": "5 0478/12/o/n/15 \u00a9 ucles 2015 [turn overstart barcode on product is scanned barcode is looked up in stock database any more barcodes to scan?yes yes yesyesyes nonono no no endend [4]",
            "6": "6 0478/12/o/n/15 \u00a9 ucles 20154 (a) (i) convert the following two hexadecimal numbers into binary: f a 7 d 3 e f a 7 d 3 e  [4]     (ii) now perform the and (logic) operation on each corresponding pair of binary bits in the two numbers from part (i) .  [2]   (iii) convert your answer in part (ii) into hexadecimal.  .. .  .. .  [2]",
            "7": "7 0478/12/o/n/15 \u00a9 ucles 2015 [turn over (b) (i) the following code shows html \u2018tag\u2019 pairs on either side of the text stating the colour  that each creates.    <font color \u201c # f f 0 0 0 0 \u201c > red </font>    <font color \u201c # 0 0 f f 0 0 \u201c > green </font>   <font color \u201c # 0 0 0 0 f f \u201c > blue </font>    <font color \u201c #      x      \u201c > yellow </font>    <font color \u201c #      y      \u201c > magenta </font>    <font color \u201c #      z      \u201c > cyan </font>    yellow is a combination of red and green, magenta a combination of red and blue and  cyan a combination of green and blue.       state what 6-digit hexadecimal values should replace x, y and z in the above code. x    y    z      [3]   (ii) describe how other colours, such as a darker shade of blue, are created.  .. .  .. .  .. .   [2]  (c) 1a \u2013 16 \u2013 c5 \u2013 22 \u2013 ff \u2013 ff is an example of a mac address.   (i) identify what the first six and last six hexadecimal digits represent. first six digits  . ...  .. .  .. . last six digits  .. ...  .. .  .. .   [2]   (ii) state why mac addresses are used. .. .  .. .  [1]",
            "8": "8 0478/12/o/n/15 \u00a9 ucles 20155 a security system uses sensors, a camera and a microprocessor to capture images of each person  entering a large shopping mall.  (a) describe how the sensors, camera and microprocessor interact to identify certain people entering the mall.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .   [5]  (b) each image taken requires 1 mb of storage. if the camera captures an image every 5 seconds  over a 24 hour period, how much storage is required?    give your answer in gigabytes  and show all your working.   .. .  .. .  .. .  .. .   [2]  (c) the shopping mall has over 100 cameras. at the end of each day all these cameras send their images, captured over the last 24 hours, to a central computer.   explain why the mall uses dedicated fibre optic cable rather than transmitting the data over the local broadband network.  .. .  .. .  .. .  .. .   [2]",
            "9": "9 0478/12/o/n/15 \u00a9 ucles 2015 [turn over6 (a) explain what is meant by html.      .. .  .. .  .. .  .. .  .. .  ..  [3]  (b) html uses both structure and presentation.   describe what is meant by the two terms.   structure . ...  .. .  .. .   presentation ..   .. .  .. . [2]  (c) explain the function of a web browser.   .. .  .. .    .. .  .. .    .. .  .. .[3]        ",
            "10": "10 0478/12/o/n/15 \u00a9 ucles 20157 (a) check digits are used to ensure the accuracy of input data.   a 7-digit code number has an extra digit on the right, called the check digit. digit position 12345678 digit \u2013\u2013\u2013\u2013\u2013\u2013\u2013\u2013   the check digit is calculated as follows:   \u2022 each digit in the number is multiplied by its digit position   \u2022 the seven results are then added together  \u2022 this total is divided by 11  \u2022 the remainder gives the check digit (if the remainder = 10, the check digit is x)   (i) calculate the check digit for the following code number. show all your working. 4241508 \u2026     .. .  .. .  .. . check digit  .. ..   [2]   (ii) an operator has just keyed in the following code number: 3240045x      has the operator correctly keyed in the code number?   .. .    give a reason for your answer.  .. .  .. .  .. .  .. .   [3]",
            "11": "11 0478/12/o/n/15 \u00a9 ucles 2015 [turn over (b) when data are transmitted from one device to another, a parity check is often carried out on  each byte of data. the parity bit is often the leftmost bit in the byte.   (i) if a system uses even parity, give the parity bit for each of the following bytes: parity bit 1100110 parity bit 0000001   [2]     (ii) a parity check can often detect corruption of a byte.    describe a situation in which it cannot  detect corruption of a byte.  .. .  .. .  .. .[1] 8 the steps to print a document using a laser printer are shown in the table below.  put each step in the correct order. the first step has been done for you. step order as the printing drum rotates, a laser scans across it; this removes the  positive charge in certain areas the printing drum is coated in positively-charged toner; this then sticks to the  negatively-charged parts of the printing drum the paper goes through a fuser which melts the toner so it fixes permanently  to the paper the printer driver ensures that the data is in a format that the laser printer  can understand1 a negatively-charged sheet of paper is then rolled over the printing drum data is then sent to the laser printer and stored temporarily in the printer  buffer the toner on the printing drum is now transferred to the paper to reproduce  the required text and images the printing drum is given a positive chargenegatively-charged areas are then produced on the printing drum; these  match exactly with the text and images to be printed [8]",
            "12": "12 0478/12/o/n/15 \u00a9 ucles 20159 a remote-controlled model car contains ram, rom and a solid state drive. the car receives  radio signals from its remote control. it can only receive radio signals of a certain frequency. the manufacturer sets this frequency and the owner cannot change it. the owner of the model car can input their own sequence of movements from an interface underneath the car.  (a) describe the purpose of each of the three types of memory supplied with the car. ram  ..   .. . rom  .. ...  .. . solid state drive     .. .   [3]  (b) the owner needs to be able to enter their own sequence of movements for the model car.   name a suitable input device. input device  . .  .. . give a reason for your choice of device. .. .  .. .  .. .   [2]  (c) explain why the model car uses a solid state drive rather than another type of secondary  storage.  .. .  .. .  .. .  .. .   [2] permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series.cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        },
        "0478_w15_qp_13.pdf": {
            "1": "this document consists of 15 printed pages and 1 blank page. dc (kn/cgw) 101517/5 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *4939788765* computer science  0478/13 paper 1 theory october/november 2015  1 hour 45 minutes candidates answer on the question paper.no additional materials are required.no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen.you may use an hb pencil for any diagrams, graphs or rough working.do not use staples, paper clips, glue or correction fluid.do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.",
            "2": "2 0478/13/o/n/15 \u00a9 ucles 20151 (a) name an application which makes use of the following sensors. a different application should  be used in each case. temperature  .. ...  .. . magnetic field  ...   .. . motion  ...   .. .    [3]  (b) the flowchart on the opposite page shows how a light sensor and microprocessor are used  to switch a street lamp on or off. when the sensor reading is <= 50 light units, the lamp is turned on automatically.   several of the instructions have been omitted from the flowchart.   using  item numbers only from the list below, complete the flowchart: item  numberinstruction 1 count down in minutes 2 is light reading <= 50? 3 is street lamp already on? 4 is time = 0? 5 the microprocessor compares the sensor reading with stored values 6 the sensor reading is sent to the microprocessor 7 switch the street lamp off 8 switch street lamp on 9 time set to 10 minutes    [5]",
            "3": "3 0478/13/o/n/15 \u00a9 ucles 2015 [turn overstart read light sensor is street light already off?yes yes yes yes yesno nono no nocount down in minutestime set to 10 minutes is time = 0?",
            "4": "4 0478/13/o/n/15 \u00a9 ucles 20152 sensors and a microprocessor monitor a car exhaust for high temperature and high carbon  monoxide (co) levels.  (a) describe how the sensors and microprocessor are used to monitor the temperature and co  levels and warn the driver if either is out of range.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]  (b) the information from seven sensors is sent to an engine management system in the car. the  status of each sensor is stored in an 8-bit register; a value of 1 indicates a fault condition: parity bit co level too high temperature too highfuel pressure too lowoil pressure too lowbrake pads too thinvoltage too lowairbag fault   for example, a register showing  0 1 0 1 1 0 0 0   indicates:   \u2022 temperature too high   \u2022 fuel pressure too low  \u2022 voltage too low",
            "5": "5 0478/13/o/n/15 \u00a9 ucles 2015 [turn over  (i) identify the fault condition(s) that the following register indicates:  00100101  .. .  .. .  .. .[2]   (ii) the system uses odd parity.    write the correct parity bit in each register. 1110010 0001110    [2]   (iii) a car has a faulty airbag and the co level is too high.      write what should be contained in the 8-bit register.     [2]   (iv) give the hexadecimal value of the binary number shown in part (iii) .  .. .  .. .[1]",
            "6": "6 0478/13/o/n/15 \u00a9 ucles 20153 a section of computer memory is shown below: address contents 1000 0000 0110 11101000 0001 0101 00011000 0010 1000 1101 1000 0011 1000 1100 1000 11001000 1101 1000 1110 1000 1111  (a) (i) the contents of memory location 1000 0001 are to be read.    show the contents of the memory address register (mar) and the memory data  register (mdr) during this read operation: mar mdr     [2]   (ii) the value 0111 1001 is to be written into memory location 1000 1110.    show the contents of the mar and mdr during this write operation: mar mdr    [2]",
            "7": "7 0478/13/o/n/15 \u00a9 ucles 2015 [turn over  (iii) show any changes to the computer memory following the read and write operations in  part (a)(i)  and part (a)(ii) . address contents 1000 0000 0110 11101000 0001 0101 00011000 0010 1000 1101 1000 0011 1000 1100 1000 11001000 1101 1000 1110 1000 1111   [1]  (b) name three  other registers used in computers. 1    2    3     [3]  (c) the control unit is part of a computer system.   what is the function of the control unit?  .. .  .. .  .. .  .. .  .. .  ..  [3]",
            "8": "8 0478/13/o/n/15 \u00a9 ucles 20154 (a) computer ethics involves a number of different topics.     (i) a student made the following statement on an examination paper:      \u201cit allows a user to have the freedom to run, copy, change and adapt the software and  then pass it on to a colleague, friend or family member.\u201d    identify which computer term the student was describing.   ..  [1]   (ii) explain what is meant by computer ethics.  .. .  .. .  .. .  .. .  .. .  ..  [3]  (b) the four statements below refer to firewalls and proxy servers.   study each statement.   tick ( 9) the appropriate column(s) to indicate whether the statement refers to a firewall  and/or a proxy server. statement firewall proxy server speeds up access of information from a web server by  using a cache filters all internet traffic coming into and out from a  user\u2019s computer, intranet or private network helps to prevent malware, including viruses, from  entering a user\u2019s computer keeps a list of undesirable websites and ip addresses  [4]",
            "9": "9 0478/13/o/n/15 \u00a9 ucles 2015 [turn over (c) explain three  ways of preventing accidental  loss or corruption of data. 1     .. .  .. .  .. . 2     .. .  .. .  .. . 3     .. .  .. .  .. .    [6]",
            "10": "10 0478/13/o/n/15 \u00a9 ucles 20155 a security system records video footage. one minute of video requires 180 mb of storage. the  recording system can store several hours of video footage.  (a) name and describe a suitable storage device for this recording system.  .. .  .. .  .. .  ..  [2]  (b) calculate how much storage would be needed for 2 hours of video footage.   show your working and give the answer in gigabytes (gb).  .. .  .. .  .. .  ..  [2]",
            "11": "11 0478/13/o/n/15 \u00a9 ucles 2015 [turn over6 passengers fly into an airport from other countries. the airport has a security system that uses:  \u2022 computers  \u2022 scanners \u2022 digital cameras  to gain entry to the country, each passenger must have a passport or identification (id) card. this  must contain a recent photograph and other personal data. the passenger must:  \u2022 place their passport or id card on a scanner that reads machine-readable characters and  scans the photograph  \u2022 look towards a camera that takes an image of the passenger\u2019s face  describe how a computer checks whether the image just taken by the camera matches the  scanned photograph.  ..   ..   ..   .. [2]",
            "12": "12 0478/13/o/n/15 \u00a9 ucles 20157 name a suitable output device for each of the following applications. a different device should be  used for each application. application suitable output device production of one-off photographs of  very good quality .. high volume colour printing of  advertising flyers .. production of an object, which is built up  layer by layer; used in cad applications .. converting electrical signals into sound.. showing enlarged computer output on a  wall or large screen ..   [5]",
            "13": "13 0478/13/o/n/15 \u00a9 ucles 2015 [turn over8 four input devices are shown in the table below.  give an application which makes use of each device and state a reason why the device is  appropriate for that application.  your application must be different in each case. input device application and reason light sensorapplication  . reason  .. keyboardapplication  . reason  .. barcode readerapplication  . reason  .. touch screenapplication  . reason  ..  [8]",
            "14": "14 0478/13/o/n/15 \u00a9 ucles 20159 mp3 file compression reduces the size of a music file by 90%.  (a) a music track is 80 mb in size.   calculate the file size after compression.  .. .   how many mp3 files of the size calculated above could be stored on an 800 mb cd?  .. .    [2]  (b) (i) explain how mp3 files retain most of the original music quality.  .. .  .. .  .. .  .. .  ..  [2]   (ii) state the type of file compression used in mp3 files.  ..  [1]   (iii) name another file compression format.  ..  [1]",
            "15": "15 0478/13/o/n/15 \u00a9 ucles 201510 choose five correct terms from the following list to complete the spaces in the sentences below:  \u2022 cypher text  \u2022 encryption algorithm  \u2022 encryption key  \u2022 firewall  \u2022 plain text  \u2022 proxy server  \u2022 symmetric encryption   ...  is a security system.  it uses the same  ...  to encrypt and decrypt a message.  before encryption, the message is called  . . .  the  . processes the original message.  the output is known as  ...  . [5]",
            "16": "16 0478/13/o/n/15 \u00a9 ucles 2015permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w15_qp_21.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (cw/cgw) 95072/2 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *6873526426* computer science  0478/21 paper 2 problem-solving and programming october/november 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50.",
            "2": "2 0478/21/o/n/15 \u00a9 ucles 2015section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material write and test a program to complete the three  tasks. a new born baby is kept in a cot in a hospital; the temperature of the baby is monitored every  10 minutes. the temperature of the baby is recorded in degrees celsius to one decimal place and must be within the range 36.0\u00b0c to 37.5\u00b0c. task 1to simulate the monitoring required, write a routine that allows entry of the baby\u2019s temperature in  degrees celsius. the routine should check whether the temperature is within the acceptable range, too high or too low and output a suitable message in each case. task 2write another routine that stores the temperatures taken over a three hour period in an array. this  routine should output the highest and lowest temperatures and calculate the difference between these temperatures. task 3for a baby who has a temperature difference of more than one degree celsius, and/or has been  outside the acceptable range more than twice in the three hour period, output a suitable message giving a summary of the problem. y our program must include appropriate prompts for the entry of data. error messages and other  outputs need to be set out clearly and understandably. all variables, constants and other identifiers must have meaningful names. each task must be fully tested.",
            "3": "3 0478/21/o/n/15 \u00a9 ucles 2015 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) when you performed the tasks, you used variables.    write suitable declarations for two of these.    state what you used each one for. variable 1  ... ... use  .. .. variable 2  ... ... use  .. ..[4]   (ii) when you performed the tasks, you may have used constants.    write suitable declarations for two of these.    state what you used each one for. constant 1  ... .. use  .. ..  .. . constant 2  ... .. use  .. ..  .. .[4]",
            "4": "4 0478/21/o/n/15 \u00a9 ucles 2015 (b) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "5": "5 0478/21/o/n/15 \u00a9 ucles 2015 [turn over (c) (i) explain how you completed task 3 . y ou can include pseudocode or programming  statements as part of your explanation. y ou should assume that task 2 has been completed.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]   (ii) comment on the efficiency of your design for task 3 .  .. .  .. .  .. .  .. .[2]",
            "6": "6 0478/21/o/n/15 \u00a9 ucles 2015section b 2 read this section of program code that should input 50 numbers and then output the average.  1 total = 0 2 for counter = 1 to 50 3   input num 4   total = total + 1 5   counter = counter + 1 6   average = total/counter 7 next counter 8 print average there are four errors in this code.  locate these errors and suggest  code corrections to remove each error. 1   ...  ..  2   ...  ..  3   ...  ..  4   ...  .. [4]",
            "7": "7 0478/21/o/n/15 \u00a9 ucles 2015 [turn overquestion 3 begins on page 8.",
            "8": "8 0478/21/o/n/15 \u00a9 ucles 20153 (a) the flowchart inputs an integer. the predefined function div gives the integer result of the  division, e.g. y  10 div 3  gives the value y = 3 . the predefined function mod gives the  value of the remainder, e.g. y  10 mod 3  gives the value y = 1 . start input x output newis t1 >= 2?posn  @ 1 new @ 0 t1 @ x div 2 t2 @ x mod 2 new @\u0003new\u0003+\u0003t2 * posn posn @\u0003posn * 10 new @\u0003new\u0003+\u0003t1 * posnx @\u0003t1 yes no end",
            "9": "9 0478/21/o/n/15 \u00a9 ucles 2015 [turn overcomplete a trace table for each of the two input values 5 and 12. trace table for input value 5 x posn new t1 t2 output trace table for input value 12 x posn new t1 t2 output  [6]  (b) state the purpose of the flowchart in part (a) .  .. .[1]",
            "10": "10 0478/21/o/n/15 \u00a9 ucles 20154 a routine checks the weight of melons to be sold in a supermarket. melons weighing under  0.5 kilograms are rejected and melons weighing over 2 kilograms are also rejected.  give an example of each type of test data for this routine. normal  ... .. extreme  .. .. abnormal  . .[3] 5 identify two different conditional statements that you can use when writing pseudocode. 1   ... 2   ...[2] 6 a picture gallery owner has decided to set up a database to keep information about the pictures  he has for sale. the database table, picture, will contain the following fields:  title; artist; description; catalogue number; size (area in square centimetres); price; arrived (date  picture arrived at gallery); sold (whether picture is already sold)  (a) (i) state what data type you would choose for each field. title   ... artist  ... ... description  .. .. catalogue number  size  . .. price   .. arrived  .. . sold  . ..[4]   (ii) state which field you would choose for the primary key.  .. .[1]",
            "11": "11 0478/21/o/n/15 \u00a9 ucles 2015 (b) give a validation check that you can perform on each of these fields. each validation check  must be different. catalogue number .. .. size  . .. price   . arrived  .. [4]  (c) complete the query-by-example grid below to select and show the catalogue number, title  and price of all unsold pictures by the artist \u2018twister\u2019. field: table: sort: show: criteria: or: [5]",
            "12": "12 0478/21/o/n/15 \u00a9 ucles 2015blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        },
        "0478_w15_qp_22.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (st/cgw) 113107 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *7177149254* computer science  0478/22 paper 2 problem-solving and programming october/november 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50.",
            "2": "2 0478/22/o/n/15 \u00a9 ucles 2015section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material write and test a program to complete the three  tasks. a new born baby is kept in a cot in a hospital; the temperature of the baby is monitored every  10 minutes. the temperature of the baby is recorded in degrees celsius to one decimal place and must be within the range 36.0\u00b0c to 37.5\u00b0c. task 1to simulate the monitoring required, write a routine that allows entry of the baby\u2019s temperature in  degrees celsius. the routine should check whether the temperature is within the acceptable range, too high or too low and output a suitable message in each case. task 2write another routine that stores the temperatures taken over a three hour period in an array. this  routine should output the highest and lowest temperatures and calculate the difference between these temperatures. task 3for a baby who has a temperature difference of more than one degree celsius, and/or has been  outside the acceptable range more than twice in the three hour period, output a suitable message giving a summary of the problem. y our program must include appropriate prompts for the entry of data. error messages and other  outputs need to be set out clearly and understandably. all variables, constants and other identifiers must have meaningful names. each task must be fully tested.",
            "3": "3 0478/22/o/n/15 \u00a9 ucles 2015 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) when you performed the tasks, you used variables.    write suitable declarations for two of these.    state what you used each one for. variable 1  ... ... use  .. .. variable 2  ... ... use  .. ..[4]   (ii) when you performed the tasks, you may have used constants.    write suitable declarations for two of these.    state what you used each one for. constant 1  ... .. use  .. ..  .. . constant 2  ... .. use  .. ..  .. .[4]",
            "4": "4 0478/22/o/n/15 \u00a9 ucles 2015 (b) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "5": "5 0478/22/o/n/15 \u00a9 ucles 2015 [turn over (c) (i) explain how you completed task 3 . y ou can include pseudocode or programming  statements as part of your explanation. y ou should assume that task 2 has been completed.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]   (ii) comment on the efficiency of your design for task 3 .  .. .  .. .  .. .  .. .[2]",
            "6": "6 0478/22/o/n/15 \u00a9 ucles 2015section b 2 read this section of program code that should input 50 numbers and then output the average.  1 total = 0 2 for counter = 1 to 50 3   input num 4   total = total + 1 5   counter = counter + 1 6   average = total/counter 7 next counter 8 print average there are four errors in this code.  locate these errors and suggest  code corrections to remove each error. 1   ...  ..  2   ...  ..  3   ...  ..  4   ...  .. [4]",
            "7": "7 0478/22/o/n/15 \u00a9 ucles 2015 [turn overquestion 3 begins on page 8.",
            "8": "8 0478/22/o/n/15 \u00a9 ucles 20153 (a) the flowchart inputs an integer. the predefined function div gives the integer result of the  division, e.g. y  10 div 3  gives the value y = 3 . the predefined function mod gives the  value of the remainder, e.g. y  10 mod 3  gives the value y = 1 . start input x output newis t1 >= 2?posn  @ 1 new @ 0 t1 @ x div 2 t2 @ x mod 2 new @\u0003new\u0003+\u0003t2 * posn posn @\u0003posn * 10 new @\u0003new\u0003+\u0003t1 * posnx @\u0003t1 yes no end",
            "9": "9 0478/22/o/n/15 \u00a9 ucles 2015 [turn overcomplete a trace table for each of the two input values 5 and 12. trace table for input value 5 x posn new t1 t2 output trace table for input value 12 x posn new t1 t2 output  [6]  (b) state the purpose of the flowchart in part (a) .  .. .[1]",
            "10": "10 0478/22/o/n/15 \u00a9 ucles 20154 a routine checks the weight of melons to be sold in a supermarket. melons weighing under  0.5 kilograms are rejected and melons weighing over 2 kilograms are also rejected.  give an example of each type of test data for this routine. normal  ... .. extreme  .. .. abnormal  . .[3] 5 identify two different conditional statements that you can use when writing pseudocode. 1   ... 2   ...[2] 6 a picture gallery owner has decided to set up a database to keep information about the pictures  he has for sale. the database table, picture, will contain the following fields:  title; artist; description; catalogue number; size (area in square centimetres); price; arrived (date  picture arrived at gallery); sold (whether picture is already sold)  (a) (i) state what data type you would choose for each field. title   ... artist  ... ... description  .. .. catalogue number  size  . .. price   .. arrived  .. . sold  . ..[4]   (ii) state which field you would choose for the primary key.  .. .[1]",
            "11": "11 0478/22/o/n/15 \u00a9 ucles 2015 (b) give a validation check that you can perform on each of these fields. each validation check  must be different. catalogue number .. .. size  . .. price   . arrived  .. [4]  (c) complete the query-by-example grid below to select and show the catalogue number, title  and price of all unsold pictures by the artist \u2018twister\u2019. field: table: sort: show: criteria: or: [5]",
            "12": "12 0478/22/o/n/15 \u00a9 ucles 2015blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        },
        "0478_w15_qp_23.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (cw) 95077/3 \u00a9 ucles 2015 [turn overcambridge international examinations cambridge international general certificate of secondary education *3838796992* computer science  0478/23 paper 2 problem-solving and programming october/november 2015  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50.",
            "2": "2 0478/23/o/n/15 \u00a9 ucles 2015section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material write and test a program to complete the three  tasks.  the temperature in an apartment needs to be kept between 22\u00b0c and 24\u00b0c. this is done by the use  of an automatically controlled air-conditioning system, which monitors the temperature every five minutes. the temperature of the apartment is recorded, to one decimal place, in degrees celsius. the cooling is activated when the temperature reaches 24.5\u00b0c and the heating is activated when the temperature reaches 21.5\u00b0c. task 1to simulate the monitoring required, write a routine that allows entry of the apartment\u2019s temperature  in degrees celsius. the routine checks whether the temperature is within the acceptable range, too high or too low and outputs a suitable message in each case. task 2write another routine that stores, in an array, the temperatures taken over a period of five hours.  this routine calculates the difference between the highest temperature and the lowest temperature. then it outputs the highest temperature, the lowest temperature, and the difference between these temperatures. task 3write a routine to find out how often the temperature was out of the acceptable range during the five  hours and whether the temperature was too high or too low; output a suitable message showing a summary of the problem. y our program must include appropriate prompts for the entry of data. error messages and other  outputs need to be set out clearly and understandably. all variables, constants and other identifiers must have meaningful names. each task must be fully tested.",
            "3": "3 0478/23/o/n/15 \u00a9 ucles 2015 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) when you performed the tasks, you used variables.    write suitable declarations for two of these.    state what you used each one for. variable 1  ... ... use  .. ..  .. . variable 2  ... ... use  .. ..  .. .[4]   (ii) when you performed the tasks, you may have used constants.    write suitable declarations for two of these.    state what you used each one for. constant 1  ... .. use  .. ..  .. . constant 2  ... .. use  .. ..  .. .[4]",
            "4": "4 0478/23/o/n/15 \u00a9 ucles 2015 (b) write an algorithm to complete task 2 , using either  pseudocode, programming statements  or a flowchart. y ou should assume that the temperatures taken over the five hours are already  stored in an array.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "5": "5 0478/23/o/n/15 \u00a9 ucles 2015 [turn over (c) (i) explain how you completed task 3 . y ou should assume that task 2 has been completed.  y ou can include pseudocode or programming statements as part of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[6]   (ii) comment on the efficiency of your design for task 3 .  .. .  .. .  .. .[1]",
            "6": "6 0478/23/o/n/15 \u00a9 ucles 2015section b 2 read this section of program code that should input 50 numbers and then output the average of  the positive numbers only.  1 total = 0 2 poscount = 0 3 for counter = 1 to 50 4   input num 5   if num < 0 then total = total + num 6   if num > 0 then counter = counter + 1 7   average = total/poscount 8 next counter 9 print num there are four errors in this code.  locate these errors and suggest code corrections to remove each error. 1   ...  ..  2   ...  ..  3   ...  ..  4   ...  .. [4]",
            "7": "7 0478/23/o/n/15 \u00a9 ucles 2015 [turn overquestion 3 begins on page 8.",
            "8": "8 0478/23/o/n/15 \u00a9 ucles 20153 (a) this pseudocode inputs an integer. the predefined function div gives the value of the  division, e.g. y  10 div 3  gives the value y = 3 . the predefined function mod gives the  value of the remainder, e.g. y  10 mod 3  gives the value y = 1 .   input x   while x > 15    do    t1   x div 16     t2  x mod 16     case t2 of      10:output a      11:output b      12:output c      13:output d      14:output e      15:output f      otherwise output t2    endcase    x   t1   endwhile  case x of    10:output a    11:output b    12:output c    13:output d    14:output e    15:output f    otherwise output x  endcase",
            "9": "9 0478/23/o/n/15 \u00a9 ucles 2015 [turn overcomplete a trace table for each of the two input values 37 and 191. trace table for input value 37 x t1 t2 output trace table for input value 191 x t1 t2 output  [4]  (b) state the purpose of the pseudocode in part (a) .  .. .  .. .[2]",
            "10": "10 0478/23/o/n/15 \u00a9 ucles 20154 a routine checks the age and height of children who are allowed to enter a play area. the children  must be less than 5 years of age and under 1 metre in height.  (a) the first set of test data used is age 3 and height 0.82 metres.   state what type of test data this is.  .. .   give a reason for using this test data.   .. .  .. .[2]  (b) provide two additional sets of test data. for each, give    \u0081 the type of each set of test data    \u0081 the reason why it is used   each type of test data and reason for use must be different. set 1   . type  . . reason  ... ..  .. .  .. . set 2   . type  . . reason  ... ..  .. .  .. .[6]",
            "11": "11 0478/23/o/n/15 \u00a9 ucles 20155 a motor boat hire company decides to set up a database to keep information about boats that are  available for hire. the database table, boat, will contain the following fields:  boat name; model; engine power (in hp); number of seats; life raft (whether there is a life raft  kept on the boat); day price (price for a day\u2019s hire).  (a) give the data type you would choose for each field.  boat name    model    engine power   number of seats  .. . life raft    day price   ..[3]  (b) state a validation check that you can perform on each of these fields. each validation check  must be different. boat name    model    number of seats  .. . day price   ..[4]  (c) complete the query-by-example grid below to select and show the boat name, model and  day price of a day\u2019s hire for all boats with 4 seats and an engine power of more than 100 hp. field: table: sort: show: criteria: or: [5]",
            "12": "12 0478/23/o/n/15 \u00a9 ucles 2015blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        }
    },
    "2016": {
        "0478_s16_qp_11.pdf": {
            "1": "this document consists of 13 printed pages and 3 blank pages. dc (nf/cgw) 119032/4 \u00a9 ucles 2016 [turn overcambridge international examinations cambridge international general certificate of secondary education *3507276805* computer science  0478/11 paper 1 theory may/june 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 75. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.",
            "2": "2 0478/11/m/j/16 \u00a9 ucles 20161 some software can be described as free, freeware or shareware.  tick (\u2713) the appropriate boxes in the table below to show which features apply to these three  types of software. software feature free freeware shareware software source code can be freely accessed and  modified as required all the features of the full version of the software  are not made available; the full version needs to be purchased first the original software is subject to all copyright laws it is possible to distribute modified versions or  copies of the software to friends and family [3] 2 hexadecimal codes are used in mac addresses.  (a) state what is meant by the term mac.  .. .[1]  (b) explain what the hexadecimal code in a mac address represents.  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "3": "3 0478/11/m/j/16 \u00a9 ucles 2016 [turn over3 (a) five sensors and five applications are shown below.   draw a line to link each sensor to its most appropriate application.  sensor application light  sensormonitor the pollution levels in a river moisture  sensorcontrol the switching off and on of street lights gas  sensordetect intruders breaking into a building ph  sensormonitor the amount of water left in clothes in a dryer pressure  sensormonitor acidity levels in the soil in a greenhouse [4]  (b) automatic doors in a building are controlled by the use of infrared sensors and a  microprocessor.   describe how the sensors and the microprocessor are used to automatically open a door as  a person approaches.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[4]",
            "4": "4 0478/11/m/j/16 \u00a9 ucles 20164 (a) nikita wishes to print out some documents and connects her printer to the computer using  one of the usb ports.   (i) identify what type of data transmission is being used.  .. .[1]   (ii) give three  reasons for using a usb port. 1   ...  .. . 2   ...  .. . 3   ...  .. .  [3]   (iii) the printer runs out of paper while it is printing the documents. a signal is sent to the  processor to request that the problem is dealt with.    name this type of signal.  .. .[1]  (b) state one suitable application for each  printer below. a different application must be given for  each printer. inkjet printer  ... ...  .. . 3d printer  ... ...  .. .  [2]",
            "5": "5 0478/11/m/j/16 \u00a9 ucles 2016 [turn over (c) name another type of printer and describe one way in which it is different from the printers  named in part (b) .   give an application for this printer.  type of printer  .. . description  .. ..  .. .  .. . application  .. ..  .. . [3]",
            "6": "6 0478/11/m/j/16 \u00a9 ucles 20165 a computer-controlled machine produces plastic sheets. the thickness of each sheet must be  within a certain tolerance. the sheets are kept below 50 \u00b0c as they move over rollers at 10 metres  per second.  three parameters need to be monitored all the time. parameter descriptionbinary  valueconditions d sheet thickness1 thickness of sheet in tolerance 0 thickness of sheet out of tolerance s roller speed1 roller speed = 10 metres/second 0 roller speed <> 10 metres/second t temperature1 temperature < 50 \u00b0c 0 temperature >= 50 \u00b0c  an alarm, x, will sound if: thickness is in tolerance and (roller speed <> 10 metres/second or temperature >= 50 \u00b0c) or roller speed = 10 metres/second and temperature >= 50 \u00b0c  (a) draw a logic circuit to represent the above monitoring system. d s x t [6]",
            "7": "7 0478/11/m/j/16 \u00a9 ucles 2016 [turn over (b) complete the truth table for the monitoring system. dstworking spacex 000 001010011100101110111 [4] 6 secure socket layer (ssl) is used in the security of information on internet websites.  (a) state how it is possible for a user to know that a website is secure by looking at the web  address.  .. .  .. .[1]  (b) describe three of the stages a web browser goes through to detect whether a website is  secure. 1   ...  .. .  .. . 2   ...  .. .  .. . 3   ...  .. .  .. . [3]",
            "8": "8 0478/11/m/j/16 \u00a9 ucles 20167 each seat on a flight is uniquely identified on an lcd above the seat. for example, seat 035c is  shown as:  the first three characters are digits that represent the row.  the fourth character is the seat position in that row. this is a single letter, a to f , that is stored as a  hexadecimal value.  each of the four display characters can be stored in a 4-bit register. for example, 0 and c would  be represented as: 0000 c:11008421 0:  (a) show how the 4-bit registers would store the remaining two characters, 3 and 5. 3 5 [2]  (b) identify which seat is stored in the following 4-bit registers. 1110010010010001 [2]",
            "9": "9 0478/11/m/j/16 \u00a9 ucles 2016 [turn over8 a bank offers an online service to its customers. the bank has developed a \u201c safetouse \u201d system  that asks each customer to enter four randomly chosen characters from their password each time they log in.  the customer selects these four characters from drop-down boxes. for example:  please select the 2 nd character    5th character   6th character   8th character  (a) (i) explain why it is more secure to use drop-down boxes rather than entering characters  using a keyboard.  .. .  .. .  .. .  .. .[2]   (ii) give a reason why the system asks for four characters chosen at random.  .. .  .. .[1]  (b) biometrics is an additional form of security.   give two examples of biometrics. 1   ... 2   ... [2]",
            "10": "10 0478/11/m/j/16 \u00a9 ucles 20169 check digits are used to ensure the accuracy of entered data.  a 7-digit number has an extra digit on the right, called the check digit. digit position: 12345678 digit: \u2013\u2013\u2013\u2013\u2013\u2013\u2013\u2013    check digit  the check digit is calculated as follows: \u0081 each digit in the number is multiplied by its digit position \u0081 the seven results are then added together\u0081 this total is divided by 11\u0081 the remainder gives the check digit (if the remainder = 10, the check digit is x)  (a) calculate the check digit for the following number. show all your working. 4      2      4      1      5      0      8      \u2026  .. .  .. .  .. . check digit  .. .. [2]  (b) an operator has just keyed in the following number: 3      2      4      0      0      4      5      x   circle below correct  if the check digit is correct or incorrect  if the check digit is incorrect. correct             incorrect   explain your answer.  .. .  .. .  .. .  .. . [3]",
            "11": "11 0478/11/m/j/16 \u00a9 ucles 2016 [turn over10 six  security issues and six descriptions are shown below.  draw a line to link each security issue to its correct description. security issue description illegal access to a computer system  without the owner\u2019s consent or  knowledge software that gathers information by  monitoring key presses on a user\u2019s  keyboard; the data is sent back to the  originator of the software malicious code installed on the hard  drive of a user\u2019s computer or on a web  server; this code will re-direct the user  to a fake website without the user\u2019s  knowledge creator of code sends out a  legitimate-looking email in the hope  of gathering personal and financial  information from the recipient; it  requires the user to click on the link in  the email or attachment a message given to a web browser by  a web server; it is stored in a text file;  the message is then sent back to the  server each time the browser requests  a page from the server program or code that replicates itself;  designed to amend, delete or copy  data or files on a user\u2019s computer;  often causes the computer to crash or  run slowlypharming phishing viruses hacking spyware cookies [5]",
            "12": "12 0478/11/m/j/16 \u00a9 ucles 201611 (a) four examples of optical storage media are: \u0081 dvd-rw \u0081 dvd-ram\u0081 cd-rom\u0081 blu-ray disc   the table below shows four features of optical storage media.   tick ( \u2713) the appropriate boxes in the table to indicate which of the features apply to each  example of optical storage media. single trackmany  concentric  tracksblue laser  used to read/  write datared laser  used to read/  write data dvd-rw dvd-ramcd-romblu-ray disc [4]  (b) solid state drives (ssd) are replacing hard disc drives (hdd) in some computers.   (i) give three  reasons why this is happening. 1   ...  .. . 2   ...  .. . 3   ...  .. . [3]   (ii) explain why many web servers still use hard disc drive (hdd) technology.  .. .  .. .  .. .  .. .  .. .[2]",
            "13": "13 0478/11/m/j/16 \u00a9 ucles 201612 (a) name the following type of barcode:  .. .[1]  (b) the barcode in part (a)  contains the denary value   2 6 4 0   convert this value to hexadecimal.  .. .  .. .   write the value as a 12-bit binary number. [4]  (c) an airport uses the type of  barcode shown in part (a)  to advertise local places of interest.   describe how a visitor landing at the airport could use these barcodes to help plan their visit.  .. .  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "14": "14 0478/11/m/j/16 \u00a9 ucles 2016blank page",
            "15": "15 0478/11/m/j/16 \u00a9 ucles 2016blank page",
            "16": "16 0478/11/m/j/16 \u00a9 ucles 2016permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s16_qp_12.pdf": {
            "1": "this document consists of 14 printed pages and 2 blank pages. dc (nh/jg) 118886/3 \u00a9 ucles 2016 [turn over *3304382220* computer science  0478/12 paper 1 theory may/june 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 75. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.cambridge international examinations cambridge international general certificate of secondary education",
            "2": "2 0478/12/m/j/16 \u00a9 ucles 20161 complete the following by writing either compiler , interpreter  or assembler  in the spaces  provided.  . \u2013 translates source code into object code. .. \u2013  translates low-level language into machine code.  .. \u2013  stops the execution of a program as soon as it  encounters an error.  [3] 2 motion sensors are used in a security system to detect intruders.  name  three  other sensors that could be used in the following applications.  give a different type of sensor for each application. application sensor controlling street lights monitoring a river for pollutioncontrolling traffic lights  [3]",
            "3": "3 0478/12/m/j/16 \u00a9 ucles 2016 [turn over3 (a) convert the following hexadecimal number into 12-bit binary: 4 a f  [3]  (b) the 2016 olympic games will be held in rio de janeiro. a timer that counts down to the  opening of the games is shown on a microprocessor-controlled display.   the number of hours, minutes and seconds until the games open are held in three 8-bit  registers.   the present register values are: 01101001 105 hours 00100000 32 minutes 00010100 20 seconds   the timer will count down  in seconds.   (i) show the values in each 8-bit register 30 seconds  after the time shown above: hours minutesseconds  [3]   (ii) write the hexadecimal value of the minutes  register from part (b)(i) .  .. .[1]",
            "4": "4 0478/12/m/j/16 \u00a9 ucles 20164 nigel wants to send a large text file electronically to mashuda.  (a) describe how the size of the text file can be reduced.  .. .  .. .  .. .  .. .  .. .  .. .  .. .[3]  (b) this file will be transmitted to mashuda as an email attachment. mashuda then stores it on  her computer.   explain how checksums can be used to verify that the file has not been corrupted during  transmission or data storage.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[4]",
            "5": "5 0478/12/m/j/16 \u00a9 ucles 2016 [turn over5 six  descriptions and six devices are shown below.  draw a line to link each description to the correct device. allows a user to write on a surface  using a pen; text and drawings are  then captured electronically and  stored for later use. interactive whiteboarddescription converts sound into an electrical  signal/voltage. uses thermal bubble and piezoelectric  technology to produce a hard copy. uses a bright white light source and  micro mirrors (on a chip) to produce  an image to be shone onto a wall or  screen. converts a hard copy document into  an electronic form to be stored as a  file on a computer. uses negatively charged images on a  rotating drum and positively charged  toner to output a hard copy.inkjet printerdigital light projector laser printer microphone scanner (2d)device  [5]",
            "6": "6 0478/12/m/j/16 \u00a9 ucles 20166 (a) three  descriptions of data transmission are given below.   tick (\u2713) the appropriate box in each table to show the:    \u0081 type of transmission    \u0081 method of transmission description 1: data is transmitted several bits at  a time down several wires in both directions simultaneously.typetick  (\u2713)methodtick  (\u2713) simplex serial half-duplex parallelfull-duplex description 2: data is transmitted in one direction  only, one bit at a time, down a single wire.typetick  (\u2713)methodtick  (\u2713) simplex serial half-duplex parallelfull-duplex description 3: data is transmitted one bit at a  time down a single wire; the data is transmitted in both directions  but not at the same time.typetick  (\u2713)methodtick  (\u2713) simplex serial half-duplex parallelfull-duplex  [6]  (b) give two reasons why serial transmission, rather than parallel transmission, is used to  connect devices to a computer. 1     .. . 2     .. . [2]",
            "7": "7 0478/12/m/j/16 \u00a9 ucles 2016 [turn over7 (a) $ % &;   complete the truth table for this logic circuit. abc working space x 000 001 010 011 100 101 110 1 11  [4]",
            "8": "8 0478/12/m/j/16 \u00a9 ucles 2016 (b) draw a logic circuit corresponding to the following logic statement:   x = 1 if ( ( a is 1 or b is 1 ) and ( a is 1 and b is 1 ) ) or ( c is not 1 ) $ % &;  [5]",
            "9": "9 0478/12/m/j/16 \u00a9 ucles 2016 [turn over (c) re-draw the following logic circuit using nand gates only. $ % &;   logic circuit re-drawn: $ % &;  [4]",
            "10": "10 0478/12/m/j/16 \u00a9 ucles 20168 (a) five  statements and three  types of software are shown below.   draw lines to connect each statement with the correct type of software. free software freeware sharewaretype of software users have the freedom to pass on  the software to friends and family as  they wish. users can download this software free  of charge, but they cannot modify the  source code in any way. users are allowed to try out the  software for a trial period only before  being charged. users can study the software source  code and modify it, where necessary,  to meet their own needs, without  breaking copyright laws. users can obtain a free trial version  of the software, but this often does  not contain all the features of the full  version.statement  [3]",
            "11": "11 0478/12/m/j/16 \u00a9 ucles 2016 [turn over (b) describe  three  ethical issues that should be considered when using computers. 1     .. .  .. . 2     .. .  .. . 3     .. .  .. . [3]  (c) security of data is very important.   three  security issues are viruses, pharming and spyware.   explain what is meant by each issue. viruses:  .   .. .  .. .  .. . pharming:   .  .. .  .. .  .. . spyware:  . ..  .. .  .. .  .. .  [6]",
            "12": "12 0478/12/m/j/16 \u00a9 ucles 2016 (d) describe three  tasks carried out by a firewall. 1     .. .  .. . 2     .. .  .. . 3     .. .  .. . [3] 9 in the following barcode, each binary number is made up of seven bars.  each bar is black or grey.  a black bar is interpreted as a \u201c1\u201d and a grey bar is interpreted as a \u201c0\u201d.  (a) write the binary numbers that would be produced from this barcode: %lqdu\\\u0003qxpehu\u0003$ %lqdu\\\u0003qxpehu\u0003% binary number a: binary number b:  [2]  (b) this barcode system uses odd parity.   write the parity bit for each of the binary numbers in part (a) :      parity bit      binary number a:       binary number b:   [2]",
            "13": "13 0478/12/m/j/16 \u00a9 ucles 2016 [turn over10 there are six descriptions in the table below.  complete the table below by writing the correct storage device or media in the box next to each   description. description storage device or media non-volatile memory that can only be read from and not  written to. optical storage media that allows very high storage capacity  by using blue/violet laser technology. volatile memory that stores data, programs and the parts of  the operating system that are currently in use. optical storage media that uses a single spiral track and uses  dual layer technology, allowing high data storage capacity. device that stores data by controlling the movement of  electrons within a microchip; there are no moving parts. optical storage media that uses concentric tracks allowing  writing and reading to take place at the same time.  [6]",
            "14": "14 0478/12/m/j/16 \u00a9 ucles 201611 describe the use of structure and presentation in a html document.  ..   ..   ..   ..   ..   ..   ..   .. [4]",
            "15": "15 0478/12/m/j/16 \u00a9 ucles 2016blank page",
            "16": "16 0478/12/m/j/16 \u00a9 ucles 2016permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s16_qp_13.pdf": {
            "1": "this document consists of 13 printed pages and 3 blank pages. dc (st/cgw) 126906 \u00a9 ucles 2016 [turn overcambridge international examinations cambridge international general certificate of secondary education *0733674375* computer science  0478/13 paper 1 theory may/june 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 75. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.",
            "2": "2 0478/13/m/j/16 \u00a9 ucles 20161 some software can be described as free, freeware or shareware.  tick (\u2713) the appropriate boxes in the table below to show which features apply to these three  types of software. software feature free freeware shareware software source code can be freely accessed and  modified as required all the features of the full version of the software  are not made available; the full version needs to be purchased first the original software is subject to all copyright laws it is possible to distribute modified versions or  copies of the software to friends and family [3] 2 hexadecimal codes are used in mac addresses.  (a) state what is meant by the term mac.  .. .[1]  (b) explain what the hexadecimal code in a mac address represents.  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "3": "3 0478/13/m/j/16 \u00a9 ucles 2016 [turn over3 (a) five sensors and five applications are shown below.   draw a line to link each sensor to its most appropriate application.  sensor application light  sensormonitor the pollution levels in a river moisture  sensorcontrol the switching off and on of street lights gas  sensordetect intruders breaking into a building ph  sensormonitor the amount of water left in clothes in a dryer pressure  sensormonitor acidity levels in the soil in a greenhouse [4]  (b) automatic doors in a building are controlled by the use of infrared sensors and a  microprocessor.   describe how the sensors and the microprocessor are used to automatically open a door as  a person approaches.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[4]",
            "4": "4 0478/13/m/j/16 \u00a9 ucles 20164 (a) nikita wishes to print out some documents and connects her printer to the computer using  one of the usb ports.   (i) identify what type of data transmission is being used.  .. .[1]   (ii) give three  reasons for using a usb port. 1   ...  .. . 2   ...  .. . 3   ...  .. .  [3]   (iii) the printer runs out of paper while it is printing the documents. a signal is sent to the  processor to request that the problem is dealt with.    name this type of signal.  .. .[1]  (b) state one suitable application for each  printer below. a different application must be given for  each printer. inkjet printer  ... ...  .. . 3d printer  ... ...  .. .  [2]",
            "5": "5 0478/13/m/j/16 \u00a9 ucles 2016 [turn over (c) name another type of printer and describe one way in which it is different from the printers  named in part (b) .   give an application for this printer.  type of printer  .. . description  .. ..  .. .  .. . application  .. ..  .. . [3]",
            "6": "6 0478/13/m/j/16 \u00a9 ucles 20165 a computer-controlled machine produces plastic sheets. the thickness of each sheet must be  within a certain tolerance. the sheets are kept below 50 \u00b0c as they move over rollers at 10 metres  per second.  three parameters need to be monitored all the time. parameter descriptionbinary  valueconditions d sheet thickness1 thickness of sheet in tolerance 0 thickness of sheet out of tolerance s roller speed1 roller speed = 10 metres/second 0 roller speed <> 10 metres/second t temperature1 temperature < 50 \u00b0c 0 temperature >= 50 \u00b0c  an alarm, x, will sound if: thickness is in tolerance and (roller speed <> 10 metres/second or temperature >= 50 \u00b0c) or roller speed = 10 metres/second and temperature >= 50 \u00b0c  (a) draw a logic circuit to represent the above monitoring system. d s x t [6]",
            "7": "7 0478/13/m/j/16 \u00a9 ucles 2016 [turn over (b) complete the truth table for the monitoring system. dstworking spacex 000 001010011100101110111 [4] 6 secure socket layer (ssl) is used in the security of information on internet websites.  (a) state how it is possible for a user to know that a website is secure by looking at the web  address.  .. .  .. .[1]  (b) describe three of the stages a web browser goes through to detect whether a website is  secure. 1   ...  .. .  .. . 2   ...  .. .  .. . 3   ...  .. .  .. . [3]",
            "8": "8 0478/13/m/j/16 \u00a9 ucles 20167 each seat on a flight is uniquely identified on an lcd above the seat. for example, seat 035c is  shown as:  the first three characters are digits that represent the row.  the fourth character is the seat position in that row. this is a single letter, a to f , that is stored as a  hexadecimal value.  each of the four display characters can be stored in a 4-bit register. for example, 0 and c would  be represented as: 0000 c:11008421 0:  (a) show how the 4-bit registers would store the remaining two characters, 3 and 5. 3 5 [2]  (b) identify which seat is stored in the following 4-bit registers. 1110010010010001 [2]",
            "9": "9 0478/13/m/j/16 \u00a9 ucles 2016 [turn over8 a bank offers an online service to its customers. the bank has developed a \u201c safetouse \u201d system  that asks each customer to enter four randomly chosen characters from their password each time they log in.  the customer selects these four characters from drop-down boxes. for example:  please select the 2 nd character    5th character   6th character   8th character  (a) (i) explain why it is more secure to use drop-down boxes rather than entering characters  using a keyboard.  .. .  .. .  .. .  .. .[2]   (ii) give a reason why the system asks for four characters chosen at random.  .. .  .. .[1]  (b) biometrics is an additional form of security.   give two examples of biometrics. 1   ... 2   ... [2]",
            "10": "10 0478/13/m/j/16 \u00a9 ucles 20169 check digits are used to ensure the accuracy of entered data.  a 7-digit number has an extra digit on the right, called the check digit. digit position: 12345678 digit: \u2013\u2013\u2013\u2013\u2013\u2013\u2013\u2013    check digit  the check digit is calculated as follows: \u0081 each digit in the number is multiplied by its digit position \u0081 the seven results are then added together\u0081 this total is divided by 11\u0081 the remainder gives the check digit (if the remainder = 10, the check digit is x)  (a) calculate the check digit for the following number. show all your working. 4      2      4      1      5      0      8      \u2026  .. .  .. .  .. . check digit  .. .. [2]  (b) an operator has just keyed in the following number: 3      2      4      0      0      4      5      x   circle below correct  if the check digit is correct or incorrect  if the check digit is incorrect. correct             incorrect   explain your answer.  .. .  .. .  .. .  .. . [3]",
            "11": "11 0478/13/m/j/16 \u00a9 ucles 2016 [turn over10 six  security issues and six descriptions are shown below.  draw a line to link each security issue to its correct description. security issue description illegal access to a computer system  without the owner\u2019s consent or  knowledge software that gathers information by  monitoring key presses on a user\u2019s  keyboard; the data is sent back to the  originator of the software malicious code installed on the hard  drive of a user\u2019s computer or on a web  server; this code will re-direct the user  to a fake website without the user\u2019s  knowledge creator of code sends out a  legitimate-looking email in the hope  of gathering personal and financial  information from the recipient; it  requires the user to click on the link in  the email or attachment a message given to a web browser by  a web server; it is stored in a text file;  the message is then sent back to the  server each time the browser requests  a page from the server program or code that replicates itself;  designed to amend, delete or copy  data or files on a user\u2019s computer;  often causes the computer to crash or  run slowlypharming phishing viruses hacking spyware cookies [5]",
            "12": "12 0478/13/m/j/16 \u00a9 ucles 201611 (a) four examples of optical storage media are: \u0081 dvd-rw \u0081 dvd-ram\u0081 cd-rom\u0081 blu-ray disc   the table below shows four features of optical storage media.   tick ( \u2713) the appropriate boxes in the table to indicate which of the features apply to each  example of optical storage media. single trackmany  concentric  tracksblue laser  used to read/  write datared laser  used to read/  write data dvd-rw dvd-ramcd-romblu-ray disc [4]  (b) solid state drives (ssd) are replacing hard disc drives (hdd) in some computers.   (i) give three  reasons why this is happening. 1   ...  .. . 2   ...  .. . 3   ...  .. . [3]   (ii) explain why many web servers still use hard disc drive (hdd) technology.  .. .  .. .  .. .  .. .  .. .[2]",
            "13": "13 0478/13/m/j/16 \u00a9 ucles 201612 (a) name the following type of barcode:  .. .[1]  (b) the barcode in part (a)  contains the denary value   2 6 4 0   convert this value to hexadecimal.  .. .  .. .   write the value as a 12-bit binary number. [4]  (c) an airport uses the type of  barcode shown in part (a)  to advertise local places of interest.   describe how a visitor landing at the airport could use these barcodes to help plan their visit.  .. .  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "14": "14 0478/13/m/j/16 \u00a9 ucles 2016blank page",
            "15": "15 0478/13/m/j/16 \u00a9 ucles 2016blank page",
            "16": "16 0478/13/m/j/16 \u00a9 ucles 2016permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s16_qp_21.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (leg/sw) 106771/3 \u00a9 ucles 2016 [turn overcambridge international examinations cambridge international general certificate of secondary education *7831699925* computer science  0478/21 paper 2 problem-solving and programming may/june 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.",
            "2": "2 0478/21/m/j/16 \u00a9 ucles 2016section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material the manager of a parcel delivery service needs a program to check the size and weight of parcels  to determine which parcels can be accepted for delivery.   write and test a program for the manager.  \u0081 y our program must include appropriate prompts for the entry of data.  \u0081 error messages and other output need to be set out clearly. \u0081 all variables, constants and other identifiers must have meaningful names.  y ou will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 check the size and weight of a single parceleach parcel must obey the following rules to be accepted for delivery: \u0081 each dimension must be no more than 80 cm\u0081 the sum of the three dimensions must be no more than 200 cm\u0081 the weight of the parcel must be between one and ten kilograms inclusive input and store the weight and dimensions for one parcel. all the dimensions and the weight must  be validated on entry and an unsuitable parcel rejected.  output if the parcel is accepted or rejected. if rejected, output all the reasons why the parcel was  rejected. task 2 \u2013 check a customer\u2019s consignment of parcelsinput and store the number of parcels in the consignment. calculate the number of parcels accepted  and the total weight of the parcels accepted. for each parcel that was rejected, output all the  reasons why that parcel was rejected. output the number of parcels accepted and the total weight of parcels accepted.  output the number of parcels rejected. task 3 \u2013 calculate the price for a customer\u2019s consignment of parcelsextend task 2 to also calculate the price for each parcel, using the following rules: \u0081 1 kg to 5 kg inclusive costs $10\u0081 each 100 grams over 5 kg, up to 10 kg, costs an extra $0.10 y our output should also include the price for each parcel accepted and the total price of the  consignment.",
            "3": "3 0478/21/m/j/16 \u00a9 ucles 2016 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) for each of the variables that you have used to record dimensions of the parcels in task 1 , state the name, type and its use. variable 1 name ... .. type .. .. use ... .. variable 2 name ... .. type .. .. use ... .. variable 3 name ... .. type .. .. use ... ..[3]   (ii) state two constants that you could have used for task 1 . give the value that would be  assigned to each one. constant 1 name ... . value 1 ...  constant 2 name ... . value 2 ... [2]",
            "4": "4 0478/21/m/j/16 \u00a9 ucles 2016 (b) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .   . .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "5": "5 0478/21/m/j/16 \u00a9 ucles 2016 [turn over (c) give three  different data sets that could be used to check your validation rules for task 1 .   explain why you chose each data set. data set 1  .. reason for choice . .  .. . data set 2  .. reason for choice . .  .. . data set 3  .. reason for choice . .  .. .[6]  (d) explain how your program calculates the price for a consignment (part of task 3 ). y ou may  include programming statements as part of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[4]",
            "6": "6 0478/21/m/j/16 \u00a9 ucles 2016section b 2 read this section of  program code that inputs 10 positive numbers and then outputs the smallest  number input.  1 small = 1000  2 counter = 0 3 repeat 4   input num 5   if num < small then small = num 6   counter = counter + 1 7 until counter = 10 8 print small   (i) identify three  changes you would need to make to find the largest number input instead  of the smallest number. 1 .   .. . 2 .   .. . 3 .   .. .[3]   (ii) rewrite the program code with your changes.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "7": "7 0478/21/m/j/16 \u00a9 ucles 2016 [turn over3 a program will be written to store information about members of a swimming club.  the following membership details will be recorded:  \u0081 name  \u0081 gender  \u0081 status:   \u0081 senior   \u0081 junior  \u0081 fee  \u0081 team member (y es or no)   (i) choose a suitable data type for each of the membership details to be recorded. membership details data type name  genderstatus fee team member   [5]   (ii) the swimming club has 50 members.    state the data structure that would be most suitable to use and give a reason for your  choice. data structure  . reason  ...  .. .[2]",
            "8": "8 0478/21/m/j/16 \u00a9 ucles 20164 the flowchart below inputs the height of children who want to ride on a rollercoaster. children  under 1.2 metres are rejected. the ride starts when eight children have been accepted. ,1387 +hljkw 287387  5hdg\\\u0003wr\u0003jr\u0003 \u000f\u00035hmhfw,v +hljkw \u001f\u0003\u0014\u0011\u0015\" 5lghuv  \u0003\u001b\"5lghuv\u0003\u0003\u0003\u0013 5hmhfw\u0003\u0003\u0003\u0013 5lghuv\u0003\u0003\u00035lghuv\u0003\u000e\u0003\u001467$57 5hmhfw\u0003\u0003\u00035hmhfw\u0003\u000e\u0003\u0014 1r1r<hv <hv (1'",
            "9": "9 0478/21/m/j/16 \u00a9 ucles 2016 [turn over complete the trace table for the input data:  1.4, 1.3, 1.1, 1.3, 1.0, 1.5, 1.2, 1.3, 1.4, 1.3, 0.9, 1.5, 1.6, 1.0 riders reject height output  [4]",
            "10": "10 0478/21/m/j/16 \u00a9 ucles 20165 repeat ... until is one type of loop structure.   identify and describe two other types of loop structure that you could use when writing  pseudocode. loop structure 1 .. ... description ... ..  .. . loop structure 2 .. ... description ... ..  .. .[4]",
            "11": "11 0478/21/m/j/16 \u00a9 ucles 20166 a database, staffphone, was set up to show the telephone extension numbers for members of  staff working in a department store. name department extension number jane smith toys 129sue wong books 124david chow toys 129amy tang household 123joe higgs books 124jane smith shoes 125adel abur shoes 125peter patel toys 129  (a) explain why none of the fields in the database can be used as a primary key.  .. .  .. .  .. .[2]  (b) state a field that could be added as a primary key.  .. .   give a reason for choosing this field.   .. .  .. .[2]  (c) use the query-by-example grid below to provide a list of all members of staff, in alphabetical  order, grouped by department. field: table: sort: show: criteria: or:  [5]",
            "12": "12 0478/21/m/j/16 \u00a9 ucles 2016permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s16_qp_22.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (lk/sw) 106762/3 \u00a9 ucles 2016 [turn overcambridge international examinations cambridge international general certificate of secondary education *9620128549* computer science  0478/22 paper 2 problem-solving and programming may/june 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.",
            "2": "2 0478/22/m/j/16 \u00a9 ucles 2016section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to answer question 1. pre-release material the manager of a building materials delivery service needs a program to check the contents and  weight of sacks to ensure that correct orders are made up for delivery. a price for the order will be calculated.  write and test a program for the manager.\u0081 y our program must include appropriate prompts for the entry of data.  \u0081 error messages and other output need to be set out clearly. \u0081 all variables, constants and other identifiers must have meaningful names.  y ou will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 check the contents and weight of a single sackeach sack must obey the following rules to be accepted:\u0081 contain cement, gravel or sand, with a letter on the side for easy identification o c - cement o g - gravel o s - sand \u0081 sand or gravel must weigh over 49.9 and under 50.1 kilograms\u0081 cement must weigh over 24.9 and under 25.1 kilograms input and store the weight and contents for one sack. the contents must be checked and an incorrect  sack rejected. the weight must be validated on entry and an overweight or underweight sack rejected.  output the contents and weight of an accepted sack. if  a sack is rejected, output the reason(s). task 2 \u2013 check a customer\u2019s order for deliveryinput and store the number of sacks of each type required for the order. use task 1 to check the  contents and weight of each sack. ensure that the delivery contains the correct number and type of sacks for the order. output the total weight of the order. output the number of sacks rejected from the order. task 3 \u2013 calculate the price for a customer\u2019s orderextend task 2 to calculate a price for an order. prices for the sacks are as follows:\u0081 regular price for each sack o cement, $3  o gravel, $2 o sand, $2 \u0081  discount price for a special pack containing 1 sack of cement, 2 sacks of sand and 2 sacks of  gravel, $10 calculate and output the regular price for the order. check how many special packs are in the order. if  a discount price applies then output the new price for the order and the amount saved.",
            "3": "3 0478/22/m/j/16 \u00a9 ucles 2016 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i)  for three  of the variables that you have used in task 2 , state the name, type and its use.  variable 1 name  .. .. type  . .. use  .. .. variable 2 name  .. .. type  . .. use  .. .. variable 3 name  .. .. type  . .. use  .. ..[3]   (ii) state three  constants that you could have used for task 1 . give the value that would be   assigned to each one. constant 1 name  .. . value 1  ..  constant 2 name  .. . value 2  ..  constant 3 name  .. . value 3  .. [3]",
            "4": "4 0478/22/m/j/16 \u00a9 ucles 2016 (b) write an algorithm to complete task 2 , using either  pseudocode, programming statements  or a flowchart.  y ou can assume that the weight and contents have already been checked and  accepted in task 1.  y ou do not need to output the number of sacks rejected.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "5": "5 0478/22/m/j/16 \u00a9 ucles 2016 [turn over (c) (i) give two different data values that could be used to check your validation rules for sand  in task 1 . explain why you chose each value. sand data value 1   . reason for choice   .  .. . sand data value 2   . reason for choice   .  .. .[2]   (ii) give two different data values that could be used to check your validation rules for  cement in task 1 . explain why you chose each value. cement data value 1 ..reason for choice . .  .. . cement data value 2 ..reason for choice . .  .. .[2]  (d) explain how your program calculates the price for an order ( task 3 ). y ou may include  programming statements as part of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "6": "6 0478/22/m/j/16 \u00a9 ucles 2016section b 2 read this section of program code that inputs 10 positive numbers and then outputs the total.  1  total = 0  2  counter = 0 3  repeat 4    input num 5    total = total + num 6    print total  7    counter = counter + 1 8  until counter = 10  this code works, but it is inefficient.  (i) suggest three  improvements that could be made. 1 .   .. . 2 .   .. . 3 .   .. .[3]  (ii) rewrite the program code with your improvements.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "7": "7 0478/22/m/j/16 \u00a9 ucles 2016 [turn over3 the flowchart below calculates the number of tins of paint required to paint walls. the flowchart  inputs the height and width of a wall in metres, the number of doors and the number of windows.   a value of \u20131 for the height stops the input.  input height, width, doors, windowsarea   0 tins   0start endoutput tinsis height = \u20131? area   area + height * width \u2013 doors * 1.5 \u2013 windowsnoyes tins   int(area/10 + 0.5)  complete the trace table for the input data:  3, 5, 1, 0, 3, 7, 0, 0, 3, 5, 0, 3, 3, 7, 1, 1, \u20131, 0, 0, 0 area tins height width doors windows  [4]",
            "8": "8 0478/22/m/j/16 \u00a9 ucles 20164 four statement types and four examples are shown below.  draw a line to connect each statement type to the correct example. statement type example assignment for x  1 to 10 iteration read x input print x output x  y + z  [3] 5 a programmer writes a program to store a patient\u2019s temperature every hour for a day.  state the data structure that would be most suitable to use and give the reason for your choice. data structure  ... reason  ..  .. [2] 6 identify two different selection statements that you can use when writing pseudocode. 1 . ...  ..  2 . ...  .. [2]",
            "9": "9 0478/22/m/j/16 \u00a9 ucles 2016 [turn overquestion 7 begins on page 10.",
            "10": "10 0478/22/m/j/16 \u00a9 ucles 20167 a database, sofaselect, was set up to show the prices of suites, sofas and chairs for sale from  an online furniture warehouse. part of the database is shown below. descriptionbrochure  numbernumber  of seatsnumber  of piecesmaterial colour price in $ sofa sf17 2 1 leather red 950 sofa sf19 3 1 vinyl black 1,000suite su10 4 3 velvet green 1,500suite su23 5 3 leather brown 950recliner chair rc01 1 1 leather cream 600chair ch16 1 1 vinyl red 250recliner sofa rs23 4 1 leather cream 1,200chair ch10 1 1 velvet red 175  (a) how many fields are in each record?  .. .[1]  (b) state which field you would choose for the primary key.  .. .   give a reason for choosing this field.  .. .  .. .[2]  (c) state the data type you would choose for each of the following fields. number of seats  . price in $   . .[2]",
            "11": "11 0478/22/m/j/16 \u00a9 ucles 2016 (d)  the query-by-example grid below selects all the furniture in cream leather. field: description material colour price in $ brochure number table: sofaselect sofaselect sofaselect sofaselect sofaselect sort: descending show: \uf0fc \uf0fc \uf0fc criteria: = \u2018leather\u2019 = \u2018cream\u2019 or:   show the output from the query-by-example.   .. .  .. .[3]  (e) complete the query-by-example grid below to select and show the brochure number, material,  colour and price of all the furniture with 3 or more seats. field: table: sort: show: criteria: or:  [5]",
            "12": "12 0478/22/m/j/16 \u00a9 ucles 2016permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s16_qp_23.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (lk/sw) 124305 \u00a9 ucles 2016 [turn overcambridge international examinations cambridge international general certificate of secondary education *2632110456* computer science  0478/23 paper 2 problem-solving and programming may/june 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.",
            "2": "2 0478/23/m/j/16 \u00a9 ucles 2016section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material the manager of a parcel delivery service needs a program to check the size and weight of parcels  to determine which parcels can be accepted for delivery.   write and test a program for the manager.  \u0081 y our program must include appropriate prompts for the entry of data.  \u0081 error messages and other output need to be set out clearly. \u0081 all variables, constants and other identifiers must have meaningful names.  y ou will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 check the size and weight of a single parceleach parcel must obey the following rules to be accepted for delivery: \u0081 each dimension must be no more than 80 cm\u0081 the sum of the three dimensions must be no more than 200 cm\u0081 the weight of the parcel must be between one and ten kilograms inclusive input and store the weight and dimensions for one parcel. all the dimensions and the weight must  be validated on entry and an unsuitable parcel rejected.  output if the parcel is accepted or rejected. if rejected, output all the reasons why the parcel was  rejected. task 2 \u2013 check a customer\u2019s consignment of parcelsinput and store the number of parcels in the consignment. calculate the number of parcels accepted  and the total weight of the parcels accepted. for each parcel that was rejected, output all the  reasons why that parcel was rejected. output the number of parcels accepted and the total weight of parcels accepted.  output the number of parcels rejected. task 3 \u2013 calculate the price for a customer\u2019s consignment of parcelsextend task 2 to also calculate the price for each parcel, using the following rules: \u0081 1 kg to 5 kg inclusive costs $10\u0081 each 100 grams over 5 kg, up to 10 kg, costs an extra $0.10 y our output should also include the price for each parcel accepted and the total price of the  consignment.",
            "3": "3 0478/23/m/j/16 \u00a9 ucles 2016 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) for each of the variables that you have used to record dimensions of the parcels in task 1 , state the name, type and its use. variable 1 name ... .. type .. .. use ... .. variable 2 name ... .. type .. .. use ... .. variable 3 name ... .. type .. .. use ... ..[3]   (ii) state two constants that you could have used for task 1 . give the value that would be  assigned to each one. constant 1 name ... . value 1 ...  constant 2 name ... . value 2 ... [2]",
            "4": "4 0478/23/m/j/16 \u00a9 ucles 2016 (b) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .   . .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[5]",
            "5": "5 0478/23/m/j/16 \u00a9 ucles 2016 [turn over (c) give three  different data sets that could be used to check your validation rules for task 1 .   explain why you chose each data set. data set 1  .. reason for choice . .  .. . data set 2  .. reason for choice . .  .. . data set 3  .. reason for choice . .  .. .[6]  (d) explain how your program calculates the price for a consignment (part of task 3 ). y ou may  include programming statements as part of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[4]",
            "6": "6 0478/23/m/j/16 \u00a9 ucles 2016section b 2 read this section of  program code that inputs 10 positive numbers and then outputs the smallest  number input.  1 small = 1000  2 counter = 0 3 repeat 4   input num 5   if num < small then small = num 6   counter = counter + 1 7 until counter = 10 8 print small   (i) identify three  changes you would need to make to find the largest number input instead  of the smallest number. 1 .   .. . 2 .   .. . 3 .   .. .[3]   (ii) rewrite the program code with your changes.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[3]",
            "7": "7 0478/23/m/j/16 \u00a9 ucles 2016 [turn over3 a program will be written to store information about members of a swimming club.  the following membership details will be recorded:  \u0081 name  \u0081 gender  \u0081 status:   \u0081 senior   \u0081 junior  \u0081 fee  \u0081 team member (y es or no)   (i) choose a suitable data type for each of the membership details to be recorded. membership details data type name  genderstatus fee team member   [5]   (ii) the swimming club has 50 members.    state the data structure that would be most suitable to use and give a reason for your  choice. data structure  . reason  ...  .. .[2]",
            "8": "8 0478/23/m/j/16 \u00a9 ucles 20164 the flowchart below inputs the height of children who want to ride on a rollercoaster. children  under 1.2 metres are rejected. the ride starts when eight children have been accepted. ,1387 +hljkw 287387  5hdg\\\u0003wr\u0003jr\u0003 \u000f\u00035hmhfw,v +hljkw \u001f\u0003\u0014\u0011\u0015\" 5lghuv  \u0003\u001b\"5lghuv\u0003\u0003\u0003\u0013 5hmhfw\u0003\u0003\u0003\u0013 5lghuv\u0003\u0003\u00035lghuv\u0003\u000e\u0003\u001467$57 5hmhfw\u0003\u0003\u00035hmhfw\u0003\u000e\u0003\u0014 1r1r<hv <hv (1'",
            "9": "9 0478/23/m/j/16 \u00a9 ucles 2016 [turn over complete the trace table for the input data:  1.4, 1.3, 1.1, 1.3, 1.0, 1.5, 1.2, 1.3, 1.4, 1.3, 0.9, 1.5, 1.6, 1.0 riders reject height output  [4]",
            "10": "10 0478/23/m/j/16 \u00a9 ucles 20165 repeat ... until is one type of loop structure.   identify and describe two other types of loop structure that you could use when writing  pseudocode. loop structure 1 .. ... description ... ..  .. . loop structure 2 .. ... description ... ..  .. .[4]",
            "11": "11 0478/23/m/j/16 \u00a9 ucles 20166 a database, staffphone, was set up to show the telephone extension numbers for members of  staff working in a department store. name department extension number jane smith toys 129sue wong books 124david chow toys 129amy tang household 123joe higgs books 124jane smith shoes 125adel abur shoes 125peter patel toys 129  (a) explain why none of the fields in the database can be used as a primary key.  .. .  .. .  .. .[2]  (b) state a field that could be added as a primary key.  .. .   give a reason for choosing this field.   .. .  .. .[2]  (c) use the query-by-example grid below to provide a list of all members of staff, in alphabetical  order, grouped by department. field: table: sort: show: criteria: or:  [5]",
            "12": "12 0478/23/m/j/16 \u00a9 ucles 2016permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w16_qp_11.pdf": {
            "1": "this document consists of 14 printed pages and 2 blank pages. dc (nh/jg) 118885/4 \u00a9 ucles 2016  [turn over *4170308148* computer science  0478/11 paper 1  theory  october/november 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.cambridge international examinations cambridge international general certificate of secondary education",
            "2": "2 0478/11/o/n/16 \u00a9 ucles 2016 1 to process an instruction, a central processing unit (cpu) goes through a cycle that has three  main stages.  name each stage in this cycle.  stage 1   stage 2   stage 3   [3] 2 name each of the potential security issues described in the five statements below: statement security issue the act of gaining unauthorised access to  a computer system .. program code that can replicate itself with  the intention of deleting or corrupting files  stored in a computer .. a small file sent by a web server to a web  browser; every time the user visits the  website, data about user preferences is  collected .. the act of illegally changing the source  code of a program so that it can be  exploited for another use .. malicious code installed on a user\u2019s hard  drive or a web server which redirects  the user to a fake website without their  knowledge ..  [5]",
            "3": "3 0478/11/o/n/16 \u00a9 ucles 2016 [turn over 3 five computer terms and seven descriptions are shown below.  draw a line to connect each computer term to its correct description. an error detection method that uses  response and time out when transmitting  data; if a response is not sent back to  the sender in an agreed amount of time,  then the data is re-sentseveral bits of data sent down several  wires, in both directions, but not at the  same time serial, simplex data  transmissiondescription computer term several bits of data sent down several  wires, in both directions, at the same  time an even or odd number of bits set to 1  in a byte, used to check if the byte has  been transmitted correctly one bit sent at a time, over a single wire  in one direction only an additional digit placed at the end of a  number to check if the number has been  entered correctly a value transmitted at the end of a block  of data; it is calculated using the other  elements in the data stream and is used  to check for transmission errorsparallel, half-duplex  data transmission parity check automatic repeat  request (arq) checksum  [5]",
            "4": "4 0478/11/o/n/16 \u00a9 ucles 2016 4 the henslows diner is a local restaurant.  (a) staff currently use a keyboard to input a customer food order into a computer. the food order  is then sent to the kitchen.   state two disadvantages of using a keyboard to input a customer food order. 1    ... 2    ...  [2]  (b) a concept keyboard has a flat surface that is overlaid with images of food items available  from the restaurant menu. staff can click on an image to add the food item to a customer food  order.   the henslows diner wants to change to a concept keyboard to input customer food orders.   explain two benefits of making this change. 1    ...  ...  ... 2    ...  ...  ...  [4]",
            "5": "5 0478/11/o/n/16 \u00a9 ucles 2016 [turn over  (c) the henslows diner stores personal data on a computer. this computer is connected to the  internet to allow the data to be backed up.   there is currently one security method in place to protect the data on the computer from  unauthorised access. this is a password.   give two other security methods that could be added to improve the security of the data.  describe how each method will keep the data safe. security method 1  . description    ...  ... security method 2  . description    ...  ...  [4]",
            "6": "6 0478/11/o/n/16 \u00a9 ucles 2016 5 three switches, a, b and c, each send values of 0 or 1 to a logic circuit. value x is output from the  logic circuit. switch a switch b output x switch clogic circuit  output x has a value of 1 depending on the following conditions: switch a sends value 1 and switch b sends value 0 or switch b sends value 1 and switch c sends value 0  (a) draw a logic circuit to represent the conditions above. a b cx  [5]",
            "7": "7 0478/11/o/n/16 \u00a9 ucles 2016 [turn over  (b) complete the truth table for the conditions given at the start of question 5. a b cworking space x 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]  (c) a microprocessor regularly samples the output, x. each sample value is stored in an 8-bit  register as shown below. one bit of this register is reserved as a parity bit.   five consecutive output values of 1 indicate a fault condition.   identify which of the following registers shows a fault condition. parity bit 11111001 register y 01011111 register z  register .[1]",
            "8": "8 0478/11/o/n/16 \u00a9 ucles 2016  (d) when eight bytes of data have been collected, they are transmitted to a computer 100  km  away. parity checks are carried out to identify if the data has been transmitted correctly. the  system uses even parity and column 1 is the parity bit.   the eight bytes of data are sent together with a ninth parity byte: parity  bitcolumn  2column  3column  4column  5column  6column  7column  8 byte 1 1 0 0 0 0 1 0 0 byte 2 1 1 1 1 0 0 1 1 byte 3 0 1 0 0 1 0 0 0 byte 4 0 1 1 1 0 0 0 1 byte 5 1 0 0 0 1 1 1 1 byte 6 0 0 0 0 0 0 0 0 byte 7 1 1 1 0 1 0 0 0 byte 8 1 0 0 0 1 1 1 0 parity  byte1 0 1 1 0 1 1 1   (i) identify which of the eight bytes contains an error. byte  ... [1]   (ii) identify which column contains an error. column  ... [1]   (iii) the incorrect bit is indicated where the byte number and column cross.    give the corrected byte. [1]   (iv) calculate the denary value of the corrected byte.  ...  ... [1]   (v) considering the fault condition given in part (c) , explain why it is very important that the  incorrect bit is located and corrected.  ...  ...  ...  ... [2]",
            "9": "9 0478/11/o/n/16 \u00a9 ucles 2016 [turn over 6 high-level or low-level languages can be used when writing a computer program.  state two advantages of using a high-level language and two advantages of using a low-level  language. high-level language advantage 1    .. high-level language advantage 2    .. low-level language advantage 1  .  .. low-level language advantage 2  .  ..  [4] 7 modern liquid crystal display (lcd) monitors use light-emitting diode (led) backlit technology.   give four benefits of using led technology. 1  ...  ..  .. 2  ...  ..  .. 3  ...  ..  .. 4  ...  ..  ..  [4]",
            "10": "10 0478/11/o/n/16 \u00a9 ucles 2016 8 four  descriptions about compilers and interpreters are shown below.  draw lines to indicate which descriptions refer to a compiler and which descriptions refer to an  interpreter. it is more difficult to debug  the  code since one error can  produce many other associated  errors. compilerdescription the speed of execution of  program loops is slower. it produces fast, executable  code that runs directly on the  processor. it is easier to debug the code  since an error is displayed as  soon as it is found.interpreter  [4]",
            "11": "11 0478/11/o/n/16 \u00a9 ucles 2016 [turn over 9 a security light is controlled by sensors and a microprocessor.  describe how the sensors and microprocessor interact to switch on the security light when an  intruder is detected.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [6]",
            "12": "12 0478/11/o/n/16 \u00a9 ucles 2016 10 (a) a manufacturer of aeroplane engines assigns a denary identification number (id) to each  engine.   one engine has the id:  0431   (i) convert this denary number to a 12-bit binary format.  [2]   (ii) show how this number would be represented in hexadecimal.  ...  ...  [3]  (b) the current status of the engine is sent to a computer in the aeroplane.   each piece of data collected is 8 bytes in size. data collection occurs every 30 seconds.   calculate the number of kilobytes that would be needed to store the data collected during a  10-hour flight. show your working.  ...  ...  ...  ...   .  kilobytes  [3]",
            "13": "13 0478/11/o/n/16 \u00a9 ucles 2016 [turn over  (c) at the end of the flight, all of the data are sent to the aeroplane engine manufacturer using the  internet.   the computer in the aeroplane has a mac address and an ip address.   state what is meant by these two terms. mac address    ...  ... ip address  .  ...  ...  [2]  (d) when sending this data, security is very important. data are sent over the internet using  transport layer security (tls) protocol.   name the two layers that make up tls. 1   2      [2]",
            "14": "14 0478/11/o/n/16 \u00a9 ucles 2016 11 explain why ethics are important when using computers.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [6]",
            "15": "15 0478/11/o/n/16 \u00a9 ucles 2016 blank page",
            "16": "16 0478/11/o/n/16 \u00a9 ucles 2016 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w16_qp_12.pdf": {
            "1": "this document consists of 12 printed pages. dc (nh/sw) 122184/3 \u00a9 ucles 2016  [turn over *0720829747* computer science  0478/12 paper 1 theory  october/november 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge international examinations cambridge international general certificate of secondary education the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/o/n/16 \u00a9 ucles 2016 1 (a) give two reasons why a programmer would choose to write code in a low-level language. 1    ...  ... 2    ...  ...  [2]  (b) high-level languages require either an interpreter or a compiler to translate the program.   the table below lists a number of statements about language translators.   tick (3) to show which statements refer to interpreters and which refer to compilers. statements interpreter ( 3) compiler ( 3) translates the source code into machine code  all at once produces an executable file in machine code executes a high-level language program one  instruction at a time once translated, the translator does not need to  be present for the program to run an executable file is produced   [5] 2 state  four  functions of an operating system. 1  ... 2  ... 3  ... 4  ...  [4]",
            "3": "3 0478/12/o/n/16 \u00a9 ucles 2016 [turn over 3 (a) explain what is meant by:   (i) serial data transmission  ...  ...  ...  ... [2]   (ii) parallel data transmission  ...  ...  ...  ... [2]  (b) a computer in a factory is connected to a printer. the printer is located in an office 1  km away  from the factory.   identify which data transmission method would be most suitable for this connection.  ...   give two reasons for your choice. 1    ...  ... 2    ...  ...  [3]",
            "4": "4 0478/12/o/n/16 \u00a9 ucles 2016 4 nine bytes of data are transmitted from one computer to another. even parity is used. an additional  parity byte is also sent.  the ten bytes arrive at the destination computer as follows: parity bit bit 2 bit 3 bit 4 bit 5 bit 6 bit 7 bit 8 byte 1 1 1 1 0 1 1 1 0 byte 2 0 0 0 0 0 1 0 1 byte 3 0 1 1 1 1 0 0 0 byte 4 1 1 0 0 0 0 0 0 byte 5 1 0 1 1 1 1 1 0 byte 6 0 1 0 1 1 0 0 1 byte 7 0 1 1 1 0 0 1 1 byte 8 0 0 1 1 0 1 1 0 byte 9 1 1 0 0 0 0 1 1 parity byte 0 0 1 0 0 0 1 0  one of the bits was corrupted during the data transmission.  (a) circle  the corrupt bit in the corrupt byte in the table above . [1]  (b) explain how the corrupted bit was found.  ...  ...  ...  ...  ...  ... [2]",
            "5": "5 0478/12/o/n/16 \u00a9 ucles 2016 [turn over 5 a computer uses an 8-bit register.  the 8-bit register contains binary integers.  (a) write the denary (base 10) value represented by: 0 1 1 1 0 0 0 0128 32 16 8 4 2 1 64  ... [1]  (b) all the bits in the register are shifted one place to the right  as shown below . 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0   write the denary number that is represented after this shift.  ... [1]  (c) state the effect the shift to the right had on the original denary number from part (a) .  ... [1]  (d) the original number  in part (a)  is shifted three  places to the right .   (i) show the new binary number:   [1]   (ii) write the equivalent denary number.  ... [1]",
            "6": "6 0478/12/o/n/16 \u00a9 ucles 2016  (e) describe the problems that could be caused if the original binary number in part (a)  is shifted  five places to the right .  ...  ...  ...  ...  ... [2] 6 four  computer terms and eight  descriptions are shown below.  draw lines to connect each computer term to the correct description(s).    computer term  description   arithmetic and logic  unit (alu) control unit random access  memory (ram) read only memory  (rom)  data can be read but not altered carries out operations such as  addition and multiplication stores bootstrap loader and bios fetches each instruction in turn carries out operations such as  and, or, not stores part of the operating system  currently in use stores data currently in use manages execution of each  instruction     [4] ",
            "7": "7 0478/12/o/n/16 \u00a9 ucles 2016 [turn over 7 (a) complete the truth tables and name the single logic gate that could replace each logic circuit:   (i) a bxa bworking spacex 0 0 0 1 1 0 1 1 single logic gate   [3]   (ii) a bxa bworking spacex 0 0 0 1 1 0 1 1 single logic gate   [3]",
            "8": "8 0478/12/o/n/16 \u00a9 ucles 2016  (b) (i) draw a logic circuit to represent the following logic statement: x = 1 if  (a = 1 and  b = 1)  or ( (b = not 1)  and  c = 1) a b cx  [4]   (ii) complete the truth table for the logic statement in part (b)(i) . a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "9": "9 0478/12/o/n/16 \u00a9 ucles 2016 [turn over 8 identify whether the four statements about file compression are correct by writing true or false  in the following table. statement true or false midi files store the actual music notes in a compressed format jpeg files are examples of lossless file compression mp3 files are, on average, 90% smaller than the music files  stored on a cd mp4 files are examples of lossy file compression [4] 9 (a) explain what is meant by a denial of service attack.  ...  ...  ...  ... [2]  (b) name and describe two other potential security threats when using the internet. security threat 1  ... description    ...  ... security threat 2  ... description    ...  ...  [4]",
            "10": "10 0478/12/o/n/16 \u00a9 ucles 2016 10 (a) describe what is meant by html.  ...  ...  ...  ...  ...  ... [3]  (b) the following url is typed in: http://www.cie.org.uk/computersciencepapers   this url is composed of three parts.   state the part of this url that is the: file name  .. protocol   web server name  . [3]",
            "11": "11 0478/12/o/n/16 \u00a9 ucles 2016 [turn over 11 a security system is installed in a house. a hexadecimal number is entered to activate or deactivate  the alarm.  (a) the alarm code is set to hexadecimal number 2 a f   show how this number would be stored in a 12-bit binary register. [3]  (b) identify two sensors that the security system could use to detect intruders.   describe how each sensor could be used in the security system. sensor 1  ... description    ...  ...  ... sensor 2  ... description    ...  ...  ...  [6]",
            "12": "12 0478/12/o/n/16 \u00a9 ucles 2016 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.12 explain the differences between freeware  and free software .  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [4]"
        },
        "0478_w16_qp_13.pdf": {
            "1": "this document consists of 14 printed pages and 2 blank pages. dc (slm) 135990 \u00a9 ucles 2016  [turn over *0058708227* computer science  0478/13 paper 1  theory  october/november 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.cambridge international examinations cambridge international general certificate of secondary education",
            "2": "2 0478/13/o/n/16 \u00a9 ucles 2016 1 to process an instruction, a central processing unit (cpu) goes through a cycle that has three  main stages.  name each stage in this cycle.  stage 1   stage 2   stage 3   [3] 2 name each of the potential security issues described in the five statements below: statement security issue the act of gaining unauthorised access to  a computer system .. program code that can replicate itself with  the intention of deleting or corrupting files  stored in a computer .. a small file sent by a web server to a web  browser; every time the user visits the  website, data about user preferences is  collected .. the act of illegally changing the source  code of a program so that it can be  exploited for another use .. malicious code installed on a user\u2019s hard  drive or a web server which redirects  the user to a fake website without their  knowledge ..  [5]",
            "3": "3 0478/13/o/n/16 \u00a9 ucles 2016 [turn over 3 five computer terms and seven descriptions are shown below.  draw a line to connect each computer term to its correct description. an error detection method that uses  response and time out when transmitting  data; if a response is not sent back to  the sender in an agreed amount of time,  then the data is re-sentseveral bits of data sent down several  wires, in both directions, but not at the  same time serial, simplex data  transmissiondescription computer term several bits of data sent down several  wires, in both directions, at the same  time an even or odd number of bits set to 1  in a byte, used to check if the byte has  been transmitted correctly one bit sent at a time, over a single wire  in one direction only an additional digit placed at the end of a  number to check if the number has been  entered correctly a value transmitted at the end of a block  of data; it is calculated using the other  elements in the data stream and is used  to check for transmission errorsparallel, half-duplex  data transmission parity check automatic repeat  request (arq) checksum  [5]",
            "4": "4 0478/13/o/n/16 \u00a9 ucles 2016 4 the henslows diner is a local restaurant.  (a) staff currently use a keyboard to input a customer food order into a computer. the food order  is then sent to the kitchen.   state two disadvantages of using a keyboard to input a customer food order. 1    ... 2    ...  [2]  (b) a concept keyboard has a flat surface that is overlaid with images of food items available  from the restaurant menu. staff can click on an image to add the food item to a customer food  order.   the henslows diner wants to change to a concept keyboard to input customer food orders.   explain two benefits of making this change. 1    ...  ...  ... 2    ...  ...  ...  [4]",
            "5": "5 0478/13/o/n/16 \u00a9 ucles 2016 [turn over  (c) the henslows diner stores personal data on a computer. this computer is connected to the  internet to allow the data to be backed up.   there is currently one security method in place to protect the data on the computer from  unauthorised access. this is a password.   give two other security methods that could be added to improve the security of the data.  describe how each method will keep the data safe. security method 1  . description    ...  ... security method 2  . description    ...  ...  [4]",
            "6": "6 0478/13/o/n/16 \u00a9 ucles 2016 5 three switches, a, b and c, each send values of 0 or 1 to a logic circuit. value x is output from the  logic circuit. switch a switch b output x switch clogic circuit  output x has a value of 1 depending on the following conditions: switch a sends value 1 and switch b sends value 0 or switch b sends value 1 and switch c sends value 0  (a) draw a logic circuit to represent the conditions above. a b cx  [5]",
            "7": "7 0478/13/o/n/16 \u00a9 ucles 2016 [turn over  (b) complete the truth table for the conditions given at the start of question 5. a b cworking space x 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]  (c) a microprocessor regularly samples the output, x. each sample value is stored in an 8-bit  register as shown below. one bit of this register is reserved as a parity bit.   five consecutive output values of 1 indicate a fault condition.   identify which of the following registers shows a fault condition. parity bit 11111001 register y 01011111 register z  register .[1]",
            "8": "8 0478/13/o/n/16 \u00a9 ucles 2016  (d) when eight bytes of data have been collected, they are transmitted to a computer 100  km  away. parity checks are carried out to identify if the data has been transmitted correctly. the  system uses even parity and column 1 is the parity bit.   the eight bytes of data are sent together with a ninth parity byte: parity  bitcolumn  2column  3column  4column  5column  6column  7column  8 byte 1 1 0 0 0 0 1 0 0 byte 2 1 1 1 1 0 0 1 1 byte 3 0 1 0 0 1 0 0 0 byte 4 0 1 1 1 0 0 0 1 byte 5 1 0 0 0 1 1 1 1 byte 6 0 0 0 0 0 0 0 0 byte 7 1 1 1 0 1 0 0 0 byte 8 1 0 0 0 1 1 1 0 parity  byte1 0 1 1 0 1 1 1   (i) identify which of the eight bytes contains an error. byte  ... [1]   (ii) identify which column contains an error. column  ... [1]   (iii) the incorrect bit is indicated where the byte number and column cross.    give the corrected byte. [1]   (iv) calculate the denary value of the corrected byte.  ...  ... [1]   (v) considering the fault condition given in part (c) , explain why it is very important that the  incorrect bit is located and corrected.  ...  ...  ...  ... [2]",
            "9": "9 0478/13/o/n/16 \u00a9 ucles 2016 [turn over 6 high-level or low-level languages can be used when writing a computer program.  state two advantages of using a high-level language and two advantages of using a low-level  language. high-level language advantage 1    .. high-level language advantage 2    .. low-level language advantage 1  .  .. low-level language advantage 2  .  ..  [4] 7 modern liquid crystal display (lcd) monitors use light-emitting diode (led) backlit technology.   give four benefits of using led technology. 1  ...  ..  .. 2  ...  ..  .. 3  ...  ..  .. 4  ...  ..  ..  [4]",
            "10": "10 0478/13/o/n/16 \u00a9 ucles 2016 8 four  descriptions about compilers and interpreters are shown below.  draw lines to indicate which descriptions refer to a compiler and which descriptions refer to an  interpreter. it is more difficult to debug  the  code since one error can  produce many other associated  errors. compilerdescription the speed of execution of  program loops is slower. it produces fast, executable  code that runs directly on the  processor. it is easier to debug the code  since an error is displayed as  soon as it is found.interpreter  [4]",
            "11": "11 0478/13/o/n/16 \u00a9 ucles 2016 [turn over 9 a security light is controlled by sensors and a microprocessor.  describe how the sensors and microprocessor interact to switch on the security light when an  intruder is detected.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [6]",
            "12": "12 0478/13/o/n/16 \u00a9 ucles 2016 10 (a) a manufacturer of aeroplane engines assigns a denary identification number (id) to each  engine.   one engine has the id:  0431   (i) convert this denary number to a 12-bit binary format.  [2]   (ii) show how this number would be represented in hexadecimal.  ...  ...  [3]  (b) the current status of the engine is sent to a computer in the aeroplane.   each piece of data collected is 8 bytes in size. data collection occurs every 30 seconds.   calculate the number of kilobytes that would be needed to store the data collected during a  10-hour flight. show your working.  ...  ...  ...  ...   .  kilobytes  [3]",
            "13": "13 0478/13/o/n/16 \u00a9 ucles 2016 [turn over  (c) at the end of the flight, all of the data are sent to the aeroplane engine manufacturer using the  internet.   the computer in the aeroplane has a mac address and an ip address.   state what is meant by these two terms. mac address    ...  ... ip address  .  ...  ...  [2]  (d) when sending this data, security is very important. data are sent over the internet using  transport layer security (tls) protocol.   name the two layers that make up tls. 1   2      [2]",
            "14": "14 0478/13/o/n/16 \u00a9 ucles 2016 11 explain why ethics are important when using computers.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [6]",
            "15": "15 0478/13/o/n/16 \u00a9 ucles 2016 blank page",
            "16": "16 0478/13/o/n/16 \u00a9 ucles 2016 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w16_qp_21.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (leg/sw) 106619/4 \u00a9 ucles 2016 [turn overcambridge international examinations cambridge international general certificate of secondary education *1916401020* computer science  0478/21 paper 2 problem-solving and programming october/november 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.",
            "2": "2 0478/21/o/n/16 \u00a9 ucles 2016section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material the headteacher of a school needs a program to record and count the votes for a class captain.  each student in the class will be allowed one vote. there can be up to 30 students in a class. write and test a program for the headteacher.\u0081 y our program must include appropriate prompts for the entry of data.  \u0081 error messages and other output need to be set out clearly. \u0081 all variables, constants and other identifiers must have meaningful names.  y ou will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 set up the voting each class can choose from up to four different students as candidates for their class captain.  set  up a routine that allows: \u0081 between two and four different candidate names to be input and stored \u0081 the candidate names to be displayed with a number (1, 2, 3 or 4) beside each name\u0081 a choice of 1, 2, 3 or 4 to be entered to record a vote; all other entries are rejected\u0081 up to four totals set to zero ready to record the votes\u0081 a maximum of 30 votes to be cast task 2 \u2013 record and count each vote input a number 1, 2, 3 or 4; add 1 to the appropriate total. output the name of the candidate voted for or output \u2018invalid vote\u2019 if a vote is rejected. task 3 \u2013 show the result when all the votes have been cast, display the candidates\u2019 names with their totals in descending  order of totals.  if there is a clear winner, display the candidate\u2019s name with the words \u2018new class captain\u2019 beside it; otherwise display \u2018no overall winner\u2019.",
            "3": "3 0478/21/o/n/16 \u00a9 ucles 2016 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   for four of the variables, constants or arrays that you used in task 1,  state the name, data  structure, data type and its use. name 1  .. data structure   data type . .. use ... . name 2  .. data structure   data type . .. use ... . name 3  .. data structure   data type . .. use ... . name 4  .. data structure   data type . .. use ... .[8]",
            "4": "4 0478/21/o/n/16 \u00a9 ucles 2016 (b) write an algorithm to complete task 2 , using either  pseudocode, programming statements  or a flowchart . y ou can assume that task 1 has been completed and that there are three  candidates for class captain.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .   . .  .. .  .. .  .. .  .. .  .. .  .. .[4]",
            "5": "5 0478/21/o/n/16 \u00a9 ucles 2016 [turn over (c) explain how you show the result ( task 3 ). y ou may include programming statements as part  of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[6]  (d) explain how you could extend your solution to deal with the case of \u2018no overall winner\u2019.  .. .  .. .  .. .  .. .[2]",
            "6": "6 0478/21/o/n/16 \u00a9 ucles 2016section b 2 read this section of program code that:  \u0081 inputs 10 numbers   \u0081 checks whether each number is within a specified range \u0081 totals the numbers within the range and outside the range  1 inrange = 0  2 outrange = 1000 3 for count = 1 to 10 4    input num 5    if num > 10 and num < 20 then inrange = inrange + 1 6      else outrange = outrange - 1 7 count = count + 1 8 next x 9 print inrange, outrange  (a) there are four errors in this code.   locate these errors and suggest a correction to remove each error. error 1 ... . correction  ..  .. . error 2 ... . correction  ..  .. . error 3 ... . correction  ..  .. . error 4 ... . correction  ..  .. .[4]",
            "7": "7 0478/21/o/n/16 \u00a9 ucles 2016 [turn over (b) decide, with reasons, whether the numbers 10 and 20 are within or outside the range. numberwithin  range (\u2713)outside  range (\u2713)reason 10 \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. 20 \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026..  [4]",
            "8": "8 0478/21/o/n/16 \u00a9 ucles 20163 the flowchart below inputs the price of an item under $10. the change from a $10 note is output.  any amount less than 5 cents is rounded up to 5 cents.  the predefined function int rounds a number down to the nearest whole number; for example  z \u2190 int(5.7)  gives the value z = 5 start input price is change >= 1?yes yes nono noyeschange   10 \u2013 price endoutput tencents, \" ten cent coins\"is change >= 0.5? is change*10 \u2013 tencents > 0?dollars   int(change) change   change \u2013 0.5change   change \u2013 int(change) tencents   int(change * 10 + 0.5)output dollars, \" dollars\" output \"one 50 cent coin\" output \"one 5 cent coin\"",
            "9": "9 0478/21/o/n/16 \u00a9 ucles 2016 [turn over complete the trace table for the input data: 6.29 price change dollars tencents output  [5] 4 four validation checks and four descriptions are shown below.  draw a line to link each validation check to the correct description. validation check description presence checknumbers between two given values are accepted range checkdata is of a particular  specified type type checkdata contains an exact  number of characters length checkensures that some data have been entered  [3]",
            "10": "10 0478/21/o/n/16 \u00a9 ucles 20165 repeat ... until   and   while ... do ... endwhile are two different loop  structures you can use when writing pseudocode.  explain, using examples, why you would choose to use each type of loop. example 1 .   ..   ..   ..  reason for choice .   ..   ..  example 2 .   ..   ..   ..  reason for choice .   ..   .. [6]",
            "11": "11 0478/21/o/n/16 \u00a9 ucles 20166 a database, theatretours, was set up to show the tour dates, towns, number of seats and  prices in local currency for a shakespeare play. town tour date number of seats price local currency wigan 18/08/2016 120 15.00dumfries 20/08/2016 160 12.50turin 25/08/2016 200 17.00macon 27/08/2016   75 18.00bordeaux 29/08/2016 170 20.00algiers 01/09/2016 125           1350.00windhoek 05/09/2016   65 90.00windhoek 06/09/2016   65 90.00port elizabeth 10/09/2016 200             110.00  (a) explain why none of the fields in the database can be used as a primary key.  .. .  .. .  .. .[2]  (b) state a field that could be added as a primary key.  .. .   give a reason for choosing this field.  .. .  .. .[2]  (c) use the query-by-example grid below to provide a list of tour dates and seat prices in  alphabetical order of town. field: table: sort: show: criteria: or:  [4]",
            "12": "12 0478/21/o/n/16 \u00a9 ucles 2016permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w16_qp_22.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (nf/fd) 126910/4 r \u00a9 ucles 2016 [turn overcambridge international examinations cambridge international general certificate of secondary education *1035112342* computer science  0478/22 paper 2 problem-solving and programming october/november 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.",
            "2": "2 0478/22/o/n/16 \u00a9 ucles 2016section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material the manager of a supermarket needs a program to record donations to charity. each customer has  the choice of three charities to donate to, and 1% of the ir shopping bill will be donated to the chosen  charity. write and test a program for the manager.\u0081 y our program must include appropriate prompts for the entry of data. \u0081 error messages and other output need to be set out clearly.\u0081 all variables, constants and other identifiers must have meaningful names. y ou will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 set up the donation systemset up a routine that allows: \u0081 the names of three charities to be input and stored\u0081 the charity names to be displayed with a number (1, 2 or 3) beside each name\u0081 a choice of 1, 2 or 3 to be entered to choose the charity, all other entries rejected\u0081 the value of a customer\u2019s shopping bill to be entered\u0081 the donation to be calculated\u0081 three totals to be set to zero ready to total each charity donation task 2 \u2013 record and total each donation for a customer\u2019s shopping bill: \u0081 input a charity choice of 1, 2 or 3\u0081 input the value of a customer\u2019s shopping bill\u0081 calculate the donation\u0081 add the donation to the appropriate total output the name of the charity and the amount donated.task 3 \u2013 show the totals so farextend task 2 to accept: \u0081 donations from more customers\u0081 a charity choice of -1 to show the totals so far display the charities\u2019 names and the totals in descending order of totals. calculate a grand total of all three totals.output \u2018grand total donated to charity\u2019 and the amount of the grand total.",
            "3": "3 0478/22/o/n/16 \u00a9 ucles 2016 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   (i) for three  of the variables that you have used in task 1 , state the name, type and its use. variable 1 name  .. .. type  . .. use  .. .. variable 2 name  .. .. type  . .. use  .. .. variable 3 name  .. .. type  . .. use  .. . [3]   (ii) name and describe the data structure(s) that you have used to store the donation totals  for each charity. explain why you chose your data structure(s). name of data structure(s)  .description  .. ..  .. . reason  ... ...  ..  [3]",
            "4": "4 0478/22/o/n/16 \u00a9 ucles 2016 (b) write an algorithm to complete task 2 , using either  pseudocode, programming statements  or a flowchart. y ou can assume that task 1 has been completed.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  ..  [5]",
            "5": "5 0478/22/o/n/16 \u00a9 ucles 2016 [turn over (c) explain how you show the totals so far ( task 3 ). y ou may include programming statements as  part of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  ..  [6]  (d) explain how you would change your solution for task 1 to allow the number of charities to be  set to two, three or four by the manager.  .. .  .. .  .. .  .. .  .. .  .. .  ..  [3]",
            "6": "6 0478/22/o/n/16 \u00a9 ucles 2016section b 2 read this section of program code that inputs positive numbers, discards any negative numbers  and then outputs the average. an input of zero ends the process.  1  total = 0  2  counter = 100 3  repeat 4    repeat 5      input num 6    until num < 0 7    total = total + 1 8    counter = counter + num 9  until num = 0 10 average = total / (counter - 1) 11 print average  there are four errors in this code. locate these errors and suggest a correction to remove each error. error 1  ..  correction  .  ..  error 2  ..  correction  .  ..  error 3  ..  correction  .  ..  error 4  ..  correction  .  .. ... [8]",
            "7": "7 0478/22/o/n/16 \u00a9 ucles 2016 [turn over3 the flowchart below inputs an integer. the predefined function div gives the value of the division,  for example z \u2190 11 div 3  gives the value z = 3 . the predefined function mod gives the value  of the remainder, for example z \u2190 11 mod 3  gives the value z = 2 . 67$57 ,1387\u0003; 287387\u0003% (1'<hv1r 287387\u0003; ;$,v\u0003;\u0003! \u001b\" $ %;\u0003',9\u0003\u001b ;\u000302'\u0003\u001b  complete a trace table for each of the two input values 33 and 75.  trace table for input value 33 x a b output  trace table for input value 75 x a b output [4]",
            "8": "8 0478/22/o/n/16 \u00a9 ucles 20164 if ... then ... else ... endif  and case ... of ... otherwise ... endcase  are two different conditional statements that you can use when writing pseudocode.  explain, using examples, why you would choose to use each conditional statement. example 1     ..   ..   ..   ..   ..  reason for choice     ..   ..  example 2     ..   ..   ..   ..   ..  reason for choice     ..   .. ... [6]",
            "9": "9 0478/22/o/n/16 \u00a9 ucles 2016 [turn overquestion 5 begins on page 10.",
            "10": "10 0478/22/o/n/16 \u00a9 ucles 20165 a database, playproduction, was set up to show the performance dates, prices and number  of seats available at a theatre specialising in shakespeare productions. playperformance  datenumber  seats stallsnumber  seats  circleprice stalls  seats $price circle  seats $ as y ou like it 01/07/2016 120  90 20.00 30.00 as y ou like it 02/07/2016  85  45 30.00 40.00as y ou like it 09/07/2016  31   4 30.00 40.00macbeth 14/07/2016 101  56 25.00 35.00macbeth 15/07/2016  50  34 25.00 35.00macbeth 16/07/2016  12   5 35.00 50.00julius caesar 22/07/2016  67 111 20.00 20.00julius caesar 23/07/2016  21  24 15.00 15.00a comedy of errors 30/07/2016  45  36 35.00 45.00  (a) give the number of fields that are in each record.  ..  [1]  (b) state the data type you would choose for each of the following fields. play  . . number seats stalls  ... price stalls seats $   [3]  (c) the query-by-example grid below selects all the productions with more than 100 seats left in  either the stalls or the circle. field: play performance date number seats stalls number seats circle table: playproduction playproduction playproduction playproduction sort: ascending show: \uf0fc \uf0fc criteria:  > 100 or: > 100   show what would be output from the query-by-example.  .. .  .. .  ..  [3]",
            "11": "11 0478/22/o/n/16 \u00a9 ucles 2016 (d) complete the query-by-example grid below to select all the productions with at least six seats  left in the circle and show the play, performance date and price circle seats $ in performance date order. field: table: sort: show: criteria: or: [5]",
            "12": "12 0478/22/o/n/16 \u00a9 ucles 2016blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        },
        "0478_w16_qp_23.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (lk/sw) 125705/1 \u00a9 ucles 2016 [turn overcambridge international examinations cambridge international general certificate of secondary education *8464466718* computer science  0478/23 paper 2 problem-solving and programming october/november 2016  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. y ou may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. y ou are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificat e.",
            "2": "2 0478/23/o/n/16 \u00a9 ucles 2016section a you are advised to spend no longer than 40 minutes answering this section.here is a copy of the pre-release material.do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material the headteacher of a school needs a program to record and count the votes for a class captain.  each student in the class will be allowed one vote. there can be up to 30 students in a class. write and test a program for the headteacher.\u0081 y our program must include appropriate prompts for the entry of data.  \u0081 error messages and other output need to be set out clearly. \u0081 all variables, constants and other identifiers must have meaningful names.  y ou will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 set up the voting each class can choose from up to four different students as candidates for their class captain.  set  up a routine that allows: \u0081 between two and four different candidate names to be input and stored \u0081 the candidate names to be displayed with a number (1, 2, 3 or 4) beside each name\u0081 a choice of 1, 2, 3 or 4 to be entered to record a vote; all other entries are rejected\u0081 up to four totals set to zero ready to record the votes\u0081 a maximum of 30 votes to be cast task 2 \u2013 record and count each vote input a number 1, 2, 3 or 4; add 1 to the appropriate total. output the name of the candidate voted for or output \u2018invalid vote\u2019 if a vote is rejected. task 3 \u2013 show the result when all the votes have been cast, display the candidates\u2019 names with their totals in descending  order of totals.  if there is a clear winner, display the candidate\u2019s name with the words \u2018new class captain\u2019 beside it; otherwise display \u2018no overall winner\u2019.",
            "3": "3 0478/23/o/n/16 \u00a9 ucles 2016 [turn over1 (a) all variables, constants and other identifiers should have meaningful names.   for four of the variables, constants or arrays that you used in task 1 , state the name, data  structure, data type and its use. name 1  .. data structure   data type . .. use ... . name 2  .. data structure   data type . .. use ... . name 3  .. data structure   data type . .. use ... . name 4  .. data structure   data type . .. use ... .[8]",
            "4": "4 0478/23/o/n/16 \u00a9 ucles 2016 (b) write an algorithm to complete task 2 , using either  pseudocode, programming statements  or a flowchart . y ou can assume that task 1 has been completed and that there are three  candidates for class captain.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .   . .  .. .  .. .  .. .  .. .  .. .  .. .[4]",
            "5": "5 0478/23/o/n/16 \u00a9 ucles 2016 [turn over (c) explain how you show the result ( task 3 ). y ou may include programming statements as part  of your explanation.  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .  .. .[6]  (d) explain how you could extend your solution to deal with the case of \u2018no overall winner\u2019.  .. .  .. .  .. .  .. .[2]",
            "6": "6 0478/23/o/n/16 \u00a9 ucles 2016section b 2 read this section of program code that:  \u0081 inputs 10 numbers   \u0081 checks whether each number is within a specified range \u0081 totals the numbers within the range and outside the range  1 inrange = 0  2 outrange = 1000 3 for count = 1 to 10 4    input num 5    if num > 10 and num < 20 then inrange = inrange + 1 6      else outrange = outrange - 1 7 count = count + 1 8 next x 9 print inrange, outrange  (a) there are four errors in this code.   locate these errors and suggest a correction to remove each error. error 1 ... . correction  ..  .. . error 2 ... . correction  ..  .. . error 3 ... . correction  ..  .. . error 4 ... . correction  ..  .. .[4]",
            "7": "7 0478/23/o/n/16 \u00a9 ucles 2016 [turn over (b) decide, with reasons, whether the numbers 10 and 20 are within or outside the range. numberwithin  range (\u2713)outside  range (\u2713)reason 10 \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. 20 \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026..  [4]",
            "8": "8 0478/23/o/n/16 \u00a9 ucles 20163 the flowchart below inputs the price of an item under $10. the change from a $10 note is output.  any amount less than 5 cents is rounded up to 5 cents.  the predefined function int rounds a number down to the nearest whole number; for example  z \u2190 int(5.7)  gives the value z = 5 start input price is change >= 1?yes yes nono noyeschange   10 \u2013 price endoutput tencents, \" ten cent coins\"is change >= 0.5? is change*10 \u2013 tencents > 0?dollars   int(change) change   change \u2013 0.5change   change \u2013 int(change) tencents   int(change * 10 + 0.5)output dollars, \" dollars\" output \"one 50 cent coin\" output \"one 5 cent coin\"",
            "9": "9 0478/23/o/n/16 \u00a9 ucles 2016 [turn over complete the trace table for the input data: 6.29 price change dollars tencents output  [5] 4 four validation checks and four descriptions are shown below.  draw a line to link each validation check to the correct description. validation check description presence checknumbers between two given values are accepted range checkdata is of a particular  specified type type checkdata contains an exact  number of characters length checkensures that some data have been entered  [3]",
            "10": "10 0478/23/o/n/16 \u00a9 ucles 20165 repeat ... until   and   while ... do ... endwhile are two different loop  structures you can use when writing pseudocode.  explain, using examples, why you would choose to use each type of loop. example 1 .   ..   ..   ..  reason for choice .   ..   ..  example 2 .   ..   ..   ..  reason for choice .   ..   .. [6]",
            "11": "11 0478/23/o/n/16 \u00a9 ucles 20166 a database, theatretours, was set up to show the tour dates, towns, number of seats and  prices in local currency for a shakespeare play. town tour date number of seats price local currency wigan 18/08/2016 120 15.00dumfries 20/08/2016 160 12.50turin 25/08/2016 200 17.00macon 27/08/2016   75 18.00bordeaux 29/08/2016 170 20.00algiers 01/09/2016 125           1350.00windhoek 05/09/2016   65 90.00windhoek 06/09/2016   65 90.00port elizabeth 10/09/2016 200             110.00  (a) explain why none of the fields in the database can be used as a primary key.  .. .  .. .  .. .[2]  (b) state a field that could be added as a primary key.  .. .   give a reason for choosing this field.  .. .  .. .[2]  (c) use the query-by-example grid below to provide a list of tour dates and seat prices in  alphabetical order of town. field: table: sort: show: criteria: or:  [4]",
            "12": "12 0478/23/o/n/16 \u00a9 ucles 2016permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared w here possible. every reasonable  effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly  been included, the publisher will  be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced onl ine in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to do wnload at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of unive rsity of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        }
    },
    "2017": {
        "0478_m17_qp_12.pdf": {
            "1": "*2603247663* this document consists of 11 printed pages and 1 blank page. dc (cw/jg) 134132/3 \u00a9 ucles 2017  [turn overcomputer science  0478/12 paper 1  theory  february/march 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge international examinations cambridge international general certificate of secondary education the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/f/m/17 \u00a9 ucles 2017 1 name three  different sensors. sensor 1  ... sensor 2  ... sensor 3  ...  [3] 2 the diagram below shows five logic gate symbols and five names.  draw a line between each logic gate symbol and its correct name. andlogic gate symbol name not nor xor nand  [4]",
            "3": "3 0478/12/f/m/17 \u00a9 ucles 2017 [turn over 3 a company has a number of offices on one site. data are transmitted, using a wired network, from  one office and stored at another office.  (a) state, with reasons, which data transmission, serial or parallel, should be used. type  .. reasons  ...  ...  ... [3]  (b) the two registers\u2019 contents shown include parity bits.  parity  bit 1 0 0 1 0 1 1 1 register 1 1 0 0 0 0 1 1 1 register 2   state which type of parity each register is using. register 1  . register 2  . [2]  (c) give one method, other than parity checking, that could be used for checking for errors in the  transmission of data. method  ..  ... [1]",
            "4": "4 0478/12/f/m/17 \u00a9 ucles 2017 4 a simple symmetric encryption system is used to encrypt messages. each letter of the alphabet is  substituted by another letter.  plain text abcdefghijklmnopqrstuvwxyz  cypher text vpnaqbruzscoykwfxiemdjtlhg  (a) convert the following plain text to cypher text.   plain text:  d a t a  s e c u r i t y cypher text:  .. [2]  (b) a new cypher text is created by shifting each letter of the alphabet five places to the right.   show the new cypher text below.   plain text abcdefghijklmnopqrstuvwxyz   new cypher text [2]  (c) state, giving a reason, which cypher text would be more secure.  ...  ...  ...  ... [2] 5 give the meaning of the following terms. html   ...  .. http  ..  ..   https     .. [3]",
            "5": "5 0478/12/f/m/17 \u00a9 ucles 2017 [turn over 6 the diagram shows five operating system functions and five descriptions.  draw a line between each operating system function and its description.  function  description  interrupt  many processes appear to run simultaneously  utility  data are temporarily held in a buffer waiting for an  output device to access it  memory  management  a signal that causes the operating system to take  a specified action  spooling  a program that performs a specific task required  for the operation of a computer system  multitasking  a process of assigning blocks of memory to  programs running in a computer  [4] 7 a high definition video and a large text file are to be sent as email attachments. both files are  compressed before sending. each file is compressed using a different type of data compression  algorithm.  explain, with reasons, which type of data compression algorithm should be chosen for each file.  ..  ..  ..  ..  ..  ..  .. [4]",
            "6": "6 0478/12/f/m/17 \u00a9 ucles 2017 8 a register in a computer contains binary digits. 0 0 1 1 0 1 1 1  (a) the contents of the register could represent a binary integer.   convert the binary integer to denary and hexadecimal. denary  .. hexadecimal  . [2]  (b) the contents of the register could represent the ascii value for the single denary digit \u20187\u2019.  write down the ascii value for \u20189\u2019 in binary, denary and hexadecimal. binary  ... denary  .. hexadecimal  . [3]  (c) write in register x the binary number you would use with and gates to convert the ascii  value of \u20187\u2019 to its binary integer value. 0 0 1 1 0 1 1 1 ascii register x [1] 9 passwords are used to keep data safe.  explain the differences between a text-based password  and a biometric password .  ..  ..  ..  ..  ..  ..  .. [4]",
            "7": "7 0478/12/f/m/17 \u00a9 ucles 2017 [turn over 10 describe the differences between a barcode and a quick response (qr) code.  ..  ..  ..  ..  ..  .. [3] 11 three programmers are working on different projects:  \u2022alice is developing a program written in a low-level language  \u2022akbar is developing a program written in a high-level language  \u2022alex is preparing a program written in a high-level language for sale  state, with reasons, which type of translator each programmer should use. each programmer  should be using a different type of translator. alice  .  ..  ..  .. akbar   ...  ..  ..  .. alex  ..  ..  ..  .. [6]",
            "8": "8 0478/12/f/m/17 \u00a9 ucles 2017 12 (a) identify three  uses for hexadecimal and for each one give an example of hexadecimal that  matches the use. use 1    ... example   use 2    ... example   use 3    ... example   [6]  (b) explain why hexadecimal is used to represent binary numbers.  ...  ...  ...  ...  ...  ... [2]",
            "9": "9 0478/12/f/m/17 \u00a9 ucles 2017 [turn over 13 (a) explain what is meant by primary, secondary and off-line storage. give an example of each. primary storage    ...  ... example   secondary storage  ...  ...  ... example   off-line storage  .  ...  ... example   [6]  (b) a set of photographs has been taken for a wedding. all the guests are to be sent digitally  stored copies through the ordinary postal service. there are fifty photographs and each  photograph is between 1.8 and 2.5 megabytes in size.   work out the maximum storage space required for a set of photographs. state, with a reason,  a suitable medium to use for the copies to be sent to the guests. maximum storage space  ..  ... medium  . reason  .  ...  ... [3]",
            "10": "10 0478/12/f/m/17 \u00a9 ucles 2017 14 a system controls the flow of vehicles through a barrier based on three lights, a, b and c.   when a light is red, the signal is zero. when a light is green, the signal is one.  the barrier will open when the output x is one.  the barrier opens if either:  \u2022light a is red and lights b and c are both green    or  \u2022light a is green and lights b and c are both red  (a) design a logic circuit for the system. a b cx  [5]",
            "11": "11 0478/12/f/m/17 \u00a9 ucles 2017  (b) complete the truth table for the system given at the start of question 14. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "12": "12 0478/12/f/m/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_m17_qp_22.pdf": {
            "1": "*7734263801* this document consists of 10 printed pages and 2 blank pages. dc (slm/sw) 134136/3 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/22 paper 2  problem-solving and programming  february/march 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/22/f/m/17 \u00a9 ucles 2017 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question  1. pre-release material an experiment has taken place which measures the reaction speeds of students. each student is  aged from 12 to 16, and belongs to a school house (saturn or mars). a program is required to store  the age, school house and reaction time of each student in the school. there are 650 students in the  school. the program should be able to output the reaction times of different student groups. write and test a program for the school.  \u2022 your program must include appropriate prompts for the entry of data.  \u2022 error messages and other output need to be set out clearly.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013  set up arrays and store records set up one-dimensional arrays for the whole school to store the following data: \u2022 the age of each student in whole years \u2022 the school house of each student \u2022 the reaction time of each student input and store the records for an appropriate sample  of students. inputs must be validated on  entry and any invalid inputs rejected. task 2 \u2013  output school house based statistics using your sample, calculate and output the average reaction times for students in saturn and  students in mars.  task 3 \u2013  output statistics based on user input extend your program to prompt users to input a specific age and school house. using only records  that match the criteria input, the program should identify, calculate and output: \u2022 the average reaction time \u2022 the slowest reaction time the output should include a suitable message for each of the reaction times identified.",
            "3": "3 0478/22/f/m/17 \u00a9 ucles 2017 [turn over 1  (a) all variables and other identifiers should have meaningful names.   (i)  declare the array used to store the reaction times for the whole school.  ... [1]   (ii)  change this declaration so the array can only hold records for a sample of 50  students.  ... [1]   (iii)  explain why an array is an effective data structure for storing the reaction time records.  ...  ...  ...  ... [2]  (b) write an algorithm to complete task  1 for the whole school, using either pseudocode,  programming statements or a flowchart. do not include any validation routines.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "4": "4 0478/22/f/m/17 \u00a9 ucles 2017  (c) identify three  different types of test data you used to test the validation checks on the age  input in task  1. for each type, give an example of appropriate data. type of test data example data  [6]  (d) explain how you calculated and outputted the average reaction time based on the user  inputs of age and school house, as part of task  3. any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "5": "5 0478/22/f/m/17 \u00a9 ucles 2017 [turn over  (e) explain how you would change your solution to task  3 to output the age of the student with  the fastest reaction time.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [2]",
            "6": "6 0478/22/f/m/17 \u00a9 ucles 2017 section b 2 read this section of code that inputs the ages of people entering an event. the input sequence is  ended by inputting a negative value for age. the code outputs the number of people at the event  over the age of 18. 01 num18 = 0 02 input age 03 while age >= 0 do 04     if age >= 18 then 05         num18 = num18 + age 06     endif 07 endwhile 08 print num18 - age   there are four errors in this code.  locate these errors and suggest code correction to remove each error. error 1  ... correction ..  .. error 2  ... correction ..  .. error 3  ... correction ..  .. error 4  ... correction ..  ..  [4]",
            "7": "7 0478/22/f/m/17 \u00a9 ucles 2017 [turn over 3  there is a program that stores the following data: \u2022 employeeid, an employee id which must be two letters followed by 4 numbers, e.g. ty4587 \u2022 manager, whether the employee is a manager or not \u2022 annualholiday, number of whole days\u2019 annual holiday \u2022 paygrade, the employee\u2019s pay grade which must be a single letter a\u2013f  complete the following table to identify: \u2022 the most  appropriate data type for each variable \u2022 an appropriate validation check for each variable. you must use a different validation check  for each variable.  variable data type appropriate validation check   employeeid  manager annualholiday paygrade  [8]",
            "8": "8 0478/22/f/m/17 \u00a9 ucles 2017 4 study the flowchart.   start endis a > 0 ? is c <= 1 ?input a b   a c   ab   b + a c   c \u2013 1output b output 'exit'no noyes yes  complete the trace table for the input values 4, 3, \u22121: a b c output  [4]",
            "9": "9 0478/22/f/m/17 \u00a9 ucles 2017 [turn over 5 (a) rewrite the following pseudocode algorithm using a while \u2026 do \u2026 endwhile  loop.  input num for counter \u2190 1 to 12  num \u2190 num * counter  a[counter] \u2190 num next  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]  (b) explain the differences between a while \u2026 do \u2026 endwhile  and a repeat \u2026 until   loop.   ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "10": "10 0478/22/f/m/17 \u00a9 ucles 2017 6 a database table, device, has been set up to record the electronic equipment used in a small  business. device id device type user purchase  datepurchase  price ($)portable 3 desktop alan swales 14/02/2017 1350.00 n 4 laptop chantel law 01/02/2016 1460.00 y 5 tablet abdula saud 31/12/2016 1000.00 y 6 desktop abdula saud 14/03/2017 1000.00 n 7 laptop alan swales 15/03/2016 1700.00 y 8 tablet taona jaji 16/12/2016 470.00 y  (a) the query-by-example grid below selects certain records. field: user portable purchase price ($) table: device device device sort: ascending show: 3 criteria: y >1000 or:   show what would be the output from the query-by-example.   ...  ...  ... [2]  (b) complete the query-by-example grid below to select all desktop devices that were either  purchased before 31/12/2016 or cost under $1000. only show the device id and device  type.    field: table: sort: show: criteria: or:  [4]",
            "11": "11 0478/22/f/m/17 \u00a9 ucles 2017 blank page",
            "12": "12 0478/22/f/m/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s17_qp_11.pdf": {
            "1": "this document consists of 12 printed pages. dc (lk/sg) 125857/3 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education *3771200479* computer science  0478/11 paper 1  theory  may/june 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/11/m/j/17 \u00a9 ucles 2017 1 the memory of a computer contains data and instructions in binary.  the following instruction is stored in a location of the memory. 0 0 1 0 1 0 0 1 1 1 1 1 1 1 0 0  (a) convert the instruction into hexadecimal.  ...  ...  ...  [2]  (b) explain why a programmer might prefer to read the instruction in hexadecimal rather than in  binary.  ...  ...  ...  ...  [2]  (c) give two other uses of hexadecimal. use 1    ... use 2    ...  [2] 2 programmers can use a high-level language to write a computer program.  (a) explain what is meant by the term \u2018high-level language\u2019.  ...  ...  ...  ...  [2]",
            "3": "3 0478/11/m/j/17 \u00a9 ucles 2017 [turn over  (b) a program written in a high-level language is translated into machine code. this is so that it  can be processed by a computer.   name one type of translator that can be used.  ..  [1]  (c) describe how your answer to part (b)  translates this program.  ...  ...  ...  ...  ...  ...  ..  [3] 3 steffi has a number of files of different sizes that contain her work.   tick (3) to show whether each statement is true or false . statementtrue (3)false (3) 47kb is larger than 10mb. 250bytes is smaller than 0.5mb. 50gb is larger than 100mb. 1tb is smaller than 4gb.  [4]",
            "4": "4 0478/11/m/j/17 \u00a9 ucles 2017 4 five statements about serial half-duplex  data transmission are shown in the table below.  tick (3) to show whether each statement is true or false . statementtrue (3)false (3) data is transmitted in one direction only, one bit at a time. data is transmitted in both directions, multiple bits at a time. data is transmitted in one direction only, multiple bits at a time. data is transmitted in both directions, but only one direction at a  time. data is transmitted one bit at a time. data is transmitted in both directions, but only one direction at a  time. data is transmitted multiple bits at a time.  [5]",
            "5": "5 0478/11/m/j/17 \u00a9 ucles 2017 [turn over 5 (a) parity checks are often used to detect errors that may occur during data transmission.   the received bytes in the table below were transmitted using odd parity .   tick (3) to show whether each byte has been corrupted during transmission  or not  corrupted during transmission . received bytecorrupted  during  transmission (3)not corrupted  during  transmission (3) 10110100 01101101 10000001  [3]  (b) another method of error detection is automatic repeat request (arq).   explain how arq is used in error detection.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "6": "6 0478/11/m/j/17 \u00a9 ucles 2017 6 signals are sent to and from the components of a processor using buses.  identify and describe the purpose of two different buses.  bus 1  purpose    ..  ..  ..  ..  ..  bus 2  purpose    ..  ..  ..  ..  ..  [6]",
            "7": "7 0478/11/m/j/17 \u00a9 ucles 2017 [turn over 7 six security terms and six statements are listed below.  draw a line to match the security term with the most appropriate statement. scrambles data for secure transmission.provides a secure connection between  web browsers and websites allowing  secure transmission of private data.encryptionstatement security term computer that acts as an intermediary  between a web browser and the  internet. legitimate-looking email is sent in the  hope of gathering personal information;  it requires the user to click on a link in  the email. uses rules and criteria, set by the user,  to help protect a network or system from  unauthorised access. malicious code installed on the hard  drive of a user\u2019s computer; this code  will redirect the user to a fake website  without the user\u2019s knowledge.secure socket  layer (ssl) pharming phishing firewall proxy server  [5]",
            "8": "8 0478/11/m/j/17 \u00a9 ucles 2017 8 complete the paragraph by choosing six correct terms from the list. \u2022 optical \u2022 on-line \u2022 ram \u2022 hdd \u2022 primary \u2022 ssd \u2022 secondary \u2022 rom \u2022 off-line  a computer has two different types of memory.  memory is not directly  accessed by the cpu, but it allows a user to store data that can easily be accessed by applications.   two examples of this type of memory are  and   . the  second type of memory is  memory. this memory is directly accessed by  the cpu. it allows the processor to access data and instructions that are stored in this memory.  two examples of this memory are  and   .  [6]",
            "9": "9 0478/11/m/j/17 \u00a9 ucles 2017 [turn over 9 a supermarket has a system that allows customers to check out their own shopping.   identify and describe the purpose of two input devices and one output device used in this system. input device 1  ... purpose    ..  .. input device 2  ... purpose    ..  .. output device 1   purpose    ..  ..  [6] 10 (a)  complete the truth table for the nor gate. a bx a b output (x) 0 0 0 1 1 0 1 1 [1]  ",
            "10": "10 0478/11/m/j/17 \u00a9 ucles 2017  (b) write a logic statement that corresponds with the following logic circuit. a b cx x  =   .  [3] 11 state three  functions provided by an operating system. function 1    ..  .. function 2    ..  .. function 3    ..  ..  [3]",
            "11": "11 0478/11/m/j/17 \u00a9 ucles 2017 [turn over 12 the processes in a chemical factory are monitored by sensors connected to a microprocessor.   (a) identify two different sensors used in this application. give an example of how each sensor  could be used in the chemical factory. sensor 1  ... use  ...  ... sensor 2  ... use  ...  ...  [4]  (b) describe how the sensors and a microprocessor are used to monitor a process.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [5]",
            "12": "12 0478/11/m/j/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.13 (a) gurdeep wants to send a large file to jennifer over the internet.     state two benefits of compressing the file to send it. benefit 1  ...  ...  ... benefit 2  ...  ...  ...  [2]  (b) two types of compression are lossy and lossless.   choose the most suitable type of compression for the following and explain your choice.     (i) downloading the code for a computer program: type of compression  . explanation  ...  ...  ...  ... [3]   (ii) streaming a video file: type of compression  . explanation  ...  ...  ...  ... [3]"
        },
        "0478_s17_qp_12.pdf": {
            "1": "*4572477158* this document consists of 12 printed pages. dc (cw/jg) 134134/3 \u00a9 ucles 2017 [turn overcomputer science 0478/12 paper 1 theory may/june 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required.no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen.you may use an hb pencil for any diagrams, graphs or rough working.do not use staples, paper clips, glue or correction fluid.do not write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [ ] at the end of each question or part question. the maximum number of marks is 75.cambridge international examinations cambridge international general certificate of secondary education the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/m/j/17 \u00a9 ucles 2017 1 name three different buses that are used in the fetch-execute cycle. bus 1   bus 2   bus 3   [3] 2 give two examples of primary, secondary and off-line storage.  primary example 1  example 2    secondary example 1  example 2    off-line example 1  example 2   [6]",
            "3": "3 0478/12/m/j/17 \u00a9 ucles 2017 [turn over 3 the diagram shows five output devices and five descriptions.  draw a line between each output device and its description.  output device description  inkjet printer  flat panel display that uses the light modulating  properties of liquid crystals.  lcd screen  flat panel display that uses an array of  light\u2011emitting diodes as pixels.  2d cutter  droplets of ink are propelled onto paper.  led screen  electrically charged powdered ink is transferred  onto paper.  laser printer  high powered laser that uses the x\u2011y plane.  [4]",
            "4": "4 0478/12/m/j/17 \u00a9 ucles 2017 4 there are various methods used to detect errors that can occur during data transmission and  storage.  describe each of the following error detection methods. parity check ..  ..  ..  ..check digit  ...  .. .. .. checksum    ..  ..  ..automatic repeat request (arq)    .. .. .. [8]",
            "5": "5 0478/12/m/j/17 \u00a9 ucles 2017 [turn over 5 (a) the denary number 57 is to be stored in two different computer registers.    convert 57 from denary to binary and show your working.  ...  ... ...  ... [2]  (b) show the binary number from part (a) as it would be stored in the following registers. register 1 register 2 [2]  (c) a binary number stored in a register can have many different uses, for example an address in  main memory.   give two other uses for a binary number stored in a register. use 1   use 2   [2]  (d) a register in a computer contains binary digits. 0 0 1 1 1 0 1 0   the contents of the register represent a binary integer.   convert the binary integer to hexadecimal. ...  ... [1]",
            "6": "6 0478/12/m/j/17 \u00a9 ucles 2017 6 airline boarding passes can be read from a smartphone instead of a printout. back boarding pass passenger boarding group flight  683 date thursday, november 10, 2016 8.15 pmc4departs gate time, gate and terminals may change - check monitorsjfk \u2013 laxboarding positionwebb  / alan fly rewards fly rewards# 12345678 conf# bc123db 15a tsa pre  identify what type of barcode a is an example of. explain how the data stored in this type of  barcode is read.  ..  .. ..  ..  .. ..  ..  .. [4]",
            "7": "7 0478/12/m/j/17 \u00a9 ucles 2017 [turn over 7 computer a is communicating with computer b.  (a) draw an arrow or arrows to show simplex, duplex and half-duplex data transmission. the  direction of the data transmission must be fully labelled. simplex data transmission computer a             computer b duplex data transmission computer a             computer b half-duplex data transmission computer a             computer b  [6]  (b) state a use for the following data transmission methods. the use must be different for each  data transmission method. simplex  . ... duplex  ..  ... [2]",
            "8": "8 0478/12/m/j/17 \u00a9 ucles 2017  (c) a computer includes an integrated circuit (ic) and a universal serial bus (usb) for data  transmission.   describe how the computer uses these for data transmission, including the type of data transmission used. ic  .. ...  ...  ... usb  ..  ... ...  ... [4]",
            "9": "9 0478/12/m/j/17 \u00a9 ucles 2017 [turn over 8 a company has a number of offices around the world.   (a) data is transmitted between the offices over the internet. in order to keep the data safe the  company is using secure socket layer (ssl) protocol and a firewall at each office.   explain how ssl protocol and a firewall will keep the company\u2019s data safe. ssl protocol  .  ...  ...firewall  .  ... ... [4]  (b) a company stores personal details of its customers on a computer system behind a firewall.   explain, with reasons, what else the company should do to keep this data safe. ...  ...  ... ...  ...  ...  ...  ... ...  ...  ... [6]",
            "10": "10 0478/12/m/j/17 \u00a9 ucles 2017 9 a cold store is kept at a constant low temperature using a sensor, a microprocessor and a cooling  unit.  explain how the sensor and microprocessor will maintain a constant low temperature.  .. ..  ..  .. ..  ..  .. ..  ..  ..  ..  .. [6]",
            "11": "11 0478/12/m/j/17 \u00a9 ucles 2017 [turn over 10 for this logic statement: x = 1 if (( a is 1 and b is 1 ) or ( b is 1 and c is not 1 ))  (a) draw the logic circuit. a b x c [4]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "12": "12 0478/12/m/j/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.11 a company sells smartphones over the internet.  explain how the information stored on the company\u2019s website is requested by the customer, sent  to the customer\u2019s computer and displayed on the screen.  .. ..  ..  .. ..  ..  .. ..  ..  ..  ..  .. ..  .. [7]"
        },
        "0478_s17_qp_13.pdf": {
            "1": "this document consists of 12 printed pages. dc (kn/sg) 144781 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education *2499620558* computer science  0478/13 paper 1  theory  may/june 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/13/m/j/17 \u00a9 ucles 2017 1 the memory of a computer contains data and instructions in binary.  the following instruction is stored in a location of the memory. 0 0 1 0 1 0 0 1 1 1 1 1 1 1 0 0  (a) convert the instruction into hexadecimal.  ...  ...  ...  [2]  (b) explain why a programmer might prefer to read the instruction in hexadecimal rather than in  binary.  ...  ...  ...  ...  [2]  (c) give two other uses of hexadecimal. use 1    ... use 2    ...  [2] 2 programmers can use a high-level language to write a computer program.  (a) explain what is meant by the term \u2018high-level language\u2019.  ...  ...  ...  ...  [2]",
            "3": "3 0478/13/m/j/17 \u00a9 ucles 2017 [turn over  (b) a program written in a high-level language is translated into machine code. this is so that it  can be processed by a computer.   name one type of translator that can be used.  ..  [1]  (c) describe how your answer to part (b)  translates this program.  ...  ...  ...  ...  ...  ...  ..  [3] 3 steffi has a number of files of different sizes that contain her work.   tick (3) to show whether each statement is true or false . statementtrue (3)false (3) 47kb is larger than 10mb. 250bytes is smaller than 0.5mb. 50gb is larger than 100mb. 1tb is smaller than 4gb.  [4]",
            "4": "4 0478/13/m/j/17 \u00a9 ucles 2017 4 five statements about serial half-duplex  data transmission are shown in the table below.  tick (3) to show whether each statement is true or false . statementtrue (3)false (3) data is transmitted in one direction only, one bit at a time. data is transmitted in both directions, multiple bits at a time. data is transmitted in one direction only, multiple bits at a time. data is transmitted in both directions, but only one direction at a  time. data is transmitted one bit at a time. data is transmitted in both directions, but only one direction at a  time. data is transmitted multiple bits at a time.  [5]",
            "5": "5 0478/13/m/j/17 \u00a9 ucles 2017 [turn over 5 (a) parity checks are often used to detect errors that may occur during data transmission.   the received bytes in the table below were transmitted using odd parity .   tick (3) to show whether each byte has been corrupted during transmission  or not  corrupted during transmission . received bytecorrupted  during  transmission (3)not corrupted  during  transmission (3) 10110100 01101101 10000001  [3]  (b) another method of error detection is automatic repeat request (arq).   explain how arq is used in error detection.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "6": "6 0478/13/m/j/17 \u00a9 ucles 2017 6 signals are sent to and from the components of a processor using buses.  identify and describe the purpose of two different buses.  bus 1  purpose    ..  ..  ..  ..  ..  bus 2  purpose    ..  ..  ..  ..  ..  [6]",
            "7": "7 0478/13/m/j/17 \u00a9 ucles 2017 [turn over 7 six security terms and six statements are listed below.  draw a line to match the security term with the most appropriate statement. scrambles data for secure transmission.provides a secure connection between  web browsers and websites allowing  secure transmission of private data.encryptionstatement security term computer that acts as an intermediary  between a web browser and the  internet. legitimate-looking email is sent in the  hope of gathering personal information;  it requires the user to click on a link in  the email. uses rules and criteria, set by the user,  to help protect a network or system from  unauthorised access. malicious code installed on the hard  drive of a user\u2019s computer; this code  will redirect the user to a fake website  without the user\u2019s knowledge.secure socket  layer (ssl) pharming phishing firewall proxy server  [5]",
            "8": "8 0478/13/m/j/17 \u00a9 ucles 2017 8 complete the paragraph by choosing six correct terms from the list. \u2022 optical \u2022 on-line \u2022 ram \u2022 hdd \u2022 primary \u2022 ssd \u2022 secondary \u2022 rom \u2022 off-line  a computer has two different types of memory.  memory is not directly  accessed by the cpu, but it allows a user to store data that can easily be accessed by applications.   two examples of this type of memory are  and   . the  second type of memory is  memory. this memory is directly accessed by  the cpu. it allows the processor to access data and instructions that are stored in this memory.  two examples of this memory are  and   .  [6]",
            "9": "9 0478/13/m/j/17 \u00a9 ucles 2017 [turn over 9 a supermarket has a system that allows customers to check out their own shopping.   identify and describe the purpose of two input devices and one output device used in this system. input device 1  ... purpose    ..  .. input device 2  ... purpose    ..  .. output device 1   purpose    ..  ..  [6] 10 (a)  complete the truth table for the nor gate. a bx a b output (x) 0 0 0 1 1 0 1 1 [1]  ",
            "10": "10 0478/13/m/j/17 \u00a9 ucles 2017  (b) write a logic statement that corresponds with the following logic circuit. a b cx x  =   .  [3] 11 state three  functions provided by an operating system. function 1    ..  .. function 2    ..  .. function 3    ..  ..  [3]",
            "11": "11 0478/13/m/j/17 \u00a9 ucles 2017 [turn over 12 the processes in a chemical factory are monitored by sensors connected to a microprocessor.   (a) identify two different sensors used in this application. give an example of how each sensor  could be used in the chemical factory. sensor 1  ... use  ...  ... sensor 2  ... use  ...  ...  [4]  (b) describe how the sensors and a microprocessor are used to monitor a process.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [5]",
            "12": "12 0478/13/m/j/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.13 (a) gurdeep wants to send a large file to jennifer over the internet.     state two benefits of compressing the file to send it. benefit 1  ...  ...  ... benefit 2  ...  ...  ...  [2]  (b) two types of compression are lossy and lossless.   choose the most suitable type of compression for the following and explain your choice.     (i) downloading the code for a computer program: type of compression  . explanation  ...  ...  ...  ... [3]   (ii) streaming a video file: type of compression  . explanation  ...  ...  ...  ... [3]"
        },
        "0478_s17_qp_21.pdf": {
            "1": "*3811432581* this document consists of 14 printed pages and 2 blank pages. dc (cw/sw) 131977/3 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/21 paper 2  problem-solving and programming  may/june 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/21/m/j/17 \u00a9 ucles 2017 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a teacher is planning a school trip to a theme park at the end of term. you have been asked to write  a program to work out the cost per student, to record those who are going and whether they have  paid. the maximum number of students who can go on the trip is 45. write and test a program for the teacher. \u2022 your program must include appropriate prompts for the entry of data. \u2022 error messages and other output need to be set out clearly. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 work out the cost. the cost of the trip for each student is a share of the cost of a coach plus the cost of entry to the  theme park. the total cost of the coach will be $550. the entry cost to the park is $30 for each  student. the theme park gives one free ticket for every ten that are bought, which must be taken into  consideration. set up a program that: \u2022 stores the cost of the coach \u2022 stores the cost of an entry ticket \u2022  inputs the estimated number of students taking part, this must be validated on entry and an  unsuitable entry rejected \u2022  calculates and outputs the recommended cost per student to ensure the trip does not make a  loss. task 2 \u2013 record the students who are going and whether they have paid. input and store the names of the students who have asked to go on the trip up to the maximum  number allowed. input and store whether each student has paid. enable printouts to be produced to  show students who have not paid and those who have paid. task 3 \u2013 work out final costs. not all students will end up going on the trip, for example they might not have paid. modify the  program so that it gives overall totals for the costs charged and the amount of money collected.  output whether the school trip has made a profit or loss, or has broken even, and the amount of the  final balance.",
            "3": "3 0478/21/m/j/17 \u00a9 ucles 2017 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   (i) name two constants you used for task 1  and state the value of each one. constant 1  . value  . constant 2  . value  . [2]   (ii) name two arrays you used for task 2  and state the purpose of each one. array 1  ... purpose  .  ... array 2  ... purpose  .  ... [2]",
            "4": "4 0478/21/m/j/17 \u00a9 ucles 2017  (b) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/m/j/17 \u00a9 ucles 2017 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "6": "6 0478/21/m/j/17 \u00a9 ucles 2017  (c) (i) name and describe one suitable validation check you used for task 1 , and one suitable  validation check for task 2 . each check must be different. task 1 name  . description    ...  ... task 2 name  . description    ...  ... [4]   (ii) for each validation check in part (c)(i) , give an example of suitable test data and explain  why you chose the test data. test data for (c)(i) task 1   .. reason for choice  .  ...  ... test data for (c)(i) task 2   .. reason for choice  .  ...  ... [4]",
            "7": "7 0478/21/m/j/17 \u00a9 ucles 2017 [turn over  (d) explain how your program calculates whether or not you have made a profit ( task 3 ). any  programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "8": "8 0478/21/m/j/17 \u00a9 ucles 2017 blank page",
            "9": "9 0478/21/m/j/17 \u00a9 ucles 2017 [turn over section b 2 this section of program code asks for 50 numbers to be entered. the total and average of the  numbers are calculated.  1  total = 0  2  counter = 50 \t 3\t\tprint\t\u2032when\tprompted, \tenter\t50\tnumbers, \tone\tat\ta\ttime\u2032  4  repeat \t 5\t\t\t\tprint\t\u2032enter\ta\tnumber\u2032 \t 6\t\t\t\tinput\tnumber \t 7\t\t\t\ttotal\t+\tnumber\t=\ttotal \t 8\t\t\t\tnumber\t=\tnumber\t+\t1  9  until counter = 50 \t 10\taverage \t=\tnumber\t*\tcounter \t 11\t\t print\t\u2032the\taverage\tof\tthe\tnumbers\tyou\tentered\tis\t\u2032,\taverage  there are four errors in this code.  state the line number for each error and write the correct code for that line.  error 1 line number . correct code .  error 2 line number . correct code .  error 3 line number . correct code .  error 4 line number . correct code .  [4]",
            "10": "10 0478/21/m/j/17 \u00a9 ucles 2017 3 a satellite navigation system works using destination details entered by the user, either a new  destination or chosen from previously saved destinations. the satellite navigation system will then  output directions to the destination in the form of either a visual map or a list of directions.  a satellite navigation system is an example of a computer system that is made up of sub-systems.  this structure diagram shows some of its sub-systems.  complete the diagram by filling in the empty boxes. satellite navigation system input destination map list  [2] 4 for each of the four statements in the table, place a tick in the correct column to show whether it  is an example of validation  or verification . statements validation verification to automatically check the accuracy of a bar code to check if the data input is sensible to check if the data input matches the data that has been  supplied to automatically check that all required data fields have been  completed  [4]",
            "11": "11 0478/21/m/j/17 \u00a9 ucles 2017 [turn over 5 (a) describe the purpose of each statement in this algorithm.   for i  1 to 300 \t \t\t\tinput\tname[i]   next i  ...  ...  ...  ...  ... [2]  (b) identify, using pseudocode, another loop structure that the algorithm in part (a)  could have  used.  ...  ... [1]  (c) write an algorithm, using pseudocode, to input a number between 0 and 100 inclusive. the  algorithm should prompt for the input and output an error message if the number is outside  this range.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "12": "12 0478/21/m/j/17 \u00a9 ucles 2017 6 this flowchart inputs a range of temperatures in degrees fahrenheit.  as each temperature is input, it is compared with the previous highest temperature. if it is higher  than the current highest, it replaces the previous highest temperature and then it is converted to  degrees celsius.  for ease of calculation, the final step of the fahrenheit to celsius conversion has been  approximated as division by 2.  when \u20131 is entered, the input process stops and the highest temperature (in both fahrenheit and  celsius) is output. is tempf = -1?is tempf > highf?no no yes yes endhighf    -100 highc    -100 input tempf output 'the highest temperature is, ', highf, ' fahrenheit , ', highc, ' celsius. 'start highf    tempf highc    (tempf-32)/2",
            "13": "13 0478/21/m/j/17 \u00a9 ucles 2017 [turn over complete the trace table for the input data: 68, 46, 50, 86, 65, 50, 40, 30, \u20131 highf highc tempf output  [5]",
            "14": "14 0478/21/m/j/17 \u00a9 ucles 2017 7 a television (tv) store has a database table, tvstock, for its new range of televisions. the table  stores the screen size of each tv, whether it will show 3d, whether the screen is curved or flat,  if the internet is available on the tv, if it has a built-in hard disk drive and the price. part of the  database table is shown below. tvid screensize 3d curvedflat internet hdd price tv80cvint 80 yes cv yes yes $7,000.00 tv65cvint 65 yes cv yes yes $5,000.00 tv60cvint 60 yes cv yes yes $4,500.00 tv60ftint 60 yes ft yes yes $4,000.00 tv55cvint 55 yes cv yes no $3,000.00 tv55ftint 55 yes ft yes no $3,500.00 tv55ftnin 55 yes ft no no $3,000.00 tv50cvint 50 yes cv yes no $2,500.00 tv50ftint 50 yes ft yes no $2,000.00 tv50ftnin 50 yes ft no no $1,750.00 tv42ftint 42 yes ft yes no $1,500.00 tv37ftint 37 no ft yes no $1,200.00 tv20ftnin 20 no ft no no    $800.00 tv15ftnin 15 no ft no no    $400.00  (a) state the type of the field tvid  and give a reason for your choice.  ...  ...  ... [1]  (b) complete the table with the most appropriate data type for each field. field name data type screensize 3d curvedflat internet hdd price  [3]",
            "15": "15 0478/21/m/j/17 \u00a9 ucles 2017  (c) use the query-by-example grid below to provide a list of all of the curved screen tvs that  have a built-in hard disk drive. make sure the list only displays the tvid, the price and the  screen size in ascending order of price. field: table: sort: show: criteria: or:  [5]",
            "16": "16 0478/21/m/j/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s17_qp_22.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (rw/cgw) 132150/3 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education *5416103031* computer science  0478/22 paper 2  problem-solving and programming  may/june 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/22/m/j/17 \u00a9 ucles 2017 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question  1. pre-release material the organiser of a senior citizens\u2019 club arranges outings for the members. for each of these  outings a coach is hired, meals at a restaurant are reserved and tickets for the theatre are booked.  a program  is required to work out the costs and provide a printed list showing everyone on the outing. write and test a program for the club organiser. \u2022 your program must include appropriate prompts for the entry of data. \u2022 error messages and other output need to be set out clearly. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 work out the total cost of the outing. the organiser finds out how many senior citizens would be interested in the outing. the program for  task  1 works out the cost from this information. number of people hire of coach ($) cost of a meal ($) cost of a theatre ticket ($) 12\u201316 150 14.00 21.00 17\u201326 190 13.50 20.00 27\u201339 225 13.00 19.00 the minimum number of senior citizens needed for the outing to go ahead is 10; there cannot be  more than 36 senior citizens on the outing. a minimum of two carers must go on the outing, with an  additional carer needed if more than 24 senior citizens go on the outing. carers do not have to pay  anything for the outing. work out the total cost and the cost per person for the senior citizens. task 2 \u2013 record who is going on the outing and how much has been paid. using your results from task  1, record the names of the people on the outing and the amount they  have paid; include the carers on the outing. if there are spare places on the coach then extra people  can be added; they are charged the same price as other senior citizens. calculate the total amount  of money collected. print out a list of the people on the outing. task 3 \u2013 identify the break-even point or profit that will be made on the outing. show whether the outing has made a profit or has broken even using the estimated cost from task  1  and the money collected from task  2.",
            "3": "3 0478/22/m/j/17 \u00a9 ucles 2017 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   (i) for a variable that you have used to record information about the cost of the outing in  task  1, state the name, data type and its use. variable name   data type   use .  [3]   (ii) state two constants that you could have used for task  1. give the value that would be  assigned to each one and explain what it is used for. constant 1 name   value 1  ... use 1  .. constant 2 name   value 2  ... use 2  ..  [6]  (b) explain how you would need to change your calculation in task  1 if each carer were paid  $20.00 for coming on the outing.  ...  ...  ...  ...  ...  ... [2]",
            "4": "4 0478/22/m/j/17 \u00a9 ucles 2017  (c) write an algorithm to complete task  2, using either  pseudocode, programming statements  or a flowchart. you can assume that task  1 has been completed. you do not need to produce  the list of people on the outing.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/m/j/17 \u00a9 ucles 2017 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "6": "6 0478/22/m/j/17 \u00a9 ucles 2017  (d) explain how your program completes task  3. any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "7": "7 0478/22/m/j/17 \u00a9 ucles 2017 [turn over section b 2 (a) write an algorithm to input three different numbers, and then output the largest number. use  either  pseudocode or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]  (b) give two sets of test data to use with your algorithm in part (a) and explain why you chose  each set. test data set 1  ... reason  ..  ...  ... test data set 2  ... reason  ..  ...  ...  [4]",
            "8": "8 0478/22/m/j/17 \u00a9 ucles 2017 3 this flowchart inputs the weight of items in kilograms to be loaded on a trailer. any item over  25 kilograms is rejected. the trailer can take up to 100  kilograms. input weighttotalweight   0 reject   0start endoutput 'weight of items '   totalweight, ' number of\u2019  items rejected ',rejectis weight \u02c3 25? is totalweight \u02c3 100?totalweight   totalweight + weight totalweight   totalweight \u2013 weightyes yesno noreject   reject + 1",
            "9": "9 0478/22/m/j/17 \u00a9 ucles 2017 [turn over  complete the trace table for the input data:  13, 17, 26, 25, 5, 10, 15, 35, 20, 15 weight reject totalweight output  [5]",
            "10": "10 0478/22/m/j/17 \u00a9 ucles 2017 4 an algorithm has been written in pseudocode to input 100 numbers and print out the sum.  a repeat \u2026 until  loop has been used. \t \t \t count \t\u2190\t0 \t \t \t sum \t\u2190\t0    repeat      input number \t \t \t \t\tsum\t\u2190\tsum\t+\tnumber \t \t \t \t\tcount\t\u2190\tcount\t+\t1    until count > 100    print sum  (a) find the error in the pseudocode and suggest a correction. error  ... correction  .  ...  [2]  (b) rewrite the correct algorithm using a more suitable loop structure.  ...  ...  ...  ...  ...  ...  ... [3]",
            "11": "11 0478/22/m/j/17 \u00a9 ucles 2017 5 a database table, sheep, is used to keep a record of the sheep on a farm. each sheep has a  unique ear tag, earnnnn; n is a single digit. the farmer keeps a record of the date of birth, the  gender and the current weight of each sheep in kilograms.  (a) identify the four fields required for the database. give each field a suitable name and data  type. provide a sample of data that you could expect to see in the field. field 1 name  .. data type  ... data sample  .. field 2 name  .. data type  ... data sample  .. field 3 name  .. data type  ... data sample  .. field 4 name  .. data type  ... data sample  ..  [8]  (b) state the field that you would choose as the primary key.  ... [1]  (c) using the query-by-example grid below, write a query to identify the ear tags of all male  sheep weighing over 10  kilograms. only display the ear tags. field: table: sort: show: criteria: or:  [3]",
            "12": "12 0478/22/m/j/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s17_qp_23.pdf": {
            "1": "*0767296414* this document consists of 14 printed pages and 2 blank pages. dc (st/sw) 143869 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/23 paper 2  problem-solving and programming  may/june 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/23/m/j/17 \u00a9 ucles 2017 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a teacher is planning a school trip to a theme park at the end of term. you have been asked to write  a program to work out the cost per student, to record those who are going and whether they have  paid. the maximum number of students who can go on the trip is 45. write and test a program for the teacher. \u2022 your program must include appropriate prompts for the entry of data. \u2022 error messages and other output need to be set out clearly. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 work out the cost. the cost of the trip for each student is a share of the cost of a coach plus the cost of entry to the  theme park. the total cost of the coach will be $550. the entry cost to the park is $30 for each  student. the theme park gives one free ticket for every ten that are bought, which must be taken into  consideration. set up a program that: \u2022 stores the cost of the coach \u2022 stores the cost of an entry ticket \u2022  inputs the estimated number of students taking part, this must be validated on entry and an  unsuitable entry rejected \u2022  calculates and outputs the recommended cost per student to ensure the trip does not make a  loss. task 2 \u2013 record the students who are going and whether they have paid. input and store the names of the students who have asked to go on the trip up to the maximum  number allowed. input and store whether each student has paid. enable printouts to be produced to  show students who have not paid and those who have paid. task 3 \u2013 work out final costs. not all students will end up going on the trip, for example they might not have paid. modify the  program so that it gives overall totals for the costs charged and the amount of money collected.  output whether the school trip has made a profit or loss, or has broken even, and the amount of the  final balance.",
            "3": "3 0478/23/m/j/17 \u00a9 ucles 2017 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   (i) name two constants you used for task 1  and state the value of each one. constant 1  . value  . constant 2  . value  . [2]   (ii) name two arrays you used for task 2  and state the purpose of each one. array 1  ... purpose  .  ... array 2  ... purpose  .  ... [2]",
            "4": "4 0478/23/m/j/17 \u00a9 ucles 2017  (b) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/m/j/17 \u00a9 ucles 2017 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "6": "6 0478/23/m/j/17 \u00a9 ucles 2017  (c) (i) name and describe one suitable validation check you used for task 1 , and one suitable  validation check for task 2 . each check must be different. task 1 name  . description    ...  ... task 2 name  . description    ...  ... [4]   (ii) for each validation check in part (c)(i) , give an example of suitable test data and explain  why you chose the test data. test data for (c)(i) task 1   .. reason for choice  .  ...  ... test data for (c)(i) task 2   .. reason for choice  .  ...  ... [4]",
            "7": "7 0478/23/m/j/17 \u00a9 ucles 2017 [turn over  (d) explain how your program calculates whether or not you have made a profit ( task 3 ). any  programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "8": "8 0478/23/m/j/17 \u00a9 ucles 2017 blank page",
            "9": "9 0478/23/m/j/17 \u00a9 ucles 2017 [turn over section b 2 this section of program code asks for 50 numbers to be entered. the total and average of the  numbers are calculated.  1  total = 0  2  counter = 50 \t 3\t\tprint\t\u2032when\tprompted, \tenter\t50\tnumbers, \tone\tat\ta\ttime\u2032  4  repeat \t 5\t\t\t\tprint\t\u2032enter\ta\tnumber\u2032 \t 6\t\t\t\tinput\tnumber \t 7\t\t\t\ttotal\t+\tnumber\t=\ttotal \t 8\t\t\t\tnumber\t=\tnumber\t+\t1  9  until counter = 50 \t 10\taverage \t=\tnumber\t*\tcounter \t 11\t\t print\t\u2032the\taverage\tof\tthe\tnumbers\tyou\tentered\tis\t\u2032,\taverage  there are four errors in this code.  state the line number for each error and write the correct code for that line.  error 1 line number . correct code .  error 2 line number . correct code .  error 3 line number . correct code .  error 4 line number . correct code .  [4]",
            "10": "10 0478/23/m/j/17 \u00a9 ucles 2017 3 a satellite navigation system works using destination details entered by the user, either a new  destination or chosen from previously saved destinations. the satellite navigation system will then  output directions to the destination in the form of either a visual map or a list of directions.  a satellite navigation system is an example of a computer system that is made up of sub-systems.  this structure diagram shows some of its sub-systems.  complete the diagram by filling in the empty boxes. satellite navigation system input destination map list  [2] 4 for each of the four statements in the table, place a tick in the correct column to show whether it  is an example of validation  or verification . statements validation verification to automatically check the accuracy of a bar code to check if the data input is sensible to check if the data input matches the data that has been  supplied to automatically check that all required data fields have been  completed  [4]",
            "11": "11 0478/23/m/j/17 \u00a9 ucles 2017 [turn over 5 (a) describe the purpose of each statement in this algorithm.   for i  1 to 300 \t \t\t\tinput\tname[i]   next i  ...  ...  ...  ...  ... [2]  (b) identify, using pseudocode, another loop structure that the algorithm in part (a)  could have  used.  ...  ... [1]  (c) write an algorithm, using pseudocode, to input a number between 0 and 100 inclusive. the  algorithm should prompt for the input and output an error message if the number is outside  this range.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "12": "12 0478/23/m/j/17 \u00a9 ucles 2017 6 this flowchart inputs a range of temperatures in degrees fahrenheit.  as each temperature is input, it is compared with the previous highest temperature. if it is higher  than the current highest, it replaces the previous highest temperature and then it is converted to  degrees celsius.  for ease of calculation, the final step of the fahrenheit to celsius conversion has been  approximated as division by 2.  when \u20131 is entered, the input process stops and the highest temperature (in both fahrenheit and  celsius) is output. is tempf = -1?is tempf > highf?no no yes yes endhighf    -100 highc    -100 input tempf output 'the highest temperature is, ', highf, ' fahrenheit , ', highc, ' celsius. 'start highf    tempf highc    (tempf-32)/2",
            "13": "13 0478/23/m/j/17 \u00a9 ucles 2017 [turn over complete the trace table for the input data: 68, 46, 50, 86, 65, 50, 40, 30, \u20131 highf highc tempf output  [5]",
            "14": "14 0478/23/m/j/17 \u00a9 ucles 2017 7 a television (tv) store has a database table, tvstock, for its new range of televisions. the table  stores the screen size of each tv, whether it will show 3d, whether the screen is curved or flat,  if the internet is available on the tv, if it has a built-in hard disk drive and the price. part of the  database table is shown below. tvid screensize 3d curvedflat internet hdd price tv80cvint 80 yes cv yes yes $7,000.00 tv65cvint 65 yes cv yes yes $5,000.00 tv60cvint 60 yes cv yes yes $4,500.00 tv60ftint 60 yes ft yes yes $4,000.00 tv55cvint 55 yes cv yes no $3,000.00 tv55ftint 55 yes ft yes no $3,500.00 tv55ftnin 55 yes ft no no $3,000.00 tv50cvint 50 yes cv yes no $2,500.00 tv50ftint 50 yes ft yes no $2,000.00 tv50ftnin 50 yes ft no no $1,750.00 tv42ftint 42 yes ft yes no $1,500.00 tv37ftint 37 no ft yes no $1,200.00 tv20ftnin 20 no ft no no    $800.00 tv15ftnin 15 no ft no no    $400.00  (a) state the type of the field tvid  and give a reason for your choice.  ...  ...  ... [1]  (b) complete the table with the most appropriate data type for each field. field name data type screensize 3d curvedflat internet hdd price  [3]",
            "15": "15 0478/23/m/j/17 \u00a9 ucles 2017  (c) use the query-by-example grid below to provide a list of all of the curved screen tvs that  have a built-in hard disk drive. make sure the list only displays the tvid, the price and the  screen size in ascending order of price. field: table: sort: show: criteria: or:  [5]",
            "16": "16 0478/23/m/j/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w17_qp_11.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (nh/sw) 134256/4 \u00a9 ucles 2017  [turn over *1320964509* computer science  0478/11 paper 1 theory  october/november 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge international examinations cambridge international general certificate of secondary education the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/11/o/n/17 \u00a9 ucles 2017 1 a washing machine has a small display screen built into it.  one use of the display screen is to show an error code when a problem has occurred with a  washing cycle.  (a) state whether the display screen is an input , output  or storage device .  ... [1]  (b) the display screen shows a hexadecimal error code: e04   this error code means that the water will not empty out of the washing machine.   convert this error code to binary. [3]  (c) state why hexadecimal is used to display the error code.  ...  ...  ...  ... [1]  (d) identify three  sensors that could be used in the washing machine.   state what each sensor could be used for. sensor 1  ... use  ...  ... sensor 2  ... use  ...  ... sensor 3  ... use  ...  ...  [6]",
            "3": "3 0478/11/o/n/17 \u00a9 ucles 2017 [turn over 2 data files are stored in different file formats.  complete the table by providing a suitable file format for each file type. the first one has been  done for you. file type file format pictures .jpeg text sound video  [3] 3 (a) an example of a uniform resource locator (url) is: http://www.cie.org.uk/index.htm part 1 part 2 part 3   identify the three  parts that make up this url. part 1   part 2   part 3    [3]  (b) describe what is meant by an internet protocol (ip) address.  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "4": "4 0478/11/o/n/17 \u00a9 ucles 2017 4 six components of a computer system and six descriptions are shown.  draw a line to match each component with the most suitable description.    component  description    arithmetic logic  unit (alu) buses control unit (cu) immediate access  store (ias) input/output registers  used to connect together  the internal components  of the cpu. used to carry out  calculations on data. used to temporarily hold  data and instructions  during processing. used to allow interaction  with the computer. used to hold data and  instructions before they  are processed. used to manage the flow  of data through the cpu.  [5]",
            "5": "5 0478/11/o/n/17 \u00a9 ucles 2017 [turn over 5 (a) draw a logic circuit for the logic statement:   x = 1 if ((a is 1 and b is 1) or (a is not 1 and c is 1)) a b x c  [4]",
            "6": "6 0478/11/o/n/17 \u00a9 ucles 2017  (b) draw the symbol for an xor  gate and explain the function of this logic gate. explanation  ...  ...  ...  ...  ...  ... [5] 6 describe the operation of a 2d scanner and a 3d scanner. 2d .  ..  ..  ..  ..  .. 3d .  ..  ..  ..  ..  ..  [6]",
            "7": "7 0478/11/o/n/17 \u00a9 ucles 2017 [turn over 7 six statements about firewalls are shown.  tick (3) to show whether each statement is true or false . statement true (3)false (3) firewalls can monitor incoming and  outgoing traffic. firewalls operate by checking traffic against  a set of rules. firewalls cannot block access to a certain  website. firewalls can be software and hardware. firewalls can act as intermediary servers. firewalls can block unauthorised traffic.  [6]",
            "8": "8 0478/11/o/n/17 \u00a9 ucles 2017 8 (a) data is valuable. it needs to be kept secure and it can easily be damaged.   give three  different ways that data can be accidentally damaged. 1    ... 2    ... 3    ...  [3]  (b) the secure socket layer (ssl) protocol can be used to securely transmit data in online  banking.   state three  other different applications that use ssl. application 1  . application 2  . application 3  .  [3]",
            "9": "9 0478/11/o/n/17 \u00a9 ucles 2017 [turn over  (c) online banking is increasing in popularity.   online banking can be a risk as it can raise a number of security issues. ssl can be used as  a security method to make online banking safer.   identify and describe three  other security methods that could be used to make online banking  safer. security method 1  .  ...  ...  ... security method 2  .  ...  ...  ... security method 3  .  ...  ...  ...  [6]",
            "10": "10 0478/11/o/n/17 \u00a9 ucles 2017 9 (a) optical storage media can be used to store data.   describe how the data is read from a compact disc (cd).  ...  ...  ...  ...  ...  ...  ...  ... [4]  (b) kamil wants to store a 16-bit colour image file. the image size is 1000 pixels.   calculate the size of the file.   give your answer in bytes . show your working. working  .  ...  ...  ... answer ... bytes  [2]  (c) describe the differences between primary and secondary storage.  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "11": "11 0478/11/o/n/17 \u00a9 ucles 2017 10 six statements about assembly language are shown.  tick (3) whether the statement is true or false . statement true (3)false (3) assembly language uses mnemonic codes. assembly language programs do not need  a translator to be executed. assembly language is a low-level  programming language. assembly language is specific to the  computer hardware. assembly language is machine code. assembly language is often used to create  drivers for hardware.  [6]",
            "12": "12 0478/11/o/n/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w17_qp_12.pdf": {
            "1": "this document consists of 12 printed pages. dc (nh/sw) 138025/2 \u00a9 ucles 2017  [turn over *0049796571* computer science  0478/12 paper 1 theory  october/november 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name on all the work you hand in. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge international examinations cambridge international general certificate of secondary education the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/o/n/17 \u00a9 ucles 2017 1 a robot arm in a factory is programmed to move products.   the binary instructions to operate the robot arm are: operation binary instruction up 1 1 1 1 down 0 0 0 1 left 1 0 0 1 right 0 1 1 0 open 1 1 0 0 close 0 0 1 1  the instructions are entered as hexadecimal values.  an operator enters the values:     9   1   c   3   f  convert the values and write down the operation (e.g. right) carried out by the robot arm.  9  .  1  .  c  .  3  .  f  .  [5]",
            "3": "3 0478/12/o/n/17 \u00a9 ucles 2017 [turn over 2 storage devices and storage media can be categorised as primary, secondary or off-line.  write primary , secondary  or off-line  next to each storage device or medium to indicate its most  suitable category.  hdd     ram     rom     cd-rom     ssd    dvd-ram    [6] 3 (a) explain the differences between the binary number system and the denary number system.  ...  ...  ...  ...  ...  ...  ...  ... [4]    (b) explain the process of converting the binary number 1010 into a denary number.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "4": "4 0478/12/o/n/17 \u00a9 ucles 2017 4 a file server is used as a central data store for a network of computers.  rory sends data from his computer to a file server that is approximately 100 metres away.  it is important that the data is transmitted accurately. rory needs to be able to read data from and  write data to the file server at the same time.  (a) (i) use ticks ( 3) to identify the most suitable data transmission methods for this application. method 1 tick  (3)method 2 tick  (3) serial simplex parallel half-duplex duplex  [2]   (ii) explain why your answer to part (a)(i)  is the most suitable data transmission.  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "5": "5 0478/12/o/n/17 \u00a9 ucles 2017 [turn over  (b) identify and describe two methods of error checking that can be used to make sure that the  data stored after transmission is accurate. method 1  ...  ...  ...  ...  ...  ...  ...  ... method 2  ...  ...  ...  ...  ...  ...  ...  ... [6]",
            "6": "6 0478/12/o/n/17 \u00a9 ucles 2017 5 raj is using the internet to do some online shopping. he visits a website that tells him that it uses  cookies.  (a) explain what is meant by the term cookies .  ...  ...  ...  ...  ...  ...  ...  ... [4]  (b)  give two examples of the use of cookies. example 1  .  ...  ... example 2  .  ...  ...  [2]",
            "7": "7 0478/12/o/n/17 \u00a9 ucles 2017 [turn over 6 selma writes the following four answers in her computer science examination.  state which computer terms she is describing.  \u201cit is a signal. when the signal is received it tells the operating system that an event has occurred.\u201d selma is describing  ..  \u201cit takes source code written in a high level language and translates it into machine code.  it  translates the whole of the source code at once.\u201d selma is describing  ..  \u201cthe part of the central processing unit (cpu) that carries out calculations.\u201d selma is describing  ..  \u201cwhen data is transmitted, if an error is detected in the data received a signal is sent to ask for the  data to be retransmitted. this continues until the data received is correct.\u201d selma is describing  .. [4]",
            "8": "8 0478/12/o/n/17 \u00a9 ucles 2017 7 draw a logic circuit to represent the logic statement:  x = 1 if (a is not 1 and b is 1) and (a is not 1 and c is not 1) or (b is 1 and c is 1) a b x c  [7]",
            "9": "9 0478/12/o/n/17 \u00a9 ucles 2017 [turn over 8 (a) a computer has 2048  mb of ram.   how many gb of ram does the computer have?   show your working.  ...  ...  ...   ..gb  [2]  (b) describe one item that is stored in ram.  ...  ...  ... [2]  (c) explain three  ways that ram is different to rom. 1    ...  ... 2    ...  ... 3    ...  ... [3]",
            "10": "10 0478/12/o/n/17 \u00a9 ucles 2017 9 anna has a farm that grows fruit.  she has a system that monitors the conditions for growing the fruit.  sensors are used in this system.  (a) explain what is meant by the term sensor .  ...  ...  ...  ... [2]  (b) state two sensors that could be used in this system and describe how they could be used. sensor 1  ... use  ...  ...  ...  ...  ... sensor 2  ... use  ...  ...  ...  ...  ...  [6]",
            "11": "11 0478/12/o/n/17 \u00a9 ucles 2017 [turn over 10 (a) describe what is meant by transport layer security (tls).  ...  ...  ...  ...  ...  ... [3]  (b) name three  different applications of tls. 1   2   3    [3]",
            "12": "12 0478/12/o/n/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.11 complete the paragraphs choosing the correct five terms from the list. each term can only be  used once: \u2022 ethics \u2022 freeware \u2022 free software \u2022 hacking \u2022 malware \u2022 plagiarism \u2022 shareware \u2022 virus  taking another person\u2019s work from the internet and claiming it as your own is called   .  . it is possible to protect your work online with copyright.  one product that people may want to protect is software. . does allow  a person to share, copy and change software freely, but . does not  allow a person to do this legally. software that has a licence allowing free use for a trial period  is called   . the name given to this area of computer science is  .  . [5]"
        },
        "0478_w17_qp_13.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (ce/sw) 152857 \u00a9 ucles 2017  [turn over *3002984728* computer science  0478/13 paper 1 theory  october/november 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge international examinations cambridge international general certificate of secondary education the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/13/o/n/17 \u00a9 ucles 2017 1 a washing machine has a small display screen built into it.  one use of the display screen is to show an error code when a problem has occurred with a  washing cycle.  (a) state whether the display screen is an input , output  or storage device .  ... [1]  (b) the display screen shows a hexadecimal error code: e04   this error code means that the water will not empty out of the washing machine.   convert this error code to binary. [3]  (c) state why hexadecimal is used to display the error code.  ...  ...  ...  ... [1]  (d) identify three  sensors that could be used in the washing machine.   state what each sensor could be used for. sensor 1  ... use  ...  ... sensor 2  ... use  ...  ... sensor 3  ... use  ...  ...  [6]",
            "3": "3 0478/13/o/n/17 \u00a9 ucles 2017 [turn over 2 data files are stored in different file formats.  complete the table by providing a suitable file format for each file type. the first one has been  done for you. file type file format pictures .jpeg text sound video  [3] 3 (a) an example of a uniform resource locator (url) is: http://www.cie.org.uk/index.htm part 1 part 2 part 3   identify the three  parts that make up this url. part 1   part 2   part 3    [3]  (b) describe what is meant by an internet protocol (ip) address.  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "4": "4 0478/13/o/n/17 \u00a9 ucles 2017 4 six components of a computer system and six descriptions are shown.  draw a line to match each component with the most suitable description.    component  description    arithmetic logic  unit (alu) buses control unit (cu) immediate access  store (ias) input/output registers  used to connect together  the internal components  of the cpu. used to carry out  calculations on data. used to temporarily hold  data and instructions  during processing. used to allow interaction  with the computer. used to hold data and  instructions before they  are processed. used to manage the flow  of data through the cpu.  [5]",
            "5": "5 0478/13/o/n/17 \u00a9 ucles 2017 [turn over 5 (a) draw a logic circuit for the logic statement:   x = 1 if ((a is 1 and b is 1) or (a is not 1 and c is 1)) a b x c  [4]",
            "6": "6 0478/13/o/n/17 \u00a9 ucles 2017  (b) draw the symbol for an xor  gate and explain the function of this logic gate. explanation  ...  ...  ...  ...  ...  ... [5] 6 describe the operation of a 2d scanner and a 3d scanner. 2d .  ..  ..  ..  ..  .. 3d .  ..  ..  ..  ..  ..  [6]",
            "7": "7 0478/13/o/n/17 \u00a9 ucles 2017 [turn over 7 six statements about firewalls are shown.  tick (3) to show whether each statement is true or false . statement true (3)false (3) firewalls can monitor incoming and  outgoing traffic. firewalls operate by checking traffic against  a set of rules. firewalls cannot block access to a certain  website. firewalls can be software and hardware. firewalls can act as intermediary servers. firewalls can block unauthorised traffic.  [6]",
            "8": "8 0478/13/o/n/17 \u00a9 ucles 2017 8 (a) data is valuable. it needs to be kept secure and it can easily be damaged.   give three  different ways that data can be accidentally damaged. 1    ... 2    ... 3    ...  [3]  (b) the secure socket layer (ssl) protocol can be used to securely transmit data in online  banking.   state three  other different applications that use ssl. application 1  . application 2  . application 3  .  [3]",
            "9": "9 0478/13/o/n/17 \u00a9 ucles 2017 [turn over  (c) online banking is increasing in popularity.   online banking can be a risk as it can raise a number of security issues. ssl can be used as  a security method to make online banking safer.   identify and describe three  other security methods that could be used to make online banking  safer. security method 1  .  ...  ...  ... security method 2  .  ...  ...  ... security method 3  .  ...  ...  ...  [6]",
            "10": "10 0478/13/o/n/17 \u00a9 ucles 2017 9 (a) optical storage media can be used to store data.   describe how the data is read from a compact disc (cd).  ...  ...  ...  ...  ...  ...  ...  ... [4]  (b) kamil wants to store a 16-bit colour image file. the image size is 1000 pixels.   calculate the size of the file.   give your answer in bytes . show your working. working  .  ...  ...  ... answer ... bytes  [2]  (c) describe the differences between primary and secondary storage.  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "11": "11 0478/13/o/n/17 \u00a9 ucles 2017 10 six statements about assembly language are shown.  tick (3) whether the statement is true or false . statement true (3)false (3) assembly language uses mnemonic codes. assembly language programs do not need  a translator to be executed. assembly language is a low-level  programming language. assembly language is specific to the  computer hardware. assembly language is machine code. assembly language is often used to create  drivers for hardware.  [6]",
            "12": "12 0478/13/o/n/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w17_qp_21.pdf": {
            "1": "*9777315973* this document consists of 12 printed pages. dc (cw/sw) 131978/2 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/21 paper 2  problem-solving and programming  october/november 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/21/o/n/17 \u00a9 ucles 2017 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a small airfield operates a flying club where people can take a short flight to see if they would like  flying lessons. the owner of the airfield has asked you to write a program to organise the flight  bookings. the airfield operates three different planes and offers either a 30 minute or a 60 minute  flight. the following table shows the tariff: length of flight 2 seater plane 4 seater plane historic plane 30 minutes $100 $120 $300 60 minutes $150 $200 $500 after each flight, 30 minutes must be allowed for refuelling and safety checks before the next flight  can take off. all planes offer both 30 minute and 60 minute flights, but, for the purpose of this activity,  they will not be mixed on a given day, e.g. the 2 seater will offer 30 minute flights only on one day  and 60 minute flights only on another day.  write and test a program for the owner of the airfield. \u2022 your program must include appropriate prompts for the entry of data. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three tasks. each task must be fully tested. task 1 \u2013 work out the maximum income. assume that the flights take place between 08:00 and 18:00. write a program that will work out the  maximum income that can be generated by each plane in a day for each type of flight. the program  should allow you to: \u2022 input the type of plane \u2022 input the length of flight \u2022 calculate the maximum number of flights in a day \u2022 output the total possible income per day for the choice of plane and length of flight task 2 \u2013 record bookings. write a program to store bookings for each plane and to allow you to find which planes are available  at a given time slot during the day. the program should calculate the actual number of flights taken  by each plane in that day. task 3 \u2013 work out income. modify task 2 so that it will calculate the total amount of money taken in a day for each plane, as  well as the overall daily total for all three planes, and output the results.",
            "3": "3 0478/21/o/n/17 \u00a9 ucles 2017 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   (i) declare suitable arrays for each of the planes to store time slots booked.  ...  ...  ... [3]   (ii) name one variable and one constant you used for task 1  and state the purpose of each  one. variable  . purpose  .  ... constant   purpose  .  ...  [4]",
            "4": "4 0478/21/o/n/17 \u00a9 ucles 2017  (b) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/o/n/17 \u00a9 ucles 2017 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "6": "6 0478/21/o/n/17 \u00a9 ucles 2017  (c) describe how you could validate and test the inputs for task 1 .  ...  ...  ...  ...  ...  ...  ...  ... [4]  (d) explain how your program checks and displays whether any of the planes are available at a  given time of the day ( task 2 ). any programming statements used must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "7": "7 0478/21/o/n/17 \u00a9 ucles 2017 [turn over section b 2 this section of program code asks for 80 numbers between 100 and 1000 to be entered. it checks  that the numbers are in the correct range, and stores them in an array. it counts how many of the  numbers are larger than 500 and then outputs the result when the program is finished.  1 count = 0  2 for index = 1 to 80  3   input 'enter a number between 100 and 1000', number  4   while number = 99 and number = 1001  5     input 'this is incorrect, please try again', number  6   endwhile  7   num[80] = number  8   if number > 500 then count = count + 1  9  until index = 80  10 print index  11 print ' numbers were larger than 500'  there are four lines of code that contain errors.  state the line number for each error and write the correct code for that line.  error 1 line number . correct code    error 2 line number . correct code    error 3 line number . correct code    error 4 line number . correct code    [4]  ",
            "8": "8 0478/21/o/n/17 \u00a9 ucles 2017 3 (a) explain the difference between a validation check and a verification check.  ...  ...  ... [2]  (b) describe, using an example, how data could be verified on data entry.  ...  ...  ... [2]  (c) explain what is meant by the term library routine.  ...  ...  ... [2] 4 (a) four  pseudocode descriptions and five pseudocode statements are shown. draw one line to  link each pseudocode description to the correct pseudocode statement. not all pseudocode  statements will be used.  pseudocode description  pseudocode statement  a loop that will iterate at least  once.  a conditional statement to deal  with many possible outcomes.  a loop that will iterate a set  number of times.  a conditional statement with  different outcomes for true  and false.   for\u2026to\u2026next if\u2026then\u2026else\u2026endif while\u2026do\u2026endwhile case\u2026of\u2026otherwise\u2026endcase repeat\u2026until  [4]",
            "9": "9 0478/21/o/n/17 \u00a9 ucles 2017 [turn over  (b) write an algorithm in pseudocode, using a single loop, to print 50 names that have been  stored in an array.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "10": "10 0478/21/o/n/17 \u00a9 ucles 2017 5 the flowchart below represents a program routine. flag   0 count   1start endis name[count] > name[count + 1]? is count = 4? is flag = 0?no nonoyes yes yestemp    name[count] name[count]    name[count + 1] name[count + 1]    temp flag    1 count    count + 1",
            "11": "11 0478/21/o/n/17 \u00a9 ucles 2017 [turn over  (a) the array used in the flowchart contains the following data: name[1] name[2] name[3] name[4] jamal amir eve tara   complete the trace table using the data given in the array. flag count name[1] name[2] name[3] name[4] temp jamal amir eve tara  [5]  (b) describe what the algorithm represented by the flowchart is doing.  ...  ... [2] question 6 begins on page 12. permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.",
            "12": "12 0478/21/o/n/17 \u00a9 ucles 2017 6 a wildlife park has a database table, called livestock, to classify and record its animal species.  part of the database table is shown. species classification diet legs giraffe mammal herbivore 4 elephant mammal herbivore 4 crocodile reptile carnivore 4 ostrich bird omnivore 2 gorilla mammal herbivore 2 bear mammal omnivore 4 rhinoceros mammal herbivore 4 hippopotamus mammal herbivore 4 flamingo bird omnivore 2 lion mammal carnivore 4 turtle reptile omnivore 4 penguin bird carnivore 2  (a) suggest another appropriate field that could be added to this database by stating its name  and data type. state its purpose and give an example of the data it could contain. field name   data type  . purpose    ... example of data    [2]  (b) use the query-by-example grid below to provide a list of all four legged mammals that are  herbivores, sorted alphabetically by species, with only the species displayed. field: table: sort: show: criteria: or:  [4]"
        },
        "0478_w17_qp_22.pdf": {
            "1": "*3781982019* this document consists of 10 printed pages and 2 blank pages. dc (cw/fd) 132152/3 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/22 paper 2  problem-solving and programming  october/november 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/22/o/n/17 \u00a9 ucles 2017 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material the owner of a river boat hire company wants to calculate the daily profits from hiring out 10 rowing  boats on the river. boats are numbered 1 to 10. boats can be hired for use between 10:00 and 17:00  every day. write and test a program for the owner.  \u2022 your program must include appropriate prompts for the entry of data.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 calculate the money taken in a day for one boat. the cost of hiring a boat is $20 for one hour or $12 for half an hour. when a boat is hired the payment  is added to the money taken for the day. the running total of hours hired that day is updated and the  time when the boat must be returned is stored. at the end of the day the money taken and the total  hours hired is output. no boat can be hired before 10:00 or returned after 17:00. task 2 \u2013 find the next boat available. extend task 1 to work for all 10 rowing boats. use the data stored for each boat to find out how  many boats are available for hire at the current time. if no boats are available show the earliest time  that a boat will be available for hire.  task 3 \u2013 calculate the money taken for all the boats at the end of the day. at the end of the day use the data stored for each boat to calculate the total amount of money taken  and the total number of hours boats were hired that day. find out how many boats were not used  that day and which boat was used the most. provide a report for the owner to show this information.",
            "3": "3 0478/22/o/n/17 \u00a9 ucles 2017 [turn over 1  (a) all variables, constants and other identifiers should have meaningful names.   (i)  for one variable that you have used to record the information about a single boat in  task  1, state the name, data type and its use. variable name  ... data type  ... use   [3]   (ii) state one constant and its value that you could have used for  task 1 . constant name  .. value  . [2]  (b) give two different validation checks you could have used for data entry in task  1. for each  check explain why it could be used and provide a set of data for testing. validation check 1  .  ... reason for choice  .  ... set of test data  .  ... validation check 2  .  ... reason for choice  .  ... set of test data  .  ... [6]",
            "4": "4 0478/22/o/n/17 \u00a9 ucles 2017  (c) write an algorithm to complete task 3 , using either  pseudocode, programming statements  or a flowchart. you may assume task 2 has been completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "5": "5 0478/22/o/n/17 \u00a9 ucles 2017 [turn over  (d) explain how your program finds out how many boats are available for hire ( task 2 ).   any programming statements used must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "6": "6 0478/22/o/n/17 \u00a9 ucles 2017 section b 2 write an algorithm using either  pseudocode or a flowchart, to:  \u2022 input a positive integer  \u2022 use this value to set up how many other numbers are to be input  \u2022 input these numbers  \u2022 calculate and output the total and the average of these numbers.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [6]",
            "7": "7 0478/22/o/n/17 \u00a9 ucles 2017 [turn over 3 the following diagram shows four data structures and four descriptions.  draw a line to connect each data structure to the correct description.   data structure  description constant       a collection of related data array       a value that can change whilst a  program is running table       a value that never changes whilst a  program is running variable       a series of elements of the same  data type  [3] 4 if \u2026 then \u2026 else \u2026 endif is one type of conditional statement used when writing  pseudocode.   identify and describe another  type of conditional statement that you could use when writing  pseudocode. give a reason why you would use this type of conditional statement. conditional statement  ..  ..  ..  .. description  ...  ..  ..  .. reason  .  ..  [4]",
            "8": "8 0478/22/o/n/17 \u00a9 ucles 2017 5 (a) this flowchart checks a batch of 10 rice sacks for weight. sacks should weigh 50 kilograms  each. sacks weighing over 50.5 kilograms or less than 49.5 kilograms are rejected. the  number of sacks accepted and the number of sacks rejected is output. start accept reject count is count = 10?yes yes yesno no noinput sackcount count + 1accept + 10 0 0 endaccept reject reject + 1output accept, reject is sack < 49.5? is sack > 50.5?",
            "9": "9 0478/22/o/n/17 \u00a9 ucles 2017 [turn over complete the trace table for the input data: 50.4, 50.3, 49.1, 50.3, 50.0, 49.5, 50.2, 50.3, 50.5, 50.6 accept reject count sack output [5]  (b) the size of the batch has increased to 50 sacks. it has been decided to only reject sacks that  are underweight.   state the changes that need to be made to the flowchart.  ...  ...  ...  ... [2]",
            "10": "10 0478/22/o/n/17 \u00a9 ucles 2017 6 a database table, train, is to be set up for a railway company to keep a record of the engines  available for use. each engine has a unique number made up of 5 digits, nnnnn. the engines  are classified as freight (f) or passenger (p) together with a power classification that is a whole  number between 0 and 9, for example f8. the railway company keeps a record of the date of the  last service for each engine.   (a) identify the three  fields required for the database. give each field a suitable name and data  type. provide a sample of data that you could expect to see in the field. field 1 name   data type  .. data sample  . field 2 name   data type  .. data sample  . field 3 name   data type  .. data sample  . [6]  (b) state the field that you should choose as the primary key.  ... [1]  (c) using the query-by-example grid below, write a query to identify all passenger engines that  have not been serviced in the past 12 months. only display the engine  numbers. field: table: sort: show: criteria: or:  [3]",
            "11": "11 0478/22/o/n/17 \u00a9 ucles 2017 blank page",
            "12": "12 0478/22/o/n/17 \u00a9 ucles 2017 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w17_qp_23.pdf": {
            "1": "*0495102828* this document consists of 12 printed pages. dc (lk) 150377 \u00a9 ucles 2017  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/23 paper 2  problem-solving and programming  october/november 2017  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. the syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/23/o/n/17 \u00a9 ucles 2017 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a small airfield operates a flying club where people can take a short flight to see if they would like  flying lessons. the owner of the airfield has asked you to write a program to organise the flight  bookings. the airfield operates three different planes and offers either a 30 minute or a 60 minute  flight. the following table shows the tariff: length of flight 2 seater plane 4 seater plane historic plane 30 minutes $100 $120 $300 60 minutes $150 $200 $500 after each flight, 30 minutes must be allowed for refuelling and safety checks before the next flight  can take off. all planes offer both 30 minute and 60 minute flights, but, for the purpose of this activity,  they will not be mixed on a given day, e.g. the 2 seater will offer 30 minute flights only on one day  and 60 minute flights only on another day.  write and test a program for the owner of the airfield. \u2022 your program must include appropriate prompts for the entry of data. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three tasks. each task must be fully tested. task 1 \u2013 work out the maximum income. assume that the flights take place between 08:00 and 18:00. write a program that will work out the  maximum income that can be generated by each plane in a day for each type of flight. the program  should allow you to: \u2022 input the type of plane \u2022 input the length of flight \u2022 calculate the maximum number of flights in a day \u2022 output the total possible income per day for the choice of plane and length of flight task 2 \u2013 record bookings. write a program to store bookings for each plane and to allow you to find which planes are available  at a given time slot during the day. the program should calculate the actual number of flights taken  by each plane in that day. task 3 \u2013 work out income. modify task 2 so that it will calculate the total amount of money taken in a day for each plane, as  well as the overall daily total for all three planes, and output the results.",
            "3": "3 0478/23/o/n/17 \u00a9 ucles 2017 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   (i) declare suitable arrays for each of the planes to store time slots booked.  ...  ...  ... [3]   (ii) name one variable and one constant you used for task 1  and state the purpose of each  one. variable  . purpose  .  ... constant   purpose  .  ...  [4]",
            "4": "4 0478/23/o/n/17 \u00a9 ucles 2017  (b) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/o/n/17 \u00a9 ucles 2017 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "6": "6 0478/23/o/n/17 \u00a9 ucles 2017  (c) describe how you could validate and test the inputs for task 1 .  ...  ...  ...  ...  ...  ...  ...  ... [4]  (d) explain how your program checks and displays whether any of the planes are available at a  given time of the day ( task 2 ). any programming statements used must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "7": "7 0478/23/o/n/17 \u00a9 ucles 2017 [turn over section b 2 this section of program code asks for 80 numbers between 100 and 1000 to be entered. it checks  that the numbers are in the correct range, and stores them in an array. it counts how many of the  numbers are larger than 500 and then outputs the result when the program is finished.  1 count = 0  2 for index = 1 to 80  3   input 'enter a number between 100 and 1000', number  4   while number = 99 and number = 1001  5     input 'this is incorrect, please try again', number  6   endwhile  7   num[80] = number  8   if number > 500 then count = count + 1  9  until index = 80  10 print index  11 print ' numbers were larger than 500'  there are four lines of code that contain errors.  state the line number for each error and write the correct code for that line.  error 1 line number . correct code    error 2 line number . correct code    error 3 line number . correct code    error 4 line number . correct code    [4]  ",
            "8": "8 0478/23/o/n/17 \u00a9 ucles 2017 3 (a) explain the difference between a validation check and a verification check.  ...  ...  ... [2]  (b) describe, using an example, how data could be verified on data entry.  ...  ...  ... [2]  (c) explain what is meant by the term library routine.  ...  ...  ... [2] 4 (a) four  pseudocode descriptions and five pseudocode statements are shown. draw one line to  link each pseudocode description to the correct pseudocode statement. not all pseudocode  statements will be used.  pseudocode description  pseudocode statement  a loop that will iterate at least  once.  a conditional statement to deal  with many possible outcomes.  a loop that will iterate a set  number of times.  a conditional statement with  different outcomes for true  and false.   for\u2026to\u2026next if\u2026then\u2026else\u2026endif while\u2026do\u2026endwhile case\u2026of\u2026otherwise\u2026endcase repeat\u2026until  [4]",
            "9": "9 0478/23/o/n/17 \u00a9 ucles 2017 [turn over  (b) write an algorithm in pseudocode, using a single loop, to print 50 names that have been  stored in an array.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "10": "10 0478/23/o/n/17 \u00a9 ucles 2017 5 the flowchart below represents a program routine. flag   0 count   1start endis name[count] > name[count + 1]? is count = 4? is flag = 0?no nonoyes yes yestemp    name[count] name[count]    name[count + 1] name[count + 1]    temp flag    1 count    count + 1",
            "11": "11 0478/23/o/n/17 \u00a9 ucles 2017 [turn over  (a) the array used in the flowchart contains the following data: name[1] name[2] name[3] name[4] jamal amir eve tara   complete the trace table using the data given in the array. flag count name[1] name[2] name[3] name[4] temp jamal amir eve tara  [5]  (b) describe what the algorithm represented by the flowchart is doing.  ...  ... [2] question 6 begins on page 12. permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.",
            "12": "12 0478/23/o/n/17 \u00a9 ucles 2017 6 a wildlife park has a database table, called livestock, to classify and record its animal species.  part of the database table is shown. species classification diet legs giraffe mammal herbivore 4 elephant mammal herbivore 4 crocodile reptile carnivore 4 ostrich bird omnivore 2 gorilla mammal herbivore 2 bear mammal omnivore 4 rhinoceros mammal herbivore 4 hippopotamus mammal herbivore 4 flamingo bird omnivore 2 lion mammal carnivore 4 turtle reptile omnivore 4 penguin bird carnivore 2  (a) suggest another appropriate field that could be added to this database by stating its name  and data type. state its purpose and give an example of the data it could contain. field name   data type  . purpose    ... example of data    [2]  (b) use the query-by-example grid below to provide a list of all four legged mammals that are  herbivores, sorted alphabetically by species, with only the species displayed. field: table: sort: show: criteria: or:  [4]"
        }
    },
    "2018": {
        "0478_m18_qp_12.pdf": {
            "1": "*7599895984* this document consists of 12 printed pages. dc (lk/cgw) 161583/3 r \u00a9 ucles 2018  [turn overcomputer science  0478/12 paper 1  theory  february/march 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge international examinations cambridge international general certificate of secondary education this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/f/m/18 \u00a9 ucles 2018 1 some types of software can be described as free software or freeware.  draw lines to link each description to a correct type of software. a description can be linked to  more than one type of software.  description type of software free to download free software code can be  modified and  redistributed freeware subject to copyright  legislation [2] 2 david has installed anti-virus software on his computer.  (a) state three  tasks carried out by anti-virus software. task 1  ...  ... task 2  ...  ... task 3  ...  ...  [3]",
            "3": "3 0478/12/f/m/18 \u00a9 ucles 2018 [turn over  (b) david is still concerned that his computer might get infected by a computer virus.   state three  other ways in which david can reduce the risk of his computer getting a computer  virus. 1    ... 2    ... 3    ...  [3] 3 parity checks can be used to check for errors during data transmission.  one of the bytes has been transmitted incorrectly.  byte 1 byte 2 byte 3 byte 4 10110011 10101000 10110100 10110101  (a) state which byte was incorrectly transmitted.  ... [1]  (b) explain how you identified the incorrectly transmitted byte.  ...  ...  ...  ...  ...  ... [3]",
            "4": "4 0478/12/f/m/18 \u00a9 ucles 2018 4 an air conditioning system is used to control the temperature in a hospital.   the air conditioning system uses temperature sensors and a microprocessor.  the temperature must remain between 21  \u00b0c and 24  \u00b0c.  describe how the sensors and the microprocessor are used to control the temperature of the  hospital.  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [6] 5 the ip address of a computer is stored as a set of four 8-bit binary numbers.  the network administrator converts each binary number into hexadecimal.  (a) complete the table to show the hexadecimal equivalent of the binary ip address.   the first number has already been converted.   binary ip address 11000100 00010000 11111110 00001001   hexadecimal  c4  [3]  (b) explain why the network administrator uses hexadecimal.  ...  ...  ...  ... [2] ",
            "5": "5 0478/12/f/m/18 \u00a9 ucles 2018 [turn over 6 primary, secondary and off-line are types of storage.   give an example of each type of storage.  for each example state how it is used.  primary storage example  ... use  ...  ..  secondary storage example  ... use  ...  ..  off-line storage example  ... use  ...  ..  [6]",
            "6": "6 0478/12/f/m/18 \u00a9 ucles 2018 7 (a) for this logic circuit: a bx c   complete the truth table. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 [4]",
            "7": "7 0478/12/f/m/18 \u00a9 ucles 2018 [turn over  (b) for this logic statement: x = 1 if (b is 1 or c is not 1) and ((a is not 1) and (b is 1 or c is 1))   draw a logic circuit. a b cx [6]  (c) complete the truth table for the logic statement given in part (b) . a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 [4]",
            "8": "8 0478/12/f/m/18 \u00a9 ucles 2018 8 (a) three  descriptions and two methods of data transmission are given.   tick (\uf0fc) the correct box to show the method  of data transmission for each description. description method serial parallel multiple bits are sent  and received at the  same time. bits are sent one  at a time in a single  direction. bits are sent using a  single wire. data can  be sent or received, but  not at the same time. [3]  (b) three  descriptions and three  types of data transmission are given.   tick (\uf0fc) the correct box to show the type  of data transmission for each description. description type simplex half-duplex duplex multiple bits are sent  and received at the  same time. bits are sent one  at a time in a single  direction. bits are sent using a  single wire. data can  be sent or received, but  not at the same time. [3]",
            "9": "9 0478/12/f/m/18 \u00a9 ucles 2018 [turn over 9 a 32-second sound clip will be recorded. the sound will be sampled 16000 times a second.  each sample will be stored using 8 bits.  calculate the file size in kilobytes. you must show all of your working.  file size . kb [3] 10 the table shows a segment of primary memory from a von neumann model computer. address contents 10001 11001101 10010 11110001 10011 10101111 10100 10000110 10101 00011001 10110 10101100  the program counter contains the data 10010.  (a) (i) state the data that will be placed in the memory address register (mar).  ... [1]   (ii) state the data that will be placed in the memory data register (mdr).  ... [1]",
            "10": "10 0478/12/f/m/18 \u00a9 ucles 2018  (b) describe the stored program concept when applied to the von neumann model.  ...  ...  ...  ...  ...  ...  ...  ... [4] 11 miriam needs to use a large high-resolution photo as a thumbnail image on a website.   she will use lossy compression to reduce the file size of the photo to create the thumbnail image.  (a) state why a smaller file size is appropriate for this situation.  ...  ... [1]  (b) explain how lossy compression reduces the file size.  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "11": "11 0478/12/f/m/18 \u00a9 ucles 2018 [turn over 12 a hospital stores the results of medical tests on a computer system. each patient is given a  wristband containing a unique barcode. the barcode is used every time the patient has a medical  test.  (a) explain two benefits of using barcodes in this situation. benefit 1  ...  ...  ...  ... benefit 2  ...  ...  ...  ... [4]  (b) describe how the barcode is read.  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "12": "12 0478/12/f/m/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.13 state four functions of an operating system. function 1    .. function 2    .. function 3    .. function 4    .. [4]"
        },
        "0478_m18_qp_22.pdf": {
            "1": "*4259785415* this document consists of 11 printed pages and 1 blank page. dc (lk/cgw) 148974/2 \u00a9 ucles 2018  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/22 paper 2  problem-solving and programming  february/march 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/22/f/m/18 \u00a9 ucles 2018 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material students in a school are allowed to choose extra subjects each year. students provide the school  administrator with their names and their subject choices. places in subject groups are allocated on a  \u2018first come, first served\u2019 basis. there are two classes of 30 students and they can each choose two  extra subjects from: \u2022 physics \u2022 chemistry \u2022 history \u2022 geography \u2022 computer science the maximum group size for each subject choice is 20 students and the minimum group size is 10  students. if more than 20 students choose a subject then that subject can be split into two groups.  each subject can have no more than two groups. if less than 10 students choose a subject then it  is not available that year. a program is required to show a summary of the number of students who  have chosen each subject, identify subject group sizes, produce subject group lists and identify  problems. write and test a program or programs for the school administrator.  \u2022 your program or programs must include appropriate prompts for the entry of data.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 data entry and number of students who have chosen each subject. the school administrator enters the data for each student. write a program for task 1 to store this  data then calculate and output the number of students who have chosen each subject. task 2 \u2013 output subject group lists and identify problems. using your results from task 1, allocate students to subject groups. print out list(s) of student  names for each viable subject group. identify any subjects that are over or undersubscribed, identify  the students who have been allocated to one subject group only and those who have not been  allocated to any group. print out this information. task 3 \u2013 identify spare places in subject groups. using your results from task 2, print out the number of spare places for each subject. any group  that has fewer than 20 students has spare places. calculate the total number of spare places and  the total number of unallocated student choices. show whether the number of spare places available  is enough to cover the unallocated choices.",
            "3": "3 0478/22/f/m/18 \u00a9 ucles 2018 [turn over 1 (a) all identifiers should have meaningful names.   (i)  state the name and data structure that you have used to record student names in task  1.  name  . data structure    [2]   (ii) state the name of one constant and the name of one variable that you could have used  in your programmed solution.    state the value that would be assigned to the constant. state the data type for the  variable. explain what each one would be used for in your programmed solution. constant name  .. value  . use    ... variable name  ... data type  ... use    ...  [6]  (b) explain how you would change your program for task 2  if the maximum group size for each  subject is increased to 25.  ...  ...  ...  ...  ...  ... [2]",
            "4": "4 0478/22/f/m/18 \u00a9 ucles 2018  (c) write an algorithm to complete task 1 , using either  pseudocode, programming statements  or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/f/m/18 \u00a9 ucles 2018 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "6": "6 0478/22/f/m/18 \u00a9 ucles 2018  (d) explain how your program calculates the total number of spare places in task 3 . any  programming statements shown in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "7": "7 0478/22/f/m/18 \u00a9 ucles 2018 [turn over section b 2 an algorithm has been written in pseudocode to input some numbers and print out any numbers  that are greater than or equal to 100. the number 999 stops the algorithm.   input number   while numbers <> 999 do     if number > 100 then print number endif   endwhile   print number  (a) find the  four  errors in the pseudocode and suggest corrections. error 1  ... correction  .  ... error 2  ... correction  .  ... error 3  ... correction  .  ... error 4  ... correction  .  ...  [4]  (b) show, using pseudocode, how you would change the corrected algorithm to print out any  numbers between 100 and 200 inclusive.  ...  ...  ...  ...  ...  ...  ...  ... [2]",
            "8": "8 0478/22/f/m/18 \u00a9 ucles 2018 3 this flowchart inputs the weight in kilograms of a passenger stepping into a lift. the lift can take a  maximum of eight passengers or a maximum weight of 640 kilograms. start endis totalweight > 640? is totalnumber > 8?input weighttotalweight  0 totalnumber  0 output 'lift overload , step out'nonoyes yestotalweight  totalweight + weight totalnumber  totalnumber + 1",
            "9": "9 0478/22/f/m/18 \u00a9 ucles 2018 [turn over  complete the trace table for the passenger input data:  50, 70, 65, 100, 95, 50, 55, 85, 70, 75 weight totalweight totalnumber output  [4]",
            "10": "10 0478/22/f/m/18 \u00a9 ucles 2018 4 a program checks if the weight of a baby is at least 2 kilograms.  give, with reasons, two different values of test data that could be used for the baby\u2019s weight.   each reason must be different. value 1  . reason  .  .. value 2  . reason  .  ..  [4] 5 explain the difference between the programming concepts of sequence  and selection . include  an example of a programming statement for each concept in your explanation.  ..  ..  ..  ..  ..  ..  ..  ..  .. [4]",
            "11": "11 0478/22/f/m/18 \u00a9 ucles 2018 6 a database table, jewel, is used to keep a record of jewellery for sale in a shop. each item of  jewellery can be made of silver, platinum or gold metal. the shop stocks rings, bracelets and  necklaces. the number in stock and the price is also stored.  (a) identify the four fields required for the database. give each field a suitable name and data  type. explain why you chose the data type for each field. field 1 name    data type  . explanation  ...  ... field 2 name    data type  . explanation  ...  ... field 3 name    data type  . explanation  ...  ... field 4 name    data type  . explanation  ...  ...  [8]  (b) explain why none of these fields could be used as a primary key.  ...  ... [1]  (c) using the query-by-example grid below, write a query to identify the silver bracelets. only  display the number in stock and the price. field: table: sort: show: criteria: or:  [3]",
            "12": "12 0478/22/f/m/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s18_qp_11.pdf": {
            "1": "*2772106825* this document consists of 11 printed pages and 1 blank page. dc (sr/sw) 163639/3 r \u00a9 ucles 2018  [turn overcomputer science  0478/11 paper 1  theory  may/june 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.cambridge international examinations cambridge international general certificate of secondary education",
            "2": "2 0478/11/m/j/18 \u00a9 ucles 2018 1 jane answers an examination question about computers and data correctly.   six different words or numbers have been removed from her answer.  complete the sentences in jane\u2019s answer, using the list given. not all items in the list need to be  used. \u2022 2 \u2022 10 \u2022 16 \u2022 analogue \u2022 binary \u2022 denary \u2022 digital \u2022 hexadecimal  as humans, we process \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026 data, but a computer cannot  process this type of data. for a computer to be able to process data it needs to be   converted to \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026 data.    as humans, we mostly use a \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026 number system;  this is a base \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026 number system.  computers use a \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026 number system;  this is a base \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026 number system.  [6] 2 dheeraj identifies three  hexadecimal numbers.  write the denary  number for each of the three hexadecimal numbers: 2a   101  ... 21e  ..  [3] working space  ..  ..  ..  ..  ..",
            "3": "3 0478/11/m/j/18 \u00a9 ucles 2018 [turn over 3 the three binary numbers in the registers a, b and c have been transmitted from one computer to  another. parity bit register a 1 0 0 1 1 0 0 0 register b 0 1 1 0 0 1 1 1 register c 1 0 0 1 1 0 0 1  one binary number has been transmitted incorrectly. this is identified through the use of a parity  bit.  identify which register contains the binary number that has been transmitted incorrectly . explain  the reason for your choice. the binary number that has been transmitted incorrectly is in register  .. explanation  ..  ..  ..  ..  ..  ..  [4]",
            "4": "4 0478/11/m/j/18 \u00a9 ucles 2018 4 michele wants to email a file to elsa. the file is too large so it must be compressed.  (a) name two types of compression that michele could use. compression type 1  .. compression type 2  ..  [2]  (b) the file michele is sending contains the source code for a large computer program.    identify which type of compression would be most suitable for michele to use.    explain your choice. compression type  .. explanation    ...  ...  ...  ...  ...  [4]",
            "5": "5 0478/11/m/j/18 \u00a9 ucles 2018 [turn over 5 six components of the von neumann model for a computer system and six descriptions are  given.  draw a line to match each component to the most suitable description. component immediate  access store  (ias) register accumulator  (acc) buscontrol unit  (cu) arithmetic logic  unit (alu)description holds data and instructions when they are  loaded from main memory and are waiting  to be processed. holds data temporarily that is currently  being used in a calculation. manages the flow of data and interaction  between the components of the processor. pathway for transmitting data and  instructions.holds data or instructions temporarily  when they are being processed. carries out the calculations on data.  [5]",
            "6": "6 0478/11/m/j/18 \u00a9 ucles 2018 6 consider the logic statement:  x = 1 if ((a is not 1 or b is 1) nor c is 1) nand ((a is 1 and c is 1) nor b is 1)  (a) draw a logic circuit to represent the given logic statement. a b cx  [6]  (b) complete the truth table for the given logic statement. a b cworking space x 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "7": "7 0478/11/m/j/18 \u00a9 ucles 2018 [turn over 7 translators, such as a compiler and an interpreter, are used when writing and running computer  programs.  describe how a compiler and an interpreter translates a computer program. compiler  ...  ..  ..  ..  ..  .. interpreter .  ..  ..  ..  ..  ..  [6]",
            "8": "8 0478/11/m/j/18 \u00a9 ucles 2018 8 a supermarket uses a barcode scanner to read the barcodes on its products.  (a) describe how the barcode scanner reads the barcode.  ...  ...  ...  ...  ...  ...  ...  ...  [4]  (b) explain how the barcode system could help the supermarket manage its stock.  ...  ...  ...  ...  ...  ...  [3]  (c) an infrared touch screen is used to view and navigate the supermarket stock system.   explain how the infrared touch screen detects a user\u2019s touch.  ...  ...  ...  ...  ...  ...  ...  ...  [4]",
            "9": "9 0478/11/m/j/18 \u00a9 ucles 2018 [turn over  (d) the supermarket uses secondary storage and off-line storage to store data about its stock.   explain what is meant by secondary storage and off-line storage. secondary storage  ...  ...  ...  ... off-line storage  .  ...  ...  ...  [4] 9 a business wants to use a biometric security system to control entry to the office.   the system will use a biometric device and a microprocessor.  explain how the biometric security system will make use of the biometric device and the  microprocessor to control entry to the office.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  [6]",
            "10": "10 0478/11/m/j/18 \u00a9 ucles 2018 10 rockict is a music business that has a website to allow customers to view and buy the products  it sells.  the website consists of web pages.  (a) describe what is meant by html structure and presentation for a web page.  ...  ...  ...  ...  ...  ...  ...  ... [4]  (b) the url for the music company\u2019s website is: https://www.rockict.net/index.htm part 2 part 1   (i) identify what part 1  and part 2 represent in this url. part 1    part 2     [2]   (ii) describe what is meant by https .  ...  ...  ...  ... [2]",
            "11": "11 0478/11/m/j/18 \u00a9 ucles 2018  (c) when a customer enters the website, a message is displayed:   \u201crockict makes use of cookies. by continuing to browse you are agreeing to our use of  cookies.\u201d   explain why the music company uses cookies.  ...  ...  ...  ...  [2]  (d) the music company is concerned about the security of its website.    the company uses a proxy server as part of its security system.   describe the role of a proxy server in the security system.  ...  ...  ...  ...  ...  ...  ...  ...  [4]",
            "12": "12 0478/11/m/j/18 \u00a9 ucles 2018 blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge."
        },
        "0478_s18_qp_12.pdf": {
            "1": "*8003295921* this document consists of 11 printed pages and 1 blank page. dc (sc/sw) 150229/2 \u00a9 ucles 2018  [turn overcomputer science  0478/12 paper 1  theory  may/june 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge international examinations cambridge international general certificate of secondary education this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/m/j/18 \u00a9 ucles 2018 1 different units of data can be used to represent the size of a file, as it changes in size.  fill in the missing units of data, using the list given: \u2022 byte \u2022 gigabyte (gb) \u2022 megabyte (mb) \u2022 nibble  the units of data increase in size from smallest to largest. smallest bit \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. kilobyte (kb) \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. largest terabyte (tb)  [4] 2 (a) nancy has captured images of her holiday with her camera. the captured images are stored  as digital photo files on her camera.   explain how the captured images are converted to digital photo files.  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "3": "3 0478/12/m/j/18 \u00a9 ucles 2018 [turn over  (b) nancy wants to email the photos to nadia.   many of the photos are very large files, so nancy needs to reduce their file size as much as  possible.   identify which type of compression would be most suitable for nancy to use. explain your  choice. compression type  . explanation  ...  ...  ...  ...  ...  ...  [4] 3 a stopwatch uses six digits to display hours, minutes and seconds.  the stopwatch is stopped at: 0 23 15 8 hours minutes seconds  an 8-bit register is used to store each pair of digits.  (a) write the 8-bit binary numbers that are currently stored for the hours , minutes  and seconds . hours minutes seconds  [3]",
            "4": "4 0478/12/m/j/18 \u00a9 ucles 2018  (b) the stopwatch is started again and then stopped.   when the watch is stopped, the 8-bit binary registers show: hours 0 0 0 0 0 1 0 1 minutes 0 0 0 1 1 0 1 0 seconds 0 0 1 1 0 1 1 1   write the denary values that will now be shown on the stopwatch. hours minutes seconds  [3] 4 jafar is using the internet when he gets the message: \u201cd03, page is not available\u201d  jafar remembers that hexadecimal is often used to represent binary values in error codes.  convert the hexadecimal number in the error message into 12-bit binary.  [3]",
            "5": "5 0478/12/m/j/18 \u00a9 ucles 2018 [turn over 5 the three binary numbers in the registers x, y and z have been transmitted from one computer to  another. parity bit register x 1 0 0 1 0 0 1 0 register y 1 1 1 0 0 1 1 1 register z 1 1 1 0 1 0 0 1  only one binary number has been transmitted correctly. this is identified through the use of a  parity bit.  identify which register contains the binary number that has been transmitted correctly . explain  the reason for your choice. the binary number that has been transmitted correctly is in register    explanation  ..  ..  ..  ..  ..  ..  [4]",
            "6": "6 0478/12/m/j/18 \u00a9 ucles 2018 6 kelvin correctly answers an examination question about the von neumann model.  eight  different terms have been removed from his answer.  complete the sentences in kelvin\u2019s answer, using the list given.  not all items in the list need to be used. \u2022 accumulator (acc) \u2022 address bus \u2022 arithmetic logic unit (alu) \u2022 control unit (cu) \u2022 data bus \u2022 executed \u2022 fetches \u2022 immediate access store (ias) \u2022 memory address register (mar) \u2022 memory data register (mdr) \u2022 program counter (pc) \u2022 saved \u2022 transmits the central processing unit (cpu)   the data and instructions needed and stores them in the     to wait to be processed.  the    holds the address of the next instruction. this address is sent to the    . the data from this address is sent to the    .  the instruction can then be decoded and    . any calculations that are carried out on the data are done by the    . during calculations, the data is temporarily held in a register called the    .  [8]",
            "7": "7 0478/12/m/j/18 \u00a9 ucles 2018 [turn over 7 consider the logic statement: x = 1 if ((a is 1 and b is not 1) nand c is 1) xor ((a is 1 and c is 1) or b is 1)  (a) draw a logic circuit to represent the given logic statement. a b x c  [6]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "8": "8 0478/12/m/j/18 \u00a9 ucles 2018 8 dimitri is writing a computer program in a high-level language.  he needs to send just the machine code for the program to his friend, electronically.  it is important that the program is executed as quickly as possible.  identify which translator will be most suitable for dimitri to use. explain your choice. type of translator  . explanation  ..  ..  ..  ..  ..  ..  [4] 9 an advertisement in a magazine displays this barcode:  (a) identify this type of barcode.  ..  [1]  (b) explain how the data stored in this barcode is read.  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "9": "9 0478/12/m/j/18 \u00a9 ucles 2018 [turn over 10 alexandra has a new mobile device.  it has a touch screen that uses capacitive technology.  (a) describe how a capacitive touch screen registers alexandra\u2019s touch.  ...  ...  ...  ...  ...  ...  ...  ..  [4]  (b) alexandra is wearing gloves because it is cold.   she presses an icon on her touch screen but her action is not registered.   (i) explain why the touch screen will not register her touch.  ...  ...  ...  ..  [2]   (ii) alexandra does not want to remove her gloves.    explain how alexandra could use her mobile device whilst still wearing gloves.  ...  ...  ...  ..  [2]",
            "10": "10 0478/12/m/j/18 \u00a9 ucles 2018 11 a factory uses a security system to control a security light. the system uses a sensor and a  microprocessor.  explain how the security system makes use of the sensor and the microprocessor to control the  security light.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .  [6]",
            "11": "11 0478/12/m/j/18 \u00a9 ucles 2018 12 (a) selma has some important personal information that she needs to email to her employer.   she wants to make sure that if the personal information is intercepted, it cannot be understood.   (i) state how selma could email her personal data more securely.  ..  [1]   (ii) describe how your chosen solution works.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [5]  (b) selma wants to make sure that the information received is correct.   a parity check can be used to detect errors.   describe another error detection method that can be used to check the information received  is correct. error detection method  . description    ...  ...  ...  [3]",
            "12": "12 0478/12/m/j/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s18_qp_13.pdf": {
            "1": "*0557422193* this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate. this document consists of 11 printed pages and 1 blank page. dc (sc/cgw) 148529/3 \u00a9 ucles 2018  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/13 paper 1  theory  may/june 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.",
            "2": "2 0478/13/m/j/18 \u00a9 ucles 2018 1 state five sensors that could be used in the following applications.  give a different  type of sensor for each application. application sensor weighing a baby in a hospital turning off a kettle when the water boils controlling an automatic door monitoring the air quality in an  aeroplane counting cars crossing a bridge  [5] 2 draw a line to connect each term to the correct application.  term  application  a telephone that can receive and transmit audio  signals simultaneously. a two-way radio (walkie-talkie) that can receive  and transmit messages, but not at the same time. simplex duplex half-duplexa microphone that transmits data to a midi  system.  [2]",
            "3": "3 0478/13/m/j/18 \u00a9 ucles 2018 [turn over 3 three security issues that could affect users online are phishing , pharming  and spam .  explain what is meant by each security issue. phishing  ...  ..  ..  .. pharming  ..  ..  ..  .. spam    ..  ..  ..  [6]",
            "4": "4 0478/13/m/j/18 \u00a9 ucles 2018 4 a company transmits data to external storage at the end of each day.  (a) parity checks can be used to check for errors during data transmission.   the system uses odd parity .   (i) tick (\u2713) to show for each of the received bytes whether they have been transmitted  correctly  or transmitted incorrectly . received byte transmitted  correctly (\u2713)transmitted  incorrectly (\u2713) 10001011 10101110 01011101 00100101  [4]   (ii) state one other method that could be used to check for transmission errors.  ..  [1]  (b) data can be transferred using parallel or serial data transmission.   (i) describe what is meant by parallel data transmission.  ...  ...  ...  ..  [2]   (ii) give one application of parallel data transmission.  ...  ..  [1]",
            "5": "5 0478/13/m/j/18 \u00a9 ucles 2018 [turn over   (iii) explain why serial data transmission is normally used for transferring data over a long  distance.  ...  ...  ...  ..  [2]  (c) data transferred over a network is encrypted to improve data security.   the system uses 64-bit symmetric encryption.   (i) explain how encryption improves data security.  ...  ...  ...  ..  [2]   (ii) explain one method that could be used to increase the level of security provided by the  encryption.  ...  ...  ...  ..  [2]",
            "6": "6 0478/13/m/j/18 \u00a9 ucles 2018 5 (a) convert the denary number 107 to binary.  ..  [1]  (b) represent the denary number 300 as it would be stored in a 12-bit binary register.  ..  [2]  (c) convert the denary number 179 to hexadecimal.  ..  [2] 6 one of the roles of an operating system is to deal with interrupts.  (a) explain the term interrupt.  ...  ...  ...  ..  [2]  (b) identify three  devices that make use of interrupts. device 1   device 2   device 3    [3]",
            "7": "7 0478/13/m/j/18 \u00a9 ucles 2018 [turn over 7 a train station uses large touch screens to allow passengers to search for train information and  buy tickets.  (a) state three  benefits of using a touch screen in the train station. benefit 1  ...  ... benefit 2  ...  ... benefit 3  ...  ...  [3]  (b) the touch screens at the station use resistive touch technology.   describe how resistive touch technology works.  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "8": "8 0478/13/m/j/18 \u00a9 ucles 2018 8 a logic circuit is shown below. a xb c  (a) complete the truth table for the given logic circuit. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "9": "9 0478/13/m/j/18 \u00a9 ucles 2018 [turn over  (b) draw a logic circuit corresponding to this logic statement: x = 1 if (a is not 1) or ((b is 1 or c is 1) and (b is not 1 or a is not 1)) a b cx  [6] 9 three types of translators are assemblers , compilers  and interpreters .  tick (\u2713) the appropriate boxes to show which statements apply to each type of translator. statementassembler (\u2713)compiler (\u2713)interpreter (\u2713) translates high- level language into  machine code provides error  diagnostics   translates whole  program to object  code in one  operation translates and  executes one line  of code at a time   [3]",
            "10": "10 0478/13/m/j/18 \u00a9 ucles 2018 10 explain how an instruction is fetched in a computer based on the von neumann model.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .  [6] 11 identify three  similarities between cds and dvds. 1  ...  .. 2  ...  .. 3  ...  ..  [3]",
            "11": "11 0478/13/m/j/18 \u00a9 ucles 2018 12 an image is to be stored electronically.  the image is 256 pixels high by 200 pixels wide with a 16-bit colour depth.  calculate the file size of the image. you must show all of your working.  file size  .  kb [3] 13 describe the role of an internet service provider (isp).  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .  [6]",
            "12": "12 0478/13/m/j/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s18_qp_21.pdf": {
            "1": "*1819492409* this document consists of 11 printed pages and 1 blank page. dc (nf) 148543/2 \u00a9 ucles 2018  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/21 paper 2  problem-solving and programming  may/june 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/21/m/j/18 \u00a9 ucles 2018 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a computer shop will build a computer from components to meet a customer\u2019s requirements. for  each request for a computer to be built, an estimate of the cost is produced. the component stock  level is checked; if all the components are in stock, a firm order to build the computer can be placed.  a program is required to work out the cost of the computer, update the stock levels and provide a  daily summary of orders for the shop owner. write and test a program or programs for the computer shop owner. \u2022 your program or programs must include appropriate prompts for the entry of data. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 produce an estimate. write a program for task 1 to calculate the cost of building a computer using these components. component choices prices in $ processor p3 / p5 / p7 100 / 120 / 200 ram 16 gb / 32  gb 75 / 150 storage 1 tb / 2  tb 50 / 100 screen 19\" / 23\" 65 / 120 case mini tower / midi tower 40 / 70 usb ports 2 ports / 4 ports 10 / 20 the customer makes a choice for each component and an estimate is produced. the estimate must  show a unique estimate number, the components chosen and the price of each component. the  estimate must also show the total cost of the computer, which is calculated as the sum of the cost of  the components chosen plus  20%. task 2 \u2013 place an order. using your estimate from task 1, check if the components required are in stock. if all the  components are in stock then update the stock levels. add the unique estimate number to the list  of order numbers. add the customer\u2019s details and today\u2019s date to the estimate details to finalise the  order. print two copies of the order, one for the customer and one for the shop. task 3 \u2013 summarise the day\u2019s orders. extend task 2 to provide an end of day summary showing the number of orders made, the total  number of each component sold and the value of the orders.",
            "3": "3 0478/21/m/j/18 \u00a9 ucles 2018 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   (i) you recorded information for the estimate of the cost of building a computer in task 1 .  give a data structure that you created for task 1 , its name, data type and use. data structure   name  . data type  ... use    ... [4]   (ii) describe the data structures that you have used in task 2 to record the customer details.  include sample data in the description.  ...  ...  ...  ...  ...  ...  ...  ..  [4]  (b) explain how your program for task 1  produces a unique estimate number.  ...  ...  ...  ..  [2]",
            "4": "4 0478/21/m/j/18 \u00a9 ucles 2018  (c) write an algorithm for part of task 2 to check that the chosen processor  and chosen ram   are in stock, using either  pseudocode, programming statements or a flowchart. assume that   task  1 has been completed.  do not check the other components or produce the order.  ...  ...  ...  ...  ...  ...  ...  ...    ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [5]",
            "5": "5 0478/21/m/j/18 \u00a9 ucles 2018 [turn over  (d) explain how your program completes task 3 . any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [5]",
            "6": "6 0478/21/m/j/18 \u00a9 ucles 2018 section b 2 (a) write an algorithm to input 1000 numbers. count how many numbers are positive and how  many numbers are zero. then output the results. use either  pseudocode or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [6]",
            "7": "7 0478/21/m/j/18 \u00a9 ucles 2018 [turn over  (b) give one change you could make to your algorithm to ensure initial testing is more  manageable.  ...  ..  [1] question 3 starts on page 8.",
            "8": "8 0478/21/m/j/18 \u00a9 ucles 2018 3 the global trade item number (gtin-8) barcode has seven digits and a check digit.  this pseudocode algorithm inputs seven digits and calculates the eighth digit, then outputs the  gtin-8.  div(x,y) , finds the number of divides in division for example div(23,10)  is 2.  mod(x,y) , finds the remainder in division for example mod(23,10)  is 3.    for count  1 to 7       input number       digit(count)  number    next    sum  (digit(1)+digit(3)+digit(5)+digit(7))*3+digit(2)+digit(4)+digit(6)    if mod(sum,10) <> 0       then digit(8)  div(sum,10)*10 + 10 - sum       else digit(8)  0    endif    output \"gtin-8\"    for count  1 to 8       output digit(count)    next  (a) complete the trace table for the input data: 5, 7, 0, 1, 2, 3, 4 digit(1) digit(2) digit(3) digit(4) digit(5) digit(6) digit(7) digit(8) sum output   complete the trace table for the input data: 4, 3, 1, 0, 2, 3, 1 digit(1) digit(2) digit(3) digit(4) digit(5) digit(6) digit(7) digit(8) sum output [5]",
            "9": "9 0478/21/m/j/18 \u00a9 ucles 2018 [turn over  (b) explain how you would change the algorithm to input eight digits (seven digits and the check  digit) and output if the check digit entered is correct or not.  ...  ...  ...  ...  ...  ...  ..  [3] question 4 starts on page 10.",
            "10": "10 0478/21/m/j/18 \u00a9 ucles 2018 4 a programmer has written a routine to check that prices are below $10.00. these values are used  as test data.   10.00                 9.99                 ten  explain why each value was chosen. 10.00    ..  .. 9.99  ..  ..  .. ten    ..  .. [3] 5 explain the difference between the programming concepts of counting  and totalling .  include an example of a programming statement for each concept in your explanation.  ..  ..  ..  ..  ..  ..  ..  ..  .  [4]",
            "11": "11 0478/21/m/j/18 \u00a9 ucles 2018 6 a database table, performance, is used to keep a record of the performances at a local  theatre. show number type title date sold out sn091 comedy an evening at home 01 sept yes sn102 drama old places 02 oct no sn113 jazz acoustic evening 03 nov no sn124 classical mozart evening 04 dec yes sn021 classical bach favourites 01 feb yes sn032 jazz 30 years of jazz 02 mar yes sn043 comedy street night 03 apr no sn054 comedy hoot 04 may no  (a) state the number of fields and records in the table. fields   records   [2]  (b) give two validation checks that could be performed on the show number  field. validation check 1  .  ... validation check 2  .  ... [2]  (c) using the query-by-example grid, write a query to identify jazz performances that are not sold  out. only display the date and the title. field: table: sort: show: criteria: or: [4]",
            "12": "12 0478/21/m/j/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s18_qp_22.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (nh) 148633/2 \u00a9 ucles 2018  [turn over *7115246253* computer science  0478/22 paper 2  problem-solving and programming  may/june 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.cambridge international examinations cambridge international general certificate of secondary education",
            "2": "2 0478/22/m/j/18 \u00a9 ucles 2018 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a farmer records the milk production of a herd of cows. every cow has a unique 3-digit identity  code. each cow can be milked twice a day, seven days a week. the volume of milk from each cow  is recorded in litres correct to one decimal place (yield) every time the cow is milked. the size of the  herd is fixed. at the end of the week the total and the average yield for each cow for that week is  calculated. the farmer identifies the cow that has produced the most milk that week. the farmer also identifies  any cows that have produced less than 12 litres of milk on four or more days that week. a program is required to record the yield for each cow every time it is milked, calculate the total  weekly volume of milk for the herd and the average yield per cow in a week. the program must also  identify the cow with the best yield that week and identify any cows with a yield of less than 12 litres  of milk for four or more days that week. write and test a program or programs for the farmer. \u2022 your program or programs must include appropriate prompts for the entry of data. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 record the yield. write a program for task 1 to record the milk yields for a week. the program records and stores the  identity code number and the yield every time a cow is milked. task 2 \u2013 calculate the statistics. using your recorded data from task 1, calculate and display the total weekly volume of milk for  the herd to the nearest whole litre. calculate and display the average yield per cow in a week to the  nearest whole litre. task 3 \u2013 identify the most productive cow and cows that are producing a low volume of milk. extend task 2 to identify and display the identity code number and weekly yield of the cow that has  produced the most milk. also identify and display the identity code numbers of any cows with a yield  of less than 12 litres of milk for four days or more in the week.",
            "3": "3 0478/22/m/j/18 \u00a9 ucles 2018 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   (i) state the name, the data type and the use of two variables that you have used in task 2 .  variable 1 name   data type  ... use   variable 2 name   data type  ... use    [2]   (ii) describe, with the aid of some sample data, the data structures that you have used to  record the data for the cows in task 1 .  ...  ...  ...  ...  ...  ...  ...  ... [4]  (b) explain how your program for task 1  ensures that each 3-digit identity code is unique.  ...  ...  ...  ... [2]",
            "4": "4 0478/22/m/j/18 \u00a9 ucles 2018  (c) write an algorithm for task 2 , using either  pseudocode, programming statements or a  flowchart . assume that  task 1 has been completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "5": "5 0478/22/m/j/18 \u00a9 ucles 2018 [turn over  (d) (i) explain how your program for task 3 finds the cows with a daily yield of less than  12 litres of milk for four days or more in the week. any programming statements used in  your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]   (ii) explain how you would extend your program for task 3 to store  the identity code  number(s) of those cows with a yield of less than 12 litres of milk for four days or more in  the week.   ...  ...  ...  ...  ...  ... [2]",
            "6": "6 0478/22/m/j/18 \u00a9 ucles 2018 section b 2 (a) draw a flowchart for an algorithm to input numbers. reject any numbers that are negative  and count how many numbers are positive. when the number zero is input, the process ends  and the count of positive numbers is output.  [6]",
            "7": "7 0478/22/m/j/18 \u00a9 ucles 2018 [turn over  (b) explain the changes you will make to your algorithm to also count the negative numbers.  ...  ...  ...  ... [2] question 3 starts on page 8.",
            "8": "8 0478/22/m/j/18 \u00a9 ucles 2018 3 this pseudocode algorithm inputs two non-zero numbers and a sign, and then performs the  calculation shown by the sign. an input of zero for the first number terminates the process.     input number1, number2, sign     while number1 <> 0        if sign = '+' then answer  number1 + number2 endif        if sign = '-' then answer  number1 - number2 endif        if sign = '*' then answer  number1 * number2 endif        if sign = '/' then answer  number1 / number2 endif        if sign <> '/' and sign <> '*' and sign <> '-' and sign <> '+'           then answer  0        endif        if answer <> 0 then output answer endif        input number1, number2, sign     endwhile  (a) complete the trace table for the input data:   5, 7, +, 6, 2, \u2013, 4, 3, *, 7, 8, ?, 0, 0, / number1 number2 sign answer output  [3]  (b) show how you could improve the algorithm written in pseudocode by writing an alternative  type of conditional statement in pseudocode.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "9": "9 0478/22/m/j/18 \u00a9 ucles 2018 [turn over 4 a programmer has written a routine to store the name, email address and password of a contributor  to a website\u2019s discussion group.  (a) the programmer has chosen to verify the name, email address and password.   explain why verification was chosen and describe how the programmer would verify this data.  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]  (b) the programmer has also decided to validate the email address and the password.   describe validation checks that could be used. email address    ...  ... password  ..  ...  ...  [2]",
            "10": "10 0478/22/m/j/18 \u00a9 ucles 2018 5 a program checks that the weight of a basket of fruit is over 1.00  kilograms and under  1.10 kilograms. weights are recorded to an accuracy of two decimal places and any weight not in  this form has already been rejected.  give three  weights as test data and for each weight state a reason for choosing it. all your reasons  must be different. weight 1   reason  ..  .. weight 2   reason  ..  .. weight 3   reason  ..  ..  [3]",
            "11": "11 0478/22/m/j/18 \u00a9 ucles 2018 6 a database table, trees, is used to keep a record of the trees in a park. each tree is given a  unique number and is examined to see if it is at risk of dying. there are over 900 trees; part of the  database table is shown. tree number type map position age in years at risk tn091 acacia a7 250 y tn172 olive c5 110 n tn913 cedar b9 8 n tn824 banyan a3 50 y tn021 pine d5 560 y tn532 teak c8 76 y tn043 yew b1 340 n tn354 spruce d4 65 n tn731 elm b10 22 y tn869 oak c9 13 n tn954 pine e11 3 n  (a) state the number of fields in the table.  ... [1]  (b) the tree numbering system uses tn followed by three digits. the numbering system will not  work if there are over 1000 trees.   describe, with the aid of an example, how you could change the tree numbering system to  allow for over 1000 trees. existing tree numbers must not be changed.  ...  ...  ...  ... [2]  (c) using the query-by-example grid, write a query to identify at risk trees over 100 years old.  display only the type and the position on the map. field: table: sort: show: criteria: or:  [4]",
            "12": "12 0478/22/m/j/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_s18_qp_23.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (nh/fc) 148635/3 \u00a9 ucles 2018  [turn over *0574821219* computer science  0478/23 paper 2  problem-solving and programming  may/june 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.cambridge international examinations cambridge international general certificate of secondary education",
            "2": "2 0478/23/m/j/18 \u00a9 ucles 2018 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a car park has space for 100 cars and a barrier entrance and exit system. there is a display at the  entrance to show how many spaces are empty. cars are issued a ticket with a unique number on entry  and the time of issue is stored. the car park charges $1.50 per hour and the fee is paid at a machine  before leaving the car park. at the machine, the ticket number and departure time are entered; the fee is  calculated by the machine and the amount due is paid by the ticket holder. cars cannot stay overnight; the  system is reset at midnight. write and test a program or programs for the car park manager.  \u2022 your program or programs must include appropriate prompts for the entry of data.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 operating the car park. the system is reset at midnight every day. set up a system using arrays and with suitable prompts that will carry out the following as cars enter or  leave the car park: on entry: \u2022 display the number of empty car park spaces \u2022 issue the next available ticket number \u2022 store the current time and the ticket number \u2022 display the updated number of empty car park spaces. on exit: \u2022 input a ticket number and departure time \u2022 output the amount of time the car stayed at the car park \u2022 delete the ticket number from the array \u2022 display the updated number of empty car park spaces. task 2 \u2013 working out the cost and daily takings. amend the program so that it will calculate the amount to be paid using a charge of $1.50 per hour, or  part of an hour (i.e. any amount of time into the next hour is charged for a whole hour). the amount to be  paid is displayed and is added to a running total for the day, before the ticket number is deleted from the  array. at the end of the day, the following information is displayed: \u2022 total daily takings \u2022 number of cars that have used the car park \u2022 average charge per car \u2022 average length of stay per car. task 3 \u2013 introducing parking restrictions. the car park manager decides to restrict the length of stay to a maximum of eight hours, and will charge  an extra $100 if a car overstays. modify your program to implement this change and ensure the driver is  aware of this extra charge. output the number of cars that have overstayed in a day.",
            "3": "3 0478/23/m/j/18 \u00a9 ucles 2018 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   (i) state the name, data type and use of two arrays you created for task 1 . array 1 name  . data type  ... use    ... array 2 name  . data type  ... use    ...  [4]   (ii) state the name, value and use of two constants you could have created for task 3 . constant 1 name   value  . use    ... constant 2 name   value  . use    ... [4]",
            "4": "4 0478/23/m/j/18 \u00a9 ucles 2018  (b)  write an algorithm to perform the set up and \u2018on entry\u2019 part of task 1 , using either  pseudocode,  programming statements or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [6]",
            "5": "5 0478/23/m/j/18 \u00a9 ucles 2018 [turn over  (c) explain how your program calculates if a car has overstayed the permitted parking time and  how the charge is calculated and output (part of task 3 ). any programming statements you  use in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]  (d) one of the inputs required \u2018on exit\u2019 in task 1  is ticket number. state two items of suitable test  data you could use to test your input validation and state why you chose them. test data 1   reason  .  ... test data 2   reason  .  ...  [2]",
            "6": "6 0478/23/m/j/18 \u00a9 ucles 2018 section b 2 describe, using an example, the purpose of the following checks during data entry.  (a) validation check  ...  ...  ... [2]  (b) verification check  ...  ...  ... [2] 3 this section of program code reads the contents of the array, totals the numbers and prints out the  sum and average of the numbers. assume the array is full.  complete the four missing items by writing them in the spaces provided in this code.  1 numbers[1:30]  2 total = 0  3 ..  = 0  4 for count = 1 to .  5 number = numbers[count]  6 total = .  + number  7 counter = counter + 1  8 ..  count \t 9\t print \t\u2032the\tsum\tof\tthe\tnumbers \tyou\tentered \tis\t\u2032,\tnumber \t 10\t print \t\u2032the\taverage \tof\tthe\tnumbers \tyou\tentered \tis\t\u2032,\tnumber\t/\tcounter  [4]",
            "7": "7 0478/23/m/j/18 \u00a9 ucles 2018 [turn over 4 an algorithm is written in pseudocode:     input number     if number > 100 \t\t\t\t\t\t\tthen\toutput\t\u2033the\tnumber\tis\ttoo\tlarge\u2033 \t\t\t\t\t\t\telse\toutput\t\u2033the\tnumber\tis\tacceptable\u2033     endif  (a) describe the purpose of the algorithm.  ...  ...  ...  ...  ... [2]  (b) (i) the algorithm only allows one attempt at inputting an acceptable value.    state how you would change the algorithm so that it continues until a suitable input is  supplied.  ...  ... [1]   (ii) re-write the algorithm in full, using pseudocode, to implement your answer to part (b)(i).  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "8": "8 0478/23/m/j/18 \u00a9 ucles 2018 5 the flowchart allows a set of 10 numbers to be entered; it finds and outputs the largest of these  numbers. start counter counter is counter < 10 ? output max end+ 1input num is num > max ?yes yesmaxnumno nomax\u20131000.00 counter 0",
            "9": "9 0478/23/m/j/18 \u00a9 ucles 2018 [turn over  (a) complete the trace table for the input data:   6.30, 18.62, 50.01, 3.13, 2.05, 50.10, 40.35, 30.69, 0.85, 17.30 max counter num output  [3]  (b) describe two different changes you should make to the flowchart to find the smallest number  instead of the largest number. change 1  ...  ... change 2  ...  ...  [2]",
            "10": "10 0478/23/m/j/18 \u00a9 ucles 2018 6 a shop that sells copies of movies to the public has set up a new database table called 2018mov  to store some new releases. part of this table is given, showing the catalogue number, title, genres  and available formats (blu-ray, dvd or streaming) of each movie. catno title genre 1 genre 2 blu-ray dvd stream 18m01 battery rangers adventure fantasy yes no yes 18m02 golfwatch comedy drama yes no yes 18m03 chair 27 comedy drama yes yes no 18m04 wander woman action fantasy yes no yes 18m05 justine league action fantasy yes yes yes 18m06 that horror thriller yes yes no 18m07 insect dude action fantasy no yes no 18m08 dover beach action history no yes no 18m12 slow 25 action thriller no yes no 18m15 kongkers adventure fantasy no yes no 18m16 transducers: the last night action sci-fi yes yes yes 18m17 the pale tower fantasy sci-fi yes yes no 18m19 bea and the bute fantasy romance yes yes yes 18m21 the daddy action fantasy no no yes 18m22 planet wars: episode x sci-fi action yes no yes 18m23 guardians of the milky way action sci-fi yes yes yes 18m26 odin horror sci-fi no yes yes 18m27 that fantasy sci-fi no no yes 18m30 underneath action horror yes no no 18m31 debatable me animation action yes yes no  (a) state the number of records in this part of the table.  ... [1]  (b) (i) give the name of the field that should be used for the primary key.  ... [1]   (ii) state the reason for choosing this field for the primary key.  ...  ... [1]",
            "11": "11 0478/23/m/j/18 \u00a9 ucles 2018  (c) complete the table to show the most appropriate data type for each field based on the data  shown in the table at the start of question 6. field data type catno title genre 1 stream  [2]  (d) list the output that would be given by this query-by-example. field: catno title genre 1 blu-ray dvd stream table: 2018mov 2018mov 2018mov 2018mov 2018mov 2018mov sort: show: 3 3 3 3 3 criteria: =\u201ccomedy\u201d or:  ...  ...  ...  ... [2] (e) using the query-by-example grid, write a query to identify all the movies that are categorised  as sci-fi and available to stream. only display the catalogue number and title of the film, with  the titles listed in alphabetical order. field: table: sort: show: criteria: or:  [4]",
            "12": "12 0478/23/m/j/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w18_qp_11.pdf": {
            "1": "*6495622596* this document consists of 11 printed pages and 1 blank page. dc (nf/sw) 150228/3 \u00a9 ucles 2018  [turn overcomputer science  0478/11 paper 1  theory  october/november 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.cambridge international examinations cambridge international general certificate of secondary education",
            "2": "2 0478/11/o/n/18 \u00a9 ucles 2018 1 (a) computer files can be saved in different file formats.    four  file formats and four file types are given.   draw a line to match each file format to the most suitable file type.   .jpeg text file .mp3 .mp4 .txtimage file audio file video filefile format file type [3]  (b) jamelia wants to store an image file. the image has an 8-bit resolution and is 150 pixels by  100 pixels in size.   calculate the file size of the image. give your answer in kilobytes (kb). show all of your  working.  ...  ...  ...  ...  ...  ...   file size ...  kb [3]",
            "3": "3 0478/11/o/n/18 \u00a9 ucles 2018 [turn over  (c) large files can be compressed to reduce their file size.   two types of compression that can be used are lossy and lossless.   explain how a file is compressed using lossless compression.  ...  ...  ...  ...  ...  ..  [3]  (d) the table contains four different file formats that use compression.   tick (\uf0fc) to show whether each file format uses lossy  or lossless  compression. file formatlossy (\uf0fc)lossless (\uf0fc) .jpeg .mp3 .mp4 .zip [4]",
            "4": "4 0478/11/o/n/18 \u00a9 ucles 2018 2 (a) six binary or hexadecimal numbers and  six denary conversions are given.   draw a line to connect each binary or hexadecimal number to the correct denary conversion.   01001011 75binary or hexadecimal denary 4e 11011010 10011101 a7 1978 157 167 25 218 [5]  (b) hexadecimal is often used by computer programmers to represent binary values.   explain why computer programmers may choose to use hexadecimal.  ...  ...  ...  ..  [2]",
            "5": "5 0478/11/o/n/18 \u00a9 ucles 2018 [turn over 3 a logic circuit is shown: a bx c  (a) complete the truth table for the given logic circuit. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 [4]  (b) explain the difference between the functions of an and gate and an or gate.  ...  ...  ...  ...  ...  ..  [3]",
            "6": "6 0478/11/o/n/18 \u00a9 ucles 2018 4 phishing and pharming are two examples of online security threats to a computer system.  (a) explain what is meant by phishing and pharming. phishing    ...  ...  ... pharming  ..  ...  ...  ... [4]  (b) identify two other online security threats to a computer system. security threat 1  ... security threat 2  ... [2]  (c) give two security measures that can help to protect a computer system from online security  threats. security measure 1  ... security measure 2  ... [2]",
            "7": "7 0478/11/o/n/18 \u00a9 ucles 2018 [turn over 5 (a) five storage devices or media are listed in the table.   tick (\uf0fc) to show whether each storage device or media is an example of primary , secondary   or off-line  storage. storage device or mediaprimary (\uf0fc)secondary (\uf0fc)off-line (\uf0fc) external hdd ram internal ssd rom dvd [5]  (b) users can store their data on optical storage media.   explain how data is written to optical storage media.  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "8": "8 0478/11/o/n/18 \u00a9 ucles 2018  (c) a sports events company uses a digital camera attached to a drone (small flying system), to  video their events from the sky.   the video is stored as it is captured, on a device that is attached to the drone.   (i) circle the most suitable type of storage to store the video.    optical                                             magnetic                                             solid state [1]   (ii) explain the reasons for your choice in part (c)(i) .  ...  ...  ...  ..  [2] 6 two examples of output devices are a 3d printer and a 3d cutter.  (a) the table contains four statements about 3d printers and 3d cutters.   tick (\uf0fc) to show which statements apply to each output device, some statements may apply  to both output devices. statement3d printer (\uf0fc)3d cutter (\uf0fc) outputs a physical 3d product uses a high powered laser to create the output creates 3d prototypes uses layers of material to create the output [4]  (b) identify the software used to create the computerised designs for 3d printing.  ..  [1]",
            "9": "9 0478/11/o/n/18 \u00a9 ucles 2018 [turn over  (c)  a digital light projector (dlp) is another example of an output device.   describe how a dlp displays an image.  ...  ...  ...  ...  ...  ..  [3] 7 computers can use different methods of transmission to send data from one computer to another.  parallel data transmission is one method that can be used.  (a) explain what is meant by parallel data transmission.  ...  ...  ...  ..  [2]  (b) give one  benefit and one drawback of parallel data transmission, compared to serial data  transmission, over short distances. benefit  ..  ...  ... drawback  ..  ...  ... [2]  (c) give one example where parallel data transmission is used.  ..  [1]",
            "10": "10 0478/11/o/n/18 \u00a9 ucles 2018 8 kamil correctly answers an examination question about a number of internet terms.  six different terms have been removed from kamil\u2019s answer.  complete the sentences in kamil\u2019s answer, using the list given. not all terms in the list need to be  used. \u2022 browser \u2022 connection \u2022 domain name server (dns) \u2022 internet \u2022 internet service provider (isp) \u2022 ip address \u2022 mac address \u2022 network \u2022 protocol \u2022 uniform resource locator (url) \u2022 webpages \u2022 hypertext mark-up language (html)  a .. is a program that allows a user   to view ..  .  an .. is a company that provides a   connection to access the ..  .  the main .. that governs the   transmission of data using the internet is http.  the .. is provided by the network,   and given to each device on the network. [6]",
            "11": "11 0478/11/o/n/18 \u00a9 ucles 2018 9 a sports stadium uses a pressure sensor and a microprocessor to monitor the number of people  entering the sports stadium. for the counter to increment the weight on the pressure sensor must  exceed 5  kg.  explain how the system uses the pressure sensor and the microprocessor to monitor the number  of people entering.  ..  ..  ..  ..  ..  ..  ..  ..  ..  .  [5] 10 personal computers (pcs) use an operating system.  explain why this type of computer needs an operating system.  ..  ..  ..  ..  ..  ..  ..  .  [4]",
            "12": "12 0478/11/o/n/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w18_qp_12.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (leg/sw) 150227/2 \u00a9 ucles 2018  [turn overcambridge international examinations cambridge international general certificate of secondary education *6295625451* computer science  0478/12 paper 1 theory  october/november 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/o/n/18 \u00a9 ucles 2018 1 computers use a character set to convert text into binary.  one character set that can be used is ascii.  each letter in ascii can also be represented as a denary value.  (a) the word bus has the denary values: b u s 66 85 83   convert the denary values into 8-bit binary. 66 85 83  [3]  (b) each letter in ascii can also be represented as a hexadecimal value.   the word key has the 8-bit binary values: k e y 01001011 01000101 01011001   (i) convert the three 8-bit binary values into hexadecimal.    01001011  ...    01000101  ...    01011001  ...  [3]",
            "3": "3 0478/12/o/n/18 \u00a9 ucles 2018 [turn over   (ii) give three  other uses of hexadecimal notation in computer science. 1 . 2 . 3 .  [3]   (iii) state two benefits of using hexadecimal notation to represent binary values. benefit 1    ... benefit 2    ...  [2] 2 a computer uses ram and rom to store data.  (a) the table contains three statements about ram or rom.   tick (\u2713) to show whether each statement describes ram  or rom . statementram (\u2713)rom (\u2713) stores the programs and data that are currently in use used to boot up the computer when power is turned on contents are retained when power is turned off  [3]  (b) circle the storage category that includes both ram and rom. primary                                             secondary                                              off-line  [1]  (c) explain what is meant by off-line storage.  ...  ...  ...  ... [2]",
            "4": "4 0478/12/o/n/18 \u00a9 ucles 2018 3 a greenhouse uses a system to monitor the conditions that plants need to grow.  the inputs to the system are: inputbinary  valuecondition w1 window is open 0 window is closed t1 temperature >=26  \u00b0c 0 temperature <26  \u00b0c h1 humidity >=50% 0 humidity <50%  the system will sound an alarm when certain conditions are detected.  alarm (x) will sound (=1) when: window is closed and temperature >=26  \u00b0c or temperature <26  \u00b0c and humidity >=50%  draw a logic circuit to represent the system. w t x h  [5]",
            "5": "5 0478/12/o/n/18 \u00a9 ucles 2018 [turn over 4 (a) identify three  security issues that can put a computer system at risk. security issue 1   security issue 2   security issue 3    [3]  (b) explain how a firewall can help to protect a computer system from security issues.  ...  ...  ...  ...  ...  ...  ...  ... [4] 5 (a) karina is taking her computer science examination. she has three  questions to answer  about output devices.   (i) for the first question she writes the answer:    \u201cit is a high powered laser that cuts materials such as thin metals or wood.\u201d    identify the output device that karina is describing.  ... [1]   (ii) for the second question she writes the answer:    \u201cthe screen is made up of blocks of red, green and blue pixels. the screen uses layers  of different types of liquid.\u201d    identify the output device that karina is describing.  ... [1]   (iii) for the third question she writes the answer:    \u201cit is responsible for powering and moving a motor in machinery, such as a robot arm in  a factory.\u201d    identify the output device that karina is describing.  ... [1]",
            "6": "6 0478/12/o/n/18 \u00a9 ucles 2018  (b) karina correctly answers another examination question about some more output devices.    five different terms have been removed from her answer.   complete the sentences in karina\u2019s answer, using the list given. not all terms in the list need  to be used.   \u2022 3d   \u2022 digital light projector   \u2022 inkjet   \u2022 interactive whiteboard   \u2022 laser   \u2022 rotating   \u2022 scanning   \u2022 sliding   \u2022 speaker   \u2022 thermal bubble   an ... allows a user to write on a     surface using a pen, the text and drawings can then be captured and stored for later use.     an ... printer produces a hard     copy of a document using ... and     piezoelectric technology. a ...     printer uses a .. drum, and positive     and negative charges, to produce a hard copy of a document.  [5]",
            "7": "7 0478/12/o/n/18 \u00a9 ucles 2018 [turn over 6 (a) many programmers write computer programs in high-level languages. the programs need to  be translated into machine code to be read by the computer.   state two types of translator that can be used. translator 1  ... translator 2  ...  [2]  (b) explain two reasons why a computer programmer may choose to write a program in a high- level language, rather than a low-level language. reason 1  ..  ...  ...  ... reason 2  ..  ...  ...  ...  [4]  (c) three  examples of computer code are given in the table.   tick (\u2713) to show whether each example of computer code is high-level language , assembly  language  or machine code . computer codehigh-level  language (\u2713)assembly  language (\u2713)machine  code (\u2713) 10110111 11001100 01011100 for x = 1 to 10 print x next x inp x sta x lda y  [3]",
            "8": "8 0478/12/o/n/18 \u00a9 ucles 2018 7 six internet terms and six definitions are listed.  draw a line to connect each term to a correct definition.  internet term  definition browser internet service provider  (isp) hyper text transfer protocol  (http) uniform resource locator  (url) mac address ip addressa program that allows a user to view   webpages the main protocol that governs the   transmission of data using the internet the website address that is typed into the  address bar an address given to each device on a network.   it is provided by the network a unique address given to a device on a   network. it is provided by the manufacturer a company that provides a connection to   access the internet  [5] 8 describe the purpose of an interrupt in a computer system.  ..  ..  ..  ..  ..  ..  ..  .. [4]",
            "9": "9 0478/12/o/n/18 \u00a9 ucles 2018 [turn over 9 (a) computers can transmit data using different methods.   describe the three  data transmission methods given.   (i) serial data transmission  ...  ...  ...  ... [2]   (ii) parallel data transmission  ...  ...  ...  ... [2]   (iii) duplex data transmission  ...  ...  ...  ... [2]",
            "10": "10 0478/12/o/n/18 \u00a9 ucles 2018  (b) data can sometimes be corrupted when it is transmitted from one computer to another,  causing errors to be present in the data.   identify and describe three  methods of error detection that could be used to see if an error  has occurred. error detection method 1  .. description    ...  ...  ... error detection method 2  .. description    ...  ...  ... error detection method 3  .. description  .  ...  ...  ...  [9]",
            "11": "11 0478/12/o/n/18 \u00a9 ucles 2018 10 a system uses ph sensors and a microprocessor to help monitor pollution in a river.   the ph of the water should be between 6 and 8. the system outputs an alert if the ph of the water  is not in this range.  explain how the system uses the ph sensors and the microprocessor to help monitor the pollution.  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [5]",
            "12": "12 0478/12/o/n/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w18_qp_13.pdf": {
            "1": "*9632126149* this document consists of 11 printed pages and 1 blank page. dc (kn/sw) 150225/2 \u00a9 ucles 2018  [turn overcomputer science  0478/13 paper 1  theory  october/november 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.cambridge international examinations cambridge international general certificate of secondary education",
            "2": "2 0478/13/o/n/18 \u00a9 ucles 2018 1 there are six output devices and six descriptions shown.  draw a line to connect each output device to the most appropriate description. uses a high-intensity beam  of light shone through three layers  of changing pixels laser printerdescription device uses millions of micro mirrors to  reflect light through a lens uses plastic, resin or  powdered metal to generate a  physical output uses a static electric charge  on a rotating drum to  generate a physical output uses liquid ink to generate  a physical output uses a high-power laser to  generate a physical outputlcd projector digital light projector (dlp) inkjet printer 3d printer 2d cutter  [5]",
            "3": "3 0478/13/o/n/18 \u00a9 ucles 2018 [turn over 2 parity checks and automatic repeat requests (arq) can be used to check for errors during data  transmission and storage.  (a) a system uses even parity . write the appropriate parity bit for each byte. parity bit 1 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 1 0 0 0 1 [2]  (b) explain how automatic repeat requests (arq) are used in data transmission and storage.  ...  ...  ...  ... [2]  (c) state one other method that could be used to check for transmission errors.    ... [1] 3 an elevator (lift) has a maximum weight limit of 2400  kg. the weight carried is monitored by a  sensor and a microprocessor.  describe how the sensor and the microprocessor are used to make sure the maximum weight  limit is not exceeded.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  .. [6]",
            "4": "4 0478/13/o/n/18 \u00a9 ucles 2018 4 the mac address of a device is represented using hexadecimal.  a section of a mac address is shown. each pair of hexadecimal digits is stored using 8-bit binary.  (a) complete the table to show the 8-bit binary equivalents for the section of mac address. the  first number has already been converted. 6a ff 08 93 01101010 [3]  (b) explain why data is stored as binary in computers.   ...  ...  ...  ... [2] 5 data can be transferred using half-duplex serial transmission.  (a) describe serial transmission.  ...  ...  ...  ... [2]  (b) give one application of serial data transmission.  ...  ... [1]  (c) describe half-duplex data transmission.   ...  ...  ...  ... [2]",
            "5": "5 0478/13/o/n/18 \u00a9 ucles 2018 [turn over 6 sarah stores data electronically.   describe three  methods that she could use to avoid loss of stored data. method 1  ..  ..  ..  .. method 2  ..  ..  ..  .. method 3  ..  ..  ..  ..  [6]",
            "6": "6 0478/13/o/n/18 \u00a9 ucles 2018 7 david is writing a program using a high-level language. the program will be published and sold for  profit.  (a) david uses an interpreter when creating the computer program.   state three  features of an interpreter.  feature 1  ..  ... feature 2  ..  ... feature 3  ..  ...  [3]  (b) david compiles the program when he has completed it.   explain two benefits of compiling the program. benefit 1  ...  ...  ...  ... benefit 2  ...  ...  ...  ... [4]",
            "7": "7 0478/13/o/n/18 \u00a9 ucles 2018 [turn over  (c) david needs to send a large section of the programming code as an email attachment.    he uses lossless compression to reduce the file size.   explain how the file size is reduced.  ...  ...  ...  ...  ...  ... [3]",
            "8": "8 0478/13/o/n/18 \u00a9 ucles 2018 8 alice enters a url into a web browser to access a webpage.  (a) state what url represents.   u ...  r ...  l ...  [1]  (b) explain how the web browser uses the url to access the webpage.  ...  ...  ...  ...  ...  ...  ...  ... [4] 9 describe two differences between read only memory (rom) and random access memory  (ram). difference 1  ...  ..  ..  .. difference 2  ..  ..  ..  .. [4]",
            "9": "9 0478/13/o/n/18 \u00a9 ucles 2018 [turn over 10 a logic circuit is shown: xa b c  (a) complete the truth table for the given logic circuit. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 [4]",
            "10": "10 0478/13/o/n/18 \u00a9 ucles 2018  (b) draw a logic circuit corresponding to the logic statement: x = 1 if ((a is 1 and b is 1) and (a is 1 or c is not 1)) or (b is 1 and c is not 1) a b x c    [6] 11 the fetch-execute cycle make use of registers.  (a) describe the role of the program counter (pc).   ...  ...  ...  ... [2]  (b) describe the role of the memory data register (mdr).   ...  ...  ...  ... [2]",
            "11": "11 0478/13/o/n/18 \u00a9 ucles 2018 12 explain the difference between a musical instrument digital interface (midi) file and a mp3 file.  ..  ..  ..  ..  ..  ..  ..  .. [4] 13 state which types of storage device or media would be most suitable for these scenarios.  for each device or media, justify your choice.  (a) creating a backup of 150  gb of data.  ... justification  ...  ...    [2]  (b) storing applications on a tablet device.  ... justification  ...  ...    [2]  (c) storing a 1200  mb high-definition promotional movie about a new car. the movie is to be  given to people who are interested in buying a new car.  ... justification  ...  ...    [2]",
            "12": "12 0478/13/o/n/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w18_qp_21.pdf": {
            "1": "*1687970821* this document consists of 14 printed pages and 2 blank pages. dc (sr/sg) 150262/3 \u00a9 ucles 2018  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/21 paper 2  problem-solving and programming  october/november 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/21/o/n/18 \u00a9 ucles 2018 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material you are working at a local take-away shop and you have decided to write a program to track daily  takings and profit. here is the menu: menu item price french fries $2.00 1/4 pound burger $5.00 1/4 pound cheeseburger $5.55 1/2 pound burger $7.00 1/2 pound cheeseburger $7.50 medium pizza $9.00 medium pizza with extra toppings $11.00 large pizza $12.00 large pizza with extra toppings $14.50 garlic bread $4.50 write and test a program or programs. \u2022 your program or programs must include appropriate prompts for the entry of data.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 setting up the menu. set up a series of arrays to store the menu items and the prices, using the data supplied in the  menu. devise an item code for each menu item and store these in another array. output a new  menu including the item codes so that customers can place an order using the item codes. task 2 \u2013 placing an order. extend the program so that when a customer places their order from the menu you enter each item  code and the quantity. when the order is completely entered, a unique order code is generated.  display the order ensuring that the unique order code, menu items and quantities are shown, along  with the item prices and the total cost of the order. set up arrays for the day to store the unique order  code and the total cost of each order. task 3 \u2013 calculating daily takings and profit. 10% of the takings are profit. extend the program to display the total daily takings and profit. modify your program to allow you to enter the percentage of the takings that are profit. output the  total daily takings, the profit and the percentage used in the calculation.",
            "3": "3 0478/21/o/n/18 \u00a9 ucles 2018 [turn over 1 (a) all arrays, variables, constants and other identifiers should have meaningful names.   (i) state the name, data type and use of two arrays you created for task 1 . array 1 name  .. data type   use .  ... array 2 name  .. data type   use .  ...  [4]   (ii) state the name, data type and use of two variables you have created for task 2 . variable 1 name  . data type   use .  ... variable 2 name  . data type   use .  ...  [4]",
            "4": "4 0478/21/o/n/18 \u00a9 ucles 2018  (b)  write an algorithm to enter each item code and quantity. then when the order is completely  entered, generate a unique order code (part of task 2 ), using either  pseudocode,  programming statements or a flowchart. you should assume that task 1  has already been  completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/o/n/18 \u00a9 ucles 2018 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "6": "6 0478/21/o/n/18 \u00a9 ucles 2018  (c) explain how your program calculates the profit using your input (last part of task 3 ) with  variable profit percentage and outputs the results. any programming statements you use in  your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "7": "7 0478/21/o/n/18 \u00a9 ucles 2018 [turn over  (d) state three  items of test data you could use in task 3 to test the input of the percentage profit  value and explain why you chose them.   your reasons must be different for each item of test data. test data 1  . reason  ..  ... test data 2  . reason  ..  ... test data 3  . reason  ..  ...  [3]",
            "8": "8 0478/21/o/n/18 \u00a9 ucles 2018 section b 2 six terms associated with programming and six descriptions are listed.  draw a line to link each term with its most appropriate description.  term  description  top-down design  pre-written code to include in  your own program to carry out  a common task.  structure diagram  shows the steps representing  an algorithm using various  shapes of boxes.  flowchart  shows the hierarchy of the  different components which  make up a system.  pseudocode  shows the values of variables  as you manually test your  program.  library routine  breaks down a system into  successively smaller pieces.  trace table  describes a program using a  simplified high-level notation.  [5]",
            "9": "9 0478/21/o/n/18 \u00a9 ucles 2018 [turn over 3 describe, giving a different example for each, the purpose of these validation checks used in  programming. range check    ..  .. example    ..  .. length check    ..  .. example    ..  .. type check  ...  ..  .. example    ..  ..  [6]",
            "10": "10 0478/21/o/n/18 \u00a9 ucles 2018 4 an algorithm is written in pseudocode: total  0 for count  1 to 50   input num   total  total + num next count output total  (a) describe the purpose of the algorithm.  ...  ...  ...  ...  ...  ... [3]  (b) re-write the algorithm in pseudocode using a different type of loop.   ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]  (c) describe how you could modify the original algorithm shown at the start of question 4, to  allow any number of inputs.  ...  ...  ...  ... [2]",
            "11": "11 0478/21/o/n/18 \u00a9 ucles 2018 [turn over question 5 starts on page 12.",
            "12": "12 0478/21/o/n/18 \u00a9 ucles 2018 5 the flowchart performs a mathematical process on a number input called testnum    div is used to represent integer division  e.g. 7 div 3 = 2 start endinput testnum output testnumis num = 1 ? is testnum / num = testnum div num  ? is flag = true ?flag true flag falsenum testnum \u2013 1 num num \u2013 1yes no yes yesno no  ",
            "13": "13 0478/21/o/n/18 \u00a9 ucles 2018 [turn over  (a) complete the trace table for the input data: 7 flag testnum num output  [2]  (b) complete the trace table for the input data: 6 flag testnum num output  [2]  (c) state the purpose of the algorithm in the flowchart.  ...  ... [1]",
            "14": "14 0478/21/o/n/18 \u00a9 ucles 2018 6 the database table, pcstock, is a part of the database in an electronics shop, showing some of  the desktop (dt), tablet (tb) and laptop (lt) computers they have in stock.  pcid screensize ram type hdd(gb) price dt303240 30 32 dt 4000 $5000.00 dt303220 30 32 dt 2000 $4500.00 dt301620 30 16 dt 2000 $4000.00 dt231610 23 16 dt 1000 $3000.00 lt191620 19 16 lt 2000 $3000.00 lt171610 17 16 lt 1000 $2500.00 dt230820 23 8 dt 2000 $2000.00 dt190810 19 8 dt 1000 $1500.00 lt190810 19 8 lt 1000 $1500.00 lt170805 17 8 lt 500 $1200.00 dt230420 23 4 dt 2000 $1000.00 dt190410 19 4 dt 1000 $750.00 lt190410 19 4 lt 1000 $950.00 tb100206 10 2 tb 64 $200.00  (a) complete the table to show the most appropriate data type for each field based on the data  shown in the table at the start of question 6. field data type pcid screensize type price   [2]    (b) using the query-by-example grid, write a query to identify all the desktop computers with a  hard drive larger than 1000  gb. all fields in the table should be shown, sorted in descending  order by price. field: table: sort: show: criteria: or:  [4]",
            "15": "15 0478/21/o/n/18 \u00a9 ucles 2018 blank page",
            "16": "16 0478/21/o/n/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        },
        "0478_w18_qp_22.pdf": {
            "1": "*0823014951* this document consists of 11 printed pages and 1 blank page. dc (nf/sg) 150276/4 \u00a9 ucles 2018  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/22 paper 2  problem-solving and programming  october/november 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/22/o/n/18 \u00a9 ucles 2018 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a junior park run event is held every week on a saturday morning in a local park over a distance of  two kilometres. children between the ages of 4 and 14 inclusive can register to take part. children  register with their name and age. when they register, they are allocated a unique identification  number of four digits; the last digit is a check digit. once registered a child can take part in junior  park run events for a year. for each event, the organisers record the time each child takes to run two kilometres. their time is  stored for every event they complete and the number of runs they have completed is updated by  one. if their time is faster than their personal best (pb) time, their pb time is updated. when a child  has completed 11 runs, they are awarded a half-marathon wristband. when a child has completed  22 runs, they are awarded a full-marathon wristband. a program is required to update the children\u2019s data, update pb times if necessary, and decide if a  wristband is to be awarded. the program also needs to identify the fastest child at this event for  each of the age ranges: 4 to 6, 7 to 10 and 11 to 14. write and test a program or programs for the park run organiser. \u2022 your program or programs must include appropriate prompts for the entry of data. \u2022 error messages and other output need to be set out clearly and be understandable. \u2022 all variables, arrays, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 registering to take part. write a program to set up arrays to store the data for 20 children. on registration, each child must  be allocated a unique identification number of four digits; the last digit is a check digit. the unique  identification number, age in years and name for each child is recorded and stored on registration.  the pb time and the number of runs are initialised to zero and these values stored on registration.  their pb time is stored as minutes correct to two  decimal places. task 2 \u2013 recording the times. extend your program to record the unique identification number and to input the start time and finish  time for every child completing the junior park run event. calculate and store the time each child  took to complete the run. a registered child does not have to compete in each event. only one time  per child is recorded during an event. task 3 \u2013 updating the children\u2019s data and identifying the fastest child for each age range. extend your program to update the number of runs and the pb time if necessary for every child  completing the junior park run event. check if any half- or full-marathon wristbands need to be  awarded. output the names and the type of wristbands. output the names and the times of the  fastest child at this event for each of the age ranges 4 to 6, 7 to 10 and 11 to 14.",
            "3": "3 0478/22/o/n/18 \u00a9 ucles 2018 [turn over 1 (a) all variables, arrays, constants and other identifiers should have meaningful names.   (i) state the name of one variable you have used for task 3 .    give the data type for the variable. state what it is used for. variable name  ... data type  ... use   [3]   (ii) describe the arrays that you have used to store the data for the children in task 1 .    include the name, data type and its use for each array.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [5]  (b) explain how you ensured that each identification number entered in task 1  was unique and  included a correct check digit.  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "4": "4 0478/22/o/n/18 \u00a9 ucles 2018  (c) write an algorithm for task 2 , using either  pseudocode, programming statements or a  flowchart. you should assume that task 1  has already been completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/o/n/18 \u00a9 ucles 2018 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "6": "6 0478/22/o/n/18 \u00a9 ucles 2018  (d) explain how your program identifies and outputs the names and times of the fastest runner  for each age range in task 3 . any programming statements used in your answer must be  fully explained. do not  include the wristband check or pb time update.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [4]",
            "7": "7 0478/22/o/n/18 \u00a9 ucles 2018 [turn over section b 2 (a) write an algorithm, using pseudocode, to input three different numbers, multiply the two  larger numbers together and output the result . use the variables: number1 , number2  and  number3  for your numbers and answer  for your result.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ..  [5]  (b) give two sets of test data to use with your algorithm in part (a)  and explain why you chose  each set. test data set 1  .. reason  .  ... test data set 2  .. reason  .  ... [4]",
            "8": "8 0478/22/o/n/18 \u00a9 ucles 2018 3 four  programming concepts and four descriptions are shown.  draw a line to connect each programming concept to the most appropriate description. functionprocedurestructure  diagramlibrary routinea subroutine that does not  have to return a value. a standard subroutine that is  available for immediate use. a subroutine that always  returns a value. an overview of a program or  subroutine.programming concept description [3] 4 a programmer wants to test that the readings from 2000 electricity meters are greater than 400  units and less than 900 units. the programmer uses selection and repetition statements as part of  the program.  explain, using programming statements, how selection and repetition could be used in this  program. selection  ..  ..  ..  ..  .. repetition  .  ..  ..  ..  ..  ..  ..  .. [4]",
            "9": "9 0478/22/o/n/18 \u00a9 ucles 2018 [turn over blank page question 5 starts on page 10.",
            "10": "10 0478/22/o/n/18 \u00a9 ucles 2018 5 the flowchart checks the level of chlorine and the depth of water compared to the height of the  swimming pool. error messages are output if a problem is found. no no no no yesyes yes yes yes nooutput \"too little chlorine add more chlorine\"output \"too much chlorine add more water\"output \"water too shallow\"output \"water too deep\"input height, depth, chlorine output \"pool ok to use\"start endis depth < height/3  ? is chlorine >3 ? is chlorine <1 ? is ok = true  ?is depth > height/2  ?oktrue okfalse",
            "11": "11 0478/22/o/n/18 \u00a9 ucles 2018 [turn over  (a) complete the trace tables for each set of input data.   input data: 6, 2.5, 2 height depth chlorine ok output   input data: 4, 3, 1.5 height depth chlorine ok output   input data: 6, 3.5, 4 height depth chlorine ok output [6]  (b) identify a problem with the algorithm that the flowchart represents.  ...  ..  [1]",
            "12": "12 0478/22/o/n/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.6 a database table, portrait, is used to keep a record of the portraits available from a photographic  studio. each portrait has a unique reference number picnnn, where n is a single digit, for example  pic123. the studio keeps a record of the size (for example 20  \u00d7 15), the type (black and white or  colour), and the price in dollars.  (a) complete the table to show the most appropriate data type for each of the fields. field data type reference number size type price in $ [4]  (b) the results from the query-by-example grid should show the reference number, price, type  and size of all portraits under $50. identify the  three  errors in the query-by-example grid. field: reference no price in $ type size table: portrait portrait portrait portrait sort: show: \uf0fc \uf0fc \uf0fc criteria: >50.00 or: error 1  ...  ... error 2  ...  ... error 3  ...  ... [3]"
        },
        "0478_w18_qp_23.pdf": {
            "1": "*1214679873* this document consists of 11 printed pages and 1 blank page. dc (ce) 150280/3 \u00a9 ucles 2018  [turn overcambridge international examinations cambridge international general certificate of secondary education computer science  0478/23 paper 2  problem-solving and programming  october/november 2018  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is approved for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/23/o/n/18 \u00a9 ucles 2018 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a holiday park has a number of log cabins that it rents by the week as shown in the table: name capacity peak off-peak hetty  4 $400.00 $250.00 poppy  4 $400.00 $250.00 blue skies  4 $500.00 $350.00 bay view  6 $650.00 $500.00 happy days  6 $695.00 $550.00 summer joy  6 $800.00 $600.00 walkers\u2019 rest  8 $950.00 $750.00 bertie  8 $1050.00 $850.00 green forest lodge 10 $1200.00 $950.00 coppice lodge 10 $1500.00 $1150.00 the capacity represents the maximum number of occupants for each log cabin. a program is needed  to record and store bookings. log cabins can only be booked from weeks labelled on the calendar  as weeks 23 to 39, inclusive. peak rates operate for weeks 27 to 35, inclusive, and off-peak rates  apply for weeks 23 to 26 and weeks 36 to 39, inclusive.  write and test a program or programs. \u2022 your program or programs must include appropriate prompts for the entry of data.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all arrays, variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 setting up the bookings system. write a program, using arrays, to identify each log cabin, its capacity, cost and whether or not it has  been booked for each week. identify each week by a number ranging from week 23 to 39.  task 2 \u2013 taking a booking. extend the program to: \u2022 identify and display which weeks are available for each log cabin, and its capacity. \u2022 input the log cabin, number of weeks and start week for the booking. \u2022 generate a unique booking code for the week(s) and log cabin chosen. \u2022 store the unique booking code in your array   (multiple week bookings will need the booking code stored multiple times).  \u2022 calculate and output the cost of the booking. task 3 \u2013 applying a special offer. amend the program to apply a 10% discount to any booking of three weeks or more. output the  original cost and the discounted cost of the booking.",
            "3": "3 0478/23/o/n/18 \u00a9 ucles 2018 [turn over 1 (a) all arrays, variables, constants and other identifiers should have meaningful names.   (i) state the name, data type and use of three  arrays you have created for task 1 . array 1 name  . data type  ... use    ... array 2 name  . data type  ... use    ... array 3 name  . data type  ... use    ...  [6]   (ii) state the name, data type and use for one variable you used in task 2 . variable name  ... data type  ... use    ... [2]",
            "4": "4 0478/23/o/n/18 \u00a9 ucles 2018  (b) write an algorithm to show how your program finds and displays the weeks available for  each log cabin and its capacity (part of task 2 ), using either  pseudocode, programming  statements or a flowchart.   ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/o/n/18 \u00a9 ucles 2018 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "6": "6 0478/23/o/n/18 \u00a9 ucles 2018  (c) describe how you could validate the input to identify a log cabin in task 2 . state one valid  and one invalid item of data to test your validation method. validation method  .  ...  ...  ...  ...  ... valid test data  ... invalid test data   [4]  (d) explain how your program performs task 3 . any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [4]",
            "7": "7 0478/23/o/n/18 \u00a9 ucles 2018 [turn over section b 2 describe, giving an example for each, the following data types used in programming.  integer description    .. example    string description    .. example   [4] 3 give an example of a pseudocode statement or statements to perform each of the following  functions. a condition controlled loop  ...  ..  .. a conditional statement    ..  .. totalling    ..  .. [3]",
            "8": "8 0478/23/o/n/18 \u00a9 ucles 2018 4 this is a section of program code.   1 total = 100.00 \t \t 2 \t\tprint\t\u2032enter\tthe\theight\tof\teach\tmember\tof\tyour\tclass,\tone\tat\ta\t time,\twhen\tprompted\u2032 \t \t 3 \tfor\tcount\t=\t1\tto\t30 \t \t 4 \t\t\tprint\t\u2032enter\ta\theight\tin\tmetres\u2032 \t \t 5 \t\t\tinput\theight \t \t 6 \t\t\ttotal\t=\ttotal\t+\theight   7   print total / 30 \t \t 8 \t\t\tcount\t=\tcount\t+\t1 \t \t 9 \tnext\tcount  (a) there are three  errors in this code.   state the line numbers that contain the errors and describe how to correct each error. error 1  ...  ...  ... error 2  ...  ...  ... error 3  ...  ...  ... [3]  (b) state the purpose of this program.  ...  ...  ... [1]",
            "9": "9 0478/23/o/n/18 \u00a9 ucles 2018 [turn over 5 the algorithm allows a number to be entered. it then calculates and outputs the next number in  the mathematical series. \t \t fib \t 1 \t \t prev2 \t 0 \t \t prev1 \t 1 \t \t input \tnumber \t \t if \tnumber\t=\t0\t \t \t\t\t\t\tthen\tfib\t 0 \t \t endif \t \t while \tnumber\t>\t2 \t \t\t\t\t\tfib\t\tprev2\t+\tprev1 \t \t\t\t\t\tprev2\t\tprev1 \t \t\t\t\t\tprev1\t\tfib \t \t\t\t\t\tnumber\t\tnumber\t-\t1 \t \t endwhile \t \t output \tfib  (a) complete the trace table for the input data:  7 fib prev2 prev1 number output [4]  (b) complete the trace table for the input data:  2 fib prev2 prev1 number output [2]",
            "10": "10 0478/23/o/n/18 \u00a9 ucles 2018 6 an online fruit tree specialist sells fruit trees in various sizes. a database table, treetab, shows  the tree type and, for each size, the price and whether they are in stock. tree type size1 size1 in size2 size2 in size3 size3 in apple 10.95 yes 14.95 yes 29.95 yes apple 12.95 yes 14.95 yes 29.95 yes cherry 24.95 no 34.95 no 59.95 yes fig 19.95 yes 29.95 no 49.95 yes guava 19.95 no 29.95 no 59.95 no nectarine  8.50 yes 11.95 yes 19.95 yes olive 19.95 no 39.95 yes 59.95 yes peach  9.25 no 11.95 yes 19.95 yes pear 10.95 yes 14.95 yes 29.95 yes plum  8.95 yes 11.95 yes 19.95 yes pomegranate 12.95 no 18.95 yes 34.95 no quince 34.95 yes 44.95 yes 84.95 no  (a) state whether any of the fields shown would be suitable as a primary key.  ... explain your answer  .  ...  ... [2]  (b) complete the table to show the most appropriate data type for each of the fields based on the  data shown in the table at the start of question 6. field data type tree type size3 size2 in [3]",
            "11": "11 0478/23/o/n/18 \u00a9 ucles 2018  (c) show the output that would be given by this query-by-example. field: tree type size1 size1 in table: treetab treetab treetab sort: descending show: \uf0fc \uf0fc \uf0fc criteria: <10.00 or:  ...  ...  ...  ... [4]  (d) using the following query-by-example grid, write a query to identify all types of the fruit trees  that are out of stock for all three sizes. make sure the type of the tree and the various \u2018in  stock\u2019 fields are shown. the trees should be listed in alphabetical order by type. field: table: sort: show: criteria: or: [4]",
            "12": "12 0478/23/o/n/18 \u00a9 ucles 2018 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge international  examinations copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download at www.cie.org.uk after  the live examination series. cambridge international examinations is part of the cambridge assessment group. cambridge assessment is the brand name of university of cambridge local  examinations syndicate (ucles), which is itself a department of the university of cambridge.blank page"
        }
    },
    "2019": {
        "0478_m19_qp_12.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (kn/fc) 168931/3 \u00a9 ucles 2019  [turn over *6677532764* computer science  0478/12 paper 1  theory  february/march 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge assessment international education cambridge international general certificate of secondary education this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/f/m/19 \u00a9 ucles 2019 1 (a) elle has a file stored on her computer that is 20  mb in size. jordan has a file that is 10  gb in  size.   tick (3) to show which is the larger  file. file sizetick  (3) 20 mb 10 gb  [1]  (b) bob has a file stored on his computer that is 3500  kb in size. gerty has a file that is 3  mb in  size.   tick (3) to show which is the larger  file. file sizetick  (3) 3500  kb 3 mb  [1] 2 many computer systems have an input device and an output device.  (a) (i) state what is meant by an input device.  ...  .  [1]   (ii) give an example of an input device.  .  [1]  (b) (i) state what is meant by an output device.   ...  .  [1]   (ii) give an example of an output device.  .  [1]",
            "3": "3 0478/12/f/m/19 \u00a9 ucles 2019 [turn over 3 (a) a long distance running race uses an electronic counter that counts each competitor who  finishes the race.   the count is stored as binary in a 12-bit  register.   a denary value of the count is displayed on a screen above the finish line.   (i) the screen currently displays: 0 0 3 9    state the binary value that is currently stored to display the count shown.  ...  .  [2]   (ii) more competitors cross the finish line and the screen now displays: 0 3 5 0    state the binary value that is currently stored to display the count shown.  ...  .  [2]   (iii) at the end of the race the binary value stored is: 011011000111    give the denary value that would be displayed on the screen at the end of the race.    show your working.  ...  ...  ...  ... screen display:   [2]",
            "4": "4 0478/12/f/m/19 \u00a9 ucles 2019  (b) sensors are used at the finish line to identify the number of competitors who finish the race.   (i) identify two different sensors that could be used to identify the number of competitors. sensor 1  . sensor 2  .  [2]   (ii) the sensors are used with a microprocessor to count how many competitors finish the  race.    explain how the sensor and the microprocessor are used.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "5": "5 0478/12/f/m/19 \u00a9 ucles 2019 [turn over 4 darius is writing a computer program that allows binary values to be calculated.  darius chooses to write the program in a high-level language rather than a low-level language.  (a) explain why darius chooses to write the program in a high-level language.  ...  ...  ...  .  [2]  (b) darius will use a translator to translate the program. he could use a compiler or an interpreter.   five statements are given about compilers and interpreters.   tick (3) to show if the statement applies to a compiler  or an interpreter . statements may  apply to both. statementcompiler (3)interpreter (3) a report of errors is produced at the end of translation. the program is translated one line at a time. the program is translated from high-level language into  machine code. an executable file is produced. the program will not run at all if an error is detected.  [5]",
            "6": "6 0478/12/f/m/19 \u00a9 ucles 2019  darius is sending several programs that he has created to his friend selma.  (c) he wants to compress the files to send them as he needs to attach them to an email.   darius tells selma he is going to use lossy compression. selma tells him that he should use  lossless instead.   explain why selma tells darius to use lossless compression instead of lossy.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (d) errors can occur when data is transmitted, stored or entered into a system.   darius could use an error detection method to find whether errors have occurred.   one error detection method he could use is a checksum.   (i) describe how a checksum detects errors.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "7": "7 0478/12/f/m/19 \u00a9 ucles 2019 [turn over   (ii) state three  other error detection methods that darius could use. method 1   method 2   method 3    [3]",
            "8": "8 0478/12/f/m/19 \u00a9 ucles 2019 5 consider the following logic statement:    x = 1 if ((a is 1 nand c is 1) nor a is not 1) or (b is 1 and c is not 1)  (a) draw a logic circuit that represents the given logic statement. your logic gates must have a  maximum of two inputs. do not simplify the logic statement. a b cx  [6]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "9": "9 0478/12/f/m/19 \u00a9 ucles 2019 [turn over 6 nadia purchases a printer to print out her homework.  she connects the printer to her computer using usb.  (a) explain what is meant by usb.  ...  ...  ...  ...  ...  .  [3]  (b) nadia\u2019s printer uses powdered toner rather than liquid ink.   (i) state the type of printer nadia has purchased.  .  [1]   (ii) give two benefits of using this type of printer. benefit 1  .  ... benefit 2  .  .. .  [2]   (iii) give one drawback of using this type of printer. drawback 1    .  [1]",
            "10": "10 0478/12/f/m/19 \u00a9 ucles 2019  (c) nadia uses several types of computer storage for her homework and other projects.   (i) five examples of computer storage are given.    tick (3) to show if the computer storage is primary , secondary  or off-line . storage exampleprimary (3)secondary (3)off-line (3) solid state drive (ssd) blu-ray disc usb flash memory random access memory (ram) read only memory (rom)  [5]   (ii) nadia is considering purchasing a magnetic storage device.    describe how a magnetic storage device stores data.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "11": "11 0478/12/f/m/19 \u00a9 ucles 2019   (iii) give two advantages of using a magnetic storage device rather than a solid state storage  device. advantage 1  ...  ... advantage 2  ...  ...  [2] 7 arya regularly uses the internet as a research tool for her school projects.  identify and describe three  risks to arya\u2019s computer when she is using the internet for research. risk 1   description    ..  .. risk 2   description    ..  .. risk 3   description    ..  ..  [6]",
            "12": "12 0478/12/f/m/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_m19_qp_22.pdf": {
            "1": "this document consists of 14 printed pages and 2 blank pages. dc (lk/cb) 162269/1 \u00a9 ucles 2019  [turn overcambridge assessment international education cambridge international general certificate of secondary education *1551726642* computer science  0478/22 paper 2  problem-solving and programming  february/march 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/22/f/m/19 \u00a9 ucles 2019 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a pizza ordering service allows customers to design their own pizza. there are three sizes: small,  medium and large. a pizza can have a thick or thin base. all pizzas come with tomato and cheese  toppings as standard and there are six additional types of topping available: \u2022 pepperoni \u2022 chicken \u2022 extra cheese \u2022 mushrooms \u2022 spinach \u2022 olives pizzas always come with tomato and cheese toppings as standard, and can have up to three  additional toppings. customers need to be able to design their own pizza and then confirm or  change it. records are kept showing the number of pizzas sold for each base and size. the number  of sales for each additional topping is also recorded. write and test a program or programs for the pizza ordering service.  \u2022 your program or programs must include appropriate prompts for the entry of data.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 design your pizza. the customer is given choices of size, base and additional toppings (number and type) as stated  above. only valid choices can be accepted. the customer is asked to confirm their order or alter  their choices or not proceed. if the customer confirms their order they are given a unique order  number. task 2 \u2013 record the choices. extend task 1 to record totals for the choices made for ordered pizzas only and calculate the total  number of pizzas ordered. task 3 \u2013 find the most and least popular additional pizza toppings. using your results from task 2, display the most popular and least popular additional toppings as a  percentage of the total number of additional toppings ordered.",
            "3": "3 0478/22/f/m/19 \u00a9 ucles 2019 [turn over 1 (a) all variables, constants and other identifiers should have meaningful names.   state one constant and one variable that you could have used for task 1 . give the value that  would be assigned to the constant. give the data type for the variable. explain what each one  could be used for. constant name  . value  . use  ...  ... variable name  ... data type  .. use  ...  ...  [6]  (b) explain how you would need to change your program for task 1  if there were three bases to  choose from (thick, thin and extra crispy).  ...  ...  ...  .  [2]",
            "4": "4 0478/22/f/m/19 \u00a9 ucles 2019  (c) (i) write an algorithm for choosing the additional toppings in task 1 , using either   pseudocode, programming statements or a flowchart. your algorithm must only include  this part of task 1 .  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/f/m/19 \u00a9 ucles 2019 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "6": "6 0478/22/f/m/19 \u00a9 ucles 2019   (ii) explain how your algorithm in part (c)(i)  only allowed valid choices for the additional  pizza toppings.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "7": "7 0478/22/f/m/19 \u00a9 ucles 2019 [turn over  (d)  explain how your program completed task 3 . any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "8": "8 0478/22/f/m/19 \u00a9 ucles 2019 section b 2 (a) an algorithm has been written in pseudocode to input 50 numbers and total only the positive  numbers.      count \u2190 1      total \u2190 count      repeat         input number        if number <> 0         then           total \u2190 total + count        endif        count \u2190 count + 1      until count < 50      print total   find the four errors in the pseudocode and suggest a correction for each error. error 1  ... correction  .  ... error 2  ... correction  .  ... error 3  ... correction  .  ... error 4  ... correction  .  ...  [4]  (b) show how you would change the corrected algorithm to only total numbers greater than 0  and less than 20.  ...  ...  .  [2]",
            "9": "9 0478/22/f/m/19 \u00a9 ucles 2019 [turn over question 3 starts on page 10.",
            "10": "10 0478/22/f/m/19 \u00a9 ucles 2019 3 this flowchart inputs the type of passenger for a survey: s for senior, a for adult, c for child. all  other values are ignored, apart from z which ends the process.  start endsenior   0 adult   0 child   0 senior   senior  + 1input type output \"seniors \", senior output \"adults \", adult output \"children \", childis type = \"s\" ? noyes adult   adult  + 1is type = \"a\" ? noyes child   child  + 1is type = \"c\" ? no noyes is type = \"z\" ? yes",
            "11": "11 0478/22/f/m/19 \u00a9 ucles 2019 [turn over  complete the trace table for the passenger input data:   s, s, s, a, c, c, c, a, a, a, a, w, s, s, d, c, z, d, s senior adult child type output  [5]",
            "12": "12 0478/22/f/m/19 \u00a9 ucles 2019 4 for each of the four groups of statements in the table, place a tick in the correct column to show  whether it is an example of selection  or repetition . statements selection repetition for x \u2190 1 to 10   sum \u2190 sum + 1 next x while x > 10 do   sum \u2190 sum + 1   x \u2190 x - 1 endwhile if x > 10 then    sum \u2190 sum + 1   x \u2190 x - 1 endif repeat   sum \u2190 sum + 1   x \u2190 x - 1 until x > 10  [4]",
            "13": "13 0478/22/f/m/19 \u00a9 ucles 2019 [turn over 5 a programmer restricts input values to less than 90 and greater than 60.  (a) state whether this is called validation or verification.  ...   name the check that needs to be used.  ...  [2]  (b) state three  different types of test data the programmer would need to use. give an example  of each type and the reason that the programmer chose that test data. type 1  ... example   reason  .  ... type 2  ... example   reason  .  ... type 3  ... example   reason  .  ...  [9]",
            "14": "14 0478/22/f/m/19 \u00a9 ucles 2019 6 a database table, biketyres, is used to keep a record of tyres for sale in a cycle shop.  tyres are categorised by width and diameter in millimetres, whether they have an inner tube and  the type of terrain for which they are designed. tyre code width diameter tube terrain stock level sltt 23 700 yes asphalt 18 mlnt 24 700 no asphalt 23 llnt 28 700 no asphalt 19 sltm 23 700 yes mixed 22 mltm 24 700 yes mixed 14 lltm 28 700 yes mixed 12 slth 23 700 yes hard 10 mlth 24 700 yes hard 5 llnh 28 700 no hard 7 slnm 23 700 no mixed 12 mlnm 24 700 no mixed 22 llnm 28 700 no mixed 18 ssnt 23 650 no asphalt 10 msnt 24 650 no asphalt 8 sstm 23 650 yes mixed 5 msnm 24 650 no mixed 4  the query-by-example grid below displays the tyre code and the stock level of all 28  mm width  tyres suitable for mixed terrain. field: tyre code stock level width terrain table: biketyres biketyres biketyres biketyres sort: show: 3 3 criteria: = 28 = 'mixed' or:  alter the query to show the tyre code and stock level in ascending order of stock level for all  24 mm asphalt terrain tyres. write the new query in the following query-by-example grid. field: table: sort: show: criteria: or:  [4]",
            "15": "15 0478/22/f/m/19 \u00a9 ucles 2019 blank page",
            "16": "16 0478/22/f/m/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s19_qp_11.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (lk) 172696/2 \u00a9 ucles 2019  [turn over *8226468011* computer science  0478/11 paper 1  theory  may/june 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge assessment international education cambridge international general certificate of secondary education this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/11/m/j/19 \u00a9 ucles 2019 1 hexadecimal is used for mac addresses.  part of a mac address is given: 97 \u2013 5c \u2013 e1  each pair of digits is stored as binary in an 8-bit register.  (a) show what the binary register stores for each pair of the given digits. 97 5c e1  [6]  (b) explain what is meant by a mac address.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (c) give two other examples where hexadecimal can be used. example 1  .  ... example 2  .  ...  [2]",
            "3": "3 0478/11/m/j/19 \u00a9 ucles 2019 [turn over 2 rajesh creates a logic circuit.  he uses three different logic gates in his circuit. each logic gate has a maximum of two inputs.  he describes the logic of each gate.  (a) \u201cthe only time the output will be 1 is when both inputs are 1.\u201d   state the single logic gate ...   draw the single logic gate:       [2]  (b) \u201cthe only time the output will be 1 is when both inputs are 0.\u201d   state the single logic gate ...    draw the single logic gate:       [2]  (c) \u201cthe only time the output will be 0 is when both inputs are 1.\u201d   state the single logic gate ...   draw the single logic gate:       [2]",
            "4": "4 0478/11/m/j/19 \u00a9 ucles 2019 3 five descriptions of different input or output devices are given in the table.  complete the table by stating the name  of each input or output device. description name of device this is an input device that works by shining a light  onto the surface of a document. the light source is  automatically moved across the document and the  reflected light is captured by mirrors and lenses this is an input device where a laser or a light source is  moved across an object. the width, height and depth of  the object are measured to allow a model to be created this is a large input device that is usually fixed to a  wall. a user can calibrate the device to make sure the  sensors align with a projected image. the user can use  either their finger or a special pen to make selections this is an output device that uses many small mirrors to  reflect light towards a lens. this will display an image. ... this is an output device that creates an object by  building layer upon layer of material. ...  [5]",
            "5": "5 0478/11/m/j/19 \u00a9 ucles 2019 [turn over 4 (a) lola is concerned about the risks to her computer when using the internet.   she wants to use some security methods to help protect her computer from the risks.   identify a security method she could use for each of the following risks. each security method  must be different.   describe how each security method will help protect lola\u2019s computer.    (i) computer virus security method   description    ...  ...  ...  [3]   (ii) hacking security method   description    ...  ...  ...  [3]   (iii) spyware security method   description    ...  ...  ...  [3]",
            "6": "6 0478/11/m/j/19 \u00a9 ucles 2019  (b) lola is also concerned that the data she stores could be subject to accidental damage or  accidental loss.   (i) state three  ways that the data lola stores could be accidentally damaged or accidentally  lost. 1    ... 2    ... 3    ...  [3]   (ii) give two methods that lola could use to help keep her data safe from accidental damage  or accidental loss. 1    ... 2    ...  [2]",
            "7": "7 0478/11/m/j/19 \u00a9 ucles 2019 [turn over 5 the following text is stored as a text file: she sells sea shells on the seashore. the shells that she sells are sea shells i am sure.  explain how lossless compression would compress this file.  ..  ..  ..  ..  ..  ..  ..  ..  ..    [5]",
            "8": "8 0478/11/m/j/19 \u00a9 ucles 2019 6 a law company holds a lot of sensitive data about its clients.  (a) it currently requires employees to enter a username and a password to log-in to an account.  each password must be 8 letters.   the company wants to increase the security of the log-in system.   identify two improvements the company could use to make the log-in system more secure.    explain how each improvement increases security. improvement 1  ..  ... explanation  ...  ...  ... improvement 2  ..  ... explanation  ...  ...  ...  [4]  (b) the law company wants to purchase a new file server.   the company can purchase a server with either solid state storage or magnetic storage. after  discussion, it decides to purchase a file server with magnetic storage.   explain why the company chose magnetic storage rather than solid state storage.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "9": "9 0478/11/m/j/19 \u00a9 ucles 2019 [turn over  (c) the law company also uses optical storage.   give three  different examples of optical storage. 1   2   3    [3] 7 annie writes a paragraph of text as an answer to an examination question about programming  languages.  using the list given, complete annie\u2019s answer by inserting the correct six missing terms. not all  terms will be used. \u2022 assembly \u2022 converter \u2022 denary \u2022 hexadecimal \u2022 high-level language \u2022 low-level language \u2022 machine code  \u2022 source code \u2022 syntax \u2022 translator  the structure of language statements in a computer program is called the     ...  . a programming language that uses natural     language statements is called a ...  . when programs     are written in this type of language they need a ... to     convert them into ...  .  a programming language that is written using mnemonic codes is called a     ...  . an example of this type of language is     ... language.  [6]",
            "10": "10 0478/11/m/j/19 \u00a9 ucles 2019 8 an art gallery has a website that is used to display and sell art.  (a) the gallery uses secure socket layer (ssl) to provide a secure connection when selling art.   describe the process of ssl and how it provides a secure connection.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]  (b) the art gallery also uses a firewall.   six statements are given about firewalls.   tick (3) to show if the statement is true  or false . statementtrue (3)false (3) firewalls are only available as hardware devices firewalls allow a user to set rules for network traffic firewalls will automatically stop all malicious traffic firewalls only examine traffic entering a network firewalls encrypt all data that is transmitted around a network firewalls can be used to block access to certain websites  [6]",
            "11": "11 0478/11/m/j/19 \u00a9 ucles 2019  (c) the art gallery is concerned about computer ethics relating to its website.   explain what is meant by computer ethics and why the art gallery is concerned about  computer ethics.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "12": "12 0478/11/m/j/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s19_qp_12.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (ks/cb) 172695/2 \u00a9 ucles 2019  [turn over *5135683263*cambridge assessment international education cambridge international general certificate of secondary education this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.computer science  0478/12 paper 1  theory  may/june 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.",
            "2": "2 0478/12/m/j/19 \u00a9 ucles 2019 1 input and output devices are often connected to a personal computer.  (a) identify three  input devices that can be connected to a personal computer. 1   2   3    [3]  (b) identify three  output devices that can be connected to a personal computer. 1   2   3    [3] 2 a finance company uses off-line storage to archive their accounts.  (a) explain what is meant by off-line storage.  ...  ...  ...  .  [2]  (b) the computers in the finance company use both primary and secondary storage.   (i) give one example of primary storage.  .  [1]   (ii) give two examples of secondary storage. 1   2    [2]",
            "3": "3 0478/12/m/j/19 \u00a9 ucles 2019 [turn over 3 vanessa writes a paragraph as an answer to an examination question about the central processing  unit (cpu).  use the list given to complete vanessa\u2019s answer by inserting the correct six missing terms.   not all terms will be used. \u2022 components \u2022 data \u2022 decoded \u2022 executed \u2022 fetched \u2022 instructions \u2022 ram \u2022 rom \u2022 secondary storage  the cpu processes  and  .  an instruction is  from   into the cpu where it is then  . once this has taken place the  instruction is then  .   [6]",
            "4": "4 0478/12/m/j/19 \u00a9 ucles 2019 4 (a) marley wants to store a video he has created for his school project.   he considers using a dvd or a blu-ray to store the video.   explain two differences between a dvd and a blu-ray. 1    ...  ...  ... 2    ...  ...  ...  [2]  (b) (i) marley also needs to store ten 8-bit colour images in a file for his project.    each image is 500 pixels wide and 300 pixels high.    calculate the total file size in megabytes (mb) for all marley\u2019s images.     show all your working.  ...  ...  ...  ...  ...  ...  ... file size   ...  mb  [3]",
            "5": "5 0478/12/m/j/19 \u00a9 ucles 2019 [turn over   (ii) marley prints the images for his project using an inkjet printer.    describe how the inkjet printer prints an image.  ...  ...  ...  ...  ...  ...  ...  .  [4] 5 a music company wants to send a new music file to many radio stations. it will send the music file  the day before the release date so that the radio stations can store the file ready for release.   the music company does not want the radio stations to be able to open the music file until 09:00  on the release date.  identify two security measures and describe how each measure can be used to make sure the  music file cannot be opened until the release date.  security measure 1  .. description  ...  ..  .. security measure 2  .. description  ...  ..  ..  [4]",
            "6": "6 0478/12/m/j/19 \u00a9 ucles 2019 6 priya creates a website to sell her old comic books and superhero figures.  (a) she uses html to create her website. the html she produces has both structure and  presentation.   explain what is meant by html structure  and presentation . include an example  of each. structure  ...  ...  ...  ... presentation  .  ...  ...  ...  [4]  (b) priya uses cookies in her website.   five statements are given about cookies.   tick (\u2713) to show if the statement is true  or false .  statementtrue (\u2713)false (\u2713) cookies can be used to store a customer\u2019s credit card details cookies can be used to track the items a customer has viewed on a website cookies will corrupt the data on a customer\u2019s computer cookies are downloaded onto a customer\u2019s computer cookies can be deleted from a customer\u2019s computer  [5]",
            "7": "7 0478/12/m/j/19 \u00a9 ucles 2019 [turn over  (c) priya stores her website on a webserver.   to transmit the website data to the webserver she uses parallel duplex data transmission.   describe how data is transmitted using parallel duplex data transmission.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (d) priya has a url for her website.   state what is meant by a url.  ...  .  [1]  (e) priya is concerned about a denial of service attack (dos) occurring on her webserver.   (i) explain what is meant by a denial of service attack.  ...  ...  ...  ...  ...  ...  ...  .  [4]   (ii) give one security device that can be used to help prevent a denial of service attack.  .  [1]",
            "8": "8 0478/12/m/j/19 \u00a9 ucles 2019 7 (a) an office has an automated lighting system. when movement is detected in the office the  lights are switched on. if movement is not detected for a period of 2 minutes the lights are  switched off. the system uses a sensor and a microprocessor.   describe how the automated lighting system uses a sensor and a microprocessor.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]  (b) a microprocessor uses rom.   explain what is meant by rom.  ...  ...  ...  ...  ...  .  [3]",
            "9": "9 0478/12/m/j/19 \u00a9 ucles 2019 [turn over 8 consider the logic statement: x = 1 if ((a is 1 nor c is 1) and (b is not 1 nor c is 1)) or (a is 1 and b is 1)  (a) draw a logic circuit to match the given logic statement. each logic gate used must have a  maximum of two inputs. do not attempt to simplify the logic statement. a b cx  [6]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "10": "10 0478/12/m/j/19 \u00a9 ucles 2019 9 the contents of three binary registers have been transmitted from one computer to another. even  parity  has been used as an error detection method.  the outcome after transmission is:  register a  and register c  have been transmitted correctly .   register b  has been transmitted incorrectly .  complete the parity bit  for each register to show the given outcome. parity bit register a 0 1 0 0 1 0 1 register b 1 0 0 0 0 0 1 register c 1 0 0 0 0 1 1  [3]",
            "11": "11 0478/12/m/j/19 \u00a9 ucles 2019 10 remy has a mobile device that has a capacitive touch screen.  describe how the capacitive touch screen registers remy\u2019s touch.  ..  ..  ..  ..  ..  ..  ..    [4]",
            "12": "12 0478/12/m/j/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s19_qp_13.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (rw/cb) 172694/3 \u00a9 ucles 2019  [turn over *0858620473* computer science  0478/13 paper 1  theory  may/june 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge assessment international education cambridge international general certificate of secondary education this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/13/m/j/19 \u00a9 ucles 2019 1 victoria is building a website for her cake design business.  (a) she uses the hexadecimal colour code #d2e3f5 as the background colour for her website.   the colour code is stored in two 12\u2011bit binary registers.   show how the code would be stored in the registers. d2e 3f5  [6]  (b) victoria uses html to create her website.   state what is meant by html.  ...  .  [1]  (c) the html victoria writes has both structure and presentation.   five examples are given of structure and presentation.   tick (\u2713) to show which example is structure  and which is presentation . examplestructure (\u2713)presentation (\u2713) the colour applied to a text heading on a web page the font style applied to a paragraph of text on a web page the placement of a paragraph of text on a web page the size that an image is set to be displayed at on a web page the placement of an image next to a paragraph of text on a web page  [5]",
            "3": "3 0478/13/m/j/19 \u00a9 ucles 2019 [turn over  (d) customers will use a web browser to access victoria\u2019s website.   victoria writes a paragraph of text to explain how the website will be displayed on a customer\u2019s  computer.   use the list given to complete victoria\u2019s paragraph by inserting the correct six missing terms.  not all terms will be used. \u2022 browser \u2022 domain name \u2022 firewall \u2022 hexadecimal \u2022 html \u2022 https \u2022 mac address \u2022 search engine \u2022 uniform resource locator (url) \u2022 web server   the user enters the website .. into the address bar.  the protocol that is used is ..  . the url contains  the .. for the website. this is used to look up the  ip address of the company. a dns server stores an index of ip  addresses.   the browser sends a request to the .. as this is  where the files for the website are stored. the files are sent back to the   .. as .. files.  this is interpreted by the browser and the web page is displayed.  [6]",
            "4": "4 0478/13/m/j/19 \u00a9 ucles 2019  (e) when customers access victoria\u2019s website they will be given the message: this website uses cookies. an explanation of their purpose can be found in our cookies policy.   (i) explain what is meant by cookies.  ...  ...  ...  .  [2]   (ii) explain why victoria would use cookies as part of her website.  ...  ...  ...  ...  ...  ...  ...  .  [4] 2 (a) a computer can have both a mac address and an ip address.   four  statements are given about mac addresses and ip addresses.   tick (\u2713) to show whether each statement is true  or false . statementtrue (\u2713)false (\u2713) a mac address is unique to a computer on a network once an ip address has been set it cannot be changed a mac address is made up of the computer\u2019s serial number and  the ip address if a computer does not have an ip address it cannot communicate  with another device using the internet  [4]",
            "5": "5 0478/13/m/j/19 \u00a9 ucles 2019 [turn over  (b) a computer uses the von neumann model and the stored program concept.   (i) explain what is meant by the stored program concept.  ...  ...  ...  .  [2]   (ii) the von neumann model has several components that are used in the fetch \u2011execute  cycle.    one component is the arithmetic logic unit (alu).    describe the role of the alu.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (c) the computer has an operating system.   (i) a signal causes the operating system to stop and assess what to do next.    identify the name of this signal.  .  [1]   (ii) state two functions of an operating system. 1   2    [2]",
            "6": "6 0478/13/m/j/19 \u00a9 ucles 2019 3 a finance company is concerned that its employees are being distracted by using gaming websites  at work.  (a) explain how a firewall could help prevent this distraction.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) the finance company is also worried about the security of the data stored on its servers.   the company has decided to encrypt the data to improve the security.   describe how the data are encrypted.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/13/m/j/19 \u00a9 ucles 2019 [turn over  (c) the finance company realises that its computer systems have been hacked.   the company thinks that spyware was used to obtain a user\u2019s password.   explain how spyware could have been used to obtain the user\u2019s password.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "8": "8 0478/13/m/j/19 \u00a9 ucles 2019 4 consider the given logic circuit: a b x c  (a) redraw the logic circuit using only 4 logic gates. each logic gate used must have a maximum  of two inputs. a b cx  [4]",
            "9": "9 0478/13/m/j/19 \u00a9 ucles 2019 [turn over  (b) complete the truth table for the given  logic circuit. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]  (c) describe the purpose of a logic gate in a logic circuit.  ...  ...  ...  .  [2]",
            "10": "10 0478/13/m/j/19 \u00a9 ucles 2019 5 the three binary numbers in the registers given have been transmitted from one computer to  another.  one binary number has been transmitted incorrectly. this can be identified by the use of a parity   bit.  identify the binary number that has been transmitted incorrectly . explain how you identified the  incorrect binary number. parity bit register a 1 0 1 1 1 0 0 1 register b 1 1 1 0 0 1 1 1 register c 1 0 0 1 1 0 1 1  the binary number that has been transmitted incorrectly is in register   explanation  ..  ..  ..  ..  ..    [4]",
            "11": "11 0478/13/m/j/19 \u00a9 ucles 2019 6 a museum has an information point.  visitors to the museum can use the information point to plan their visit to the museum.  the information point allows visitors to access the information using a resistive touch screen.  visitors can either listen to the information or read it on the screen. they can also select to output  a paper copy of the information they require.  (a) describe how the resistive touch screen registers the visitor\u2019s touch.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) the information point has a screen to allow visitors to read information.   identify two other output devices that are present in the information point. output device 1   output device 2    [2]  (c) the information point uses both primary and secondary storage.   explain what is meant by primary and secondary storage. primary  .  ...  ...  ... secondary    ...  ...  ...  [4]",
            "12": "12 0478/13/m/j/19 \u00a9 ucles 2019 permission to reproduce items where third \u2011party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer \u2011related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s19_qp_21.pdf": {
            "1": "this document consists of 13 printed pages and 3 blank pages. dc (sc) 162367/3 \u00a9 ucles 2019  [turn overcambridge assessment international education cambridge international general certificate of secondary education *2509236395* computer science  0478/21 paper 2  problem-solving and programming  may/june 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/21/m/j/19 \u00a9 ucles 2019 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material the local high school uses buses to transport students to school. there are six bus routes labelled a to f. you have  conducted a survey to analyse the punctuality statistics of these buses over a four-week period. the data from the  survey are shown in the table: punctuality table day bus a bus b bus c bus d bus e bus f mon1 0 0 2 1 \u22121 0 tue1 0 1 0 0 \u22121 \u22125 wed1 0 0 \u22121 0 \u22121 \u22125 thu1 2 0 \u22121 0 \u22122 \u22125 fri1 2 1 \u22122 0 \u22124 \u22124 mon2 4 2 \u22122 0 \u221210 \u22123 tue2 0 0 \u22123 0 \u22122 \u22125 wed2 3 0 \u22121 0 0 0 thu2 4 0 0 0 0 0 fri2 \u22122 0 0 0 0 0 mon3 \u22125 1 \u22122 2 0 0 tue3 0 0 0 0 1 \u22122 wed3 0 0 1 0 2 \u22123 thu3 3 0 1 0 \u22123 1 fri3 4 2 1 0 1 1 mon4 \u22121 0 1 0 1 1 tue4 8 0 \u22121 0 3 0 wed4 1 1 \u22121 0 \u22121 0 thu4 1 0 2 0 0 \u22122 fri4 \u22122 0 \u22122 0 0 \u22125 positive numbers represent minutes early, negative numbers represent minutes late and 0 represents the bus having  been on time. write and test a program or programs for the local high school.  \u2022 your program or programs must include appropriate prompts for the entry of data; data must be validated on  entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 setting up the data storage. using arrays set up a system to enable data for each bus route to be entered covering each day of a four-week  period. it must be possible to enter the data supplied or your own set of data, using suitable prompts as necessary. task 2  \u2013 working out the statistics. extend your program so that the following statistics for the four-week period may be calculated and output: \u2022 the number of late arrivals for each bus route \u2022 the average number of minutes late for each bus route \u2022 the bus route with the highest number of days on which it was late \u2022 the average number of minutes late for each bus route, using only data from days on which it was late all the results should be displayed with appropriate annotation. task 3  \u2013 checking specific days. extend the program as follows: \u2022 allow the user to input a specific day, for example fri3, to be used for analysis of data. \u2022 find and display how many buses were late on this particular day. \u2022 for each late bus, display the route label and how late the bus was on this particular day.",
            "3": "3 0478/21/m/j/19 \u00a9 ucles 2019 [turn over 1 (a) all variables, constants and other identifiers must have meaningful names.   (i) state one array you used for task 1 . state the data type and purpose of this array. array  .. data type  ... purpose  .  ...  ...  [3]   (ii) state one variable you used for task 2  and one variable you used for task 3 . in each  case, state the data type and purpose of the variable. task 2  variable name   data type  ... purpose  .  ...  ... task 3  variable name   data type  ... purpose  .  ...  ...  [6]",
            "4": "4 0478/21/m/j/19 \u00a9 ucles 2019  (b) write an algorithm to show how you calculated and output the number of late arrivals and the  average number of minutes late for each bus route (part of task 2 ), using either  pseudocode,  programming statements or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/m/j/19 \u00a9 ucles 2019 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/21/m/j/19 \u00a9 ucles 2019  (c) explain how your program uses the input in task 3  to only find the data for that specific day  (part of task 3). any programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "7": "7 0478/21/m/j/19 \u00a9 ucles 2019 [turn over  (d) explain how you would alter your program in task 1  to allow you to choose the number of  weeks to enter data on bus arrival times.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [2]",
            "8": "8 0478/21/m/j/19 \u00a9 ucles 2019 section b 2 describe each of the following data types used in programming. in each case, give an example of  a piece of data to illustrate your answer. each example must be different.  char  ...  ...  ...  string  ...  ...  ...  boolean  ...  ...  ...  [6] 3 (a) give an example of a conditional statement using pseudocode.  ...  ...  ...  ...  .  [2]  (b) describe the purpose of a conditional statement.    ...  ...  ...  .  [2]",
            "9": "9 0478/21/m/j/19 \u00a9 ucles 2019 [turn over question 4 starts on page 10.",
            "10": "10 0478/21/m/j/19 \u00a9 ucles 2019 4 this section of program code may be used as a validation check.  1 print \"input a value between 0 and 100 inclusive\"  2 input value  3 while value < 0 or value > 100  4  print \"invalid value, try again\"  5  input value  6 endwhile  7 print \"accepted: \", value  (a) give a name for this type of validation check.  .  [1]  (b) describe what is happening in this validation check.  ...  ...  ...  ...  ...  ...  ...  .  [2]  (c) complete the trace table for this program code using the test data:  200, 300, \u20131, 50, 60 value output  [3]",
            "11": "11 0478/21/m/j/19 \u00a9 ucles 2019 [turn over  (d) draw a flowchart to represent this section of program code.  [5]",
            "12": "12 0478/21/m/j/19 \u00a9 ucles 2019 5 the table, beverages, shows the number of calories in 100  ml of a range of popular beverages.  it also shows the availability of these drinks in a can, a small bottle and a large bottle. bevno bevname calories can small bottle large bottle bev01 cola 40 yes yes yes bev02 lime 45 yes no yes bev03 energy drink 1 52 yes yes no bev04 energy drink 2 43 yes no no bev05 mango 47 yes no yes bev06 lemon iced tea 38 yes no yes bev07 lemonade 58 yes yes yes bev08 orange juice 46 yes yes no bev12 apple juice 50 yes yes no bev15 chocolate milk 83 yes yes no  (a) give a reason for choosing bevno as the primary key for this table.  ...  .  [1]  (b) state the number of records shown in the table beverages.  .  [1]",
            "13": "13 0478/21/m/j/19 \u00a9 ucles 2019  (c) list the output that would be given by this query-by-example. field: bevno bevname can small bottle large bottle table: beverages beverages beverages beverages beverages sort: descending show: \u00fc \u00fc criteria: = \"yes\" = \"yes\" = \"yes\" or:  ...  ...  ...  .  [3]  (d) complete the query-by-example grid to output a list showing just the names and primary keys  of all the beverages with a calorie count greater than 45. the list should be in alphabetical  order of names. field: table: sort: show: criteria: or:  [4]",
            "14": "14 0478/21/m/j/19 \u00a9 ucles 2019 blank page",
            "15": "15 0478/21/m/j/19 \u00a9 ucles 2019 blank page",
            "16": "16 0478/21/m/j/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s19_qp_22.pdf": {
            "1": "this document consists of 13 printed pages and 3 blank pages. dc (lt/jg) 162368/2 \u00a9 ucles 2019  [turn overcambridge assessment international education cambridge international general certificate of secondary education *2526751721* computer science  0478/22 paper 2  problem-solving and programming  may/june 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/22/m/j/19 \u00a9 ucles 2019 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material an auction company has an interactive auction board at their sale rooms, which allows buyers to  place bids at any time during the auction. before the auction starts, the sellers place their items  in the sale room with a unique number attached to each item (item number). the following details  about each item need to be set up on the interactive auction board system: item number, number of  bids, description and reserve price. the number of bids is initially set to zero. during the auction, buyers can look at the items in the sale room and then place a bid on the  interactive auction board at the sale room. each buyer is given a unique number for identification  (buyer number). all the buyer needs to do is enter their buyer number, the item number and their bid.  their bid must be greater than any existing bids. at the end of the auction, the company checks all the items and marks those that have bids greater  than the reserve as sold. any items sold will incur a fee of 10% of the final bid to be paid to the  auction company. write and test a program or programs for the auction company.  \u2022 your program or programs must include appropriate prompts for the entry of data, data must be  validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 auction set up. for every item in the auction the item number, description and the reserve price should be recorded.  the number of bids is set to zero. there must be at least 10 items in the auction. task 2  \u2013 buyer bids. a buyer should be able to find an item and view the item number, description and the current highest  bid. a buyer can then enter their buyer number and bid, which must be higher than any previously  recorded bids. every time a new bid is recorded the number of bids for that item is increased by one.  buyers can bid for an item many times and they can bid for many items.  task 3 \u2013 at the end of the auction. using the results from task 2, identify items that have reached their reserve price, mark them as  sold, calculate 10% of the final bid as the auction company fee and add this to the total fee for all  sold items. display this total fee. display the item number and final bid for all the items with bids that  have not reached their reserve price. display the item number of any items that have received no  bids. display the number of items sold, the number of items that did not meet the reserve price and  the number of items with no bids.",
            "3": "3 0478/22/m/j/19 \u00a9 ucles 2019 [turn over 1 (a) all variables, constants and other identifiers must have meaningful names.   describe the data structures you have used in task 1  to record the items for sale. include  some sample data for each data structure you have described.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]  (b) explain how your program for task 1  ensures the item number is unique.  ...  ...  ...  .  [2]",
            "4": "4 0478/22/m/j/19 \u00a9 ucles 2019  (c) write an algorithm for the part of task 2  that allows the buyer to add a new bid, using  either  pseudocode, programming statements or a flowchart. assume that task 1  has been  completed and that the item details have already been found.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/m/j/19 \u00a9 ucles 2019 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "6": "6 0478/22/m/j/19 \u00a9 ucles 2019  (d) explain how your program for task 2  checks that a new bid is higher than previous bids for  an item.  ...  ...  ...  ...  ...  .  [3]",
            "7": "7 0478/22/m/j/19 \u00a9 ucles 2019 [turn over  (e) explain how your program identifies the items that have reached their reserve price, then  calculates and displays the total auction company fee for all sold items as part of task 3 . any  programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "8": "8 0478/22/m/j/19 \u00a9 ucles 2019 section b 2 (a) an algorithm has been written in pseudocode to input 100 numbers, select and print the  largest number and smallest number.    count  1    input number    high  number    low  count    repeat       input number      if number > high         then           high  number       endif      if number > low         then           low  number       endif      count  count + 1    until count > 99    print \"largest number is \", number    print \"smallest number is \", low   find the four errors in the pseudocode and suggest a correction for each error. error 1   correction  .  ... error 2   correction  .  ... error 3   correction  .  ... error 4   correction  .  ...  [4]",
            "9": "9 0478/22/m/j/19 \u00a9 ucles 2019 [turn over  (b) show how you would change the corrected algorithm  to total the numbers and print the total.   use a variable total .  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "10": "10 0478/22/m/j/19 \u00a9 ucles 2019 3 this flowchart inputs the marks gained in an examination. an input of \u20131 ends the routine. output \"number of distinctions \", distinction output \"average mark \" total/countstart endis mark = \u20131 ? is mark >= 80 ?input marktotal   0 count   0 distinction   0 nonoyes yestotal   total + mark count   count + 1 distinction distinction + 1  complete the trace table for the mark input data: 50, 70, 65, 30, 95, 50, 55, 85, 65, 35, \u20131, 45 total count distinction mark output [4]",
            "11": "11 0478/22/m/j/19 \u00a9 ucles 2019 [turn over 4 for each of the four groups of statements in the table, place a tick in the correct column to show  whether it is an example of selection  or repetition . statements selection repetition for a  1 to 100   b  b + 1 next a case a of   100: b  a   200: c  a endcase if a > 100 then    b  a endif repeat   a  b * 10 until a > 100  [4] 5 explain what is meant by validation  and verification .  give an example for each one. validation  ..  ..  ..  .. example  ...  ..  .. verification   ..  ..  .. example  ...  ..  .. [6]",
            "12": "12 0478/22/m/j/19 \u00a9 ucles 2019 6 a database table, flight, is used to keep a record of flights from a small airfield. planes can  carry passengers, freight or both. some flights are marked as private and only carry passengers. flight number plane notes departure time passengers fn101 caravan 1 private passenger flight 08:00 y cn101 caravan 2 freight only 08:30 n cn102 piper 1 freight only 09:00 n fn104 piper 2 passengers only 09:20 y fn105 piper 1 freight and passengers 10:00 y fn106 caravan 1 passengers only 10:30 y cn108 caravan 2 freight only 08:00 n cn110 lear private passenger flight 08:00 y  (a) state the field that could have a boolean data type. field    [1]",
            "13": "13 0478/22/m/j/19 \u00a9 ucles 2019  (b) a query-by-example has been written to display just the flight numbers of all planes leaving  after 10:00 that only carry passengers. field: flight number passengers departure time table: flight flight flight sort: show: 3 criteria: = y = 10:00 or:   explain why the query-by-example is incorrect, and write a correct query-by-example. explanation  ...  ...  ...  ...  ... field: table: sort: show: criteria: or: [7]",
            "14": "14 0478/22/m/j/19 \u00a9 ucles 2019 blank page",
            "15": "15 0478/22/m/j/19 \u00a9 ucles 2019 blank page",
            "16": "16 0478/22/m/j/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s19_qp_23.pdf": {
            "1": "this document consists of 15 printed pages and 1 blank page. dc (st/st) 162394/4 \u00a9 ucles 2019  [turn overcambridge assessment international education cambridge international general certificate of secondary education *6885163701* computer science  0478/23 paper 2  problem-solving and programming  may/june 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/23/m/j/19 \u00a9 ucles 2019 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a discount stationery store sells items in bulk at a discount to its customers. customers can order from  a small range of items available on that day. the greater the quantity of an item they buy in one order,  the greater the discount for that item. quantity of an item discount 10 5% 20 10% 50 25% 100 35% 500 50% in addition to this, new customers can use a $10 voucher, provided their order comes to more than  $50. also, returning customers are given a discount voucher with a monetary value. write and test a program or programs for the discount stationery store. \u2022  your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 stationery available on the day. using arrays, set up a list of at least 10 different items available that day. for every item include: item  code, description, price and the amount in stock. all item codes must be different. display the item  code, description, price and the amount in stock on the screen. task 2  \u2013 customer places an order. the customer chooses an item code from the list of currently available items. any items that are out of  stock are not displayed and any items that have low stock of 10 or fewer are highlighted. the customer  enters the number they wish to purchase. if there are not enough items in stock the number is rejected.  the price to pay and any discount is shown on the screen. when the order is complete, any customer  discount voucher is applied and the total price is shown. if the customer confirms the order, the stock  numbers are then updated. task 3  \u2013 at the end of the day. list the item codes of any items that have sold out. display the item code of any items of which none  have been sold. display the item code and description of the item of which the greatest quantity have  been sold today.",
            "3": "3 0478/23/m/j/19 \u00a9 ucles 2019 [turn over 1 (a)  all variables, constants and other identifiers must have meaningful names.   describe the data structures you have used in  task 1  to record the items available that day.  include some sample data for each data structure you have described.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]  (b) explain how your program for task 1  ensures all the item codes are different.  ...  ...  ...  .  [2]  (c) explain how your program for  task 2  highlights items where the stock level is low.  ...  ...  ...  ...  ...  .  [3]",
            "4": "4 0478/23/m/j/19 \u00a9 ucles 2019  (d) write an algorithm for task 2  using either  pseudocode, programming statements or a  flowchart. assume that task 1  has been completed and the list of items currently available  has already been displayed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/m/j/19 \u00a9 ucles 2019 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "6": "6 0478/23/m/j/19 \u00a9 ucles 2019  (e) explain how your program completes task 3 . any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "7": "7 0478/23/m/j/19 \u00a9 ucles 2019 [turn over question 2 begins on page 8.",
            "8": "8 0478/23/m/j/19 \u00a9 ucles 2019 section b 2 (a) an algorithm has been written in pseudocode to input the weight of 500 items and reject any  that are over-weight or under-weight, then print the percentage rejected.    count  1    reject  0    over  62    under  58    repeat       input itemweight      if itemweight > over and itemweight < under        then          reject  reject - 1      endif      count  count + 1    until count > = 500    reject  reject / 100    print \"percentage rejected is \", reject   find the four errors in the pseudocode and suggest a correction for each error. error 1  ...  ... correction  .  ... error 2  ...  ... correction  .  ... error 3  ...  ... correction  .  ... error 4  ...  ... correction  .  ... [4]",
            "9": "9 0478/23/m/j/19 \u00a9 ucles 2019 [turn over  (b) describe how you would change the corrected algorithm to calculate the number accepted  instead of rejected, using a variable accept , and print a warning if fewer than 50% are  accepted.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "10": "10 0478/23/m/j/19 \u00a9 ucles 2019 3 this flowchart inputs the tread depth of five tyres, four on the car and a spare tyre. any tread  depth of 1.6  mm or less is rejected. to be potentially roadworthy, a car must have four tyres with a  tread depth greater than 1.6  mm.    start endis count = 6? is treadreject <= 1? is depth <= 1.6?input depthtreadreject  0 count  1 nono noyes yes yesoutput \"car is not roadworthy\" output \"car is potentially roadworthy\"count  count + 1 treadreject  treadreject + 1",
            "11": "11 0478/23/m/j/19 \u00a9 ucles 2019 [turn over  complete trace table 1 for the tread depth input data:   1.7, 1.9, 1.4, 1.8, 2.0  treadreject count depth output trace table 1  complete trace table 2 for the tread depth input data:   1.2, 1.9, 1.4, 1.8, 2.4  treadreject count depth output trace table 2 [4]",
            "12": "12 0478/23/m/j/19 \u00a9 ucles 2019 4 for each of the four checks in the table, place a tick in the correct column to show whether it is an  example of a validation  or verification  check. statements validation verification range check double entry check digit presence check  [4] 5 identify and describe three  loop structures that are available in pseudocode. loop structure 1  ...  .. description  ...  ..  .. loop structure 2  ...  .. description  ...  ..  .. loop structure 3  ...  .. description  ...  ..  .. [6]",
            "13": "13 0478/23/m/j/19 \u00a9 ucles 2019 [turn over question 6 begins on page 14.",
            "14": "14 0478/23/m/j/19 \u00a9 ucles 2019 6 a database table, train, is used to keep a record of train departures from a station.  train number platform destination departure time status 1a37 1 newtown 08:00 on time 2x19 2 anytown 08:10 late 1a29 1 bigcity 08:15 on time 1a28 2 anytown 08:30 cancelled 1a67 3 gardenvillage 08:45 on time 1a37 1 newtown 08:50 on time 1a24 2 charter train 09:00 late 1a67 3 gardenvillage 09:15 on time  (a) explain why the field train number  could not be used as a primary key.  ...  .  [1]",
            "15": "15 0478/23/m/j/19 \u00a9 ucles 2019  (b) a query-by-example has been written to display only the train numbers and platforms of all  trains leaving after 08:30 that are late.  field: train number platform departure time status table: train train train train sort: show: 3 criteria: = y < 08:30 or: = \"late\"   explain why the query-by-example is incorrect, and write a correct query-by-example.  explanation  ...  ...  ...  ...  ... field: table: sort: show: criteria: or: [7]",
            "16": "16 0478/23/m/j/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w19_qp_11.pdf": {
            "1": "this document consists of 12 printed pages. dc (sc/sg) 163095/2 \u00a9 ucles 2019  [turn overcambridge assessment international education cambridge international general certificate of secondary education *3343675457* computer science  0478/11 paper 1  theory  october/november 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75. this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/11/o/n/19 \u00a9 ucles 2019 1 andrew wants to produce advertising material for his company.  (a) andrew can use an inkjet printer  or a laser printer .   draw lines to connect each printer to a correct statement. more than one line may be used to  connect to each printer or statement.  printer  statement uses a charged drum to  create the printed itemcan print in colour uses powdered toner creates output line by line  using a print headinkjet printer laser printer  [2]  (b) andrew wants to print a single page a4 leaflet. he wants to print 10  000 copies.    state whether he should use an inkjet or a laser printer.  .  [1]  (c) andrew wants to produce small 3d models of the company logo.   explain how a 3d cutter could be used to produce the models.  ...  ...  ...  .  [2]",
            "3": "3 0478/11/o/n/19 \u00a9 ucles 2019 [turn over 2 an electronic guessing game compares denary integer values input by a user with pre-stored  values. the pre-stored values are held in 10-bit binary format.  (a) convert the binary values in the table to denary. binary denary 0001001110 0110110111 1000000001  [3]  (b) when planning the game, the designer decided to use hexadecimal notation to represent the  binary values.   explain why the designer used hexadecimal notation.  ...  ...  ...  .  [2]  (c) state the hexadecimal equivalent of the binary value 1010110101  .  [3] 3 a company has several offices. it uses the internet to transfer data between offices. the company  also makes payments to staff and suppliers using online banking.  the company are concerned about spyware and other security aspects of using the internet.   (a) explain what is meant by spyware and how it is used to obtain data.  ...  ...  ...  ...  ...  .  [3]",
            "4": "4 0478/11/o/n/19 \u00a9 ucles 2019  (b) the company uses a web page to log on to the online bank.   identify one method that could be used by the online bank to reduce the impact of spyware  when logging on.   state how the method prevents the use of spyware.  ...  ...  ...  .  [2]  (c) the company has installed a firewall as part of its data security.   describe how a firewall can help protect against unauthorised access to data.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (d) state two other methods the company could use to help prevent unauthorised access to  data. method 1  ... method 2  ...  [2]",
            "5": "5 0478/11/o/n/19 \u00a9 ucles 2019 [turn over 4 a zoo has an information point. \u2022 visitors use a menu to select information about animals. \u2022 the menu includes 500 different animals.  \u2022 the information is provided only using high definition video with an audio track.   (a) state one input device that could be used for the information point.  .  [1]  (b) the output is shown on a monitor.   state one other output device that could be used for the information point.  .  [1]  (c) the video files are stored at the information point.   state one secondary storage device that could be used.  .  [1]  (d) the zoo decides to introduce quick response codes in different places in the zoo. these  provide further information about the animals.   describe how customers obtain the information from the quick response codes.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "6": "6 0478/11/o/n/19 \u00a9 ucles 2019 5 sonia shares files with her friends. the method of data transmission she uses is half-duplex serial  transmission.  (a) describe how data is transmitted using half-duplex serial data transmission.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) the system uses parity bits to check for errors during data transmission.    the outcome of four bytes after transmission is: byte 1 byte 2 byte 3 byte 4 00110011 01010100 10110100 01110111   one of the bytes has been transmitted incorrectly.   identify the byte that was transmitted incorrectly.   byte ...   explain how you identified the byte that was transmitted incorrectly.   ...  ...  ...  ...  [4]",
            "7": "7 0478/11/o/n/19 \u00a9 ucles 2019 [turn over 6 ishan is a member of a software community that develops computer games. he has programmed  a new feature for one of the community\u2019s existing games.  (a) ishan compiles the program before he issues it to the community.   (i) explain one benefit of ishan compiling the program.  ...  .  [1]   (ii) explain one drawback of ishan compiling the program.  ...  .  [1]  (b) ishan shares the program with community members over the internet, using secure socket  layer (ssl).   (i) explain how ishan will know he is on a secure website.  ...  .  [1]   (ii) describe how an ssl connection is established.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "8": "8 0478/11/o/n/19 \u00a9 ucles 2019  (c) the community publishes completed games on the internet as freeware.   describe what is meant by freeware.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (d) the program files for the games are compressed before they are published on the internet.   (i) describe one benefit of compressing the program files.  ...  ...  ...  .  [2]   (ii) state whether lossy  or lossless  compression should be used.  .  [1]",
            "9": "9 0478/11/o/n/19 \u00a9 ucles 2019 [turn over 7 a factory manufactures plastic pipes. it uses logic circuits to control the manufacturing process.   (a) consider the logic gate:   input a input boutput   complete the truth table for this logic gate. input a input b output 0 0 0 1 1 0 1 1  [1]  (b) consider the truth table: input a input b output 0 0 0 0 1 1 1 0 1 1 1 0   state the single  logic gate that produces the given output.  .  [1]",
            "10": "10 0478/11/o/n/19 \u00a9 ucles 2019  (c) plastic pipes of various sizes are manufactured by heating the plastic and using pressure.   the manufacturing system uses sensors to measure the pressure (p), temperature (t) and  speed (s) of production.    the inputs to the manufacturing system are: input binary value condition p1 pressure is > 5 bar 0 pressure is <= 5 bar t1 temperature is > 200 degrees celsius 0 temperature is <= 200 degrees celsius s1 speed is > 1 metre per second 0 speed is <= 1 metre per second   the system will sound an alarm ( x) when certain conditions are detected.   the alarm will sound when: temperature is > 200 degrees celsius and the pressure is <= 5 bar or speed is > 1 metre per second and temperature is <= 200 degrees celsius   draw a logic circuit to represent the above alarm system.   logic gates used must have a maximum of two inputs. p t sx  [5]",
            "11": "11 0478/11/o/n/19 \u00a9 ucles 2019 [turn over  (d) give two benefits of using sensors to monitor the manufacture of plastic pipes. 1    ... 2    ...  [2] 8 explain how an instruction is fetched in a von neumann model computer.  ..  ..  ..  ..  ..  ..  ..  ..    [6] 9 html can be used to create the structure and the presentation of web pages.  (a) describe what is meant by html structure.  ...  ...  ...  ...  .  [2]",
            "12": "12 0478/11/o/n/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge. (b) gloria writes a paragraph as an answer to an examination question about accessing a  website.   use the list given to complete gloria\u2019s answer by inserting the correct four missing terms. not  all terms will be used. \u2022 browser \u2022 cookies \u2022 hypertext markup language (html) \u2022 hypertext transfer protocol (http) \u2022 hypertext transfer protocol secure (https) \u2022 internet protocol address (ip address) \u2022 media access control address (mac address) \u2022 web server   the user enters the url of the website. the ... uses     the dns server to look up the ... of the website.   the browser sends a request to the ... to obtain the     website files. the website files are sent as ... that is     interpreted by the browser.   [4]"
        },
        "0478_w19_qp_12.pdf": {
            "1": "this document consists of 10 printed pages and 2 blank pages. dc (sc/tp) 201739/3 \u00a9 ucles 2019  [turn over *3491654171* computer science  0478/12 paper 1  theory  october/november 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge assessment international education cambridge international general certificate of secondary education this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/12/o/n/19 \u00a9 ucles 2019 1 computer memory size is measured in multiples of bytes.  four  statements about computer memory sizes are given in the table.  tick (\u2713) to show if the statement is true  or false . statementtrue (\u2713)false (\u2713) 25 kb is larger than 100  mb 999 mb is larger than 50  gb 3500  kb is smaller than 2  gb 2350  bytes is smaller than 2  kb  [4] 2 the von neumann model for a computer system uses several components in the fetch-execute  cycle. one component that is used is the control unit (cu).  identify four other components that are used in the von neumann model for a computer system. 1  ... 2  ... 3  ... 4  ...  [4] 3 the data from a sensor must be converted from analogue to digital to be processed by a computer.  (a) state what is meant by analogue data.  ...  .  [1]  (b) state what is meant by digital data.  ...  .  [1]",
            "3": "3 0478/12/o/n/19 \u00a9 ucles 2019 [turn over 4 an 8-bit binary register contains the value: 0 0 1 1 0 1 0 0  (a) convert the binary value to denary.  ...  .  [1]  (b) the contents of the register shifted one place to the right would give the result: 0 0 0 1 1 0 1 0   the contents of the register shown at the start of question 4 are shifted two places to the left.   show the contents of the register after this shift has taken place.  [1]  (c) state the effect this shift has on the denary value in part (a) .  ...  .  [1] 5 audrey wants to send a sound file to nico using email.  the file is too large to attach to an email so audrey decides to compress the file.  she uses lossy compression to reduce the size of the sound file.  (a) describe how lossy compression reduces the size of the sound file.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "4": "4 0478/12/o/n/19 \u00a9 ucles 2019  (b) nico asks audrey why she used lossy compression rather than lossless.   (i) state one advantage audrey could give of using lossy rather than lossless to compress  the sound file.  ...  .  [1]   (ii) state one disadvantage nico could give of using lossy rather than lossless to compress  the sound file.  ...  .  [1]  (c) audrey sometimes records midi files.   (i) explain what is meant by a midi file.  ...  ...  ...  ...  ...  ...  ...  .  [4]   (ii) midi uses serial data transmission.    explain two advantages of using serial transmission rather than parallel transmission. advantage 1  ..  ...  ...  ... advantage 2  ..  ...  ...  ...  [4]",
            "5": "5 0478/12/o/n/19 \u00a9 ucles 2019 [turn over 6 touch screen technologies can be described as resistive or capacitive.  six statements are given about resistive and capacitive technology.  tick (\u2713) to show if the statement applies to resistive  or capacitive  technology. statementresistive (\u2713)capacitive (\u2713) this touch screen has multi-touch capabilities this touch screen cannot be used whilst wearing gloves this touch screen is made up of two layers with a small  space in between this touch screen uses the electrical properties of the  human body this touch screen is normally cheaper to manufacture this touch screen has a quicker response time  [6] 7 gerald uses a keyboard to enter a website address into the address bar of his browser.  (a) describe how gerald\u2019s key presses on his keyboard are processed by the computer.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "6": "6 0478/12/o/n/19 \u00a9 ucles 2019  (b) state three  functions of a browser. 1    ... 2    ... 3    ...  [3]  (c) the website gerald visits uses https.   explain what is meant by https.  ...  ...  ...  ...  ...  .  [3]",
            "7": "7 0478/12/o/n/19 \u00a9 ucles 2019 [turn over 8 consider the logic circuit: a b cx  (a) write a logic statement to match the given logic circuit.  .  [3]  (b) complete the truth table for the given logic circuit. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "8": "8 0478/12/o/n/19 \u00a9 ucles 2019 9 maisey purchases a new router and attaches it to her computer. the connection she sets up uses  duplex data transmission.  (a) five statements are given about duplex data transmission.   tick (\u2713) to show if the statement is true  or false . statementtrue (\u2713)false (\u2713) duplex data transmission can be either serial or  parallel duplex data transmission is when data is transmitted  both ways, but only one way at a time duplex data transmission is always used to connect  a device to a computer duplex data transmission is when data is transmitted  both ways at the same time duplex data transmission automatically detects any  errors in data  [5]  (b) maisey\u2019s computer uses an integrated circuit (ic) for data transmission that sends multiple  bits at the same time.   state whether the ic uses serial  or parallel  data transmission.  .  [1]  (c) maisey purchases a new printer and connects it to her computer using the usb port.   explain two benefits of using a usb connection. benefit 1  ...  ...  ...  ... benefit 2  ...  ...  ...  ...  [4]",
            "9": "9 0478/12/o/n/19 \u00a9 ucles 2019 [turn over 10 data is valuable to a company.  (a) companies use error detection methods to make sure that data is accurate.   one error detection method is the use of a check digit.   explain what is meant by a check digit and how it is used to detect errors.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) companies can use a range of security methods to keep their data secure.   identify two security methods that a company can use to keep their data secure and explain  how each method can keep the data secure. security method 1  .  ...  ...  ...  ...  ... security method 2  .  ...  ...  ...  ...  ...  [6]",
            "10": "10 0478/12/o/n/19 \u00a9 ucles 2019 11 robert has a mobile device that uses ram, rom and an ssd.  (a) state what the ram, rom and ssd are used for. ram  ..  ... rom  .  ... ssd  ..  ...  [3]  (b) give two reasons why an ssd, rather than a hdd, is used in the mobile device. reason 1  ..  ... reason 2  ..  ...  [2]",
            "11": "11 0478/12/o/n/19 \u00a9 ucles 2019 blank page",
            "12": "12 0478/12/o/n/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w19_qp_13.pdf": {
            "1": "this document consists of 12 printed pages. dc (pq/tp) 173648/2 \u00a9 ucles 2019  [turn over *2059267920* computer science  0478/13 paper 1  theory  october/november 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. no marks will be awarded for using brand names of software packages or hardware. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 75.cambridge assessment international education cambridge international general certificate of secondary education this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/13/o/n/19 \u00a9 ucles 2019 1 a library has a system that allows customers to check out the books that they want to borrow.   each book has a barcode that can be used to identify the book.  (a) (i) identify two input devices that may be used in the library\u2019s system. input device 1   input device 2    [2]   (ii) identify two storage devices that may be used in the library\u2019s system. storage device 1  ... storage device 2  ...  [2]   (iii) identify two output devices that may be used in the library\u2019s system. output device 1  . output device 2  .  [2]  (b) the data stored by the library is archived at the end of each day. the archive is held on a  server in the library office.   the data is encrypted with an 8-bit key. as some of the data is confidential, the library wants  to make the encryption more secure.    (i) state how the library could make the encryption more secure.  ...  .  [1]   (ii) the term used to describe data before it is encrypted is plain text.    state the term used to describe encrypted data.  .  [1]",
            "3": "3 0478/13/o/n/19 \u00a9 ucles 2019 [turn over   (iii) the library\u2019s archive system uses an error detection and correction system that combines  a parity check with an automatic repeat request (arq).     describe how this system uses the parity check and arq.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]  (c) the library has a website that customers can use to search for a book.   (i) the website has a background colour with the hexadecimal colour code #f92a10     the colour code is stored in two 12-bit binary registers.    show how the colour code would be stored in the registers. f92 a10  [6]",
            "4": "4 0478/13/o/n/19 \u00a9 ucles 2019   (ii) videos on the library website show customers which books the library will soon have  in stock.    the library wants the file size of a video to be as small as possible.    identify and describe a method the library could use to reduce the file size of a video as  much as possible.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (d) the library often holds events that introduce new authors.   at the events, the library has a liquid crystal display (lcd) screen that displays data,  including an image and information about the author.   describe how an lcd screen operates to display this data.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "5": "5 0478/13/o/n/19 \u00a9 ucles 2019 [turn over 2 a programmer uses a high-level language to write a computer program.  (a) four  statements are given about high-level programming languages.   tick (3) to show if each statement is true  or false . statementtrue (3)false (3) high-level languages need to be translated into machine code to run on a  computer high-level languages are written using mnemonic codes high-level languages are specific to the computer\u2019s hardware high-level languages are portable languages  [4]  (b) tick (3) to show which of the following is an example of a high-level language program. example programtick (3) 1011100000110000 0000011011100010 inp sta one inp sta two add one a = input() b = input() if a == b:        print(\"correct\") else:        print(\"incorrect\")  [1]",
            "6": "6 0478/13/o/n/19 \u00a9 ucles 2019 3 blair writes a paragraph about data transmission in her computer science examination.  use the list given to complete blair\u2019s paragraph by inserting the correct five missing terms. not all  terms will be used. terms can be used more than once. \u2022 duplex \u2022 half-duplex \u2022 parallel \u2022 serial  \u2022 simplex  ... data transmission is when data is transmitted a  single bit at a time. ... data transmission is when  multiple bits of data are sent all at once. if a user wants to transmit data over a long distance, with  the highest chance of accuracy, ... data transmission  should be used.  if data needs to be transmitted in one direction only, for example from a computer  to a printer, ... data transmission should be used. if a  user has a large amount of data to transmit and this needs to be done as quickly as possible  ...  data transmission should be used.   [5]",
            "7": "7 0478/13/o/n/19 \u00a9 ucles 2019 [turn over question 4 starts on page 8.",
            "8": "8 0478/13/o/n/19 \u00a9 ucles 2019 4 a factory that manufactures cleaning products has a system that monitors conditions throughout  the manufacturing process.  the inputs to the system are: input binary value condition a1 ph > 7 0 ph < = 7 t1 temperature < 35  \u00b0c  0 temperature > = 35  \u00b0c p1 pressure > = 80  % 0 pressure < 80  %  (a) the system will sound an alarm ( x) when certain conditions are detected.   the alarm will sound when: \u2022 the pressure > = 80  % and the temperature > = 35  \u00b0c or \u2022 the temperature < 35  \u00b0c and the ph > 7    draw a logic circuit to represent the alarm system in the factory. each logic gate must have a  maximum of two inputs. a tx p [4]",
            "9": "9 0478/13/o/n/19 \u00a9 ucles 2019 [turn over (b) complete the truth table for the given logic problem. a t pworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]  (c) a sensor and a microprocessor are used to monitor the ph of the cleaning products. the  system records each reading that is taken. if the reading is greater than 7 a warning message  is displayed on a monitor.    explain how the sensor and microprocessor are used in the system.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "10": "10 0478/13/o/n/19 \u00a9 ucles 2019 5 the contents of three binary registers have been transmitted from one computer to another. odd  parity  has been used as an error detection method.  the outcome after transmission is: \u2022 register a  and register b have been transmitted correctly .  \u2022 register c  has been transmitted incorrectly .  write the appropriate parity bit  for each register to show the given outcome. parity  bit register a 0 1 0 0 0 1 1 register b 0 0 0 0 1 1 1 register c 0 0 0 0 0 1 1  [3] 6 jesse is taking his computer science examination. he answers five questions about ethics.  (a) for the first question, he writes the answer:   \u201cthis type of software can be copied and shared without the permission of the owner.\u201d   state what jesse is describing.  .  [1]  (b) for the second question, he writes the answer:   \u201cwith this type of software, the owner still retains the copyright for the software, but he gives  away copies of it for free.\u201d   state what jesse is describing.  .  [1]  (c) for the third question, he writes the answer:   \u201cthis type of software is often a trial version of the full software. to use the full version the  user normally needs to pay a fee.\u201d   state what jesse is describing.  .  [1]",
            "11": "11 0478/13/o/n/19 \u00a9 ucles 2019  (d) for the fourth question, he writes the answer:   \u201cthis is when a person copies another person\u2019s computer program and tries to claim it as his  own.\u201d   state what jesse is describing.  .  [1]  (e) for the fifth question, he writes the answer:   \u201cthis is the legal protection that a person can obtain, to provide protection against his work  being stolen.\u201d   state what jesse is describing.  .  [1] 7 the von neumann model for a computer system has several components that are used in the  fetch-execute cycle.   (a) one component is main memory.   (i) describe what is meant by main memory and how it is used in the von neumann model  for a computer system.  ...  ...  ...  ...  ...  .  [3]   (ii) state two other components in the von neumann model for a computer system. 1   2    [2] [turn over",
            "12": "12 0478/13/o/n/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge. (b) computer systems often use interrupts.   five statements are given about interrupts.   tick (3) to show if each statement is true  or false . statementtrue (3)false (3) interrupts can be hardware based or software based interrupts are handled by the operating system interrupts allow a computer to multitask interrupts work out which program to give priority to interrupts are vital to a computer and it cannot function without them  [5] 8 a company discovers malware on its network.  explain two ways that the malware could have been introduced to the company\u2019s network.  ..  ..  ..  ..  ..  ..  ..    [4]"
        },
        "0478_w19_qp_21.pdf": {
            "1": "this document consists of 11 printed pages and 1 blank page. dc (nh) 162395/3 \u00a9 ucles 2019  [turn overcambridge assessment international education cambridge international general certificate of secondary education *8649838361* computer science  0478/21 paper 2  problem-solving and programming  october/november 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/21/o/n/19 \u00a9 ucles 2019 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material you have been asked to write a program to calculate the area of a patio and the cost of the stone slabs  needed to cover it. the program should work for any patio that can be represented as a rectangle, or  group of rectangles that are joined together, and only one type of stone slab may be used. type of stone slab price per square metre dover $30.00 exeter $35.00 london $42.00 portland $49.50 shaftesbury $55.00 york $62.75 write and test a program or programs to calculate the cost of the stone slabs for a patio. \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three tasks. each task must be fully tested. task 1  \u2013 setting up the system for a simple rectangular patio. set up your program to: \u2022 store the type and price per square metre of the stone slabs using a suitable programming technique. \u2022 prompt and allow the user to input the length and width of their patio and the type of stone slab they  would like.  \u2022 calculate and display the number of square metres of stone slabs required, rounded up to the next  whole square metre, and the total cost of the stone slabs. task 2  \u2013 working on more complex shapes. assuming that a patio can be made up of a group of rectangles, extend your program to: \u2022 enter the number of rectangles making up the patio and the type of stone slab to be used.  \u2022 allow the dimensions for each rectangle to be entered. \u2022 calculate and display the total area of the patio rounded up to the next whole square metre. \u2022 calculate and display the total cost of the stone slabs. task 3  \u2013 allowing for waste. it is likely that some of the stone will not be useable, so it is sensible to allow a percentage for wastage,  for example, 10%. alter your program to allow the user to input a percentage to calculate wastage and  add this to the number of square metres of stone slabs to be purchased, rounded up to the next whole  square metre. display the revised total area and cost.",
            "3": "3 0478/21/o/n/19 \u00a9 ucles 2019 [turn over 1 (a) all variables, constants and other identifiers must have meaningful names.   name two variables that you could have used for task 1 . state the data type and purpose of  each variable. variable 1 name   data type  .. purpose    ... variable 2 name   data type  .. purpose    ...  [6]  (b) describe how arrays could be used to store the data about the types and price per square  metre of the stone slabs for task 1 .  ...  ...  ...  ...  ...  ...  ... [2]",
            "4": "4 0478/21/o/n/19 \u00a9 ucles 2019  (c) write an algorithm to complete task 2 , using either  pseudocode, programming statements  or a flowchart. assume task 1  has been completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/o/n/19 \u00a9 ucles 2019 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "6": "6 0478/21/o/n/19 \u00a9 ucles 2019  (d) explain how your program completes task 3 . any programming statements you use in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [3]",
            "7": "7 0478/21/o/n/19 \u00a9 ucles 2019 [turn over  (e) name two validation checks that could be used when entering patio dimensions in task 1  or  task 2  and describe their purpose. validation check 1  . purpose    ...  ...  ... validation check 2  . purpose    ...  ...  ...  [4]",
            "8": "8 0478/21/o/n/19 \u00a9 ucles 2019 section b 2 for each of the four descriptions in the table, place a tick in the correct column to show whether it  describes a structure diagram , a flowchart  or library routines . descriptionstructure  diagram flowchartlibrary  routines a modelling tool used to show the hierarchy of a  system. a collection of standard programs available for  immediate use. a graphical representation used to represent an  algorithm. a graphical representation to show how a system is  broken into sub-systems.  [4] 3 examine the following pseudocode:   input a   input b   input c   input d   input e   input f   input g   input h   input i   input j   input k   input l   t  a + b + c + d + e + f + g + h + i + j + k + l   output \"the average equals \", t  / 12  (a) describe what happens in this pseudocode.  ...  ...  ...  ...  ...  ... [3]",
            "9": "9 0478/21/o/n/19 \u00a9 ucles 2019 [turn over  (b) describe how this pseudocode could be altered to allow any number of values to be input.   ...  ...  ...  ...  ...  ...  ...  ... [3]  (c) re-write the given pseudocode to allow any number of values to be input.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... [5]",
            "10": "10 0478/21/o/n/19 \u00a9 ucles 2019 4 (a) complete the trace table for this algorithm using the given input data.    index  0   for count  0 to 7     input value     if value > 50       then         passmarks[index]  value         index  index + 1     endif   next count   print \"number passed \", index   input data: 58, 40, 67, 85, 12, 13, 75, 82 index count valuepassmarks output [0] [1] [2] [3] [4] [5] [6] [7]  [6]  (b) give the purpose of the algorithm shown in part (a) .  ...  ...  ... [1]",
            "11": "11 0478/21/o/n/19 \u00a9 ucles 2019 5 a car manufacturer makes a range of car models named pegasus, apollo and cupid. it keeps a  database to store the records of its range and the different options for each car model. within the  table car_range, the following data needs to be stored:  1. car model  2. body style \u2013 saloon, hatchback or estate  3. how many doors it has  4. whether it uses petrol, diesel or batteries as fuel  5. an identifier for a specific car.  (a) complete the table to show suitable field names and an example of appropriate data for each  field in the database table car_range. field name example of data  [3]  (b) state which of your fields would be most appropriate for a primary key and give a reason for  your choice.  ...  ...  ... [2]  (c) complete the query-by-example grid to provide a list of car models using petrol and the  number of doors these cars have, in alphabetical order of car model. display only the car  models and the number of doors. field: table: sort: show: criteria: or:  [3]",
            "12": "12 0478/21/o/n/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w19_qp_22.pdf": {
            "1": "this document consists of 13 printed pages and 3 blank pages. dc (st/ct) 162455/3 \u00a9 ucles 2019  [turn overcambridge assessment international education cambridge international general certificate of secondary education *1951238022* computer science  0478/22 paper 2  problem-solving and programming  october/november 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/22/o/n/19 \u00a9 ucles 2019 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a company supplies concrete slabs for paving. the slabs are made to order in batches of 20;  all slabs in a batch are identical. customers can order from a small range of standard sizes and  colours. all measurements are given in millimetres. the price is calculated at $0.05 for a volume of  100 000 mm3 of grey concrete; red and green concrete are charged at 10 % more. customers can  choose their own colours; a custom colour has an initial set up cost of $5 then 15 % more than the  price for grey.  colour of  slabdepth of  slabshapes sizes for each shape grey 38 square 600 \u00d7 600 or 450 \u00d7 450 red 45 rectangular 600 \u00d7 700 or 600 \u00d7 450 green round diameter 300 or 450 custom write and test a program or programs for the concrete slab company. \u2022  your program or programs must include appropriate prompts for the entry of data; data must  be validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 price for a batch of 20 slabs using the information above set up a routine that allows a customer to choose the concrete slab  they require and calculate a price for a batch of 20 slabs. the details of the slab chosen and the  price for a batch of 20 should be displayed on the screen. task 2  \u2013 customer places an order using the information from task 1, the customer places an order for the number of slabs they  require. orders for fewer than 20 slabs or more than 100 slabs are not accepted; orders that are  not a multiple of 20 are rounded up to the next multiple of 20 slabs. display the order price and the  number of slabs to be produced. task 3  \u2013 flexible pricing the cost of concrete is variable. the cost for 100  000 mm3 of grey concrete can be input and two  grades are available; basic at the cost input and best at 7 % more. use a copy of your program for  task 1 to develop task 3 to input the cost and grade of concrete before calculating the price for  20 slabs.",
            "3": "3 0478/22/o/n/19 \u00a9 ucles 2019 [turn over 1  (a) all variables, constants and other identifiers must have meaningful names.   (i)  describe the data structures that you have used to store the data for the concrete slabs  in task 1 , include the name, data type and use for each data structure.   ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]   (ii) state one variable that you have used in task 3 .    give the data type for the variable. state what it is used for. variable name  ... data type  ... use    ... [3]  (b) explain how you calculated the volume of a concrete slab in task 1 .  ...  ...  ...  ...  ...  .  [3]",
            "4": "4 0478/22/o/n/19 \u00a9 ucles 2019  (c) write an algorithm for task 2 , using either  pseudocode, programming statements or a  flowchart. assume that task 1  has been completed.   ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/o/n/19 \u00a9 ucles 2019 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "6": "6 0478/22/o/n/19 \u00a9 ucles 2019  (d) explain how you changed your program for task 1  to meet the requirements for task 3 .  include and fully explain any altered or additional programming statements.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/22/o/n/19 \u00a9 ucles 2019 [turn over section b 2 an algorithm has been written in pseudocode to select a random number using the function  randint(n) , which returns a whole number between 1 and the argument n. the algorithm then  allows the user to guess the number.     number  randint(100)     totaltry  1     repeat       print \"enter your guess now, it must be a whole number\"       input guess       if totaltry > number          then            print \"too large try again\"        endif       if guess > number          then            print \"too small try again\"        endif       totaltry  guess + 1     until guess <> number     totaltry  totaltry - 1     print \"number of guesses \", totaltry  find the four errors in the pseudocode and suggest a correction to remove each error. error 1  .. correction .  .. error 2  .. correction .  .. error 3  .. correction .  .. error 4  .. correction .  .. [4] ",
            "8": "8 0478/22/o/n/19 \u00a9 ucles 2019 3  (a) the flowchart checks the lengths of a batch of 10 ropes. for the batch to be accepted 90% of  the lengths need to be between 24.9 and 25.1 metres.    start endis count = 10 ? is reject <= 1 ? is length < 25.1 and length > 24.9  ?input lengthreject    0 count    0 output \"batch accepted\"output \"batch rejected\"no nonoyes yes yescount   count + 1 reject   reject + 1",
            "9": "9 0478/22/o/n/19 \u00a9 ucles 2019 [turn over   complete the trace table for the input data:   24.88, 25.01, 24.98, 25.00, 25.05, 24.99, 24.97, 25.04, 25.19, 25.07 reject count length output  [4]  (b) (i) it has been decided to only reject batches of rope that contain ropes that are too short.    state the change required to the algorithm.  ...  .  [1]   (ii) explain how the algorithm to reject batches could be improved to make it more effective.  ...  ...  ...  .  [2]",
            "10": "10 0478/22/o/n/19 \u00a9 ucles 2019 4 four  validation checks and four descriptions are shown.  draw a line to connect each validation check to the correct description.  validation check  description  range check  checks that some data is entered.  presence check  checks for a maximum number of characters  in the data entered.  length check  checks that the characters entered are all  numbers.  type check  checks that the value entered is between an  upper value and a lower value.  [3] 5 a programmer writes a program to weigh baskets of fruit in grams, keeping a total of the weight  and counting the number of baskets. the total weight is stored in a variable total  and the number  of baskets is stored in a variable basketcount .   explain, including examples of programming statements, how totalling and counting could be used  in this program. totalling  .  ..  ..  ..  ..  .. counting  ...  ..  ..  ..  ..  ..  [4]",
            "11": "11 0478/22/o/n/19 \u00a9 ucles 2019 [turn over 6 explain why constants, variables and arrays are used in programming. constants  .  ..  ..  .. variables  ..  ..  ..  .. arrays  ...  ..  ..  .. [6]",
            "12": "12 0478/22/o/n/19 \u00a9 ucles 2019 7 a database table, sales, is used to keep a record of items made and sold by a furniture maker. item number order number notes amount status ch001 1921 smith \u2013 six dining chairs 6 delivered tb003 1921 smith \u2013 large table 1 in progress ch001 1924 hue \u2013 extra chairs 4 in progress ch003 1925 for stock 2 cancelled bn001 1927 patel \u2013 replacement bench 1 not started st002 1931 sola \u2013 small table 1 delivered ch003 1927 patel \u2013 eight dining chairs with arms 8 not started tb003 1927 patel \u2013 large table 1 not started  (a) explain why the field item number  could not be used as a primary key.  ...  .  [1]",
            "13": "13 0478/22/o/n/19 \u00a9 ucles 2019  (b) a query-by-example has been written to display only the order number and item numbers of  any items in progress or not started. field: item number order number amount status table: sales sales sales sales sort: show: 3 3 criteria: not like \"delivered\" or:   explain why the query-by-example is incorrect, and write a correct query-by-example.  explanation  ...  ...  ...  ...  ... field: table: sort: show: criteria: or: [5]",
            "14": "14 0478/22/o/n/19 \u00a9 ucles 2019 blank page",
            "15": "15 0478/22/o/n/19 \u00a9 ucles 2019 blank page",
            "16": "16 0478/22/o/n/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w19_qp_23.pdf": {
            "1": "this document consists of 12 printed pages. dc (sc) 162458/3 \u00a9 ucles 2019  [turn overcambridge assessment international education cambridge international general certificate of secondary education *5687755292* computer science  0478/23 paper 2  problem-solving and programming  october/november 2019  1 hour 45 minutes candidates answer on the question paper. no additional materials are required. no calculators allowed. read these instructions first write your centre number, candidate number and name in the spaces at the top of this page. write in dark blue or black pen. you may use an hb pencil for any diagrams, graphs or rough working. do not use staples, paper clips, glue or correction fluid. do not  write in any barcodes. answer all questions. do not attempt tasks 1, 2 and 3  in the pre-release material; these are for information only. you are advised to spend no more than 40 minutes  on section a  (question 1). no marks will be awarded for using brand names of software packages or hardware. any businesses described in this paper are entirely fictitious. at the end of the examination, fasten all your work securely together. the number of marks is given in brackets [  ] at the end of each question or part question. the maximum number of marks is 50. this syllabus is regulated for use in england, wales and northern ireland as a cambridge international level 1/level 2 certificate.",
            "2": "2 0478/23/o/n/19 \u00a9 ucles 2019 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material you have been asked to write a program to calculate the area of a wall and the cost of the tiles  needed to cover it. the program should work for any room with up to four walls being tiled. tiles are  sold in boxes; each box covers one square metre. tile description price per box small black granite $19.50 small grey marble $25.95 small powder blue $35.75 medium sunset yellow $12.50 medium berry red $11.00 medium glitter purple $52.95 large oak wood effect $65.00 large black granite $58.98 large bamboo effect $85.00 extra-large white marble $62.75 write and test a program or programs to calculate the area of the walls and the cost of tiles needed  to tile a room. \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all arrays, variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 setting up and using the system for a single wall. set up your program to: \u2022 store the tile description, price per box and an identification code using a suitable programming  technique. \u2022 display the list of tiles including the identification code, description and price per box. \u2022 prompt the user to input the height and width of the wall, and the identification code of the tiles  they would like. \u2022 calculate and display the area of the wall, the number of boxes of tiles required (tiles are sold in  boxes of complete square metres) and the total cost of the tiles. task 2  \u2013 adding additional walls. extend your program to: \u2022 enter the number of walls to be tiled and the identification code of the tiles to be used. only one  identification code to be used for all walls. \u2022 enter the dimensions for each wall to be tiled. \u2022 calculate and display the total area of all walls, the number of boxes of tiles required (tiles are  sold in boxes of complete square metres) and the total cost of the tiles. task 3  \u2013 allowing for waste. it is likely that some of the tiles will not be useable so it is sensible to allow a percentage for wastage,  for example 10 %. alter your program to allow the user to input a percentage to calculate wastage  and add this to the total area to be tiled. calculate and display the revised number of boxes of tiles  to be purchased (tiles are sold in boxes of complete square metres) and the total cost of the tiles.",
            "3": "3 0478/23/o/n/19 \u00a9 ucles 2019 [turn over 1 (a) all variables, constants and other identifiers must have meaningful names.   name two arrays you could use for task 1 . state the data type and purpose of each one. array 1  .. data type 1  ... purpose    ... array 2  .. data type 2  ... purpose    ...  [4]  (b) name a variable that you used for task 2 . state the data type and purpose of this variable.  explain why you chose to use a variable rather than a constant. variable  . data type  .. purpose    ...  ... reason for use of a variable  .  ...  ...  [4]",
            "4": "4 0478/23/o/n/19 \u00a9 ucles 2019  (c) write an algorithm for task 1 , using either  pseudocode, programming statements or a  flowchart. assume that the first part of task 1 , the storage and display of tile descriptions,  prices per box and identification codes has already been done.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/o/n/19 \u00a9 ucles 2019 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/23/o/n/19 \u00a9 ucles 2019  (d) explain how you extended your program to complete task 2 . any programming statements  you use in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "7": "7 0478/23/o/n/19 \u00a9 ucles 2019 [turn over  (e) explain how you could validate the input for percentage waste allowance in task 3 .  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "8": "8 0478/23/o/n/19 \u00a9 ucles 2019 section b 2 describe the use of a subroutine in a program.  ..  ..  ..  ..    [2] 3 name the three  types of loop structure used in pseudocode.  ..  ..  ..  ..  ..    [3]",
            "9": "9 0478/23/o/n/19 \u00a9 ucles 2019 [turn over 4 the following pseudocode algorithm uses nested if statements.   if response = 1     then        x  x + y     else       if response = 2         then            x  x \u2013 y         else           if response = 3             then                x  x * y             else               if response = 4                 then                   x  x / y                 else                   output \"no response\"               endif           endif       endif   endif  (a) name the type of statement demonstrated by the use of if \u2026 then \u2026 else \u2026 endif  ...  .  [1]  (b) re-write the pseudocode algorithm using a case  statement.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "10": "10 0478/23/o/n/19 \u00a9 ucles 2019 5 the algorithm performs an operation on the array named mydata  div means integer division, so only the whole number part of the result is returned  e.g. 7 div 2  returns a value of 3   first  0   last  16   found  false   input userin   while (first <= last) and (found = false) do     middle  (first + last) div 2     if mydata[middle] = userin       then         found  true       else         if userin < mydata[middle]           then             last  middle - 1           else             first  middle + 1         endif     endif   endwhile   output found  this table shows the contents of the array:  mydata e.g. mydata[2] stores the value  5 mydata index [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] value 23568101213141618202527293436  (a) complete the trace table for the input data: 10 first last userin middle found output  [6]  (b) describe the function being performed by the algorithm.  ...  ...  ...  .  [2]",
            "11": "11 0478/23/o/n/19 \u00a9 ucles 2019 [turn over 6 draw four different flowchart symbols and describe how they are used in a program flowchart. flowchart symbol description of use   [4]",
            "12": "12 0478/23/o/n/19 \u00a9 ucles 2019 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.7 a teacher has decided to use a database table as her mark book for her computer science class,  which she has called markbook. for each student, the following data will be recorded: first  name, last name, their year 10 test score and their year 11 test score. the class has 32 students.  (a) state the number of fields and records required for this database. number of fields  .. number of records  ..  [2]  (b) the data in markbook is stored under category headings: lastname, firstname,  y10testscore and y11testscore.   state, with a reason, whether any of these headings would be suitable as a primary key.  ...  ...  ...  .  [2]  (c) complete the query-by-example grid to only display the first name, last name and year 10  test score of each student who achieved 50 or more in their year 10 test. the output should  be in test score order with the highest marks at the top of the list. field: table: sort: show: criteria: or:  [4]"
        }
    },
    "2020": {
        "0478_m20_qp_12.pdf": {
            "1": "cambridge igcse\u2122this document has 12 pages. blank pages are indicated. *6089416953* dc (cj/cb) 186307/3 \u00a9 ucles 2020  [turn overcomputer science  0478/12 paper 1 theory  february/march  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/12/f/m/20 \u00a9 ucles 2020 1 the von neumann model for a computer system uses components, such as registers and buses,  in the fetch-execute cycle.  (a) draw a line to connect each component to its correct description. component description control busincrements to point to the address of  the next instruction to be fetched program counter (pc)holds the result of a calculation. it is  located within the arithmetic logic  unit (alu) memory data register  (mdr)carries signals to synchronise the   fetch-execute cycle  accumulator (acc)temporary storage between the  central processing unit (cpu) and  primary memory  [3]  (b) state two buses, other than the control bus, used in the von neumann model for a computer  system. 1   2    [2] 2 a school network is used to transmit and store data about students.   (a) different types and methods of transmission can be used to send data across the network.   three  descriptions about data transmission are given.   tick (3) one method  and tick ( 3) one type  for each description. descriptionmethod type serial (3)parallel (3)simplex (3)half- duplex (3)duplex (3) data is sent down a single wire in a  single direction only.  data is sent down multiple wires in  both directions, at the same time. data is sent down a single wire in  both directions, but never at the  same time.  [3]",
            "3": "3 0478/12/f/m/20 \u00a9 ucles 2020 [turn over  (b) parity bits are used to help detect errors in data transmission. a parity bit is added to each  binary value before transmission.    three  binary values are to be transmitted using even  parity.   (i) complete the parity bit that would be added to each binary value for even parity. binary value parity bit 1 1 0 0 1 1 1 1 0 1 0 1 0 1 0 1 1 0 1 0 0  [3]   (ii) a number of errors occurred during data transmission.    state why a parity check may not detect transmission errors.  ...  .  [1]  (c) data is encrypted using 128-bit symmetric encryption before it is transmitted.   (i) explain what is meant by encryption.   ...  ...  ...  .  [2]   (ii) state how the strength of the encryption can be improved.  ...  .  [1]",
            "4": "4 0478/12/f/m/20 \u00a9 ucles 2020  (d) describe how the school could prevent the loss of stored data.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6] 3 priya studies music at school. she is buying a new computer to complete her school work at home.  (a) priya has a choice between an internal hard disk drive (hdd) and an internal solid state  drive (ssd) to store data.   (i) give one similarity between an hdd and an ssd.  ...  .  [1]   (ii) explain three  differences between an hdd and an ssd. 1    ...  ... 2    ...  ... 3    ...  ...   [3]",
            "5": "5 0478/12/f/m/20 \u00a9 ucles 2020 [turn over  (b) priya needs to transfer files between the school and her home computer.   identify one off-line storage device she could use to transport the files.     .  [1]  (c) priya is using sound editing software to record and edit different music tracks.   (i) identify two input devices she would use for this task. device 1   device 2    [2]   (ii) identify two output devices she would use for this task. device 1   device 2    [2]  (d) priya shares her sound files with other students. before sharing the sound files, she  compresses the files using lossless compression.   describe how lossless compression reduces the size of a sound file.  ...  ...  ...  .  [2]  (e) priya currently uses midi files to store her music. priya\u2019s friends have asked her if they can  have an mp3 version of the file.   (i) give two features of a midi file. 1    ... 2    ...    [2]",
            "6": "6 0478/12/f/m/20 \u00a9 ucles 2020   (ii) give two features of an mp3 file. 1    ... 2    ...  [2] 4 assemblers, compilers and interpreters are types of translators.   tick (3) to show which statements apply to each translator. each statement may apply to more  than one type of translator. statementassembler (3)compiler (3)interpreter (3) translates low-level language to machine code translates high-level language to machine code produces error messages  translates high-level language one line at a time produces an executable file  [5] 5 programmers can use denary and hexadecimal values. these values are stored in a computer  system using binary.  (a) explain why binary is used to store data in a computer system.  ...  ...  ...  .  [2] ",
            "7": "7 0478/12/f/m/20 \u00a9 ucles 2020 [turn over  (b) complete the table to show how the denary value would be stored as binary in an 8-bit  register. denary value 8-bit register 129 56  [2]   working space  ...  ...  ...  ...  ...  (c) complete the table to show how the hexadecimal value 3a9 would be stored as binary in a  12-bit register.  [3]  (d) identify two uses of hexadecimal values in computer science. 1   2    [2]",
            "8": "8 0478/12/f/m/20 \u00a9 ucles 2020 6 (a) complete the truth table for the given logic circuit.   do not attempt to simplify the logic circuit.   a b x c a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]  ",
            "9": "9 0478/12/f/m/20 \u00a9 ucles 2020 [turn over  (b) a water control system uses a switch and two pressure sensors.   the outputs of the switch and sensors are shown in the table. sensor or switch output of 1 output of 0 switch (s1)on off pressure sensor (p1)>= 3 < 3 pressure sensor (p2)>= 3 < 3   create a logic circuit that will produce an output ( x) of 1 when: the switch s1 is on and either  p1 is less than 3 or p2 is less than 3, but not both .   all logic gates used must have a maximum of two inputs.   s1 p1 p2x  [4]",
            "10": "10 0478/12/f/m/20 \u00a9 ucles 2020 7 a room has an automatic lighting system. electric lights are automatically turned on when a person  enters the room and the natural light level in the room is 10 or less.  explain how sensors and a microprocessor are used to control the electric lights in the room.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..    [7] ",
            "11": "11 0478/12/f/m/20 \u00a9 ucles 2020 8 a student website provides research support and software downloads.   (a) students use a browser to access the web pages. explain the role of a browser in this process.   ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]  (b) the website owners are worried about a denial of service (dos) attack.   explain the term denial of service attack.  ...  ...  ...  ...  ...  .  [3]  (c) the website owners are also concerned about the ethical issues of copyright and plagiarism.    (i) state what is meant by the term copyright.  ...  .  [1]   (ii) state what is meant by the term plagiarism.  ...  .  [1]",
            "12": "12 0478/12/f/m/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_m20_qp_22.pdf": {
            "1": "cambridge igcse\u2122*4643399244* this document has 16 pages. blank pages are indicated. dc (cj/fc) 184904/3 \u00a9 ucles 2020  [turn overcomputer science  0478/22 paper 2 problem-solving and programming  february/march  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3 in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/22/f/m/20 \u00a9 ucles 2020 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a car buying service helps customers calculate the price of buying a new car from snazzy autos.  there are three models of car available: hatchback, saloon and estate. a car can be bought with  optional extras. model price optional extra price hatchback rs 5.35 lakh set of luxury seats rs 45000 saloon rs 4.95 lakh satellite navigation rs 5500 estate rs 6.25 lakh parking sensors rs 10000 bluetooth connectivity rs 350 sound system rs 1000 snazzy autos customers buying a new car can trade in an old car. offers from rs 10000 to  rs 1.00 lakh can be made for an old car. if an old car is not traded in, then a discount of 5% is taken  off the price of the new car and any optional extras. in addition, repeat customers are offered a  discount of 10% off any optional extras and 10% off the price of the new car before trade-in.  customers can either pay for the new car in full or make monthly payments over several years.  write and test a program or programs for the car buying service.  \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 calculate the price customers choose the model of car and select any optional extras required. only valid choices can  be accepted for the model and the extras. the customer is asked if they are an existing customer and  if they have an old car to trade in. if the customer trades in an old car the amount offered by snazzy  autos is entered. the price of the new car including model and extras is displayed. any discount or  trade-in amounts are displayed and the total price to pay is calculated and displayed.  task 2  \u2013 calculate the payment(s) extend task 1  to display these payment methods: \u2022 full amount paid now customer receives cashback of 1% on the total price \u2022 equal monthly payments are made over four years with no extra charge \u2022 the total price is increased by 5%; equal monthly payments are made over seven years.  for each payment method display: the total amount to pay, the amount of each payment, the number  of payments and cashback where appropriate. task 3  \u2013 new full amount payment offer extend task 2  to offer customers who decide to pay the full amount now either the 1% cashback or  the chosen optional extras free. customers are shown the offer that is the best value first and the  other as an alternative. details of each offer must be displayed in full.",
            "3": "3 0478/22/f/m/20 \u00a9 ucles 2020 [turn over 1  all variables, constants and other identifiers must have meaningful names.  (a) state the name of one constant that you could have used for  task 1 . give the value that  would be assigned to the constant. state the use of this constant. constant name  . value  . use  ...  ...  [3]  (b) state the name of the variable that you used to store the amount offered for the trade-in of  an old car in task 1 . give the most appropriate data type for this variable. explain how your  program ensured that any data entered for the trade-in offer was valid. variable name  ... data type  .. validation  ..  ...  ...  ...  [4]",
            "4": "4 0478/22/f/m/20 \u00a9 ucles 2020  (c) snazzy autos has decided to add another model to the cars available in task 1 . the new  model is a  convertible, price rs 6.75 lakh. explain the changes required to your program for  task 1 .   ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "5": "5 0478/22/f/m/20 \u00a9 ucles 2020 [turn over  (d) write an algorithm for task 2 , using either  pseudocode, programming statements or a  flowchart. assume that task 1  has been completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "6": "6 0478/22/f/m/20 \u00a9 ucles 2020  (e) explain how your program completed task 3 . assume that task 2  has been completed.   any programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/22/f/m/20 \u00a9 ucles 2020 [turn over section b starts on page 8.",
            "8": "8 0478/22/f/m/20 \u00a9 ucles 2020 section b 2 (a) an algorithm has been written in pseudocode to input 50 numbers. positive numbers are  stored in the array posnum[ ] . negative numbers are stored in the array negnum[ ] .   zeros are not included in the positive and negative counts. count \u2190 0 poscount \u2190 count negcount \u2190 count repeat      input number     if number > 0        then          poscount \u2190 poscount + 1         posnum[poscount] \u2190 number       else         negcount \u2190 negcount + 1         negnum[negcount] \u2190 number     endif     count \u2190 count + 1 until count >= 50 output \"there are \", poscount,\" positive numbers\" output \"there are \", negcount,\" negative numbers\"   describe the error in the pseudocode and write the correction for this error. error  ..  ...  ...  ... correction  .  ...  ...  ...  [4]",
            "9": "9 0478/22/f/m/20 \u00a9 ucles 2020 [turn over  (b) the algorithm needs to be changed so there is no limit to how many numbers can be input.  when the number 9999 is input, the algorithm stops more numbers being input and outputs  the results. the number 9999 is not to be stored nor counted as a positive number.    explain how you would change the algorithm.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "10": "10 0478/22/f/m/20 \u00a9 ucles 2020 3 this flowchart inputs student percentage marks for three examinations. if the average of these  marks is 80% or over then a distinction grade is awarded. if the average of these marks is less  than 40% then a fail grade is awarded. otherwise a pass grade is awarded.  start input mark1,mark2,mark3 endoutput \"pass\"output \"distinction\" output \"fail\"total   mark1 + mark2 + mark3 is average >= 80 ? is average < 40 ?average   total / 3 yes no noyes",
            "11": "11 0478/22/f/m/20 \u00a9 ucles 2020 [turn over  (a) complete a trace table for each set of input data:    set 1:  88, 74, 60 mark1 mark2 mark3 total average output   set 2:  20, 33, 67 mark1 mark2 mark3 total average output   set 3:  79, 91, 70 mark1 mark2 mark3 total average output  [5]  (b) it has been decided to include an extra grade of merit when the average of the marks is 60%  or more, and less than 80%. describe the changes that will need to be made to the flowchart.   ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "12": "12 0478/22/f/m/20 \u00a9 ucles 2020 4 explain why validation and verification checks are needed when data is input.   include an example of each type of check in your answer.  ..  ..  ..  ..  ..  ..  ..  ..    [4]",
            "13": "13 0478/22/f/m/20 \u00a9 ucles 2020 [turn over question 5 starts on page 14.",
            "14": "14 0478/22/f/m/20 \u00a9 ucles 2020 5 a database table, box, is used to keep a record of boxes made and sold by a craftsman. boxes  are categorised by: \u2022 size \u2013 small, medium or large \u2022 shape \u2013 brief description for example \u2018star shaped\u2019 \u2022 wood \u2013 maple, beech, walnut or ebony \u2022 price \u2013 price in $ \u2022 sold \u2013 whether the box is sold or not.   a database management system uses these data types: text   number    currency    boolean  (a) select the most appropriate data type for each field from the four types shown. state the  reason why you chose the data type. size data type  .. reason  .  ... shape data type  .. reason  .  ... wood data type  .. reason  .  ... price data type  ... reason  .  ... sold data type   reason  .  ...    [5]",
            "15": "15 0478/22/f/m/20 \u00a9 ucles 2020  (b) (i) complete the query-by-example grid below to only display the price of small walnut  boxes. field: table: sort: show: criteria: or:  [3]   (ii) the query-by-example grid from part (b)(i)  needs to be changed to show both walnut  and beech boxes and display the wood used. only one column needs to be changed.   write the changed column. field: table: sort: show: criteria: or:  [2]",
            "16": "16 0478/22/f/m/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s20_qp_12.pdf": {
            "1": "cambridge igcse\u2122this document has 12 pages. blank pages are indicated. dc (ce/sw) 189019/3 \u00a9 ucles 2020  [turn overcomputer science  0478/12 paper 1 theory  may/june  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *9119758238*",
            "2": "2 0478/12/m/j/20 \u00a9 ucles 2020 1 a von neumann model for a computer system has a central processing unit (cpu) that makes  use of registers.  (a) identify three  registers that may be used. register 1  . register 2  . register 3  . [3]  (b) the cpu is responsible for processing instructions.    one stage of processing instructions is the decode stage.   (i) identify the two other  stages of processing instructions. stage 1  .. stage 2  .. [2]   (ii) identify the component of the cpu that is responsible for decoding instructions.  .  [1] 2 both an interpreter and a compiler can be used when writing a program in a high-level language.  (a) explain why a programmer would make use of both an interpreter and a compiler.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "3": "3 0478/12/m/j/20 \u00a9 ucles 2020 [turn over  (b) give three  reasons why a programmer would choose to write a program in a high-level  language, instead of a low-level language. reason 1  ..  ... reason 2  ..  ... reason 3  ..  ... [3] 3 a company collects and stores data about its customers. the data is stored on a server in the  company\u2019s office.   the data is transmitted to cloud storage to create a back-up.  the data is encrypted using symmetric encryption before it is sent to the cloud storage.   (a) describe how the data is encrypted.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) give three other methods that can be used to secure the data in the office. method 1  ...  ... method 2  ...  ... method 3  ...  ... [3]",
            "4": "4 0478/12/m/j/20 \u00a9 ucles 2020 4 (a) identify the name and draw the single  logic gate that can replace the given logic circuits.   (i)  a bx    name of gate: \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026   drawing of gate:   [2]   (ii)  a bx    name of gate: \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026   drawing of gate:   [2]  (b) complete the truth table for the given logic statement: x = ((( a or c) and (not a and not c)) xor b) a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "5": "5 0478/12/m/j/20 \u00a9 ucles 2020 [turn over 5 meena uses a browser to research information for her business.  (a) give three  functions of a browser. 1   2   3   [3]  (b) meena buys products for her business using the internet.   the transport layer security (tls) protocol is used for transferring data when she buys  products.   one layer of the tls protocol is the handshake layer.   (i) describe the purpose of the handshake layer.  ...  ...  ...  .  [2]   (ii) identify the other layer of the tls protocol.  .  [1]   (iii) identify another protocol that can be used to transfer data securely.  .  [1]  (c) meena visits a website to buy products for her business.   the browser uses a small file to store the details of the products she views. this allows the  website to display advertisements for other products she may like.    the small file also stores her log-in details.   give the name of this type of file.  .  [1]",
            "6": "6 0478/12/m/j/20 \u00a9 ucles 2020 6 six statements are given about touch screen technology.  tick (3) to show if the statement applies to capacitive  or resistive  touch screen technology. statementcapacitive (3)resistive (3) needs pressure to be applied to create a circuit may not register a touch if the user is wearing gloves more commonly used in smartphones more responsive to a touch needs an electrical field to be changed to register a touch cheaper to manufacture  [6]",
            "7": "7 0478/12/m/j/20 \u00a9 ucles 2020 [turn over 7 (a) give the denary  value of each of the three 12-bit binary values.   (i) 000000001100  .  [1]   (ii) 000011000110  .  [1]   (iii) 010011000001  .  [1]   working space  ...  ...  ...  ...  ...  ...  ...  (b) 12-bit binary values can also be represented as hexadecimal values.   give the hexadecimal  value of the 12-bit binary value.   000011101001  .  [3]",
            "8": "8 0478/12/m/j/20 \u00a9 ucles 2020 8 leonard has a new laser printer to print letters for his business.  leonard connects his printer to his computer using the usb port.  (a) give three  benefits of using the usb port to connect the printer to the computer. benefit 1  ...  ... benefit 2  ...  ... benefit 3  ...  ... [3]  (b) state two benefits and one drawback of leonard using a laser printer, instead of an inkjet  printer, to print the letters. benefit 1  ...  ... benefit 2  ...  ... drawback  ..  ... [3]  (c) an interrupt signal is sent from the printer to the computer.    (i) give two examples of when a printer would generate an interrupt signal. example 1  . example 2  . [2]   (ii) many devices send interrupt signals.    identify the software in the computer that will receive and manage all interrupt signals.  .  [1]",
            "9": "9 0478/12/m/j/20 \u00a9 ucles 2020 [turn over 9 (a) six statements are given about storage devices.   tick (3) to show if the statement applies to hard disk drive ( hdd ) storage or    solid state drive ( ssd) storage.   some statements can apply to both. statementhdd (3)ssd (3) it has a limited number of read/write cycles it uses magnetic properties to store data it has moving parts it is non-volatile storage it can be used as an external storage device to back up data it uses flash memory to store data  [6]  (b) optical storage is another type of storage.   give two examples of optical storage. example 1  . example 2  . [2]",
            "10": "10 0478/12/m/j/20 \u00a9 ucles 2020 10 uma is concerned about risks that she may encounter when using the internet.   two of the risks she is concerned about are phishing and pharming.  (a) give one similarity and two differences between phishing and pharming. similarity  ...  ...  ... difference 1  ..  ...  ... difference 2  ..  ...  ... [3]  (b) identify two other risks that uma could encounter when using the internet. risk 1   risk 2   [2]",
            "11": "11 0478/12/m/j/20 \u00a9 ucles 2020  (c) uma uses a firewall to secure the data on her computer.   (i) uma tells her friend that a firewall can only be software-based.    tick (3) to show whether uma is correct  or incorrect .     correct     incorrect   [1]   (ii) describe how the firewall helps to keep uma\u2019s data secure.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "12": "12 0478/12/m/j/20 \u00a9 ucles 2020 blank page permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge."
        },
        "0478_s20_qp_13.pdf": {
            "1": "cambridge igcse\u2122dc (jc/ct) 186484/3 \u00a9 ucles 2020  [turn overthis document has 12 pages. blank pages are indicated. *4124551037* computer science  0478/13 paper 1 theory  may/june  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/13/m/j/20 \u00a9 ucles 2020 1 pradeep is reading hexadecimal values for a project he is working on.   (a) the first three hexadecimal values he reads are 15, 102 and a9.   give the denary  values for the three hexadecimal values. 15  .. 102   a9  .  [3]   working space  ...  ...  ...  ...  (b) pradeep has two 8-bit binary values that he needs to convert to hexadecimal values for his  project.   give the hexadecimal  values for the two 8-bit binary values. 01010000  .. 00111101  ..  [4]",
            "3": "3 0478/13/m/j/20 \u00a9 ucles 2020 [turn over 2 (a) six hardware devices are shown.   tick (\u2713) to show if each hardware device is an input , output  or storage  device. hardware deviceinput (\u2713)output (\u2713)storage (\u2713) solid state drive (ssd) sensor headphones microphone usb flash drive actuator  [6]  (b) genevieve writes a paragraph about a barcode reader.   using the list given, complete the paragraph. not all terms in the list need to be used. \u2022 actuators \u2022 binary \u2022 black \u2022 input \u2022 microprocessors \u2022 output \u2022 sensors \u2022 storage \u2022 white   a barcode reader is an ... device. it shines a light at the barcode     and the light is reflected back. the ... bars in the barcode reflect     less light than the ... bars.    ... are used to capture the amount of reflected light and the     different reflections are converted to ... values.  [5]",
            "4": "4 0478/13/m/j/20 \u00a9 ucles 2020 3 thomas has an online business that sells homemade furniture. he has a web server that hosts his  website for his business.   (a) describe the role of a web browser in requesting and displaying the web pages for the  website.  ...  ...  ...  ...  ...  .  [3]  (b) thomas is worried about a denial of service (dos) attack on his web server.   describe what happens in a denial of service attack.  ...  ...  ...  ...  ...  .  [3]",
            "5": "5 0478/13/m/j/20 \u00a9 ucles 2020 [turn over 4 the table shows four definitions.  complete the table giving the missing term  for each definition. term definition a data transmission method that sends data  one bit at a time, down a single wire an address given to a device on a network.  the address is assigned by the network the software used to render html and display  a web page an address given to a device at the  manufacturing stage that can be used to  identify the device on a network  [4]",
            "6": "6 0478/13/m/j/20 \u00a9 ucles 2020 5 (a) a clothing shop uses a barcode reader at the checkout.    the checkout is linked to a stock control system. the system monitors stock levels and  automatically keeps them above a minimum level.   explain how the stock control system automatically keeps the stock levels above a minimum  level.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) the software for the stock control system is stored on a central computer. the computer uses  random access memory (ram), read only memory (rom) and a hard disk drive (hdd).   the computer is a von neumann model computer system with a central processing  unit (cpu).   (i) state the purpose of the ram, rom and hdd in the central computer. ram  ..  ... rom  ..  ... hdd  ..  ...  [3]   (ii) identify four components that are part of the cpu. component 1  . component 2  . component 3  . component 4  .  [4]",
            "7": "7 0478/13/m/j/20 \u00a9 ucles 2020 [turn over 6 consider the given logic statement:     x = ((( a xor b) and c) or not c)  (a) draw a logic circuit to match the given logic statement.   all logic gates must have a maximum of two inputs. do not attempt to simplify the logic  statement. a b x c  [4]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "8": "8 0478/13/m/j/20 \u00a9 ucles 2020 7 edie uses a firewall to help prevent her children from accessing websites that she does not want  them to see.  (a) describe how the firewall helps prevent her children from accessing these websites.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) edie is concerned that her children may download a virus when accessing websites.   state what is meant by a virus  and explain what could happen if a virus was downloaded.  ...  ...  ...  ...  ...  .  [3]  (c) edie explains to her children how to identify if a website is secure.   (i)  give two ways that her children can identify if a website is secure. 1   2    [2]",
            "9": "9 0478/13/m/j/20 \u00a9 ucles 2020 [turn over   (ii) describe how a browser checks that a website is secure.  ...  ...  ...  ...  ...  ...  ...  .  [4] 8 six statements are given about printers.  tick (\u2713) to show whether the statement applies to a 3d printer, an inkjet  printer or a laser  printer.   some statements apply to more than one printer. statement3d (\u2713)inkjet (\u2713)laser (\u2713) uses a moving print head uses liquid ink produces output using materials such as plastic and resin uses piezoelectric or thermal technology uses a rotating drum to transfer the image to the paper uses layer upon layer of material to create the output  [6]",
            "10": "10 0478/13/m/j/20 \u00a9 ucles 2020 9 four 7-bit binary values are being transmitted from one computer to another. an odd parity check  is being used to check for errors in the binary values.  write the correct parity bit  for each 7-bit binary value  to make sure it meets odd parity.   parity bit  7-bit binary value   .  0000011   .  1000000   .  0111111   .  1010101  [4] 10 clive has a laptop computer that he uses for his business. he enters a username and password to  log in to his laptop.  clive is worried about spyware being used to find out his username and password.  (a)  describe how spyware could be used to find out clive\u2019s username and password.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) the threat of spyware makes clive concerned about typing a password to log in to his laptop.    give an example of how clive could log in securely without typing a password.  .  [1]",
            "11": "11 0478/13/m/j/20 \u00a9 ucles 2020 blank page",
            "12": "12 0478/13/m/j/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s20_qp_21.pdf": {
            "1": "cambridge igcse\u2122computer science  0478/21 paper 2 problem-solving and programming  may/june  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3 in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *1480262651* this document has 16 pages. blank pages are indicated. dc (cj/cb) 185166/3 \u00a9 ucles 2020  [turn over",
            "2": "2 0478/21/m/j/20 \u00a9 ucles 2020 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a shop sells a range of mobile devices, sim cards and accessories as shown in the table: category item code description price ($) phone bpcm compact 29.99 phone bpsh clam shell 49.99 phone rpss robophone \u2013 5-inch screen and 64  gb memory 199.99 phone rpll robophone \u2013 6-inch screen and 256  gb memory 499.99 phone ypls y-phone standard \u2013 6-inch screen and 64  gb memory 549.99 phone ypll y-phone deluxe \u2013 6-inch screen and 256  gb memory 649.99 tablet rtms robotab \u2013 8-inch screen and 64  gb memory 149.99 tablet rtlm robotab \u2013 10-inch screen and 128  gb memory 299.99 tablet ytlm y-tab standard \u2013 10-inch screen and 128  gb memory 499.99 tablet ytll y-tab deluxe \u2013 10-inch screen and 256  gb memory 599.99 sim card smno sim free (no sim card purchased) 0.00 sim card smpg pay as you go (sim card purchased) 9.99 case csst standard 0.00 case cslx luxury 50.00 charger cgcr car 19.99 charger cghm home 15.99 write and test a program or programs for this shop. \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all arrays, variables, constants and other identifiers must have meaningful names. you will need to complete these three tasks. each task must be fully tested. task 1  \u2013 setting up the system. write a program to: \u2022 use appropriate data structures to store the item code, description and price information for the  mobile devices, sim cards and accessories \u2022 allow the customer to choose a specific phone or tablet \u2022 allow phone customers to choose whether the phone will be sim free or pay as you go \u2022 allow the customer to choose a standard or luxury case \u2022 allow the customer to choose the chargers required (none, one or both may be purchased) \u2022 calculate the total price of this transaction \u2022 output a list of the items purchased and the total price. task 2  \u2013 allow a customer to order multiple mobile devices. extend task 1  to: \u2022 offer the customer the opportunity to purchase an additional mobile device \u2022 if required, perform bulleted steps 2 to 7 of task 1  for each additional mobile device and  calculate a running total for the customer \u2022 once no further devices are required, output the total the customer will need to pay. task 3  \u2013 offering discounts. extend the program to allow a discount of 10% off the price of every additional phone or tablet  purchased. output the new total the customer will need to pay and the amount of money saved.",
            "3": "3 0478/21/m/j/20 \u00a9 ucles 2020 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) (i) identify two arrays you could have used for task 1  and, in each case, state its purpose. array 1  ... purpose  .  ...  ... array 2  ... purpose  .  ...  ...  [4]   (ii) identify two variables you could have used for task 1  and, in each case, state its  purpose. variable 1  .. purpose  .    ...  ... variable 2  .. purpose  .    ...  ...  [4]  (b)  explain why the item code data could not be stored as a real data type and identify the most  suitable data type for the item code data.  ...  ...  ...  ...  ...  .  [2]",
            "4": "4 0478/21/m/j/20 \u00a9 ucles 2020  (c)  write an algorithm to show how you input your choice of mobile device and sim card (part of  task 1 ), using either  pseudocode, programming statements or a flowchart. it is not necessary  to show initialisation or setting up of arrays containing product details.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/m/j/20 \u00a9 ucles 2020 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "6": "6 0478/21/m/j/20 \u00a9 ucles 2020  (d) explain how your program completes task 3 . any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "7": "7 0478/21/m/j/20 \u00a9 ucles 2020 [turn over section b starts on page 8.",
            "8": "8 0478/21/m/j/20 \u00a9 ucles 2020 section b 2 tick (\u00fc) one box in each row to identify if the statement about structure diagrams is true or false. statementtrue (\u00fc)false (\u00fc) a structure diagram is a piece of code that is available throughout the  structure of a program. a structure diagram shows the hierarchy of a system. a structure diagram is another name for an array. a structure diagram shows the relationship between different components  of a system.   [2] 3 programs can perform validation and verification checks when data is entered.    (a) give the names of two different validation checks and state the purpose of each one. check 1  . purpose  .  ...  ... check 2  . purpose  .  ...  ...  [4]  (b) give the name of one verification check.   .  [1]  (c) describe the difference between validation and verification.  ...  ...  ...  .  [2]",
            "9": "9 0478/21/m/j/20 \u00a9 ucles 2020 [turn over 4 the pseudocode algorithm shown should allow numbers to be entered and should allow  50 numbers to be stored in an array.   count \u2190 0   repeat      input values[count]      count \u2190 count + 1   until count = 0     (a) explain why the algorithm will never end.  ...  ...  ...  ...  .  [2]  (b)  re-write the original pseudocode so that it terminates correctly and also prevents numbers  below 100 from being stored in the array values[ ]  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]  (c) describe how you could change your pseudocode in part (b)  so that it prevents numbers  below 100 and above 200 from being stored in the array values[ ]  ...  ...  ...  .  [2]",
            "10": "10 0478/21/m/j/20 \u00a9 ucles 2020 5 the flowchart represents an algorithm.  the predefined function div gives the value of the result of integer division,   for example, y \u2190 9 div 4  gives y a value of 2  an input value of \u20131 ends the algorithm. start input value yes yesno nois value = -1 ? calc1   value div 2 endno output valueis calc1 = value / 2  ? is calc2 = value / 3  ?calc2   value div 3 yes",
            "11": "11 0478/21/m/j/20 \u00a9 ucles 2020 [turn over  (a) complete the trace table for the input data:   50, 33, 18, 15, 30, \u20131, 45, 12, 90, 6 value calc1 calc2 output   [4]  (b) describe the purpose of the algorithm.  ...  ...  .  [2]",
            "12": "12 0478/21/m/j/20 \u00a9 ucles 2020 6 a garden centre sells garden tools and stores details of these in a database table named tools.  code  is the primary key in the tools table. code description price ($) quantity_stock quantity_ordered gflg garden fork 50.00 1 50 gslg garden spade 50.00 11 0 ghlg garden hoe 45.00 8 0 hfsm hand fork 9.99 42 0 hssm hand spade 9.99 40 0 hwsm hand weeder 9.99 11 0 hs20 hose (20 metres) 45.00 10 0 hs35 hose (35 metres) 60.00 2 0 hs50 hose (50 metres) 75.00 20 60 yblg yard brush 24.99 100 0 lmhd lawn mower 99.99 5 0 lmbt lawn mower (battery) 249.99 7 0 lmpt lawn mower (petrol) 349.99 10 25 trbt edge trimmer (battery) 79.99 15 0 trpt edge trimmer (petrol) 59.99 20 0 shsm shears 40.00 40 0 hcsm hedge clippers 40.00 45 0  (a) state the purpose of the primary key in the tools table.  ...  ...  .  [1]",
            "13": "13 0478/21/m/j/20 \u00a9 ucles 2020  (b) list the output from the data shown in the table tools that would be given by this query-by- example. field: code description price ($) quantity_stock quantity_ordered table: tools tools tools tools tools sort: descending show: \u00fc \u00fc \u00fc criteria: >40 >0 >0 or:     ...  ...  ...  ...  ...  .  [3]   (c) complete the query-by-example grid to output the tools where the quantity in stock is below  25. only show the code, description and quantity_stock fields in ascending order of code. field: table: sort: show: criteria: or:  [3]",
            "14": "14 0478/21/m/j/20 \u00a9 ucles 2020 blank page",
            "15": "15 0478/21/m/j/20 \u00a9 ucles 2020 blank page",
            "16": "16 0478/21/m/j/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s20_qp_22.pdf": {
            "1": "cambridge igcse\u2122computer science  0478/22 paper 2 problem-solving and programming  may/june  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. this document has 16 pages. blank pages are indicated. *2035392705* dc (cj/fc) 184928/3 \u00a9 ucles 2020  [turn over",
            "2": "2 0478/22/m/j/20 \u00a9 ucles 2020 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a car park payment system allows customers to select the number of hours to leave their car in the  car park. the customer will get a discount if they enter their frequent parking number correctly. the  system calculates and displays the amount the customer must pay. the price of parking, the number  of hours the customer can enter, and any discount depend upon the day of the week and the arrival  time. the number of hours entered is a whole number. the price per hour is calculated using the  price in force at the arrival time. no parking is allowed between midnight and 08:00. day of the weekarrival time from 08:00 to 15:59 from 16:00 to midnight max stay in hours price per hour hours price sunday 8 2.00 up to midnight 2.00 monday 2 10.00 up to midnight 2.00 tuesday 2 10.00 up to midnight 2.00 wednesday 2 10.00 up to midnight 2.00 thursday 2 10.00 up to midnight 2.00 friday 2 10.00 up to midnight 2.00 saturday 4 3.00 up to midnight 2.00 a frequent parking number can be entered for discounted parking. this number consists of 4 digits  and a check digit that is calculated using a modulo 11 check digit calculation. a discount of 50% is  available for arrival times from 16:00 to midnight; the discount is 10% at all other arrival times. write and test a program or programs to simulate the car park payment system.  \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 calculating the price to park. a customer inputs the day, the hour of arrival excluding minutes (for example 15:45 would be 15),  the number of hours to leave their car, and a frequent parking number if available. if the frequent  parking number has an incorrect check digit, then no discount can be applied. the price to park,  based on the day, the hour of arrival, the number of hours of parking required and any discount  available, is calculated and displayed. task 2  \u2013 keeping a total of the payments. extend task 1  to keep a daily total of payments made for parking. the daily total is zeroed at the  start of the day. for the simulation, each customer inputs the amount paid, this must be greater than  or equal to the amount displayed. there is no change given so the amount input may exceed the  amount displayed. each customer payment is added to the daily total, and this total is displayed at  the end of the day. task 3 \u2013 making payments fairer. customers have complained that sometimes they are being charged too much if they arrive before  16:00 and depart after 16:00. extend task 1  to calculate the price before 16:00, then add the  evening charge. for example, a customer arriving at 14:45 on a sunday and parking for five hours  was previously charged 10.00 and would now be charged 6.00",
            "3": "3 0478/22/m/j/20 \u00a9 ucles 2020 [turn over 1  all variables, constants and other identifiers must have meaningful names.  (a) identify two variables that you could have used for task 1 . give the data type and state the  use of each variable. variable 1  .. data type  .. use  ...  ... variable 2  .. data type  .. use  ...  ...  [4]  (b) data input by a customer for task 1  includes the day and the hour of arrival.    identify one suitable validation check for each input and justify your choice. your validation  checks must be different.  day of arrival \u2013 validation check  ...  ... justification  ...  ...  ...  ... hour of arrival \u2013 validation check  .  ... justification  ...  ...  ...  ...  [4]",
            "4": "4 0478/22/m/j/20 \u00a9 ucles 2020  (c) explain how your program for task 1  ensured that the frequent parking number entered by  the customer had a valid check digit.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]  (d)  write an algorithm for part of task 2  that simulates customer payment and calculating total  payments using either  pseudocode, programming statements or a flowchart. assume that  task 1 has been completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/m/j/20 \u00a9 ucles 2020 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "6": "6 0478/22/m/j/20 \u00a9 ucles 2020  (e) explain how your program completed task 3 . assume that task 2  has been completed. any  programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/22/m/j/20 \u00a9 ucles 2020 [turn over section b 2 most programming languages include basic data types. ahmad is describing the basic data types  he has used.   state the data type that ahmad is describing in each sentence.   choose the data type from this list of programming terms. array    boolean    char    constant    function    integer iteration    procedure    real    string    variable a number with a fractional part that can be positive or negative and used in calculations data type  .. a whole number that can be positive, negative or zero and used in calculations data type  .. a single number, symbol or letter data type  .. a sequence of characters data type  .. a data type with two values, true or false data type  ..  [5]",
            "8": "8 0478/22/m/j/20 \u00a9 ucles 2020 3 (a) an algorithm has been written in pseudocode to input the names and marks of 35 students.  the algorithm stores the names and marks in two arrays name[ ] and mark[ ]. the highest  mark awarded is found and the number of students with that mark is counted. both of these  values are output. 01  highestmark \u2190 100 02  highestmarkstudents \u2190 0 03  for count \u2190 1 to 35 04      output \"please enter student name\" 05      input name[count] 06      output \"please enter student mark\" 07      input mark[counter] 08      if mark[count] = highestmark  09        then  10          highestmarkstudents \u2190 highestmarkstudents \u2013 1 11      endif 12      if mark[count] > highestmark  13        then  14          mark[count] \u2190 highestmark  15          highestmarkstudents \u2190 1 16      endif 17  next count 18  output \"there are \", highestmarkstudents,\" with the highest mark of \",       highestmark   give line numbers where the four errors are to be found in the pseudocode. suggest a  correction for each error. error 1 line number  ... correction  .  ... error 2 line number  ... correction  .  ... error 3 line number  ... correction  .  ... error 4 line number  ... correction  .  ...  [4]    ",
            "9": "9 0478/22/m/j/20 \u00a9 ucles 2020 [turn over  (b) explain how you could extend the algorithm to also find the lowest mark awarded, count the  number of students with that mark, and output both these values.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "10": "10 0478/22/m/j/20 \u00a9 ucles 2020 4 this flowchart inputs the points won and the points lost when playing a game. the difference  between the points won and lost is calculated and depending on the result the player can: move  up to the next level, stay at the same level, or move down to the previous level. the flowchart  finishes when the input for points won is \u20131. start input pointswon, pointslost endyes yes yesno no no output \"keep on trying\"output \"sorry move down\"difference      pointswon  - pointslostis pointswon  = \u20131 ? is difference >  = 1000  ? is difference < 0  ?output \"well done move up\"",
            "11": "11 0478/22/m/j/20 \u00a9 ucles 2020 [turn over  (a) complete a trace table for this set of input data:    5000, 4474, 6055, 2000, 7900, 9800, 3000, 2150, \u20131, 6700, 7615 pointswon pointslost difference output  [3]  (b) the flowchart needs to be changed. when the difference is more than 5000 the output  message is \u2018fantastic leap up two levels\u2019.    describe the changes that will need to be made to the flowchart.  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "12": "12 0478/22/m/j/20 \u00a9 ucles 2020 5 arrays are data structures used in programming. explain what is meant by the terms dimension  and index in an array. use examples of arrays in your explanations. dimension    ..  ..  ..  .. index    ..  ..  ..  ..  [3]",
            "13": "13 0478/22/m/j/20 \u00a9 ucles 2020 6 a database table, juice, is used to keep a record of cartons of fresh fruit juice available for sale.  juice code fruit 1 fruit 2 size volume (ml) stock level lmo10 mango orange large 1000 18 moo05 orange orange medium 500 8 sam02 apple mango small 200 25 saa02 apple apple small 200 50 spp02 pineapple pineapple small 200 10 mmm05 mango mango medium 500 12 lmm10 mango mango large 1000 5 mgg05 guava guava medium 500 5 smo02 mango orange small 200 7 mop05 orange pineapple medium 500 12 laa10 apple apple large 1000 32 sgo02 guava orange small 200 10 lpp10 pineapple pineapple large 1000 3 loo10 orange orange large 1000 25 soo02 orange orange small 200 40  (a) identify a suitable field to use as the primary key. state a reason for your choice. field  .. reason  ..  ...  [2]  (b)  complete the query-by-example grid to display only the stock level and size of all cartons  containing only apple juice. field: table: sort: show: criteria: or:  [4]",
            "14": "14 0478/22/m/j/20 \u00a9 ucles 2020 blank page",
            "15": "15 0478/22/m/j/20 \u00a9 ucles 2020 blank page",
            "16": "16 0478/22/m/j/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s20_qp_23.pdf": {
            "1": "cambridge igcse\u2122*0633505533* computer science  0478/23 paper 2 problem-solving and programming  may/june  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. dc (cj) 184934/3 \u00a9 ucles 2020  [turn overthis document has 12 pages. blank pages are indicated.",
            "2": "2 0478/23/m/j/20 \u00a9 ucles 2020 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a school snack shop sells the following items: category item code description price ($) healthy? fruit fr1 apple 1.00 yes fruit fr2 banana 1.25 yes fruit fr3 orange 1.00 yes fruit fr4 peach 1.30 yes sandwich sn1 cheese 1.75 yes sandwich sn2 cheese and tomato 2.20 yes sandwich sn3 chicken 2.00 yes sandwich sn4 chicken salad 2.35 yes sandwich sn5 salad (vegetarian) 2.00 yes crisps cr1 salted 1.00 no crisps cr2 cheese and onion 1.00 no crisps cr3 barbecue 1.00 no crisps cr4 prawn cocktail 1.00 no confectionery cn1 biscuits 0.95 no confectionery cn2 chocolate bar 1.05 no confectionery cn3 toffee and chocolate bar 1.25 no confectionery cn4 chocolate wafers 1.30 no drink dr1 cola 1.20 no drink dr2 lemon and lime soda 1.20 no drink dr3 orange soda 1.20 no drink dr4 orange juice 1.50 yes drink dr5 apple juice 1.50 yes write and test a program or programs for this snack shop. \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all arrays, variables, constants and other identifiers must have meaningful names. you will need to complete these three tasks. each task must be fully tested. task 1  \u2013 setting up the system to show the items for sale and to allow items to be selected write a program to: \u2022 use arrays to store the item code, description, price and whether or not the item is healthy \u2022 allow a customer to choose an item to purchase \u2022 output the description of each chosen item, its price and whether or not it is healthy \u2022 allow the customer to choose additional items until they decide to stop \u2022 calculate and output the total price of the chosen items. task 2  \u2013 specifying quantities and introducing restrictions extend task 1  to: \u2022 allow the customer to input the quantity of each item they would like to purchase \u2022 count the number of healthy and unhealthy items chosen by the customer. for example, two  apples and a peach count as three healthy items \u2022 check that the customer has chosen at least one healthy item for every two unhealthy items.  if so, allow the customer to make the purchase. otherwise, the purchase cannot proceed, a  message is output to say the purchase is cancelled and the customer has to start again. task 3  \u2013 offering discounts extend the program to: \u2022 either  apply a 10% discount to the total price, when purchasing both healthy and unhealthy  items, only if the number of healthy items matches or exceeds the number of unhealthy items \u2022 or apply a 20% discount to the total price if all the items purchased are healthy items \u2022 calculate then output the new total price and the amount of money saved.",
            "3": "3 0478/23/m/j/20 \u00a9 ucles 2020 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) (i) identify one array you could have used for task 1  and state its purpose. array  .. purpose  .  ...  ...    [2]   (ii) identify one variable you could have used for task 2  and state its purpose. variable  . purpose  .    ...  ...  [2]   (iii) identify one constant you could have used for task 3  and state its purpose. constant   purpose  .    ...  ...  [2]  (b)  explain why a student would be advised not to store the healthy? data as a real data type  and identify the most suitable data type for the healthy? data.  ...  ...  ...  ...  ...  .  [2]  ",
            "4": "4 0478/23/m/j/20 \u00a9 ucles 2020  (c)  write an algorithm for task 1  using either  pseudocode, programming statements or a  flowchart. it is not necessary to show initialisation or setting up of arrays.   ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/m/j/20 \u00a9 ucles 2020 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/23/m/j/20 \u00a9 ucles 2020  (d) explain how your program completes task 3 . assume task 1  and task 2  have been  completed. any programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/23/m/j/20 \u00a9 ucles 2020 [turn over  (e) describe how you could alter your program to restrict the maximum number of items  purchased by a customer to six.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [2]",
            "8": "8 0478/23/m/j/20 \u00a9 ucles 2020 section b 2 draw a line to connect each description  to the most appropriate pseudocode  example . description pseudocode example a loop that will iterate   at least oncecase \u2026 of \u2026 otherwise \u2026 endcase a loop that will not be   executed on the first test   if the condition is falsenumber  number + 1 a conditional statement while \u2026 do \u2026 endwhile totalling sum  sum + newvalue counting repeat \u2026 until  [4]",
            "9": "9 0478/23/m/j/20 \u00a9 ucles 2020 [turn over 3 this section of pseudocode is to be used as a validation check that will continue until a number  between 0 and 499 inclusive is entered.    1      print \"input a number from 0 to 499 inclusive\"  2      for number  1 to 10      3        input number    4        if number < 0 and number > 499   5          then   6            print \"invalid number, please try again\"  7        endif  8      until number = 0 or number = 499  9      print number, \" is within the correct range\"   there are three  lines in this pseudocode that contain errors. in each case, state the line number  to identify the incorrect line and write out the corrected line in full. error 1 line number  .. correction .  .. error 2 line number  .. correction .  .. error 3 line number  .. correction .  ..  [6]",
            "10": "10 0478/23/m/j/20 \u00a9 ucles 2020 4 a code must take the form ll9 9ll where l is a letter and 9 is a digit.   (a) a presence check has already been used to ensure data has been entered. name two other  types of validation check that can be used to test the code is valid. check 1  . check 2  .  [2]  (b) give one example of invalid test data for each of the validation checks you have named in   part (a) and in each case, give a reason why it fails the check. each example of test data  must be different.    check 1 invalid test data  .  ... reason  .  ...  ...  ... check 2 invalid test data  .  ... reason  .  ...  ...  ...  [4]",
            "11": "11 0478/23/m/j/20 \u00a9 ucles 2020 [turn over 5 this algorithm finds prime numbers.   the pre-defined function div gives the value of the result of integer division,   for example, y  9 div 4  gives y a value of 2   flag  false   input number     while number <> 0     divisor  2     while divisor <= number / 2         value  number div divisor       if number / divisor = value         then           flag  true       endif       divisor  divisor + 1     endwhile     if flag = false       then         output number, \" is prime\"     endif   input number   flag  false   endwhile  complete the trace table for the algorithm using the input data:  5, 6, 8, 0, 11, 13 flag number divisor value output  [5]",
            "12": "12 0478/23/m/j/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.6 draw the flowchart symbol for decision  and the flowchart symbol for process . decision process  [2] 7 a convenience store which sells general groceries wants to set up a database table called  stock. the table will contain fields including a description of the item, the price of the item  and the number in stock for each item. the stock table also has a fourth field to be used as a  primary key.  (a) complete the table to suggest a suitable field name for each of the four fields in the table  stock. give the purpose of the data to be stored in each field. field name purpose of field contents  [4]  (b) complete the query-by-example grid to output stock items where the quantity in stock has  fallen below 20. only show the primary key and description of the items. field: table: sort: show: criteria: or:  [3]"
        },
        "0478_w20_qp_11.pdf": {
            "1": "cambridge igcse\u2122this document has 12 pages. blank pages are indicated. dc (lk) 186555/3 \u00a9 ucles 2020  [turn overcomputer science  0478/11 paper 1 theory  october/november  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *4192404433*",
            "2": "2 0478/11/o/n/20 \u00a9 ucles 2020 1 six devices are shown.  tick (3) to show if each device is an input , output  or storage  device. deviceinput (3)output (3)storage (3) keyboard sensor 3d cutter 2d scanner microphone hard disk drive (hdd)  [6] 2 ron is attending a music concert. he has bought three tickets.  each ticket number is displayed as a hexadecimal number.   (a) complete the table to show the 12-bit binary  values and the denary  values for each  hexadecimal ticket number. hexadecimal  ticket number12-bit binary value denary value 028 1a9 20c  [6]  working space  ..  ..  ..  ..  ..",
            "3": "3 0478/11/o/n/20 \u00a9 ucles 2020 [turn over  (b) each ticket also has a qr code. the qr code is scanned at the entrance to the venue.   a person can only enter the venue with a valid qr code that allows entry.   when a person enters, a count is incremented to show how many people have entered the  venue.   explain how the system scans the qr code, checks if a person can enter and counts how  many people have entered.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [7] 3 transport layer security (tls) protocol is used to secure the transmission of data over the  internet.   (a) identify the two layers in the tls protocol. layer 1  .. layer 2  ..    [2]",
            "4": "4 0478/11/o/n/20 \u00a9 ucles 2020  (b) the following paragraph explains how data is sent securely using the tls protocol.   use the terms to complete the paragraph. not all terms may need to be used. \u2022 authentic \u2022 binary \u2022 browser \u2022 certificate \u2022 internet service provider \u2022 signal \u2022 web page \u2022 web server \u2022 website   the browser requests the  to identify itself     by providing its   . this is sent and a check     is performed to see if it is   . if it is, the     ... sends a ...     back to the web server and data transmission begins.  [5]  (c) identify one other protocol that can be used to secure data transmission over the internet.  .  [1]",
            "5": "5 0478/11/o/n/20 \u00a9 ucles 2020 [turn over question 4 starts on page 6.",
            "6": "6 0478/11/o/n/20 \u00a9 ucles 2020 4 consider the given logic statement: x = ((not ( a nand b)) or ( b nor c))  (a) draw a logic circuit to represent the given logic statement.   all logic gates must have a maximum of two inputs. do not attempt to simplify the logic  statement. a b x c  [4]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "7": "7 0478/11/o/n/20 \u00a9 ucles 2020 [turn over  (c) the logic statement given has four different logic gates.   identify two other  logic gates and complete a truth table for each. logic gate truth table ..a b x 0 0 0 1 1 0 1 1 logic gate truth table ..a b x 0 0 0 1 1 0 1 1  [4] 5 luke is creating a website for his t-shirt design business.  (a) he is using html to create the website. html can be separated into structure and  presentation.   (i) give two examples of html structure. example 1  .   example 2  .  [2]   (ii) give two examples of html presentation. example 1  . example 2  .  [2]",
            "8": "8 0478/11/o/n/20 \u00a9 ucles 2020  (b) luke is concerned that his web server may be hacked or subjected to a denial of service  (dos) attack.   state two security methods that luke could use to help protect the web server from hacking  or a dos attack. method 1  ... method 2  ...  [2] 6 a von neumann model for a computer system contains several integrated circuits (ic).  (a) parallel data transmission is used in an ic.   (i) describe how data is transmitted using parallel data transmission.  ...  ...  ...  .  [2]   (ii) give one benefit of using parallel, rather than serial, data transmission.  ...  .  [1]  (b) the computer has a central processing unit (cpu).   (i) identify the bus that carries signals around the cpu to control the components.  .  [1]   (ii) identify the register built into the arithmetic logic unit (alu).  .  [1]",
            "9": "9 0478/11/o/n/20 \u00a9 ucles 2020 [turn over   (iii) four statements about a von neumann model for a computer system are shown.    tick (3) to show if each statement is true  or false . statementtrue (3)false (3) data and instructions are stored in the same memory unit the control unit manages operations within the cpu data and instructions can be fetched into the cpu at the same time the control unit is responsible for decoding an instruction  [4] 7 nina is recording some music tracks that she has written. she is researching whether she should  record them in midi or mp3 format.  explain what is meant by midi and mp3 format. midi ..  ..  ..  .. mp3  ..  ..  ..  ..  [4]",
            "10": "10 0478/11/o/n/20 \u00a9 ucles 2020 8 matthew is buying a new television with a display that uses led technology.  (a) explain what is meant by led technology.  ...  ...  ...  ...  ...  .  [3]  (b) state three  benefits of led technology. benefit 1  ...  ... benefit 2  ...  ... benefit 3  ...  ...  [3]  (c) identify one other  technology that could have been used for the display.  .  [1] 9 victoria is entering data into a computer system. the data will be transmitted to cloud storage.  (a) an even parity check is used to check for errors in the binary values after transmission.   for each of the 7-bit binary values , write the parity bit  that makes sure even  parity is met.     7-bit binary value  parity bit     1100010  ..     1001011  ..     0100010  ..     0010111  ..  [4]",
            "11": "11 0478/11/o/n/20 \u00a9 ucles 2020  (b) identify two other error checking methods that could be used to check the binary values are  correct after transmission. method 1  ... method 2  ...  [2]  (c) a check digit is used to check whether data is correct when entered into the system.   describe how a check digit can be used to make sure the data entered is correct.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "12": "12 0478/11/o/n/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w20_qp_12.pdf": {
            "1": "cambridge igcse\u2122this document has 12 pages. blank pages are indicated. dc (lk) 186556/2 \u00a9 ucles 2020  [turn overcomputer science  0478/12 paper 1 theory  october/november  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *1868618815*",
            "2": "2 0478/12/o/n/20 \u00a9 ucles 2020 1 tina is creating a website for charity events. she uses html to create the website.  (a) state what is meant by html.  ...  .  [1]  (b) she uses the hexadecimal colour code #43b7f0 as the background colour for her website.   (i) state whether background colour is an example of structure  or presentation , in the  website.  .  [1]   (ii) the hexadecimal colour code # 43b7f0  is stored in three 8-bit  registers.    give the 8-bit binary  values for each part of the hexadecimal code. 43 b7 f0  [6]  (c) tina uses a microphone to record a welcome message for her website.   (i) state whether the microphone is an input  or output  device.  .  [1]",
            "3": "3 0478/12/o/n/20 \u00a9 ucles 2020 [turn over   (ii) she wants to compress the recording to make sure that the file is as small as possible  for the website.    identify which type of compression she should use and describe how this would compress  the file for the website. type of compression  . description  ...  ...  ...  ...  ...  ...  ...  .  [4]   (iii) give two benefits of compressing the file for the website. benefit 1    ... benefit 2    ...  [2]",
            "4": "4 0478/12/o/n/20 \u00a9 ucles 2020  (d) tina will use the tls protocol in her website when selling tickets to people for different charity  events. this makes sure that their personal data is transmitted securely.   (i) identify the two layers that are present in the tls protocol. layer 1  .. layer 2  ..  [2]   (ii) explain how data is sent securely using the tls protocol.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "5": "5 0478/12/o/n/20 \u00a9 ucles 2020 [turn over  (e) tina is concerned about security threats to her web server.   (i) identify three  security threats to her web server that tina might be concerned about. 1   2   3    [3]   (ii) tina installs a proxy server to help protect her website from security threats.    describe how the proxy server will help protect the website.  ...  ...  ...  ...  ...  ...  ...  .  [4] 2 four  7-bit binary values are transmitted from one computer to another. a parity bit was added  to each binary value creating 8-bit binary values. all the binary values have been transmitted  correctly.  (a) tick (\u2713) to show whether an even  or an odd parity check has been used for each binary  value. 8-bit binary valueeven (\u2713)odd (\u2713) 11111111 01100110 01111011 10000000  [4]",
            "6": "6 0478/12/o/n/20 \u00a9 ucles 2020  (b) the data will also be checked using a checksum.   describe how a checksum can be used to check that the data has been transmitted correctly.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5] 3 alessandro has some important data stored on his computer.  he is concerned about accidental damage to his data.  (a) (i) identify three  ways that the data could be accidentally damaged. 1   2   3    [3]   (ii) state what alessandro could do to make sure that he can retrieve his data if it is  accidentally damaged.  .  [1]",
            "7": "7 0478/12/o/n/20 \u00a9 ucles 2020 [turn over  (b) alessandro uses an ssd to store his data.   describe what is meant by an ssd and how it operates to store data.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (c) alessandro also uses off-line storage to store his data.   three examples of off-line storage are blu-ray, cd and dvd.   six statements are given about off-line storage.   tick (\u2713) to show if each statement applies to blu-ray , cd, or dvd .   some statements apply to more than one example of off-line storage. statementblu-ray (\u2713)cd (\u2713)dvd (\u2713) a type of optical storage has the largest storage capacity can be dual layer read using a red laser has the smallest storage capacity stores data in a spiral track  [6]",
            "8": "8 0478/12/o/n/20 \u00a9 ucles 2020 4 consider the logic statement: x = ((( a nand b) nor ( b and c)) or c)  (a) draw a logic circuit to match the given logic statement.    all logic gates must have a maximum of two inputs. do not attempt to simplify the logic  statement. a b x c  [4]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "9": "9 0478/12/o/n/20 \u00a9 ucles 2020 [turn over 5 tammy is buying a new computer that has an led display.  (a) five statements about led displays are given.   tick (\u2713) to show if each statement is true  or false . statementtrue (\u2713)false (\u2713) it is a flat panel display it creates images using red, green and blue diodes it is not very energy efficient and gives off heat it can be used in mobile devices such as smartphones and tablets it is a front-lit display  [5]",
            "10": "10 0478/12/o/n/20 \u00a9 ucles 2020  (b) tammy connects the computer to her home network. the computer has a mac address and  an ip address.   a paragraph is given about mac addresses and ip addresses.   complete the paragraph using the list of terms given. not all terms need to be used. \u2022 compiled \u2022 computer \u2022 control \u2022 dynamic \u2022 identify \u2022 packet \u2022 principal \u2022 protocol \u2022 similar \u2022 unique   a mac address is a media access \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026.. address.   a network device has a \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026 mac address that    can help \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026. the device in the network. an ip address    is an internet \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026 address. an ip address can be static or    \u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026\u2026  .  [5]  (c) tammy uses a browser when accessing the internet.   describe the role of the browser.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "11": "11 0478/12/o/n/20 \u00a9 ucles 2020 blank page",
            "12": "12 0478/12/o/n/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w20_qp_13.pdf": {
            "1": "cambridge igcse\u2122*6353612904* dc (pq) 186557/2 \u00a9 ucles 2020  [turn overthis document has 12 pages. blank pages are indicated.computer science  0478/13 paper 1 theory  october/november  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/13/o/n/20 \u00a9 ucles 2020 1 five hardware devices are given.  tick (3) to show if each device is an input , output  or storage  device. deviceinput  (3)output  (3)storage  (3) solid state drive (ssd) headphones 2d cutter lcd projector microphone  [5] 2 paige has a computer that has a central processing unit (cpu) based on the von neumann model  for a computer system.  (a) identify the component within the cpu that controls the flow of data.  .  [1]  (b) identify the component within the cpu where calculations are carried out.  .  [1]  (c) identify the component within the cpu that stores the address of the next instruction to be  processed.  .  [1]  (d) identify the register within the cpu that holds an instruction that has been fetched from  memory.  .  [1]  (e) identify the register within the cpu that holds data that has been fetched from memory.  .  [1]",
            "3": "3 0478/13/o/n/20 \u00a9 ucles 2020 [turn over 3 (a) four  denary to 8-bit binary conversions are given.   tick (3) to show if each denary to 8-bit binary conversion is correct  or incorrect . denary binary conversioncorrect  (3)incorrect  (3) 145 10010001 179 10110101  11 00010011 100 01100010  [4]  (b) convert the 12-bit binary number into hexadecimal. 1 1 0 0 0 1 0 0 0 0 0 0  .  [3] 4 eugene has a web server that stores his online shopping website.  customers access the website using a browser.  (a) describe how the webpages are requested and displayed on the customer\u2019s computer.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) state three  online security threats to eugene\u2019s web server. threat 1   threat 2   threat 3    [3]",
            "4": "4 0478/13/o/n/20 \u00a9 ucles 2020 5 arjun uses a scanner to create digital versions of some printed documents.   the scanner is attached to his computer using a usb connection.  (a) tick (3) to show if the usb connection uses parallel  or serial  data transmission.   describe your chosen method of data transmission.   parallel     serial       description  ...  ...  ...  ...  [3]  (b) give three  benefits of a usb connection. benefit 1  ...  ... benefit 2  ...  ... benefit 3  ...  ...  [3]  (c) arjun uses the internet to send the digital documents to his friend. he wants to make sure the  documents are sent securely.   identify two protocols that can be used to transfer data securely. protocol 1  . protocol 2  .  [2]",
            "5": "5 0478/13/o/n/20 \u00a9 ucles 2020 [turn over 6 elsa writes a paragraph in an examination about encryption.  there are several terms missing from the paragraph.  complete the paragraph using the list of given terms. not all terms may need to be used.  some terms may be used more than once. \u2022 algorithm \u2022 alphanumeric \u2022 cookie \u2022 cypher \u2022 key \u2022 padlock \u2022 plain \u2022 word processed  the data is encrypted using a ... . this is an  ... that is used to scramble the data. the data before  encryption is known as ... text. when the data has been  encrypted it is known as ... text. to read the encrypted  data it needs to be decrypted using a ... .  [5]",
            "6": "6 0478/13/o/n/20 \u00a9 ucles 2020 7  four  7-bit binary values are transmitted from one computer to another. a parity bit was added  to each binary value creating 8-bit binary values. all the binary values have been transmitted  correctly.  (a) tick (3) to show whether an even  or an odd parity check has been used for each binary  value. 8-bit binary valueeven  (3)odd  (3) 10000001 10000010 00101001 00101000  [4]  (b) a parity check may not always detect errors that have occurred in data transmission.   state why a parity check may not detect data transmission errors.  .  [1]  (c) give one other error checking method that could be used to check for errors in data  transmission.  .  [1]",
            "7": "7 0478/13/o/n/20 \u00a9 ucles 2020 [turn over 8 edith is buying a new computer monitor that displays images using lcd technology.  (a) explain what is meant by lcd technology.  ...  ...  ...  ...  ...  .  [3]  (b) state three  benefits of lcd technology. benefit 1  ...  ... benefit 2  ...  ... benefit 3  ...  ...  [3] 9 elle uses both cds and dvds to store her school projects.  (a) give three  similarities between a cd and a dvd. 1    ... 2    ... 3    ...  [3]  (b)  state one difference between a cd and a dvd.  ...  .  [1]",
            "8": "8 0478/13/o/n/20 \u00a9 ucles 2020 10 consider the following logic statement: x = ((b and not a) xor ( a or c))  (a) draw a logic circuit to match the given logic statement.   all logic gates must have a maximum of two inputs. do not attempt to simplify the logic  statement. a bx c [4]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "9": "9 0478/13/o/n/20 \u00a9 ucles 2020 [turn over 11 a theme park has a game where a player tries to run from the start to the finish without getting wet.  the system for the game uses sensors and a microprocessor to spray water at a player as they  run past each sensor.  describe how the sensors and the microprocessor are used in this system.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..    [6] 12 warner says that he has a very good internet service provider (isp) that provides several services.  five statements about isps are given.   tick (3) to show if each statement is true  or false . statementtrue  (3)false  (3) provides access to the internet for customers can determine the maximum bandwidth available for customers monitors the volume of data downloaded by customers can provide an ip address for the customer stores the content for all web pages available on the internet  [5]",
            "10": "10 0478/13/o/n/20 \u00a9 ucles 2020 13 phishing and pharming are two security issues a user should be aware of when using the internet.    (a)  state one similarity between phishing and pharming.  ...  .  [1]  (b) explain two differences between phishing and pharming. difference 1  ...  ...  ... difference 2  ..  ...  ...  [2]",
            "11": "11 0478/13/o/n/20 \u00a9 ucles 2020 blank page",
            "12": "12 0478/13/o/n/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w20_qp_21.pdf": {
            "1": "cambridge igcse\u2122dc (st/ct) 185129/2 \u00a9 ucles 2020  [turn overthis document has 16 pages. blank pages are indicated.computer science  0478/21 paper 2 problem-solving and programming  october/november  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *5278605583*",
            "2": "2 0478/21/o/n/20 \u00a9 ucles 2020 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a car insurance system allows customers to check how much it would cost to buy insurance for a car for  twelve months. the starting price of the car insurance is $500. the actual price a customer pays for the car  insurance changes depending upon this information: \u2022 engine size of car \u2022 value of car \u2022 where car is kept overnight \u2022 number of kilometres (km) driven a year \u2022 age of driver \u2022 years insured without an insurance claim engine  size in  litresprice  changevalue in  $1000price  changekept  over- nightprice  change1000  km  driven a  yearprice  changeage of  driverprice  changeyears  without  claimprice  change <=0.5 \u20135% <0.5 \u20135% garage \u20135% <5 \u20135% 18\u201320 +100% 1 \u201310% >0.5 to 1.0 0% 0.5 to 2 0% drive 0% 5 to 20 0% 21\u201325 +50% 2 \u201320% >1.0 to 2.5 +5% >2 to 10 +5% street +5% >20 +5% 26\u201330 +25% 3 \u201330% >2.5 +10% >10 to 20 +10% 31\u201370 0% 4 \u201340% >20 +15% 71\u201380 +10% 5 \u201350% >80 +20% 6 \u201360% >6 \u201370% table 1 table 2 the actual price is calculated by: \u2022 finding the total of the percentage changes for the customer using table 1 \u2022 applying this total percentage change to the starting price of the car insurance \u2022 applying the years without claim discount percentage for the customer using table 2. write and test a program or programs to calculate the price for a customer to insure a car. \u2022  your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1 \u2013 calculate the price to insure a car. write a program to obtain the required information from a customer and calculate the price to insure the car.  display the price to insure the car. display the total percentage change calculated from table 1, and the  years without claim discount percentage from table 2 separately. task 2 \u2013 new customer discount. extend task 1  to include an additional discount of 10% off the price to any new customer who is aged  between 26 and 70 inclusive, who also has 2 or more years without a claim. display the amount of money  this would save and the new price. task 3 \u2013 adding an extra driver. customers can add one extra driver. the age of the extra driver may increase the price. the new price is  calculated by applying the percentage price change for the age of the extra driver from table 1 to the price.  extend task 2  to calculate and display the new price including an extra driver if required.",
            "3": "3 0478/21/o/n/20 \u00a9 ucles 2020 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) identify one array that you could have used for task 1 . give the data type and state the use  of the array. array  . data type  .. use  ...  ...  ... [3]  (b) data entered by a customer includes the age of the driver in task 1 .   identify two different validation checks you could use for the age of the driver.    justify your choice for each one. validation check 1  .  ... justification  ...  ...  ...  ... validation check 2  .  ... justification  ...  ...  ...  ... [4]",
            "4": "4 0478/21/o/n/20 \u00a9 ucles 2020  (c) write an algorithm for task 2 , using either  pseudocode, programming statements or a  flowchart. assume that task 1  has been completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "5": "5 0478/21/o/n/20 \u00a9 ucles 2020 [turn over  (d) (i) explain how your program completed task 3 . assume that task 2  has been completed.    any programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "6": "6 0478/21/o/n/20 \u00a9 ucles 2020   (ii) the car insurance system needs updating to record the percentage of customers who  bought car insurance after obtaining a price to insure a car. describe the changes  required to your program.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "7": "7 0478/21/o/n/20 \u00a9 ucles 2020 [turn over section b 2 describe the purpose of variables and constants. use an example of each in your answer.  ..  ..  ..  ..  ..  ..  ..  ..    [4]",
            "8": "8 0478/21/o/n/20 \u00a9 ucles 2020 3 this pseudocode algorithm calculates the weight and number of bags in a load of firewood. the  weight in kilograms of each bag is input. the algorithm finishes when either 50 bags have been  weighed, or as soon as the total weight exceeds 1000 kilograms. only then are the total weight  and the number of bags in the load output.  01  totalweight \u2190 1000  02  bagcount \u2190 0  03  maxbag \u2190 50  04  maxweight \u2190 1000  05  repeat  06      output \"please enter weight of bag\"  07      input weight  08      totalweight \u2190 totalweight + weight  09      bagcount \u2190 bagcount + 1  10      output \"number of bags in the load is \", bagcount  11  until totalweight > maxweight and bagcount >= maxbag  12  output \"total weight of the load is \", maxweight  (a) give the line number(s) from the algorithm of: an assignment statement  . a loop   a counting statement   a totalling statement  . [4]  (b) give the line numbers of the four errors in this pseudocode. suggest a correction for each  error. error 1 line number  ... correction  .  ... error 2 line number  ... correction  .  ... error 3 line number  ... correction  .  ... error 4 line number  ... correction  .  ... [4]",
            "9": "9 0478/21/o/n/20 \u00a9 ucles 2020 [turn over  (c) explain how you could extend the algorithm to calculate and display the average weight of a  bag of firewood in the load.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "10": "10 0478/21/o/n/20 \u00a9 ucles 2020 4 this flowchart inputs five numbers and performs a calculation.  the predefined function mod finds the remainder from integer division for example  r \u2190 25 mod 11  gives r a value of 3 start endis v = 0 ? is b = z ?a \u2190 v*2 + w*3 + x*4 + y*5input v,w,x,y,z output \"invalid \"output \"valid\"no noyes yesb \u2190 a mod 11",
            "11": "11 0478/21/o/n/20 \u00a9 ucles 2020 [turn over  (a) complete the trace table for this set of input data:   5, 4, 6, 2, 1, 9, 3, 2, 1, 6, 7, 6, 1, 5, 1, 0, 0, 0, 0, 0 v w x y z a b output [4]  (b) describe the purpose of this flowchart.  ...  ...  ...  .  [2]",
            "12": "12 0478/21/o/n/20 \u00a9 ucles 2020 5 a database table, airline, stores data used to compare airlines. code airline namenumber of  employeesnumber of  countrieshead office share price fj fastjet 60000 30 europe 514.50 ma murphyair 35000 8 europe 152.67 js jetseven 45000 22 asia 257.44 k3 koala3 22000 11 australia 501.21 ns northstate 30000 4 america 108.22 ss southstate 30000 4 america 126.35 bj bluejet 15000 7 africa 215.45 sk skyking 32000 27 europe 506.12 pf pandafly 50000 35 asia 317.88  (a) state how many fields and how many records are shown in the airline table. number of fields  .. number of records  .. [2]  (b) show the output that would be given by this query-by-example. field: airline name number of employees head office share price table: airline airline airline airline sort: show: 3 3 criteria: < 35000 > 500.00 or:  ...  ...  .  [2]",
            "13": "13 0478/21/o/n/20 \u00a9 ucles 2020  (c) complete the query-by-example grid to find every airline with a head office in asia or africa,  and number of countries greater than 4. only show the airline name and number of countries. field: table: sort: show: criteria: or: [4]",
            "14": "14 0478/21/o/n/20 \u00a9 ucles 2020 blank page",
            "15": "15 0478/21/o/n/20 \u00a9 ucles 2020 blank page",
            "16": "16 0478/21/o/n/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w20_qp_22.pdf": {
            "1": "cambridge igcse\u2122computer science  0478/22 paper 2 problem-solving and programming  october/november  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. this document has 12 pages. blank pages are indicated. dc (st) 185711/3 \u00a9 ucles 2020  [turn over *1129138452*",
            "2": "2 0478/22/o/n/20 \u00a9 ucles 2020 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material an online computer shop sells customised personal computers. every computer sold includes a basic set of  components costing $200 and additional items can be added from the table: category item code description price ($) case a1 compact 75.00 case a2 tower 150.00 ram b1 8 gb 79.99 ram b2 16 gb 149.99 ram b3 32 gb 299.99 main hard disk drive c1 1 tb hdd 49.99 main hard disk drive c2 2 tb hdd 89.99 main hard disk drive c3 4 tb hdd 129.99 solid state drive d1 240 gb ssd 59.99 solid state drive d2 480 gb ssd 119.99 second hard disk drive e1 1 tb hdd 49.99 second hard disk drive e2 2 tb hdd 89.99 second hard disk drive e3 4 tb hdd 129.99 optical drive f1 dvd/blu-ray player 50.00 optical drive f2 dvd/blu-ray re-writer 100.00 operating system g1 standard version 100.00 operating system g2 professional version 175.00 as well as the basic set of components every computer must include one case, one ram and one main hard  disk drive from the table. a computer is supplied with or without an operating system. write and test a program or programs for the online computer shop. \u2022  your program or programs must include appropriate prompts for the entry of data; data must be validated  on entry. \u2022  error messages and other output need to be set out clearly and understandably. \u2022 all arrays, variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 setting up the system and ordering the main items. write a program to: \u2022 use arrays to store the item code, description and price \u2022 allow a customer to choose one case, one ram and one main hard disk drive \u2022 calculate the price of the computer using the cost of the chosen items and the basic set of components \u2022 store and output the chosen items and the price of the computer. task 2  \u2013 ordering additional items. extend task 1  to: \u2022  allow a customer to choose whether to purchase any items from the other categories \u2013 if so, which  item(s) \u2022 update the price of the computer \u2022 store and output the additional items and the new price of the computer. task 3  \u2013 offering discounts. extend task 2  to: \u2022 apply a 5% discount to the price of the computer if the customer has bought only one additional item \u2022  apply a 10% discount to the price of the computer if the customer has bought two or more additional  items \u2022 output the amount of money saved and the new price of the computer after the discount.",
            "3": "3 0478/22/o/n/20 \u00a9 ucles 2020 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) (i) identify one array you could have used for task 1  and state its purpose. array  .. purpose  .  ...  ... [2]   (ii) identify one variable you could have used for task 2  and state its purpose. variable  . purpose  .  ...  ... [2]   (iii) identify one constant you could have used for task 3  and state its purpose. constant   purpose  .  ...  ... [2]  (b)  explain the benefits of storing price as a real data type.  ...  ...  ...  ...  ...  ...  .  [2]",
            "4": "4 0478/22/o/n/20 \u00a9 ucles 2020  (c)  write an algorithm to show how you completed task 1 , using either  pseudocode,  programming statements or a flowchart. it is not necessary to show initialisation or setting up  of arrays in your answer.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/o/n/20 \u00a9 ucles 2020 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/22/o/n/20 \u00a9 ucles 2020  (d) explain how your program completes task 3 . any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/22/o/n/20 \u00a9 ucles 2020 [turn over  (e) describe how you could alter your program to allow more than one computer to be bought.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [2]",
            "8": "8 0478/22/o/n/20 \u00a9 ucles 2020 section b 2 tick (3) one box in each row to identify if the statement about subroutines is true or false . statementtrue (3)false (3) a subroutine is called from within a program. a subroutine is not a complete program. a subroutine is a self-contained piece of code. a subroutine must return a value to the code from which it was called. [2] 3 this pseudocode algorithm is used as a validation check.  print \"input a number from 1 to 5000\"  repeat    input number    if number < 1 or number > 5000      then        print \"invalid number, please try again\"    endif  until number >= 1 and number <= 5000  print number, \" is within the correct range\"  identify three  different types of test data. for each type, give an example of the test data you  would use to test this algorithm and state a reason for your choice of test. type of test data 1  ... test data ... reason  .  .. type of test data 2  ... test data ... reason  .  .. type of test data 3  ... test data ... reason  .  .. [6]",
            "9": "9 0478/22/o/n/20 \u00a9 ucles 2020 [turn over 4 this pseudocode algorithm allows 5000 numbers to be entered and stored in an array called  number .   for count  1 to 5000     input number[count]   next count  extend and re-write the algorithm using pseudocode to also count and output how many of the  numbers stored in the array are greater than 500, using the variable higher . only output higher   once with an appropriate message.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..    [6]",
            "10": "10 0478/22/o/n/20 \u00a9 ucles 2020 5 this pseudocode represents an algorithm.    repeat      flag  0      for count  0 to 3        if num[count] < num[count + 1]          then            store  num[count]            num[count]  num[count + 1]            num[count + 1]  store            flag  1        endif      next count    until flag = 0  (a) the contents of the array at the start of the algorithm are: num[0] num[1] num[2] num[3] num[4] 45 56 30 12 15   complete the trace table for the algorithm using the data given in the array. flag count num[0] num[1] num[2] num[3] num[4] store 45 56 30 12 15 [5]  (b) describe the purpose of the algorithm.  ...  ...  ...  .  [2]",
            "11": "11 0478/22/o/n/20 \u00a9 ucles 2020 [turn over 6 draw a flowchart symbol to represent each of the following: input/output decision [2] question 7 starts on page 12. permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.",
            "12": "12 0478/22/o/n/20 \u00a9 ucles 2020 7 the table audioparts stores the part number, description, cost and quantity in stock of the  items sold by a music shop. partnum description cost quantity a01 compact amplifier case 50.00 15 a02 deluxe amplifier case 75.00 1 a03 amplifier standard 79.99 48 a04 amplifier midrange 149.99 50 a05 amplifier megablaster 299.99 48 s01 tweeter 59.99 10 s02 midrange woofer 99.99 0 s03 subwoofer 139.99 16 s04 tower speaker basic 159.99 25 s05 tower speaker skyscraper 219.99 9 s06 centre speaker 149.99 25 s07 soundbar 89.99 2 s20 soundbar 129.99 0 s21 ceiling surround speaker 75.00 15 s22 ceiling full range speaker 100.00 1 s25 surround speaker 100.00 60 t19 speaker stands (pair) 75.00 60  (a) state the number of records in the table audioparts  .  [1]  (b) identify the field that is most suitable to be a primary key and give a reason for your choice. fieldname  . reason  .  ...  ... [2]  (c) complete the query-by-example grid to show the items where the quantity in stock is fewer  than 10. show all the fields from the database table in descending order of cost. field: table: sort: show: criteria: or: [4]"
        },
        "0478_w20_qp_23.pdf": {
            "1": "cambridge igcse\u2122this document has 16 pages. blank pages are indicated.computer science  0478/23 paper 2 problem-solving and programming  october/november  2020  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.   \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *0405086665* dc (st/jg) 185347/3 \u00a9 ucles 2020  [turn over",
            "2": "2 0478/23/o/n/20 \u00a9 ucles 2020 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a baguette ordering service allows customers to order filled baguettes. there are two sizes of  baguette: 30  cm and 15  cm. baguettes are available as white, brown or seeded bread. baguettes  have one filling and can have up to three salad items added. filling and salad choices are: filling salad beef chicken cheese egg tuna turkeylettuce tomato sweetcorn cucumber peppers customers choose their baguette options. they then confirm their order, alter their choices or choose  not to proceed. each day the ordering service calculates the number of each: \u2022 size of baguette sold \u2022 type of bread (white, brown or seeded) sold \u2022 filling sold. write and test a program or programs for the baguette ordering service. \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 ordering. customers are given choices on size, type of bread, filling and salad items as shown. only valid  choices can be accepted. the customer is asked to confirm their order, alter their choices or choose  not to proceed. if the customer confirms their order they are given a unique order number. display  the baguette ordered and the order number. task 2  \u2013 recording the choices. extend task 1  to record totals for the size, types of bread and fillings sold that day and calculate  the total number of baguettes sold that day. task 3 \u2013 finding the most and least popular baguette fillings. using your results from task 2 , display the most popular and least popular fillings as a percentage  of the total number of baguettes sold that day.",
            "3": "3 0478/23/o/n/20 \u00a9 ucles 2020 [turn over 1  all variables, constants and other identifiers must have meaningful names.  (a) identify one constant and identify one variable that you could have used for task 1 . give the  value that would be assigned to the constant. give the data type for the variable. state what  each one could be used for. constant  ... value  . use  ...  ... variable  . data type  .. use  ...  ... [6]  (b) (i) write an algorithm to allow a customer to choose the filling and salad items for their  baguette (part of task 1 ), using either  pseudocode, programming statements or a  flowchart. your algorithm must only include this part of task 1 .  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "4": "4 0478/23/o/n/20 \u00a9 ucles 2020  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/o/n/20 \u00a9 ucles 2020 [turn over  ...  ...  ...  ...  ...  ...  ...  .  [5]   (ii) explain how your algorithm in part (b)(i)  ensured that only valid choices were accepted  for the filling.  ...  ...  ...  ...  ...  ...  .  [3]  (c) explain how you would need to change your program for task 1  if there were three sizes of  baguette to choose from (15  cm, 20  cm and 30  cm).  ...  ...  ...  .  [2]",
            "6": "6 0478/23/o/n/20 \u00a9 ucles 2020  (d) explain how your program completed task 3 . assume that task 2  has been completed.   any programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/23/o/n/20 \u00a9 ucles 2020 [turn over section b starts on page 8.",
            "8": "8 0478/23/o/n/20 \u00a9 ucles 2020 section b 2  an algorithm has been written in pseudocode to check the temperature readings taken from a  freezer are within the range \u201318 degrees to \u201325 degrees inclusive.  the algorithm counts the number of times that the temperature reading is below \u201325 degrees and  the number of times that the temperature reading is above \u201318 degrees.   an engineer is called if there are more than 10 temperature readings below \u201325 degrees.  an alarm sounds if there are more than 5 temperature readings above \u201318 degrees.  01  toohot  0  02  toocold  1000  03  repeat  04      output \"please enter temperature\"  05      input temperature  06      if temperature < -25  07        then  08          toocold  toocold \u2013 1  09      endif  10      if temperature > -18  11        then  12          toohot  toohot + 1  13      endif  14  until toohot > 5 or toocold > 10  15  if toohot < 5  16    then  17      input \"alarm!!\"  18  endif  19  if toocold > 10  20    then  21      output \"call the engineer\"  22  endif  (a) give the line number(s) from the algorithm of: an assignment statement  . a loop   a counting statement   a selection statement   [4]",
            "9": "9 0478/23/o/n/20 \u00a9 ucles 2020 [turn over  (b) give line numbers where the four errors are to be found in the pseudocode. suggest a  correction for each error. error 1 line number  ... correction  .  ... error 2 line number  ... correction  .  ... error 3 line number  ... correction  .  ... error 4 line number  ... correction  .  ... [4]  (c) explain how you could extend the algorithm to count the number of times the temperature  readings are within the range \u201318 degrees to \u201325 degrees inclusive.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "10": "10 0478/23/o/n/20 \u00a9 ucles 2020 3 four programming concepts and five descriptions are shown.  draw a line to connect each programming concept  to its correct description . not all descriptions  will be connected to a programming concept.  programming concept  description validationa subroutine that does not have to  return a value an automatic check to ensure that data  input is reasonable and sensible a subroutine that always returns  a value an overview of a program or subroutine a check to ensure that data input  matches the originalverification procedure  function [4]",
            "11": "11 0478/23/o/n/20 \u00a9 ucles 2020 [turn over question 4 starts on page 12.",
            "12": "12 0478/23/o/n/20 \u00a9 ucles 2020 4 this flowchart represents an algorithm that allows the input of two numbers and performs a  calculation.   the predefined function mod finds the remainder from integer division for example x  8 mod 5   gives x a value of 3. start a   y mod zendis y = 0 ? is y > z ? is a = 0 ?a   z mod yinput y,z output \"invalid \"output \"valid\"no no noyes yes yes",
            "13": "13 0478/23/o/n/20 \u00a9 ucles 2020 [turn over  (a) complete a trace table for this set of input data:   11, 4, 6, 2, 3, 9, 3, 2, 2, 6, 0, 0, 1, 1 y z a output [4]  (b) explain the purpose of this algorithm.  ...  ...  ...  .  [2]",
            "14": "14 0478/23/o/n/20 \u00a9 ucles 2020 5 a marine wildlife rescue centre uses a database table, marine, to keep records of its creatures. creature class quantity ready for release offspring manta ray fish 3 y n short-tailed albatross bird 4 y n emperor penguin bird 50 y y bluefin tuna fish 2 n n manatee mammal 4 y n hawksbill turtle reptile 10 y y hammerhead shark fish 3 y n yellow-eyed penguin bird 4 y n kemp\u2019s ridley sea turtle reptile 1 y n  (a) state how many fields and how many records are shown in this table. number of fields  ... number of records   [2]  (b) show the output that would be given by this query-by-example. field: creature class ready for release table: marine marine marine sort: show: 3 3 criteria: =\"bird\" or:  ...  ...  .  [2]",
            "15": "15 0478/23/o/n/20 \u00a9 ucles 2020  (c) complete the query-by-example grid to display the creatures, in ascending order of quantity,  that have no offspring and are ready for release. display only the creature field. field: table: sort: show: criteria: or: [4]",
            "16": "16 0478/23/o/n/20 \u00a9 ucles 2020 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        }
    },
    "2021": {
        "0478_m21_qp_12.pdf": {
            "1": "this document has 16 pages. any blank pages are indicated. cambridge igcse\u2122 dc (pq/sg) 202679/4 \u00a9 ucles 2021  [turn over *0803728940* computer science  0478/12 paper 1 theory  february/march  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/12/ f/m/21 \u00a9 ucles 2021 1 a hockey club records the number of people that watch each match. an 8-bit binary register is  used to store this value.  (a) 46 people watch the first match and 171 people watch the second match.   show how the registers would store these denary values as 8-bit binary.  denary  value8-bit binary 46 171  [2]   working space  ...  ...  ...  ...  (b) give the largest denary value that can be stored in the 8-bit binary register.   .  [1]  (c) the hockey club wants to increase the number of people that can watch each match to 2000.  the 8-bit binary register may no longer be able to store the value.   give the smallest number of bits that can be used to store the denary value 2000.  .  [1]   working space  ...  ...  ...  ...",
            "3": "3 0478/12/ f/m/21 \u00a9 ucles 2021 [turn over  (d) electronic data about the final score for the match is transmitted to a central computer  30 kilometres away, using serial transmission.   (i) explain why serial transmission is more appropriate than parallel transmission in this  scenario.   ...  ...  ...  ...  ...  .  [3]   (ii) the data transmission is also half-duplex.    describe half-duplex data transmission.   ...  ...  ...  .  [2]   (iii) the data transmission uses checksums.    describe how checksums are used to detect errors in data transmission.   ...  ...  ...  ...  ...  .  [3]",
            "4": "4 0478/12/ f/m/21 \u00a9 ucles 2021 2 gurdeep takes high definition photographs using a digital camera. she has set up a website where  users can view thumbnails of her photographs. a thumbnail is a small version of the high definition  photograph.   (a) gurdeep compresses the high definition photographs to create the thumbnails. she uses  lossy compression.     describe how lossy compression creates the thumbnails.   ...  ...  ...  ...  ...  .  [3]  (b) gurdeep sets up a web server to host her website. she reads about an internet protocol (ip)  address, a media access control (mac) address and a uniform resource locator (url).   draw a line to connect each term to the correct example.  term example ip address 192.168.0.255  mac address https:// www.cambridgeinternational.org url 00:15:e9:2b:99:3c   [2]",
            "5": "5 0478/12/ f/m/21 \u00a9 ucles 2021 [turn over  (c) users can buy the high definition photographs from the website. when a user buys a high  definition photograph, a secure socket layer (ssl) connection is created.   (i) give one benefit of using an ssl connection.   ...  .  [1]   (ii) explain how the ssl connection is created.   ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "6": "6 0478/12/ f/m/21 \u00a9 ucles 2021 3 the given table shows the name or description of four devices. the table is incomplete.     complete the missing device names and descriptions.  device name description ... uses either thermal bubble or piezoelectric technology actuator... ... ... ... ...uses thousands of tiny mirrors that can move very quickly to  create an image mouse... ... ... ...  [4]",
            "7": "7 0478/12/ f/m/21 \u00a9 ucles 2021 [turn over 4 a supermarket sells many products. each product has a barcode.  (a) explain how the barcode is read at the supermarket checkout and how the price of the product  is found.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]  (b) the supermarket stores data using a solid state drive (ssd).   (i) explain how an ssd stores data.  ...  ...  ...  ...  ...  .  [3]   (ii) one advantage of an ssd rather than a hard disk drive (hdd) is that it has no moving  parts, so it is more durable.    state one other advantage of the supermarket using ssd rather than hdd.  ...  .  [1]",
            "8": "8 0478/12/ f/m/21 \u00a9 ucles 2021 5 computers use logic gates.  (a) state the single  logic gate that produces each truth table.  truth table logic gate a b output 0 0 1 0 1 1 1 0 1 1 1 0... a b output 0 0 0 0 1 1 1 0 1 1 1 0... a b output 0 0 1 0 1 0 1 0 0 1 1 0...  [3]  (b) an aeroplane has a warning system that monitors the height of the aeroplane above the  ground, whether the aeroplane is ascending or descending, and the speed of the aeroplane.  input binary value condition height (h)1 height is less than 500 metres 0 height is greater than or equal to 500 metres ascending or  descending (a)1 aeroplane is ascending or in level flight 0 aeroplane is descending speed (s)1 speed is less than or equal to 470 knots 0 speed is greater than 470 knots",
            "9": "9 0478/12/ f/m/21 \u00a9 ucles 2021 [turn over   the warning system will produce an output of 1 that will sound an alarm (w) when either of  these conditions apply:  height is less than 500 metres and the aeroplane is descending or the aeroplane is descending and speed is greater than 470 knots   draw a logic circuit to represent the warning system.  w ah s  [5]",
            "10": "10 0478/12/ f/m/21 \u00a9 ucles 2021 6 hacking is one type of internet risk used to obtain personal data that is stored on a computer.  (a) explain how a firewall can help prevent hacking.   ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) identify and describe two other types of internet risk that are used to obtain personal data.  internet risk 1   description    ...  ...  ... internet risk 2   description    ...  ...  ...  [6]",
            "11": "11 0478/12/ f/m/21 \u00a9 ucles 2021 [turn over 7 adeel has used a high-level language to program a mobile application.  (a) describe what is meant by a high-level language.   ...  ...  ...  .  [2]  (b) adeel uses an interpreter while developing and testing the application.    adeel uses a compiler when the application is ready to be shared with others.    compare the features of interpreters and compilers.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (c) adeel is considering distributing his application as free software or shareware.   explain the difference between free software and shareware.   ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "12": "12 0478/12/ f/m/21 \u00a9 ucles 2021  (d) adeel is concerned about his application being plagiarised.   define the term plagiarism.  ...  .  [1]  (e) adeel copyrights his application.   state why adeel copyrights his application.    ...  .  [1]",
            "13": "13 0478/12/ f/m/21 \u00a9 ucles 2021 8 the von neumann model, for a computer system, uses the stored program concept.   (a) describe what is meant by the stored program concept.   ...  ...  ...  .  [2]  (b) the fetch-execute cycle of a von neumann model, for a computer system, uses registers and  buses.    (i) describe the role of the program counter.  ...  ...  ...  .  [2]   (ii) describe the role of the control bus.    ...  ...  ...  .  [2]  (c) computers based on the von neumann model, for a computer system, use interrupts.    explain why interrupts are needed.  ...  ...  ...  .  [2]",
            "14": "14 0478/12/ f/m/21 \u00a9 ucles 2021 blank page",
            "15": "15 0478/12/ f/m/21 \u00a9 ucles 2021 blank page",
            "16": "16 0478/12/ f/m/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_m21_qp_22.pdf": {
            "1": "this document has 2 pages. cambridge igcse\u2122 dc (ce) 202749/1 \u00a9 ucles 2021  [turn over *5921674856*computer science  0478/22 paper 2 problem-solving and programming  february/march  2021 pre-release material no additional materials are needed. this material should be given to the relevant teachers and candidates as soon as it has been  received at the centre. instructions  \u25cf you should use this material in preparation for the examination.  \u25cf you should attempt the practical programming tasks using your chosen high-level, procedural  programming language.",
            "2": "2 0478/22/pre/ f/m/21 \u00a9 ucles 2021 your preparation for the examination should include attempting the following practical tasks by writing  and testing a program or programs . a program is needed for a quiz to help younger students to practise their multiplication tables. there  needs to be two ways of using the quiz; testing and learning. testing: the student is given one attempt at answering each question and the score is calculated for  the whole test. learning: the student is given up to three  attempts to get their answer to each question correct. there  is no scoring. a student can choose which multiplication table, from 2 to 12, to use for the quiz. there are five  questions in each quiz, each question must use the chosen multiplication table and a different whole  number (from 1 to 12) as the multiplier. write and test a program or programs for a multiplication tables quiz. \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 testing a student students enter their name and choice of multiplication table. each question is displayed on the screen  one at a time, for example: question 1 2 x 7 =  students enter their answer and move on to the next question. a running total of correct answers  (score) is kept.  at the end of the quiz the student\u2019s name and score are displayed with a personalised  message related to the score, for example: aarav your score is 5/5 well done full marks    diya  your score is 3/5 have another practice task 2  \u2013 student learning students enter their name and choice of multiplication table. each question is displayed on the screen  as in task 1 . if an answer is correct, a personalised message containing the student\u2019s name confirms  this, the quiz then moves to the next question. if an answer is incorrect, a personalised message  containing the student\u2019s name and a hint is displayed, for example: aarav your answer is too large up to three attempts are offered to get each answer correct. after the third incorrect attempt, the correct  answer is displayed and the quiz moves on to the next question. task 3  \u2013 varying the quiz modify task 1  to allow students to choose how many questions they would like in the test and if they  would like a \u2018mixed\u2019 set of questions. a \u2018mixed\u2019 set means that each question can be from a different  multiplication table; from 2 to 12. permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge."
        },
        "0478_s21_qp_11.pdf": {
            "1": "this document has 16 pages. any blank pages are indicated. cambridge igcse\u2122 dc (lk/sg) 202678/4 \u00a9 ucles 2021  [turn overcomputer science  0478/11 paper 1 theory  may/june  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *3051991395*",
            "2": "2 0478/11/m/j/21 \u00a9 ucles 2021 1 benedict has a computer that is assigned an internet protocol (ip) address. the ip address is: 198.167.214.0  the ip address is represented as denary values.  (a) convert the denary values 167 and 214 from the ip address to 8-bit binary. 167 214   working space  ...  ...  ...  ...  [2]  (b) benedict\u2019s computer is also assigned a media access control (mac) address.   (i) identify one similarity between an ip address and a mac address.  ...  .  [1]   (ii) identify two differences between an ip address and a mac address. difference 1  ...  ...  ... difference 2  ...  ...  ...  [2]",
            "3": "3 0478/11/m/j/21 \u00a9 ucles 2021 [turn over 2 julia inputs personal data into her computer.  she stores three copies of the data using a hard disk drive (hdd), a solid state drive (ssd) and a  usb flash memory drive.  (a) identify three  devices julia can use to input personal data into her computer. device 1   device 2   device 3    [3]  (b) six statements are shown about hdds, ssds and usb flash memory drives.   tick (\u2713) to show which statements apply to each type of storage. some statements can apply  to more than one type of storage. statementhdd (\u2713)ssd (\u2713)usb flash  memory  drive (\u2713) it has no moving parts it is non-volatile it can use nand gates to store data it uses magnetic properties to store data it has the smallest physical size it has the slowest read/write speeds   [6]",
            "4": "4 0478/11/m/j/21 \u00a9 ucles 2021  (c) julia uses a usb connection to transfer data onto her usb flash memory drive.   (i) one benefit of using a usb connection is that it is a universal connection.    state two other benefits of using a usb connection. benefit 1    ... benefit 2    ...  [2]   (ii) identify the type of data transmission used in a usb connection.  .  [1]",
            "5": "5 0478/11/m/j/21 \u00a9 ucles 2021 [turn over 3 a firewall can be used to help keep the data secure that is stored on a computer.  (a) the given paragraph describes how the firewall operates to help keep the data secure.   complete the paragraph using the most appropriate terms from the given list. not all of the  terms on the list need to be used. \u2022 accept \u2022 criteria \u2022 hacking \u2022 input \u2022 network \u2022 outgoing \u2022 output \u2022 processor \u2022 reject \u2022 software \u2022 store \u2022 storage   a firewall can be  or hardware based. it monitors traffic between     the computer and the  the user sets      for the traffic. the firewall will .. or      the traffic based on this. it can help prevent  and malicious     software that could be a threat to the security of the data.  [6]  (b) identify three  other methods that could be used to keep the data secure. method 1  ... method 2  ... method 3  ...  [3]",
            "6": "6 0478/11/m/j/21 \u00a9 ucles 2021 4 two internet risks are phishing and pharming.  describe what is meant by phishing and pharming. phishing  ...  ..  ..  ..  ..  .. pharming  ..  ..  ..  ..  ..  ..  [6]",
            "7": "7 0478/11/m/j/21 \u00a9 ucles 2021 [turn over 5 jamelia has a greenhouse that she uses to grow fruit and vegetables. she needs to make sure  the temperature in the greenhouse stays between 25  \u00b0c and 30  \u00b0c (inclusive).  a system that has a temperature sensor and a microprocessor is used to maintain the temperature  in the greenhouse. the system will: \u2022 open a window and turn a heater off if it gets too hot \u2022 close a window and turn a heater on if it gets too cold.  describe how the system uses the temperature sensor and the microprocessor to maintain the  temperature in the greenhouse.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..    [8]",
            "8": "8 0478/11/m/j/21 \u00a9 ucles 2021 6 consider the logic statement: x = ((( a and b) or ( c and not b)) xor not c)  (a) draw a logic circuit to represent the given logic statement.    do not attempt to simplify the statement. all logic gates must have a maximum of two inputs. x ba c  [6]",
            "9": "9 0478/11/m/j/21 \u00a9 ucles 2021 [turn over  (b) consider the completed truth table for the given logic statement. row  numbera b cworking spacex 1 0 0 0 0 2 0 0 1 1 3 0 1 0 0 4 0 1 1 1 5 1 0 0 0 6 1 0 1 1 7 1 1 0 0 8 1 1 1 1   there are four errors in the truth table in the output (x) column.   identify the four incorrect outputs.   write the row number to identify each incorrect output.   row    row    row    row   [4]",
            "10": "10 0478/11/m/j/21 \u00a9 ucles 2021 7 a music company has a website that allows users to stream music. the music is stored in sound  files.  (a) the sound files are compressed using lossless compression.   (i) describe how the sound files are compressed using lossless compression.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]   (ii) state one reason why the music company would compress the sound files using  lossless, rather than lossy, compression.  ...  .  [1]   (iii) give one benefit, to the user, of the music company compressing the sound files.  ...  .  [1]   (iv) give one drawback of the music company using lossless, rather than lossy, compression  for the sound files.  ...  .  [2]",
            "11": "11 0478/11/m/j/21 \u00a9 ucles 2021 [turn over  (b) describe how the web pages for the website are requested and displayed on a user\u2019s  computer.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (c) the web server that hosts the website suffers a denial of service (dos) attack.   explain why this will prevent users from accessing the website.  ...  ...  ...  .  [2]",
            "12": "12 0478/11/m/j/21 \u00a9 ucles 2021 8 four 7-bit binary values are transmitted from one computer to another. a parity bit is added to  each binary value creating 8-bit binary values. all the binary values are transmitted and received  correctly.  (a) identify whether each 8-bit binary value has been sent using odd or even parity by writing odd  or even in the type of parity column. 8-bit binary value type of parity 01100100 10010001 00000011 10110010  [4]  (b) an error may not be detected when using a parity check.   identify why an error may not be detected.  ...  .  [1]  (c) the data is sent using parallel half-duplex data transmission.   (i) describe how data is sent using parallel half-duplex data transmission.  ...  ...  ...  ...  ...  ...  ...  .  [4]   (ii) state two drawbacks of using parallel data transmission. drawback 1  ...  ... drawback 2  ...  ...  [2]",
            "13": "13 0478/11/m/j/21 \u00a9 ucles 2021 blank page",
            "14": "14 0478/11/m/j/21 \u00a9 ucles 2021 blank page",
            "15": "15 0478/11/m/j/21 \u00a9 ucles 2021 blank page",
            "16": "16 0478/11/m/j/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s21_qp_12.pdf": {
            "1": "this document has 12 pages. any blank pages are indicated. cambridge igcse\u2122 dc (dh/sg) 202677/4 \u00a9 ucles 2021  [turn over *1875991136* computer science  0478/12 paper 1 theory  may/june  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/12/ m/j/21 \u00a9 ucles 2021 1 a denary value can be converted into hexadecimal and binary.  (a) complete the table to show the hexadecimal and 8-bit binary values of the given denary  values. denary hexadecimal  8-bit binary 49 123 200  [6]   working space  ...  ...  ...  ...  ...  (b) give two benefits, to users, of converting binary values to hexadecimal. benefit 1    ... benefit 2    ...  [2]  (c) hexadecimal is used to represent hypertext markup language (html) colour codes in  computer science.   identify three  other ways that hexadecimal is used in computer science. 1   2   3    [3]",
            "3": "3 0478/12/ m/j/21 \u00a9 ucles 2021 [turn over 2 data storage can be magnetic, solid state or optical.  (a) six statements are given about data storage.   tick (3) to show if the statement applies to magnetic, solid state or optical storage. some  statements may apply to more than one type of storage. statementmagnetic (3)solid  state (3)optical (3) no moving parts are used to store data pits and lands are used to store data data is stored on platters flash memory is used to store data parts are rotated to store data data can be stored permanently  [6]  (b) (i) give one example of magnetic storage.  .  [1]   (ii) give one example of optical storage.  .  [1]   (iii) identify which type of storage would be the most suitable for use in a web server and  justify your choice. type of storage  .. justification    ...  ...  ...  [3]  (c) describe the operation of usb flash memory and how it stores data.  ...  ...  ...  ...  ...  .  [3]",
            "4": "4 0478/12/ m/j/21 \u00a9 ucles 2021 3 consider the logic statement: x = ((((not a and b) or c) and b) nor ( b or c))  (a) draw a logic circuit to represent the given logic statement.   do not attempt to simplify the statement. all logic gates must have a maximum of two inputs. x ba c  [6]",
            "5": "5 0478/12/ m/j/21 \u00a9 ucles 2021 [turn over  (b) consider the completed truth table for the given logic statement. row   numbera b cworking spacex 1 0 0 0 1 2 0 0 1 1 3 0 1 0 1 4 0 1 1 0 5 1 0 0 1 6 1 0 1 0 7 1 1 0 1 8 1 1 1 1   there are four errors in the truth table in the output (x) column.   identify the four incorrect outputs.   write the row number to identify each incorrect output.   row ...   row ...   row ...   row ...  [4]",
            "6": "6 0478/12/ m/j/21 \u00a9 ucles 2021 4 three types of internet security risk are virus, spyware and denial of service (dos) attack.  (a) six statements are given about internet security risks.   tick (3) to show whether the statement applies to virus, spyware or denial of service. some  statements may apply to more than one internet security risk. statement virus (3)spyware (3)denial  of  service (3) captures all data entered using a keyboard can be installed onto a web server prevents access to a website is malicious code on a computer is self-replicating damages the files on a user\u2019s hard drive  [6]  (b) identify three  other types of internet security risks. 1   2   3    [3]  (c) some internet security risks can maliciously damage data. data can also be damaged  accidentally.   state three  ways that data could be accidentally damaged. 1   2   3    [3]",
            "7": "7 0478/12/ m/j/21 \u00a9 ucles 2021 [turn over 5 a security light system is used by a factory. the light only comes on when it is dark and when  movement is detected. the light will stay on for 1 minute before switching off.  sensors and a microprocessor are used to control the security light system.  (a) identify two sensors that would be used in the security light system. sensor 1  ... sensor 2  ...  [2]  (b) describe how the sensors and the microprocessor control the security light system.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [8]",
            "8": "8 0478/12/ m/j/21 \u00a9 ucles 2021 6 cookies can be used to store a user\u2019s personal data and online browsing habits.  (a) a cookie could be used to automatically enter a user\u2019s payment details when the user makes  a purchase online.   describe how cookies can be used to store and automatically enter a user\u2019s payment details.  ...  ...  ...  ...  ...  .  [3]  (b) explain why a user may be concerned about their personal data and online browsing habits  being stored in cookies.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "9": "9 0478/12/ m/j/21 \u00a9 ucles 2021 7 jolene uses html to create a website. she separates the html into structure and presentation.  (a) (i) give one example of html structure.  .  [1]   (ii) give two examples of html presentation. 1   2    [2]  (b) explain why jolene separates the html into structure and presentation.  ...  ...  ...  .  [2] 8 a keyboard is a type of input device that can be used to enter data into a computer.  complete the paragraph that describes one method of operation for a keyboard, using the most  appropriate terms from the given list. not all terms in the list need to be used. \u2022 binary \u2022 breaks \u2022 calculated \u2022 character \u2022 circuit \u2022 current \u2022 information \u2022 network \u2022 press \u2022 processor \u2022 signal \u2022 switch  a keyboard has a key matrix underneath the keys. when a key is pressed, it presses a  . that completes a . . this allows  . to flow. the location of the key pressed is   . . the location of the key pressed is compared to a  . map to find the . value for the key that  has been pressed.  [6]",
            "10": "10 0478/12/ m/j/21 \u00a9 ucles 2021 blank page",
            "11": "11 0478/12/ m/j/21 \u00a9 ucles 2021 blank page",
            "12": "12 0478/12/ m/j/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s21_qp_13.pdf": {
            "1": "this document has 16 pages. any blank pages are indicated. cambridge igcse\u2122 dc (dh/sg) 202681/5 \u00a9 ucles 2021  [turn over *3088777224* computer science  0478/13 paper 1 theory  may/june  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/13/ m/j/21 \u00a9 ucles 2021 1 greta has a computer that she uses for schoolwork and leisure.  (a) the computer has the media access control (mac) address: 00:a0:c9:14:c8:29   (i) tick (3) to show whether the mac address is initially assigned to the computer by the  network, the manufacturer or the user.       tick (3)     network       manufacturer       user    [1]   (ii) the values in the mac address are hexadecimal values.    convert the three  given hexadecimal values into 8-bit binary. 14  .. a0  .. c9  ..  [3]    working space  ...  ...  ...   (iii) convert the two given hexadecimal values into denary. 29  .. c8  ..  [2]    working space  ...  ...  ...",
            "3": "3 0478/13/ m/j/21 \u00a9 ucles 2021 [turn over  (b) greta stores data on several off-line storage devices, including an external hard disk drive  (hdd), a usb flash memory drive and a compact disc (cd).   (i) identify the type of storage for each device. external hdd   usb flash memory drive  ... cd  .  [3]   (ii) describe the operation of a hdd and how it stores data.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "4": "4 0478/13/ m/j/21 \u00a9 ucles 2021 2 jolene displays videos on her website. she uses lossy compression to reduce the file size of the  videos.  (a) describe how lossy compression reduces the file size of the videos.  ...  ...  ...  ...  ...  .  [3]  (b) state two reasons why jolene would use lossy rather than lossless compression for the  videos. reason 1  ..  ... reason 2  ..  ...  [2]",
            "5": "5 0478/13/ m/j/21 \u00a9 ucles 2021 [turn over 3 an optical mouse is a type of input device that can be used to input data into a computer system.  (a) complete the paragraph about the operation of an optical mouse, using the most appropriate  terms from the given list. not all terms need to be used. \u2022 ball \u2022 battery \u2022 lcd \u2022 led \u2022 lens \u2022 magnifies \u2022 matrix \u2022 microswitch \u2022 photoelectric \u2022 photographic \u2022 reduces \u2022 usb   an optical mouse shines an  from the bottom of the mouse onto a  surface. light bounces straight back from the surface into a  cell.  this has a  that  the reflected light to    allow detection of smaller movements. when a button on the mouse is clicked, a   is pressed. a  connection is used to  carry the data to the computer.  [6]  (b) identify two other input devices that can be used to enter data into a computer. 1   2    [2]",
            "6": "6 0478/13/ m/j/21 \u00a9 ucles 2021 4 spencer finds out that his online music account has been accessed by an unauthorised person.  he believes his personal details for the account were obtained using phishing.  (a) explain how the personal details could have been obtained using phishing.  ...  ...  ...  ...  ...  .  [3]  (b) give two other internet security risks that could have been used to obtain the personal  details. 1   2    [2]",
            "7": "7 0478/13/ m/j/21 \u00a9 ucles 2021 [turn over 5 six statements are given about programming languages.  tick (3) to show whether each statement applies to high-level language, assembly language or  machine code. some statements may apply to more than one type of programming language. statementhigh-level  language (3)assembly  language (3)machine  code (3) it requires a translator to be processed by a  computer it is an example of low-level language it uses mnemonics it uses english-like statements it can be used to directly manipulate hardware in  the computer it is portable  [6]",
            "8": "8 0478/13/ m/j/21 \u00a9 ucles 2021 6 four 7-bit binary values are transmitted from one computer to another. a parity bit is added to  each binary value creating 8-bit binary values. all the binary values are transmitted and received  correctly.  (a) identify whether each 8-bit binary value has been sent using odd or even parity by writing odd  or even in the type of parity  column. 8-bit binary value type of parity 01111100 10010000 10011001 00101001  [4]  (b) the 8-bit binary value 10110001 is transmitted and received as 10110010   a parity check does not identify any errors in the binary value received.   state why the parity check does not identify any errors.  ...  .  [1]  (c) the data is sent using serial duplex data transmission.   (i) describe how data is sent using serial duplex data transmission.  ...  ...  ...  ...  ...  ...  ...  .  [4]   (ii) state one drawback of using serial data transmission, rather than parallel data  transmission.  ...  .  [1]",
            "9": "9 0478/13/ m/j/21 \u00a9 ucles 2021 [turn over 7 marco uses his computer for work. the data he uses on a daily basis is valuable to his business.  marco is concerned about his data being accidentally damaged. human error, such as incorrectly  removing external storage devices, is one way that the data can be accidentally damaged.  (a) identify two other ways that data can be accidentally damaged. 1   2    [2]  (b) removing storage devices correctly from the computer can help prevent data being  accidentally damaged.   give two other ways that accidental damage to data can be prevented. 1    ... 2    ...  [2]",
            "10": "10 0478/13/ m/j/21 \u00a9 ucles 2021 8 consider the following logic circuit: a b cx  (a) two not  gates are used in the given logic circuit.   identify three  other logic gates that are used in the given logic circuit. 1   2   3    [3]",
            "11": "11 0478/13/ m/j/21 \u00a9 ucles 2021 [turn over  (b) consider the completed truth table for the given logic circuit. row  numbera b cworking spacex 1 0 0 0 0 2 0 0 1 1 3 0 1 0 0 4 0 1 1 0 5 1 0 0 1 6 1 0 1 1 7 1 1 0 0 8 1 1 1 1   there are four errors in the truth table in the output (x) column.   identify the four incorrect outputs.   write the row number to identify each incorrect output.   row ...   row ...   row ...   row ...  [4]",
            "12": "12 0478/13/ m/j/21 \u00a9 ucles 2021 9 an underground car park has a system that checks the height of vehicles. a vehicle can be no  higher than 1.8 metres to enter the car park.  the system also counts the number of vehicles that have entered the car park, so that it can  display how many parking spaces are still available.  each parking space has a red and a green light above it. if a car is parked in the parking space  only the red light is on, otherwise only the green light is on.  sensors and a microprocessor are used to control the system.  (a) complete the table to identify a suitable sensor for each part of the system. task sensor check if a vehicle is too high count the vehicles entering the car park check if a vehicle is parked in a parking space  [3]  (b) describe how the sensor and the microprocessor are used to display the red or green light  above the parking space.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "13": "13 0478/13/ m/j/21 \u00a9 ucles 2021 10 several components are involved in processing an instruction in a von neumann model for a  computer system.  three of these components are the arithmetic logic unit (alu), control unit (cu) and random  access memory (ram).  (a) six statements are given about the components.   tick (3) to show if each statement applies to the alu, cu or the ram. some statements may  apply to more than one component. statementalu (3)cu (3)ram (3) stores data and instructions before they enter the central  processing unit (cpu) contains a register called the accumulator manages the transmission of data and instructions to the  correct components contained within the cpu uses the data bus to send data into or out of the cpu carries out calculations on data  [6]  (b) the accumulator is a register that is part of the von neumann model.   give two other registers that are part of the von neumann model. 1   2    [2]",
            "14": "14 0478/13/ m/j/21 \u00a9 ucles 2021 blank page",
            "15": "15 0478/13/ m/j/21 \u00a9 ucles 2021 blank page",
            "16": "16 0478/13/ m/j/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s21_qp_21.pdf": {
            "1": "this document has 16 pages. any blank pages are indicated. cambridge igcse\u2122computer science  0478/21 paper 2 problem-solving and programming  may/june  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3 in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *8129320638* dc (cj/ar) 202720/2 \u00a9 ucles 2021  [turn over",
            "2": "2 0478/21/ m/j/21 \u00a9 ucles 2021 section a  you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a system is required to record and count votes for candidates in school council elections. the voting  system will allow for one representative to be elected from a tutor group. the school has between  28 and 35 students in each tutor group, five year groups named year 7 to year 11, and there are six  tutor groups in each year group. tutor group names are their year group followed by a single letter  e.g. 7a, 7b, etc. all students are allowed to vote in the system. each student may only vote once for a representative  from their tutor group in the election. write and test a program or programs for the voting system.  \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 setting up the voting system to allow a tutor group to elect a representative. write a program to: \u2022 allow the tutor to enter the name of the tutor group \u2022 allow the tutor to enter the number of students in the tutor group \u2022 allow the tutor to enter the number of candidates in the election; maximum of four candidates \u2022 allow the tutor to enter the names of the candidates and store them in a suitable data structure \u2022 allow each student to input their vote or to abstain \u2022 count the votes for each candidate and student abstentions. when all students have voted, display the name of the tutor group, the votes for each candidate  and the name of the candidate who has won the election. if there is a tie for first place, display all  candidates with the equal highest number of votes. task 2  \u2013 checking that students only vote once. each student is given a unique voter number by their teacher. extend task 1  to achieve the following: \u2022 allow students to enter their unique voter number before casting their vote. \u2022 check whether the student has already voted:  \u2013if so, supply a suitable message and do not allow them to vote.  \u2013if not, store the unique voter number, but not their vote, in a suitable data structure, and  add their vote to the relevant candidate count or abstention. task 3  \u2013 showing statistics and dealing with a tie. extend task 2  to achieve the following: \u2022 calculate the percentage of the votes that each candidate received from the number of votes  cast, excluding abstentions. \u2022 display the name of each candidate, the number of votes and the percentage of votes they  received from the number of votes cast, excluding abstentions. \u2022 display the total number of votes cast in the election and the number of abstentions.  \u2022 in the event of a tie, allow the election to be immediately run again, with only the tied candidates  as candidates, and all the students from the tutor group voting again.",
            "3": "3 0478/21/ m/j/21 \u00a9 ucles 2021 [turn over 1 (a) all variables, constants and other identifiers must have meaningful names.   (i) identify one constant you could have used for  task 1 , give the value that would be  assigned to it and its use. constant   value  . use    ...  ...  [3]   (ii) identify one variable and one array you could have used for task 1 .     explain the use of each one. variable  . use    ...  ... array  .. use    ...  ...  [4]  (b) explain how you should change your program in task 1  to allow a tutor to enter up to eight  candidates for the election.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "4": "4 0478/21/ m/j/21 \u00a9 ucles 2021  (c) write an algorithm using pseudocode, programming statements or a flowchart to show how  your program completes these parts of task 2 : \u2022 allows students to enter their unique voter number before casting their vote. \u2022 checks whether the student has already voted:  \u2013if so, supplies a suitable message and does not allow them to vote.  \u2013if not, stores the unique voter number, but not their vote, in a suitable data structure.   it is not necessary to show parts completed in  task 1 , including counting of votes for each  candidate.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/ m/j/21 \u00a9 ucles 2021 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "6": "6 0478/21/ m/j/21 \u00a9 ucles 2021  (d) explain how your program completes these parts of task 3 : \u2022 calculate the percentage of the votes that each candidate received from the number of  votes cast, excluding abstentions. \u2022 display the name of each candidate, the number of votes and the percentage of votes  they received from the number of votes cast, excluding abstentions. \u2022 display the total number of votes cast in the election and the number of abstentions.    any programming statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/21/ m/j/21 \u00a9 ucles 2021 [turn over section b 2 tick (\u00fc) one box in each row to identify if the statement is about validation , verification  or both . statementvalidation   (\u00fc)verification   (\u00fc)both   (\u00fc) entering the data twice to check if both entries are  the same. automatically checking that only numeric data has  been entered. checking data entered into a computer system  before it is stored or processed. visually checking that no errors have been  introduced during data entry.  [3] 3 name and describe the most appropriate programming data type for each of the examples of data  given. each data type must be different.  data: 37 data type name   data type description  ...  ..  ..  data: cambridge2021 data type name   data type description  ...  ..  ..  data: 47.86 data type name   data type description  ...  ..  ..  [6]",
            "8": "8 0478/21/ m/j/21 \u00a9 ucles 2021 4 the pseudocode algorithm shown has been written by a teacher to enter marks for the students in  her class and then to apply some simple processing.   count \u2190 0   repeat      input score[count]     if score[count] >= 70       then         grade[count] \u2190 \"a\"       else         if score[count] >= 60           then             grade[count] \u2190 \"b\"           else             if score[count] >= 50               then                 grade[count] \u2190 \"c\"               else                 if score[count] >= 40                   then                     grade[count] \u2190 \"d\"                   else                     if score[count] >= 30                       then                         grade[count] \u2190 \"e\"                       else                         grade[count] \u2190 \"f\"                     endif                 endif             endif         endif      endif     count \u2190 count + 1   until count = 30  (a) describe what happens in this algorithm.  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "9": "9 0478/21/ m/j/21 \u00a9 ucles 2021 [turn over  (b)  write the pseudocode to output the contents of the arrays score[]  and grade[]  along with  suitable messages.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]  (c) describe how you could change the algorithm to allow teachers to use it with any size of  class.  ...  ...  ...  ...  ...  ...  .  [3]",
            "10": "10 0478/21/ m/j/21 \u00a9 ucles 2021 5 the flowchart represents an algorithm.  the algorithm will terminate if \u20131 is entered. start input value end output \"accept: normal \" output \"accept: extreme\"diff1   100 \u2013 value diff2   value \u2013 50 nois diff1 < 1 or diff2 < 1  ?is value = \u20131 ? output \"reject: abnormal \" nonoyes yes yesis value >= 50 and value <= 100  ?",
            "11": "11 0478/21/ m/j/21 \u00a9 ucles 2021 [turn over  (a) complete the trace table for the input data:   50, 75, 99, 28, 82, 150, \u20131, 672, 80   value diff1 diff2 output  [4]  (b) describe the purpose of the algorithm.  ...  ...  ...  .  [2]",
            "12": "12 0478/21/ m/j/21 \u00a9 ucles 2021 6 a library uses a database table, genre, to keep a record of the number of books it has in each  genre. id genrename total available loaned overdue abi autobiography 500 250 250 20 bio biography 650 400 250 0 edu education 20200 10000 10200 1250 fan fantasy 1575 500 1075 13 gfi general fiction 35253 23520 11733 0 gnf general non-fiction 25200 12020 13180 0 hfi historical fiction 6300 3500 2800 0 hnf historical non-fiction 8000 1523 6477 0 hum humour 13500 9580 3920 46 mys mystery 26000 13269 12731 0 pfi political fiction 23561 10523 13038 500 pnf political non-fiction 1823 750 1073 23 ref reference 374 374 0 0 rom romance 18269 16800 1469 0 sat satirical 23567 12500 11067 0 scf science fiction 36025 25000 11025 0 spo sport 45720 32687 13033 3256 thr thriller 86000 46859 39141 0  (a) state the reason id could be used as a primary key in the table genre.  ...  .  [1]  (b) state the number of records in the table genre.  ...  .  [1]",
            "13": "13 0478/21/ m/j/21 \u00a9 ucles 2021  (c) complete the query-by-example grid to display any genres with overdue books. only display  the id, genrename and overdue fields in order of the number of books overdue from largest  to smallest. field: table: sort: show: criteria: or:  [4]",
            "14": "14 0478/21/ m/j/21 \u00a9 ucles 2021 blank page",
            "15": "15 0478/21/ m/j/21 \u00a9 ucles 2021 blank page",
            "16": "16 0478/21/ m/j/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s21_qp_22.pdf": {
            "1": "this document has 16 pages. any blank pages are indicated. cambridge igcse\u2122computer science  0478/22 paper 2 problem-solving and programming  may/june  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *0337186959* dc (lk) 202758/1 \u00a9 ucles 2021  [turn over",
            "2": "2 0478/22/ m/j/21 \u00a9 ucles 2021 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material an electric mountain railway makes four return trips every day. in each trip the train goes up the  mountain and back down. the train leaves from the foot of the mountain at 09:00, 11:00, 13:00 and  15:00. the train returns from the top of the mountain at 10:00, 12:00, 14:00 and 16:00. each train  has six coaches with eighty seats available in each coach. passengers can only purchase a return  ticket; all tickets must be purchased on the day of travel. the cost is $25 for the journey up and  $25 for the journey down. groups of between ten and eighty passengers inclusive get a free ticket  for every tenth passenger, provided they all travel together (every tenth passenger travels free).   passengers must book their return train journey, as well as the departure train journey, when they  purchase their ticket. passengers can return on the next train down the mountain or a later train.  the last train from the top of the mountain has two extra coaches on it. the train times are displayed on a large screen, together with the number of tickets still available  for each train. every time a ticket is booked the display is updated. when a train is full, the word  \u2018closed\u2019 is displayed instead of the number of tickets available. write and test a program or programs for the electric mountain railway.  \u2022 your program or programs must include appropriate prompts for the entry of data; data must  be validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 start of the day. write a program to set up the screen display for the start of the day. initialise suitable data structure(s)  to total passengers for each train journey and total the money taken for each train journey. each  train journey must be totalled separately. there are four journeys up and four journeys down every  day.  task 2  \u2013 purchasing tickets. tickets can be purchased for a single passenger or a group. when making a purchase, check  that the number of tickets for the required train journeys up and down the mountain is available. if  the tickets are available, calculate the total price including any group discount. update the screen  display and the data for the totals.  task 3  \u2013 end of the day. display the number of passengers that travelled on each train journey and the total money taken  for each train journey. calculate and display the total number of passengers and the total amount  of money taken for the day. find and display the train journey with the most passengers that day.",
            "3": "3 0478/22/ m/j/21 \u00a9 ucles 2021 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) identify and give the data type and use of one array that you could have used for task 1 . array  . data type  .. use  ...  [3]  (b) describe two validation checks that could be used when inputting the number of tickets to  buy for task 2 . for each validation check give one example of normal data and one example  of erroneous data. validation check 1  .  ...  ... normal data  .. erroneous data  . validation check 2  .  ...  ... normal data  .. erroneous data  .    [6]",
            "4": "4 0478/22/ m/j/21 \u00a9 ucles 2021  (c) write an algorithm for the part of task 2  that inputs the tickets required, calculates the total  price for the ticket(s) purchased by a passenger including a group discount (if applicable) and  updates the data structures used for the totals.   use either  pseudocode, programming statements or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/ m/j/21 \u00a9 ucles 2021 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/22/ m/j/21 \u00a9 ucles 2021  (d) explain how your program completed task 3 . include any programming statements that you  have used and fully explain the purpose of each statement.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "7": "7 0478/22/ m/j/21 \u00a9 ucles 2021 [turn over section b starts on page 8",
            "8": "8 0478/22/ m/j/21 \u00a9 ucles 2021 section b 2 (a) write an algorithm in pseudocode to input 500 positive whole numbers. each number input  must be less than 1000. find and output the largest number input, the smallest number input  and the range (difference between the largest number and smallest number).   ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "9": "9 0478/22/ m/j/21 \u00a9 ucles 2021 [turn over  (b) describe how the algorithm could be changed to make testing less time-consuming.  ...  ...  ...  .  [2] 3 (a) draw the most appropriate flowchart symbol for each pseudocode statement. pseudocode statement flowchart symbol if number = 20 print number number \u2190 number + 1  [3]  (b) state the type of each pseudocode statement. for example, x \u2190 x + y  is totalling. if number = 20   ... print number    number \u2190 number + 1   ..  [3]",
            "10": "10 0478/22/ m/j/21 \u00a9 ucles 2021 4 this algorithm checks passwords. \u2022 each password must be 8 or more characters in length; the predefined function length   returns the number of characters. \u2022 each password is entered twice, and the two entries must match. \u2022 either accept  or reject  is output. \u2022 an input of 999 stops the process.     repeat       output \"please enter password\"       input password       if length(password) >= 8         then           input passwordrepeat           if password <> passwordrepeat             then                output \"reject\"             else               output \"accept\"           endif         else            output \"reject\"       endif     until password = 999  (a) complete the trace table for the algorithm using this input data:    secret, secret, verysecret, verysecret, pa55word, pa55word, 999, 888  password passwordrepeat output  [3]",
            "11": "11 0478/22/ m/j/21 \u00a9 ucles 2021 [turn over  (b) explain how the algorithm could be extended to allow three attempts at inputting the matching  password. any pseudocode statements used in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...     [4] 5 a one-dimensional array dataarray[1:20]  needs each element set to zero.  (a) write a pseudocode routine that sets each element to zero. use the most suitable loop  structure.  ...  ...  ...  ...  ...  ...  ...  .  [3]  (b) explain why you chose this loop structure.  ...  .  [1]",
            "12": "12 0478/22/ m/j/21 \u00a9 ucles 2021 6 a database table, plant, is used to keep a record of plants sold by a nursery. the table has these  fields: \u2022 name \u2013 name of plant \u2022 flower \u2013 whether the plant flowers (true) or not (false) \u2022 position \u2013 shade, partial shade or sun \u2022 size \u2013 small, medium or large \u2022 price \u2013 price in $ \u2022 numbersold \u2013 how many sold  a query-by-example grid has been completed to display only the price, name and number sold of  small plants that do not flower. field: name price numbersold size flower position table: plant sort: show: 3 3 3 criteria: = \"shade\" or:   identify the errors in the query-by-example grid.  ...  ...  ...  ...  ...  ...   rewrite the corrected query-by-example grid. field: table: sort: show: criteria: or:  [5]",
            "13": "13 0478/22/ m/j/21 \u00a9 ucles 2021 blank page",
            "14": "14 0478/22/ m/j/21 \u00a9 ucles 2021 blank page",
            "15": "15 0478/22/ m/j/21 \u00a9 ucles 2021 blank page",
            "16": "16 0478/22/ m/j/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_s21_qp_23.pdf": {
            "1": "this document has 12 pages. cambridge igcse\u2122 dc (kn/sg) 202761/2 \u00a9 ucles 2021  [turn over *9060960772* computer science  0478/23 paper 2 problem-solving and programming  may/june  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/23/ m/j/21 \u00a9 ucles 2021 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the tasks before the examination to  answer question 1. pre-release material a school would like a system to allow students and staff to show their preference on matters relating  to the school, such as a proposal for changing the start and finish times of the school day. option proposed start and finish times of the school day a start: 08:00 \u2013 finish: 15:00 b start: 08:20 \u2013 finish: 15:20 c start: 08:40 \u2013 finish: 15:40 d start: 09:00 \u2013 finish: 16:00 e start: 09:30 \u2013 finish: 16:30 the school has 150 students and 20 members of staff. the system is required to accept preferences,  and count and report the results to show student preferences, staff preferences and overall results. write and test a program or programs for the system.  \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 setting up the system and recording preferences. set up a system to allow preferences to be recorded for each of five different options, labelled a to e. \u2022 allow a description for each option to be entered. \u2022 allow students and staff to enter their unique number before their preferences can be entered  (everyone is given a unique number by the school).  \u2022 check if the unique number has already been used:  \u25cbif so, supply a suitable message and do not allow preferences to be entered  \u25cbif not: \u2022 record that the entered unique number has been used  \u2022 allow preferences from 1 to 5 to be entered for each option (1 is \u2018strongly agree\u2019 and   5 is \u2018strongly disagree\u2019) \u2022 store the preferences in suitable data structures, keeping student and staff preferences  separate.  task 2  \u2013 totalling the preferences and reporting the results. extend task 1  to achieve the following: \u2022 allow the preferences for each of the options to be totalled, keeping student and staff  preferences separate. \u2022 display the results as a list of the options, with the totals given for each one as:  \u25cbstudent results  \u25cbstaff results  \u25cbcombined results.  task 3 \u2013 changing the program to include a counting method. extend task 2  to achieve the following: \u2022 count the number of times the preference 1, \u2018strongly agree\u2019, was given for each option,  counting student and staff preferences separately. \u2022 display the results as a list of the options, with the number of times preference 1 was given for  each option as:  \u25cbstudent results  \u25cbstaff results  \u25cbcombined results.",
            "3": "3 0478/23/ m/j/21 \u00a9 ucles 2021 [turn over 1 (a) all variables, constants and other identifiers must have meaningful names.   (i) identify one constant you could have used for task 1.  give the value that would be  assigned to the constant and explain its use. constant   value  . use    ...  ...    [3]   (ii) identify one variable you could have used for task 1  and explain its use. variable  . use    ...  ...  [2]   (iii) describe one array you could have used for task 1 . include the name, data type, length,  sample data and use for that array.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "4": "4 0478/23/ m/j/21 \u00a9 ucles 2021  (b) write an algorithm for task 2 , using pseudocode, programming statements or a flowchart. it  is not necessary to show details completed in task 1 .  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/ m/j/21 \u00a9 ucles 2021 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/23/ m/j/21 \u00a9 ucles 2021  (c) explain how you could change your program in task 1 to allow the number of options  available to be increased to six.  ...  ...  ...  ...  ...  .  [2]  (d) explain how your program counts the number of times students enter preference 1 (\u2018strongly  agree\u2019) for each option (a to e), part of task 3 . any programming statements used in your  answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "7": "7 0478/23/ m/j/21 \u00a9 ucles 2021 [turn over section b 2 draw a line to connect each data type  to the most appropriate description . realdata type must be a whole numberdescription string must be one of two values integer may be any number boolean may contain any combination of characters  [3] 3 identify a suitable validation check that could be used for each piece of normal test data and  describe how it would be used. each validation check must be different.  test data for entering an email address: id27@cambridgeuniversity.com validation check name  . description of use    ..  ..  test data for entering a year: 2021 validation check name  . description of use    ..  ..  test data for entering a name: ericson-bower validation check name  . description of use    ..  ..  [6]",
            "8": "8 0478/23/ m/j/21 \u00a9 ucles 2021 4 the pseudocode algorithm should allow a user to input the number of scores to be entered and  then enter the scores. the scores are totalled, the total is output and the option to enter another  set of scores is offered.  1 count \u2190 0  2 repeat   3   fullscore \u2190 20  4   input number  5   for storeloop \u2190 1 to number   6     input score   7     fullscore \u2190 fullscore  8   until storeloop = number  9   output \"the full score is \", fullscore  10   output \"another set of scores (y or n)?\"  11   output another  12   if another = \"n\"  13     then  14       count \u2190 1  15   endif  16 until count = 1  (a) identify the four errors in the pseudocode and suggest a correction for each error. error 1  ... correction  .  ... error 2  ... correction  .  ... error 3  ... correction  .  ... error 4  ... correction  .  ...  [4]",
            "9": "9 0478/23/ m/j/21 \u00a9 ucles 2021 [turn over  (b)  show how you could change the algorithm to store the individual scores in the array  scorearray[] , then find and print the average score once the scores have all been entered.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "10": "10 0478/23/ m/j/21 \u00a9 ucles 2021 5 the flowchart represents an algorithm.  the algorithm will terminate if 0 is entered at the op input. start input op endyes yes yes yes yesno no no no noinput value1 input value2 output \"input error\"is op = 0  ? is op = 1  ? is op = 2  ? is op = 3  ? is op = 4  ?ans   value1 + value2 ans   value1 - value2 ans   value1 * value2 ans   value1 / value2",
            "11": "11 0478/23/ m/j/21 \u00a9 ucles 2021 [turn over  (a) complete the trace table for the algorithm using this input data:   1, 87, 14, 3, 2, 30, 5, 10, 6, 4, 10, 2, 0, 2, 90, 6 op value1 value2 ans output  [5]  (b) state the purpose of the algorithm.  ...  ...  ...  .  [1]  (c) suggest an addition that could be made to the algorithm to make it more useful.  ...  ...  .  [1]",
            "12": "12 0478/23/ m/j/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.6 a car hire company uses a database table, tread, to store details of the cars. the table has  fields to represent each car\u2019s licence number, mileage, and the tread depth of each of its four  tyres.  (a) suggest suitable names for each of the fields described. field name  [2]   (b) complete the query-by-example grid to display cars where all four tyres have a tread depth  of less than 2. display all the fields, using the field names you created in part (a) . the output  should be sorted by licence number. field: table: sort: show: o o o o o o criteria: or:  [4]"
        },
        "0478_w21_qp_11.pdf": {
            "1": "cambridge igcse\u2122this document has 12 pages. any blank pages are indicated. dc (leg/ar) 202712/4 \u00a9 ucles 2021  [turn over *0063325412* computer science  0478/11 paper 1 theory  october/november  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/11/o/n/21 \u00a9 ucles 2021 1 binary is a number system that is used by computers.  (a) tick (3) one box to show whether binary is a base-2, base-10 or base-16 number system.   tick (3)     base-2     base-10     base-16  [1]  (b) hexadecimal and denary are number systems that can be used by programmers.   convert these four hexadecimal values into denary values.   09 ...   10 ...   28 ...   a1 ...  [4]   working space  ...  ...  ...  ...  ...",
            "3": "3 0478/11/o/n/21 \u00a9 ucles 2021 [turn over 2 magda has a mobile telephone.   she uses the touch screen on her telephone to send emails to her customers. the touch screen  breaks, stopping magda from using it to type her emails.  (a) identify one other input device that would be built into the mobile telephone that magda could  use to send an email to her customers.  .  [1]  (b) the touch screen operates by using the conductive properties of the object that is used to  touch the screen.   state whether the touch screen is a resistive, capacitive or infra-red touch screen.  .  [1]  (c) magda is listening to music on her mobile telephone when she receives a telephone call. a  signal is sent within the telephone to stop the music and output that a call has been received.   give the name of this type of signal.  .  [1]",
            "4": "4 0478/11/o/n/21 \u00a9 ucles 2021 3 five statements are given about the error-checking methods checksum, check digit and parity  check.  (a) tick (3) to show whether each statement applies to checksum, check digit or parity check.  some statements may apply to more than one error-checking method. statement checksum (3)check  digit (3)parity  check (3) uses an additional bit to create an odd or even number  of 1s checks for errors on data entry compares two calculated values to see if an error has  occurred will not detect transposition errors sends additional values when data is transmitted from a  computer to another  [5]  (b) identify one other error-checking method.  .  [1] 4 georgia is a wedding photographer. she wants to store 10 photographs on a usb flash memory  drive for a customer. each photograph is 100 pixels wide and 50 pixels high.  the photographs are 8-bit colour photographs.  (a) calculate the total file size, in kilobytes (kb), of all the photographs. for this calculation, you  may use the unit of measurement of 1024 or 1000.   show all your working.  ...  ...  ...  ...  ...  ...  ... answer    kb  [3]",
            "5": "5 0478/11/o/n/21 \u00a9 ucles 2021 [turn over  (b) georgia compresses photographs to store them on the usb flash memory drive. it is  important that the compression does not affect the quality of the photographs in any way.   state which type of compression is the most suitable. justify your choice. compression type  . justification  ...  ...  ...  ...  [3]  (c) georgia uses a digital camera. the digital camera takes a photograph that is then converted  into a digital image.   complete the paragraph about the operation of a digital camera, using the most appropriate  terms from the list. not all terms in the list need to be used. \u2022 analogue-to-digital \u2022 binary \u2022 charge-coupled \u2022 digital-to-analogue \u2022 lens \u2022 light \u2022 mirror \u2022 pixel \u2022 reflection \u2022 sensor \u2022 storage   when georgia pushes the button to take a photograph, an aperture opens at the front of     the camera to allow ... to stream in through     the ... . this is captured by a sensor called a     ... device. the ...     converter then converts each ... into a digital value.  [5]",
            "6": "6 0478/11/o/n/21 \u00a9 ucles 2021 5 tamaz stores confidential data on his computer.   he uses the internet regularly and is concerned about his data being viewed by unauthorised  people. he currently has one software method to stop his data being viewed, which is a password.  he wants to add other software methods to stop his data being viewed by unauthorised people.  (a) state two other software methods that tamaz could use to stop his data being viewed by  unauthorised people. 1   2    [2]  (b) tamaz\u2019s computer has an operating system. two functions of the operating system are file  management and memory management.   state two other functions of the operating system. 1   2    [2] 6  six statements are given about the role of components in the central processing unit (cpu).  (a) tick (3) to show whether each statement applies to the memory address register (mar),  memory data register (mdr) or program counter (pc).    some statements may apply to more than one component. statementmar (3)mdr (3)pc (3) it is a register in the cpu it holds the address of the next instruction to be processed it holds the address of the data that is about to be fetched  from memory it holds the data that has been fetched from memory it receives signals from the control unit it uses the address bus to send an address to another  component  [6]  (b) identify the component in the cpu that carries out calculations.  .  [1]",
            "7": "7 0478/11/o/n/21 \u00a9 ucles 2021 [turn over 7 (a) tick (3) one box to identify if an internal solid state drive (ssd) is an example of primary,  secondary or off-line storage. justify your choice.   tick (3)     primary     secondary     off-line justification  ...  ...  ...  ...  [3]  (b) describe the operation of an ssd and how it stores data.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "8": "8 0478/11/o/n/21 \u00a9 ucles 2021 8 victoria develops a computer game to sell on a gaming website. she writes her program using  english-like statements.  (a) state which type of programming language victoria is using.  .  [1]  (b) victoria uses two different types of translator when creating the program for the computer  game.   state which translator is the most suitable for the given tasks.    give the benefits of using that translator for the task.   you must choose a different translator for each task.   (i) to translate the code during development of the game. translator  .. benefits  .  ...  ...  ...  ...  ...  [3]   (ii) to translate the final program and upload to the website for distribution, without the  source code. translator  .. benefits  .  ...  ...  ...  ...  ...  [3]",
            "9": "9 0478/11/o/n/21 \u00a9 ucles 2021 [turn over 9 a washing machine uses sensors and a microprocessor to control the washing cycle of clothes.  (a) a sensor is used in each of the given tasks.   identify one suitable sensor that would be used for each task.   each sensor given must be different. task sensor checking the water is 30  \u00b0c checking the water acidity level after detergent is added checking the weight of the clothes to make sure that the machine is  not overloaded  [3]  (b) describe how the sensor and the microprocessor are used to make sure the water remains  at 30 \u00b0c.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "10": "10 0478/11/o/n/21 \u00a9 ucles 2021 10 consider the following logic statement: x = ((( a or b) or (not ( b xor c))) and c)  (a) draw a logic circuit to represent the given logic statement.    do not attempt to simplify the logic statement. all logic gates must have a maximum of two  inputs. a b cx  [5]  (b) state the name of a logic gate that does not appear in the logic statement and draw the  symbol for the logic gate.   name of logic gate ...  logic gate symbol:    [2]",
            "11": "11 0478/11/o/n/21 \u00a9 ucles 2021  (c) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4] 11 the table contains descriptions relating to web pages and the internet.  complete the table with the correct terms for the given descriptions. term description the language used to create a web page the type of software application used to display a web page an address given to a computer, by a network, to allow the  computer to be uniquely identified a text file sent by a web server to collect data about a user\u2019s  browsing habits the company that provides a connection to the internet  [5]",
            "12": "12 0478/11/o/n/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w21_qp_12.pdf": {
            "1": "this document has 12 pages. any blank pages are indicated. cambridge igcse\u2122 dc (ks/fc) 202713/4 \u00a9 ucles 2021  [turn overcomputer science  0478/12 paper 1 theory  october/november  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *9388869528*",
            "2": "2 0478/12/ o/n/21 \u00a9 ucles 2021 1 (a) denary is a number system that is used by programmers.   tick (\u2713) one box to show whether denary is a base-2, base-10 or base-16 number system.   tick     (\u2713)     base-2     base-10     base-16  [1]  (b) hexadecimal values can be used to represent denary values.   convert these four hexadecimal values into denary values. 05     .. 20     .. 1a    .. ab    ..  [4]   working space  ...  ...  ...  ...  ...",
            "3": "3 0478/12/ o/n/21 \u00a9 ucles 2021 [turn over  (c) hexadecimal values can also be converted to binary values.   tick (\u2713) one box to show the correct 8-bit binary value for each hexadecimal value.   (i) hexadecimal value 25    tick      (\u2713)      00011001      00100101      10100001  [1]   (ii) hexadecimal value  1b    tick      (\u2713)      00011011      10110001      00011010  [1]  (d) (i) give one way that hexadecimal is used in website development.  .  [1]   (ii) give one way that hexadecimal is used in low-level programming.  .  [1] 2 a train company wants to install a self-service ticket machine system for its train stations. when  the customer has purchased their tickets, the machine will provide a paper ticket.  (a) one output device that is used in the ticket machine is a display screen.   identify one other output device that is used in the ticket machine system.  .  [1]  (b) the train company does not want users to use a keyboard or a mouse to enter their data,  when buying a ticket. the company is worried that they may be stolen or get too dirty.   identify one other input device that would be suitable for use in the ticket machine system, to  allow users to enter their data.  .  [1]",
            "4": "4 0478/12/ o/n/21 \u00a9 ucles 2021 3  (a) six statements are given about methods of data transmission.    tick (\u2713) to show if each statement applies to serial simplex, parallel simplex, parallel  half-duplex or serial duplex data transmission. some statements may apply to more than one  data transmission method. statementserial  simplex (\u2713)parallel  simplex (\u2713)parallel  half-duplex (\u2713)serial duplex (\u2713) bits are transmitted along a single wire data is transmitted in both directions it is only suitable for distances less  than 5 metres bits from the same byte are  transmitted one after the other data may not arrive in the correct  sequence data is transmitted in both directions,  but only one direction at a time  [6]  (b) a universal serial bus (usb) connection can be used to transmit data from a mobile device  to a computer.   give three  benefits of using a usb connection for this purpose. benefit 1  ...  ... benefit 2  ...  ... benefit 3  ...  ...  [3]",
            "5": "5 0478/12/ o/n/21 \u00a9 ucles 2021 [turn over 4 the paragraph explains the operation of different touch screen technologies.  complete the paragraph using the list of terms. not all terms in the list need to be used. \u2022 capacitive \u2022 change \u2022 circuit \u2022 conductive \u2022 coordinates \u2022 grid \u2022 heat \u2022 infra-red \u2022 insulating \u2022 light \u2022 manufacture  \u2022 pressure \u2022 resistive  in  touch screen technology, an electrostatic field     is present on the surface of the touch screen. the      properties of a user cause a  in the field. the      of the user\u2019s touch can be calculated.  in  touch screen technology, a user pushes the     top layer of the screen and makes it connect with the bottom layer to complete a      .  this type of touch screen is cheaper to  .  [7]",
            "6": "6 0478/12/ o/n/21 \u00a9 ucles 2021 5 sammi works for a finance company and has a laptop that he uses for his work. he has confidential  data about his customers stored on his laptop.  sammi does not connect the laptop to any networks.  (a) sammi is concerned about his customers\u2019 confidential data being viewed by other people in  his office.   one method he uses to prevent others viewing the data is encryption.   identify three  other methods sammi could use to prevent his customers\u2019 confidential data  being viewed. 1   2   3    [3]  (b) sammi creates videos for the finance company website that give customers advice about  their finances.   he uses lossy compression to reduce the file size of the videos for the website.   (i) give three  ways that lossy compression can reduce the file size of the videos. 1    ... 2    ... 3    ...  [3]   (ii) give one drawback of using lossy compression to reduce the file size of the videos.  ...  .  [1]",
            "7": "7 0478/12/ o/n/21 \u00a9 ucles 2021 [turn over  (c) sammi could have used lossless compression to compress the videos for the website.    (i) give one reason why he would use lossless compression, rather than lossy compression,  for the videos.  ...  .  [1]   (ii) give two disadvantages of sammi using lossless compression, rather than lossy  compression, for the videos. disadvantage 1  .  ... disadvantage 2  .  ...  [2] 6 a programmer can use translators, such as an interpreter and a compiler, when developing a  computer program.  (a) give one similarity between a compiler and an interpreter.  ...  .  [1]  (b) describe two differences between a compiler and an interpreter. difference 1  ..  ...  ...  ... difference 2  ..  ...  ...  ...  [4]  (c) identify one other type of translator.  .  [1]",
            "8": "8 0478/12/ o/n/21 \u00a9 ucles 2021 7 five statements are given about devices.  tick (\u2713) to show if each statement applies to a 3d scanner, barcode reader or a quick response  (qr) code reader. some statements may apply to more than one type of device. statement3d  scanner  (\u2713)barcode  reader  (\u2713)qr code  reader  (\u2713) uses position and alignment markers for orientation  when scanning scans the shape and appearance of an object uses reflected light from a laser to convert  a black-and-white pattern into binary can often be built into an electronic point of sale  (epos) terminal, for example, a supermarket checkout it is an example of an input device  [5] 8 an electronic game has three  square mats that are coloured red, green and blue.  the player will see a colour displayed on a screen and has 1 second to hit the mat that matches  the colour. if the player hits the correct mat, within 1 second, a counter is incremented. when a  player hits an incorrect mat, the game ends.  the game uses sensors and a microprocessor to determine if the player hits the correct mat within  1 second.  explain how the game uses sensors and a microprocessor to count the number of times a player  hits a correct mat within 1 second.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..",
            "9": "9 0478/12/ o/n/21 \u00a9 ucles 2021 [turn over  ..  ..    [7] 9 padma opens an application on her computer.  an interrupt is generated to inform the central processing unit (cpu) that the application has  been opened.  (a) give three  other examples of when an interrupt signal could be generated. 1   2   3    [3]  (b) state what would happen if interrupt signals were not used in a computer.  ...  .  [1] 10 jermain uses the secure socket layer (ssl) protocol for secure transmission when sending data  using the internet.  (a) explain how the ssl protocol secures the data for transmission.  ...  ...  ...  .  [2]  (b) identify an alternative protocol that could be used for secure transmission of data using the  internet.  .  [1]  (c) give two ways that a user can identify if a website uses secure data transmission. 1    ... 2    ...  [2]",
            "10": "10 0478/12/ o/n/21 \u00a9 ucles 2021 11 consider the following logic statement: x = ((( a and b) or (not ( b or c))) nand c)  (a) draw a logic circuit to represent the given logic statement.   do not attempt to simplify the logic statement. all logic gates must have a maximum of two  inputs. a b x c  [5]",
            "11": "11 0478/12/ o/n/21 \u00a9 ucles 2021  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]  (c) identify two logic gates that are not included in the given logic statement. logic gate 1  ... logic gate 2  ..  [2]",
            "12": "12 0478/12/ o/n/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w21_qp_13.pdf": {
            "1": "this document has 12 pages. cambridge igcse\u2122 dc (pq/fc) 202714/5 \u00a9 ucles 2021  [turn over *1617936764* computer science  0478/13 paper 1 theory  october/november  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/13/ o/n/21 \u00a9 ucles 2021 1  (a) xia has three  files stored on her computer.    tick (3) one box to show which is the largest file size. file sizetick (\u2714) 999 kb 1 mb 850 000 bytes  [1]  (b) denise has three  files stored on her computer.    tick (3) one box to show which is the smallest file size. file sizetick (\u2714) 4000  mb 2 gb 2 500 000 kb  [1]",
            "3": "3 0478/13/ o/n/21 \u00a9 ucles 2021 [turn over 2  a sports stadium has an electronic counter that counts each person that enters the stadium.  the count is stored as binary in a 16-bit register.  a denary value of the count is displayed on a screen at the entrance.  (a) the screen currently displays: 0  0  7  1   give the binary value that is stored in the register to display the count shown. binary value:  .   working space  ...  ...  ...  [2]  (b) more people enter the sports stadium and the screen now displays: 0  2  5  7   give the binary value that is stored in the register to display the count shown. binary value:  .   working space  ...  ...  ...  [2]",
            "4": "4 0478/13/ o/n/21 \u00a9 ucles 2021  (c) after everyone has entered the stadium, the register stores the binary value: 0000001000000100   show what the screen will display when this binary value is stored.   display:         [1]   working space  ...  ...  ...  ...  (d) sensors are used at the entrance to count the number of people entering the stadium.   (i) identify two sensors that could be used to count the number of people entering the  stadium. sensor 1   sensor 2    [2]   (ii) tick (3) one box to show if a sensor is an example of an input device, storage device or  output  device. devicetick (\u2714) input storage output  [1]",
            "5": "5 0478/13/ o/n/21 \u00a9 ucles 2021 [turn over 3 five statements are given about error-checking methods.  (a) tick (3) to show whether each statement applies to automatic repeat request (arq), check  digit or checksum. some statements may apply to more than one error-checking method. statementarq (\u2714)check digit (\u2714)checksum (\u2714) checks for errors on data entry uses a process of acknowledgement and  timeout compares two calculated values to see if an  error has occurred may resend data until it is confirmed as  received checks for errors in data after transmission  from a computer to another  [5]  (b) identify one other error-checking method.  .  [1]",
            "6": "6 0478/13/ o/n/21 \u00a9 ucles 2021 4  frederick prints a document that he has typed.   the printer begins to print the document, but then a message is displayed on frederick\u2019s computer  to say that the paper has jammed.  (a) describe the role of an interrupt in generating a message on the computer that the paper has  jammed.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) give two other examples of when an interrupt signal could be generated. 1   2    [2]  (c) the type of data transmission between the computer and the printer is serial half-duplex data  transmission.   (i) describe how data is transmitted using serial half-duplex data transmission.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/13/ o/n/21 \u00a9 ucles 2021 [turn over   (ii) explain why the data transmission needs to be half-duplex rather than simplex.  ...  ...  ...  .  [2] 5  in a von neumann model for a computer system, a central processing unit (cpu) contains a  number of different components.  the table contains the name of a component or a description of their role in the fetch-execute  cycle.  complete the table with the missing component names and descriptions. component name description memory address  register (mar)   program counter (pc)   ..this is a register that is built into the arithmetic logic unit. it  temporarily holds the result of a calculation. ..this is a register that holds data or an instruction that has been  fetched from memory. control unit (cu)   .. this carries addresses around the cpu.  [6]",
            "8": "8 0478/13/ o/n/21 \u00a9 ucles 2021 6  the paragraph describes an mp3 file, mp4 file and a midi file.   complete the paragraph using the list of terms. not all terms in the list need to be used. \u2022 can  \u2022 cannot \u2022 compressed \u2022 image \u2022 microphone \u2022 midi \u2022 mp3 \u2022 mp4 \u2022 notes \u2022 pixels \u2022 speaker \u2022 should \u2022 uncompressed  .  files are a multimedia format that stores video and audio.  .  files are only used as a digital recording of sound; they  are created using a .  and recording software. the data in  the file is .  .  .  files contain instructions on how to create the    sound. they are created using digital instruments. the file stores individual   . , each one .  be   changed in this type of file.  [7]",
            "9": "9 0478/13/ o/n/21 \u00a9 ucles 2021 [turn over 7  julius creates a computer application that calculates how many years it will take to pay for a  house.  (a) julius uploads his application to his website for people to download. before he uploads the  application, he translates the code using a compiler.   explain why julius uses a compiler, rather than an interpreter, to do this.  ...  ...  ...  ...  ...  ...  ...  .  [4]    (b) julius also creates videos to explain how to use the application that he has created. he  reduces the file size of the videos using lossless compression.   (i) describe how lossless compression reduces the file size of the video.  ...  ...  ...  ...  ...  .  [3]   (ii) state why julius uses lossless compression, rather than lossy compression.  ...  .  [1]",
            "10": "10 0478/13/ o/n/21 \u00a9 ucles 2021  (c) julius wants to distribute his application to a wider audience. he is considering distributing it  as freeware or free software.   (i) describe freeware and free software. freeware  ...  ...  ...  ... free software    ...  ...  ...  [4]   (ii) julius also considers distributing a trial version of the application.    identify the type of software he could use to distribute his application as a trial version.  .  [1]  (d) julius makes sure that all data transmission to and from his website is secure.   one way a user can check if his website uses secure data transmission is to check its  certificate.   give two other ways that a user can identify if his website uses secure data transmission. 1    ... 2    ...  [2]",
            "11": "11 0478/13/ o/n/21 \u00a9 ucles 2021 [turn over 8  consider the following logic statement: x = ((( a or b) and (not( b xor c))) or not c)  (a) draw a logic circuit to represent the given logic statement.    do not attempt to simplify the logic statement. all logic gates must have a maximum of two  inputs. a b x c  [6]  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "12": "12 0478/13/ o/n/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.9  a parity check is used to check for errors after transmission on the four given binary values.  all four values are transmitted and received correctly.  identify whether each 8-bit binary value has been sent using odd or even parity by writing odd or  even in the type of parity column. binary value type of parity 10011001  01111110 11100000 00111001  [4] 10  (a) a denial of service (dos) attack is a type of internet security risk.   state the purpose of a denial of service attack.  ...  .  [1]    (b) phishing and pharming are also types of internet security risk. they have the same purpose.   state the purpose of phishing and pharming.  ...  .  [1]  (c) identify three  other types of internet security risk. 1   2   3    [3]"
        },
        "0478_w21_qp_21.pdf": {
            "1": "this document has 16 pages. any blank pages are indicated. dc (rw/ar) 202716/5 \u00a9 ucles 2021  [turn over *0671157253* computer science  0478/21 paper 2 problem-solving and programming  october/november  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.cambridge igcse\u2122",
            "2": "2 0478/21/ o/n/21 \u00a9 ucles 2021 section a you are advised to spend no longer than 40  minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre -release material and your experience from attempting the following tasks before the  examination to answer question  1. pre-release material a holiday park has eight squash courts that can be booked for an hour at a time. the first booking  is from 08:00 to 09:00 and the last booking is from 17:00 to 18:00. all bookings start on the hour  and bookings can only be made on the same day that the squash court is used. a screen displays  today\u2019s date and how many squash courts are available for each hour. when a booking is made, the name of the guest is recorded together with their mobile phone number.  once the squash court is booked, the guest is shown the court number together with a unique 4 -digit  code that can be used to unlock the squash court. each booking is for one squash court for one  hour. the 4 -digit code must be different for each booking. write and test a program or programs for a computer system to manage the daily squash court  bookings. \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry. \u2022 error messages and other output need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names. you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 at the start of the day write a program to set up arrays to record the following for each hour: \u2022 whether a squash court is booked or available \u2022 the name of the guest \u2022 the mobile phone number of the guest \u2022 the unique 4 -digit code for the booking. set up a screen to display the court availability at the start of the day. task 2  \u2013 making a squash court booking check if there is a squash court available at the time requested. if a squash court is available,  record the guest\u2019s name and mobile phone number. mark the squash court as booked for that hour.  generate and record the unique 4 -digit code for the booking. display the mobile phone number for  the guest to check, display the court number and the 4 -digit code for the guest to remember. display  the updated court availability, showing an hour as fully booked if all the squash courts are now  booked for that hour. task 3  \u2013 at the end of the day calculate the total number of squash court bookings. find the hour(s) and court(s) with the most  bookings. display this information.",
            "3": "3 0478/21/ o/n/21 \u00a9 ucles 2021 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) identify one constant that you could have used for task  1. give the value that would be  assigned to this constant. state the use of this constant. constant  ... value  . use  ...  ...  [3]  (b) describe the arrays that you have set up in task  1 to record today\u2019s data about the squash  courts.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (c) explain how your program generates a unique 4 -digit code for each booking.  ...  ...  ...  ...  ...  .  [3]",
            "4": "4 0478/21/ o/n/21 \u00a9 ucles 2021  (d) write an algorithm for task  2. you do not need to display updated court availability. use  either pseudocode, programming statements or a flowchart. assume that task  1 has been  completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/ o/n/21 \u00a9 ucles 2021 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/21/ o/n/21 \u00a9 ucles 2021  (e) explain how your program completed the part of task  3 which calculates the total number of  squash court bookings, finds the court(s) with the most bookings and displays this information.  include any programming statements that you have used and fully explain the purpose of  each statement.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/21/ o/n/21 \u00a9 ucles 2021 [turn over section b starts on page 8",
            "8": "8 0478/21/ o/n/21 \u00a9 ucles 2021 section b 2 an algorithm has been written in pseudocode to generate 50 positive random integers with values  less than or equal to 100. these random integers are stored in the array randnum[ ]  the function rand(x, y)  generates a random integer greater than or equal to x and less than y.  for example, rand(1, 4)  generates 1 or 2 or 3.    1 count  0    2 repeat    3     randnum[counter]  rand(1, 100)    4     count  count + 2    5 until count <= 50  (a) find the four errors in the pseudocode and write a correction for each error. error 1  ... correction  .  ... error 2  ... correction  .  ... error 3  ... correction  .  ... error 4  ... correction  .  ...  ...  [4]",
            "9": "9 0478/21/ o/n/21 \u00a9 ucles 2021 [turn over  (b) the pseudocode for this algorithm could be shortened by the use of a for \u2026 next  loop.   rewrite the algorithm using a for \u2026 next  loop.  ...  ...  ...  .  [3]  (c) identify another loop structure available in pseudocode.  .  [1] 3 a program has been written to check the value of a measurement. the measurement must be a  positive number and given to three decimal places, for example, 3.982  (a) (i) state suitable examples of normal and erroneous test data that could be used to test this  program. for each example give the reason for your choice of test data. normal test data example  . reason  ..  ... erroneous test data example   reason  ..  ...  [4]   (ii) explain why two pieces of boundary test data are required for this program.    give an example of each piece of boundary test data.  ...  ...  ...  ...  .  [3]",
            "10": "10 0478/21/ o/n/21 \u00a9 ucles 2021  (b) explain why verification is needed and how verification could be performed by this program.  ...  ...  ...  ...  ...  .  [3]",
            "11": "11 0478/21/ o/n/21 \u00a9 ucles 2021 [turn over question 4 starts on page 12",
            "12": "12 0478/21/ o/n/21 \u00a9 ucles 2021 4 the algorithm shown by this flowchart allows the input of examination marks for a class of students.  a mark of \u20131 ends the process. if a mark is 80 or over then a distinction grade is awarded. the  number of distinctions for the whole class is calculated. if this is over 50% of the class, the class is  awarded a highly commended certificate. start end yesis mark = \u20131?input markcounter \u2190 0 distinction \u2190 0 counter \u2190 counter + 1output \"highly commended\" is mark >= 80?is award > 0.5? distinction \u2190 distinction + 1no nonoyes yesaward \u2190 distinction/counter",
            "13": "13 0478/21/ o/n/21 \u00a9 ucles 2021 [turn over  complete a trace table for the algorithm using this input data:  88, 74, 60, 90, 84, 87, 95, 72, 84, 66, \u20131 counter distinction mark award output  [5]",
            "14": "14 0478/21/ o/n/21 \u00a9 ucles 2021 5 a database table, appliance, is used to keep a record of kitchen appliances available for sale.  the following data is stored for each appliance: \u2022 category \u2013 washer, dishwasher, fridge or freezer \u2022 economyrating \u2013 a, b, c or d \u2022 manufacturer \u2013 baku or abc \u2022 price \u2013 price in $ \u2022 code \u2013 a unique code allocated by the manufacturer e.g. b982 \u2022 stock \u2013 number in stock.  the database management system uses these data types: text        number        currency        boolean  the economyrating field and manufacturer field have a data type of text.  (a) identify the most appropriate data type for each field from the four types shown. state the  reason why you chose each data type. category data type  .. reason  .  ... price data type  ... reason  .  ... code data type  ... reason  .  ... stock data type  .. reason  .  ...  [4]",
            "15": "15 0478/21/ o/n/21 \u00a9 ucles 2021  (b) complete the query-by-example grid to display only the category, manufacturer and code of  the appliances with an economy rating of a. field: table: sort: show: criteria: or:  [3]",
            "16": "16 0478/21/ o/n/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        },
        "0478_w21_qp_22.pdf": {
            "1": "this document has 12 pages. cambridge igcse\u2122computer science  0478/22 paper 2 problem-solving and programming  october/november  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. dc (lk/fc) 202711/3 \u00a9 ucles 2021  [turn over *8130505114*",
            "2": "2 0478/22/ o/n/21 \u00a9 ucles 2021 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the following tasks before the  examination to answer question 1. pre-release material an integrated transport system has been designed to reduce the need for privately owned vehicles.  a vehicle is booked to take a passenger from home to a start station, from where they will travel to  an end station. a vehicle at the end station will take the passenger to their destination. each stage  of the journey has a price code to represent the distance travelled. the prices for each stage are  shown: home to start  stationstart station to end  stationend station to  destination code price ($) code price ($) code price ($) c1 1.50 m1 5.75 f1 1.50 c2 3.00 m2 12.50 f2 3.00 c3 4.50 m3 22.25 f3 4.50 c4 6.00 m4 34.50 f4 6.00 c5 8.00 m5 45.00 f5 8.00 to book a journey, a passenger will enter a code for each stage and the start time of their journey.  the total price is calculated by adding together the price for each of the three stages. the total  price will be reduced by 40% when the start time of the journey is after 10:00.  write and test a program or programs for the integrated transport booking system.  \u2022 your program or programs must include appropriate prompts for the entry of data; data must  be validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 setting up the booking system write a program to set up arrays to record the following: \u2022 codes and prices for each of the three stages \u2022 passenger accounts that include a unique passenger account number and name \u2022 bookings that include a unique passenger account number, a start time of the journey, a code  for each stage of the journey, and a unique booking number for the journey. store the data for the code and price for each stage.  task 2  \u2013 using the booking system extend task 1  to achieve the following: \u2022 allow passengers to open an account by generating a unique passenger account number and  storing it along with their name in the arrays. \u2022 allow passengers to make a booking by first entering their unique passenger account number,  the start time of their journey, and a code for each stage of their journey. check if the passenger  account number already exists. \u2022 generate a unique booking number for the journey. \u2022 calculate the total price of the journey, without any discount, and store the journey details. task 3  \u2013 applying a discount and checking the entry extend task 2  to check the start time of the journey and if it is after 10:00, apply a 40% discount to  the total price. display the total price and booking details for the passenger to check, and allow them to either  confirm the details are correct or start again.",
            "3": "3 0478/22/ o/n/21 \u00a9 ucles 2021 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) (i) identify one variable you could have used for task 2  and state its use. variable  . use    ...  ...  [2]   (ii) describe the arrays you could have used in task 1 . include the name, data type, use  and sample data for each array.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]  (b) describe how you could validate the data entry for the input of the codes for the different  stages of the journey in task 2 .   ...  ...  ...  ...  ...  .  [3]",
            "4": "4 0478/22/ o/n/21 \u00a9 ucles 2021  (c) write an algorithm to show how your program carries out task 3 , using either pseudocode,  programming statements or a flowchart. assume tasks 1  and 2 have already been completed.   ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/ o/n/21 \u00a9 ucles 2021 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/22/ o/n/21 \u00a9 ucles 2021  (d) explain how your program could be changed to count and store the number of bookings  made by each passenger. then, after ten bookings have been made by a passenger, apply  an additional 10% discount to every future booking. any programming statements used in  your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/22/ o/n/21 \u00a9 ucles 2021 [turn over section b 2 tick (3) one box in each row to identify if the statement is about validation, verification or neither. statementvalidation (3)verification (3)neither  (3) a check where data is re-entered to make sure no  errors have been introduced during data entry an automatic check to make sure the data entered  has the correct number of characters a check to make sure the data entered is sensible a check to make sure the data entered is correct  [3] 3 a program checks that the data entered is between 1 and 100 inclusive.  identify one piece of normal, extreme and erroneous test data for this program, and give a reason  for each.  normal test data  ... reason  .  ..  .. extreme test data  . reason  .  ..  .. erroneous test data  .. reason  .  ..  ..  [6]",
            "8": "8 0478/22/ o/n/21 \u00a9 ucles 2021 4 the pseudocode algorithm should work as a calculator and output the result.  1 continue  1  2 while continue = 0   3   output \"enter 1 for +, 2 for -, 3 for * or 4 for /\"  4   input operator  5   output \"enter the first value\"  6   input value1  7   output \"enter the second value\"   8   output value2   9   if operator  10     1: answer  value1 + value2  11     2: answer  value1 - value2  12     3: answer  value1 * value2  13     4: answer  value1 / value2  14   endcase  15   output \"the answer is \", value1  16   output \"do you wish to enter more values (yes or no)?\"  17   input morevalues  18   if morevalues = \"no\"  19     then  20       continue  1  21   endif  22 until continue = 0  (a) find the five errors in the pseudocode and suggest a correction for each error. error 1  ... correction  .  ... error 2  ... correction  .  ... error 3  ... correction  .  ... error 4  ... correction  .  ... error 5  ... correction  .  ...  [5]",
            "9": "9 0478/22/ o/n/21 \u00a9 ucles 2021 [turn over  (b) the algorithm needs changing to allow only the numbers 1, 2, 3, or 4 to be entered for the  input variable operator .    write the pseudocode to perform this task and state where in the algorithm it would be  located. pseudocode  ..  ...  ...  ...  ...  ...  ...  ...  ...  ...  ... location in algorithm    ...  ...  [5]",
            "10": "10 0478/22/ o/n/21 \u00a9 ucles 2021 5 the flowchart represents an algorithm.  the algorithm will terminate if \u20131 is entered at the list  input. start list1 \u2190 0 list2 \u2190 0 endinput list yes no no no noyes yes yesinput value output \"input error\"output \"list 1 = \", list1 output \"list 2 = \", list2is list = \u20131  ? is list = 1  ? is list = 2  ? output \"list 2 is greatest\"output \"list 1 is greatest\"is list1 > list2  ?list2 \u2190 list2 + valuelist1 \u2190 list1 + value",
            "11": "11 0478/22/ o/n/21 \u00a9 ucles 2021 [turn over  complete the trace table for the algorithm using this input data:  2, 77, 2, 16, 1, 35, 2, \u20137, 5, 18, 1, 11, 1, 12, 2, 20, \u20131, 18 list value list1 list2 output  [5]",
            "12": "12 0478/22/ o/n/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.6 a pet supplier uses the database table, stock, to keep records of its products for pets.  the fields are: field name description productid code to identify the product productname name of product productdescription information about the product animal type of animal the product is for, e.g. cat, bird, horse producttype type of product, e.g. food, toy, medicine instock whether the product is in stock or not  (a) (i) identify the field that could have a boolean data type.  .  [1]   (ii) identify the field that should be used as the primary key.  .  [1]  (b) complete the query-by-example grid to output the products intended for a cat that are in  stock. display only the primary key and the name of the products. the output should be  sorted by the primary key. field: table: sort: show: criteria: or:  [4]"
        },
        "0478_w21_qp_23.pdf": {
            "1": "this document has 16 pages. any blank pages are indicated. cambridge igcse\u2122computer science  0478/23 paper 2 problem-solving and programming  october/november  2021  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.   \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *4657181087* dc (cj/sg) 202718/4 \u00a9 ucles 2021  [turn over",
            "2": "2 0478/23/ o/n/21 \u00a9 ucles 2021 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the following tasks before the  examination to answer question 1. pre-release material a cruise ship has a speciality restaurant where tables can be booked for any of the three sessions:  lunch, early dinner or late dinner. a booking for a table can only be made on the day. there are  twenty tables available to book in the restaurant. today\u2019s date and how many tables are available for  lunch, early dinner and late dinner are displayed on a screen at the entrance to the restaurant. only one table can be booked at a time. when a booking is made, the name of the passenger making  the booking is recorded, together with their cabin number and any special dietary requirements.  write and test a program or programs for a computer system to manage the daily restaurant bookings. \u2022 your program or programs must include appropriate prompts for the entry of data; data must be  validated on entry.  \u2022 error messages and other output need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 at the start of the day write a program to set up the screen display at the start of the day showing the date and how many  tables are available for lunch, early dinner and late dinner. bookings are to be stored in three separate  arrays: lunch, early dinner and late dinner. initialise further arrays to record for each table booked: the  name of the passenger making the booking, their cabin number and any special dietary requirements. task 2  \u2013 making a table booking at the restaurant check if there is a table available for the session requested. if a table is available, record the  passenger\u2019s name, cabin number and any special dietary requirements. mark the table as booked  for that session. display the name and cabin number for the passenger to check. update the screen  display and mark a session as fully booked if all the tables are now booked. task 3  \u2013 special dietary requirements the recording of special dietary requirements is confusing the restaurant staff. it has been decided  to use fixed options instead of a description. only one option can be chosen for each booking. the options are: \u2022 gluten-free \u2022 vegetarian \u2022 vegan \u2022 diabetic \u2022 none. update task 2  to allow for this. update task 2  to count and display how many tables have vegetarian or vegan diners during the  day.",
            "3": "3 0478/23/ o/n/21 \u00a9 ucles 2021 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) identify one constant that you could have used for task 1 . give the value that would be  assigned to this constant. state the use of this constant. constant  ... value  . use  ...  ...  [3]  (b) describe the arrays that you have set up in task 1 to record today\u2019s data about the restaurant  tables.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "4": "4 0478/23/ o/n/21 \u00a9 ucles 2021  (c) sometimes the restaurant has fewer tables available for a session.    explain how you would change your task 1  program to allow input of the number of tables  available for a session.   ...  ...  ...  ...  ...  .  [3]  (d) part of task 2  is to check if a table is available. write an algorithm to do this, using either  pseudocode, programming statements or a flowchart. assume that task 1  has been  completed.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/ o/n/21 \u00a9 ucles 2021 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/23/ o/n/21 \u00a9 ucles 2021  (e) explain how your program for task 3  updated task 2 .    include any programming statements used and fully explain the purpose of each statement.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/23/ o/n/21 \u00a9 ucles 2021 [turn over section b starts on page 8.",
            "8": "8 0478/23/ o/n/21 \u00a9 ucles 2021 section b 2 an algorithm has been written in pseudocode to generate 50 positive random integers with values  less than or equal to 100. these numbers are stored in the array numrand[]    the function randup(x,y)  generates a random integer greater than x and less than or equal to y  for example, randup(1,4)  generates 2 or 3 or 4    1 count  0    2 while counter > 50 do    3     numrand[counter]  randup(1,100)    4     counter  counter \u2212 2      5 endwhile  (a) find the four errors in the pseudocode and write a correction for each error. error 1  ... correction  .  ... error 2  ... correction  .  ... error 3  ... correction  .  ... error 4  ... correction  .  ...  ...  [4]  (b) the pseudocode for this algorithm could be shortened by the use of a for \u2026 next  loop.    rewrite the algorithm using a for \u2026 next  loop.  ...  ...  ...  .  [3]",
            "9": "9 0478/23/ o/n/21 \u00a9 ucles 2021 [turn over 3 a program has been written to check the length and content of a password. the password must be  eight or more characters long and contain at least one special character, for example, secret!*!    (a) (i) state suitable examples of normal and erroneous test data that could be used to test this  program. for each example give the reason for your choice of test data. normal test data example  . reason  ..  ... erroneous test data example   reason  ..  ...  [4]   (ii) explain why two pieces of boundary test data are required for this program.      give an example of each piece of boundary test data.  ...  ...  ...  ...  .  [3]  (b) describe two methods of verification that could be used to verify this data as it is input. method 1  ...  ...  ... method 2  ...  ...  ...  [4]",
            "10": "10 0478/23/ o/n/21 \u00a9 ucles 2021 4 the algorithm, shown by this flowchart, allows the input of examination marks for a class of  students. a mark of 999 ends the process. if a mark is 40 or over then a pass grade is awarded.  the number of pass grades is calculated for the whole class. if this is under 50% of the class, the  class is offered extra help. start input mark is mark = 999  ?counter   0 pass   0 endyes yes yesno nonooutput \"extra help\"is help < 0.5  ? counter   counter + 1 pass   pass + 1is mark >= 40  ?help   pass  / counter",
            "11": "11 0478/23/ o/n/21 \u00a9 ucles 2021 [turn over  complete a trace table for the algorithm using this input data:   88, 24, 60, 30, 44, 17, 25, 22, 54, 6, 999, \u22121 counter pass mark help output  [5] ",
            "12": "12 0478/23/ o/n/21 \u00a9 ucles 2021 5 a database table, computer, is used to keep a record of computers available for sale.    the following data is stored for each computer: \u2022 category \u2013 desktop, laptop or tablet \u2022 weight \u2013 weight in kilograms \u2022 manufacturer \u2013 icn, linoldo, pear or joesing  \u2022 price \u2013 price in $ \u2022 code \u2013 a unique code allocated by the manufacturer, e.g. p771 \u2022 stock \u2013 quantity in stock.  a database management system uses these data types: text        number        currency        boolean  the category field and manufacturer field have a data type of text.  (a) select the most appropriate data type for each field from the four types shown. state the  reason why you chose the data type. weight data type   reason  .  ... price data type  ... reason  .  ... code data type  ... reason  .  ... stock data type  .. reason  .  ...  [4]",
            "13": "13 0478/23/ o/n/21 \u00a9 ucles 2021  (b) complete the query-by-example grid to display only the category, manufacturer, price and  code of the computers with weight of less than 2.5 kilograms. field: table: sort: show: criteria: or:  [3]",
            "14": "14 0478/23/ o/n/21 \u00a9 ucles 2021 blank page",
            "15": "15 0478/23/ o/n/21 \u00a9 ucles 2021 blank page",
            "16": "16 0478/23/ o/n/21 \u00a9 ucles 2021 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of the cambridge assessment group. cambridge assessment is the brand name of the university of  cambridge local examinations syndicate (ucles), which itself is a department of the university of cambridge.blank page"
        }
    },
    "2022": {
        "0478_m22_qp_12.pdf": {
            "1": "this document has 12 pages. any blank pages are indicated.  [turn overcambridge igcse\u2122computer science  0478/12 paper 1 theory  february/march  2022  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *1428246498* dc (lk) 303935/2 \u00a9 ucles 2022",
            "2": "2 0478/12/ f/m/22 \u00a9 ucles 2022 1 a computer stores data in binary form. binary numbers can be represented as hexadecimal and  denary numbers.  (a) convert the 8-bit binary number 01010101 to denary.  .  [1]   working space  ...  ...  ...  (b) convert the binary number 11000000 to hexadecimal.  .  [1]   working space  ...  ...  ...  (c) convert the hexadecimal number 1a to denary.  .  [1]   working space  ...  ...  ...  (d) binary numbers can be stored as bytes.   state how many bits are in two bytes.  .  [1]",
            "3": "3 0478/12/ f/m/22 \u00a9 ucles 2022 [turn over 2 nadia creates a digital image for a school project.  (a) give one example of an image format.  .  [1]  (b) describe how a digital image file is stored by a computer.  ...  ...  ...  ...  ...  .  [3]  (c) nadia compresses the digital image file before emailing it to a friend.   (i) state what is meant by data compression.  ...  .  [1]   (ii) explain why nadia compresses the digital image file before emailing it.  ...  ...  ...  .  [2]",
            "4": "4 0478/12/ f/m/22 \u00a9 ucles 2022   (iii) nadia\u2019s email service uses parity bits as a method of error detection during the  transmission of data.    describe how the parity bits are used to detect errors.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]   (iv) identify and describe one other method of error detection used during the transmission  of data. method  .. description    ...  ...  ...  ...  ...  [4]",
            "5": "5 0478/12/ f/m/22 \u00a9 ucles 2022 [turn over 3 (a) tick (3) to show which logic gates will give an output of 1 for the given inputs a and b. inputs and or nand nor xor a = 1 b = 1 a = 0 b = 0 a = 1 b = 0  [3]  (b) draw the logic circuit for the given logic statement: x = (a xor b) and ( b or not c)   do not attempt to simplify the logic statement. all logic gates must have a maximum of two  inputs. x ba c  [4]",
            "6": "6 0478/12/ f/m/22 \u00a9 ucles 2022 4 pradeep uses his personal computer to complete work at home.  (a) pradeep uses a mouse and a keyboard to control the computer.   (i) complete the descriptions of the principles of operation of a mouse and a keyboard  using the most appropriate terms from the list. not all terms in the list need to be used. \u2022 absorbs \u2022 ball \u2022 biometric \u2022 circuit \u2022 colour \u2022 digital \u2022 direction \u2022 light-emitting diode (led)  \u2022 liquid crystal display (lcd) \u2022 reflects \u2022 speed \u2022 switch \u2022 transparency    an optical mouse shines a red light from a ... underneath     the mouse. the light .. back from a surface through a     lens in the mouse and is converted to a value. this value is transmitted to the     computer. the computer then determines the ... and     ... of the movement.    when the user presses a key on a keyboard, the key pushes the     ... on the circuit board. this completes a     ... . signals are sent to the computer. the computer uses     the data to calculate which key was pressed.  [6]   (ii) identify two other input devices pradeep could use with his personal computer. input device 1   input device 2    [2]",
            "7": "7 0478/12/ f/m/22 \u00a9 ucles 2022 [turn over  (b) pradeep uses a projector attached to the ceiling at his home to watch high-definition (hd)  films.   the projector has broken. he wants to buy a replacement. he needs to choose between an  lcd projector and a digital light projector (dlp).   explain why an lcd projector would be more appropriate for pradeep.  ...  ...  ...  ...  ...  .  [3]  (c) pradeep stores his collection of films and his work files on his personal computer.   pradeep wants to save a copy of all his films and files onto a single storage device.   identify and justify an appropriate storage device to store the copies. storage device  .. justification  ...  ...  ...  ...  ...  ...  [4]  ",
            "8": "8 0478/12/ f/m/22 \u00a9 ucles 2022 5 a holiday company has a website where customers can create accounts and can book and pay for  holidays.  (a) the website is written in hypertext markup language (html).   give two examples of html structure and two examples of html presentation. structure 1   structure 2   presentation 1  .. presentation 2  ..  [4]  (b) the website is stored on a web server. customers use their own computers to access the  website.   uniform resource locator (url), internet protocol (ip) and media access control (mac) are  three types of address used by computers when accessing the internet.   give two features of each type of address in the table. type of  addressfeatures url    ip    mac     [6]",
            "9": "9 0478/12/ f/m/22 \u00a9 ucles 2022 [turn over  (c) the company is concerned about threats to its web server.   complete the table by identifying: \u2022 two potential threats to its web server \u2022 the impact each threat could have on the company \u2022 software the company can use to help to limit each threat.   each impact must be different. threat impact on company software  . . . ... ..  . . . ... ..  [6]",
            "10": "10 0478/12/ f/m/22 \u00a9 ucles 2022 6 a business uses a closed-circuit television (cctv) system that starts recording when motion is  detected. it stops recording after two minutes if no further motion is detected. the system uses a  motion sensor and a microprocessor.  describe how the motion sensor and microprocessor work together to control the cctv system.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..    [7]",
            "11": "11 0478/12/ f/m/22 \u00a9 ucles 2022 7 ishani is a software developer who is creating a new computer game.  (a) ishani uses an interpreter and a compiler at different stages of the game creation.   (i) explain when it is most appropriate for ishani to use an interpreter.   ...  ...  ...  ...  ...  .  [3]     (ii) explain when it is most appropriate for ishani to use a compiler.  ...  ...  ...  ...  ...  .  [3]  (b) ishani has to decide between releasing her game as freeware or free software.   describe freeware and free software. freeware  ..  ...  ...  ... free software    ...  ...  ...  [4]",
            "12": "12 0478/12/ f/m/22 \u00a9 ucles 2022 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of cambridge assessment. cambridge assessment is the brand name of the university of cambridge  local examinations syndicate (ucles), which is a department of the university of cambridge.blank page"
        },
        "0478_m22_qp_22.pdf": {
            "1": "this document has 16 pages. any blank pages are indicated.  [turn overcambridge igcse\u2122computer science  0478/22 paper 2 problem-solving and programming  february/march  2022  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.   \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *7816195114* dc (cj) 303924/3 \u00a9 ucles 2022",
            "2": "2 0478/22/ f/m/22 \u00a9 ucles 2022 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the following tasks before the  examination to answer question 1. pre-release material a program is needed to record the number of strokes played by each player in a round of golf and  decide who is the winning player. the object of the game of golf is to hit a small ball into a series of small holes using a golf club.  a score is kept of the number of times a player needs to hit the ball to get it in a hole; this is the  number of strokes for the hole. the total score for a round of golf is the total number of strokes taken  for each hole. the player with the least number of strokes is the winner.  a golf course consists of 9 or 18 holes. a round of golf is completed when all the holes have been  played. there can be 2, 3 or 4 players taking part in a round of golf. the number of strokes that  an experienced golfer would take to complete a round is called par. the scores for the round are  displayed in relation to the par score. for example, if par for an 18-hole course was 72, a score of 80  would be 8 over par and a score of 70 would be 2 under par. write and test a program or programs to score a round of golf:  \u2022 your program or programs must include appropriate prompts for the entry of data. data must be  validated on entry. \u2022 all outputs, including error messages, need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 setting up the round each player\u2019s scores for the round are to be stored in an array with a separate score for each hole.  the scores in these arrays are to be set to zero before a round starts. the following data is to be input and stored: \u2022 the number of players taking part in the round \u2022 the names of the players \u2022 the number of holes to be played: 9 or 18 \u2022 the par for the course. the number of players, their names, the number of holes to be played and the par for the course are  all displayed to be checked before the round starts so that any errors seen can be corrected. task 2  \u2013 scoring the round for each hole played, each player\u2019s name is displayed on the screen and they are asked to enter  the number of strokes they played for that hole. each player must enter the number of strokes twice  to verify their score. a player can choose to see the total number of strokes that they have played so  far in the round.  task 3 \u2013 deciding the winning player at the end of the round, display the name and final score for each player relative to par. the winner  is identified; display their name and the winning score. there are also options that display: \u2022 every player\u2019s score for each hole \u2022 the player\u2019s name and hole number of any score of one for a hole (hole-in-one) \u2022 the average score for the round \u2022 the average score for a hole.",
            "3": "3 0478/22/ f/m/22 \u00a9 ucles 2022 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a)  state one constant and one variable that you could have used for task 1 . give the value  that would be assigned to the constant. give the data type for the variable. explain why the  constant was used rather than a variable and explain why the variable was used rather than a  constant. constant name  . value  . why a constant was used  .  ...  ... variable name  ... data type  .. why a variable was used  ..  ...  ...  [6]  (b) describe how your program set the scores to zero before each round for  task 1 .  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "4": "4 0478/22/ f/m/22 \u00a9 ucles 2022  (c) write an algorithm for task 2 , using pseudocode, programming statements or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/ f/m/22 \u00a9 ucles 2022 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/22/ f/m/22 \u00a9 ucles 2022  (d) explain how your program completed part of task 3  to identify the winner and to display their  name and the winning score relative to par. all programming statements that you include  must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/22/ f/m/22 \u00a9 ucles 2022 [turn over section b starts on page 8",
            "8": "8 0478/22/ f/m/22 \u00a9 ucles 2022 section b 2 an algorithm has been written to:  \u2022 input the ages of 100 students \u2022 count and output the number of students aged 7 and under 12 \u2022 count and output the number of students aged 12 and under 18 \u2022 count and output the number of students aged 18 and over.  (a) complete the pseudocode algorithm:  01  count7to12 \u2190 0  02  count12to18 \u2190 0  03  countover18 \u2190 0  04  for student \u2190 1 to   05      output \"please enter student's age in years \"  06      input age  07      if age >= 7   08        then  09          count7to12 \u2190 count7to12 + 1  10      endif  11      if age >= 12 and age < 18  12        then  13          count12to18 \u2190 .  14      endif  15      if age >= 18  16        then  17          countover18 \u2190 countover18 + 1  18      endif  19  next student  20  output \"there are \", count7to12, \" students aged 7 and under 12.\"  21  output \"there are \", count12to18, \" students aged 12 and under 18.\"  22   output \"there are \", ., \" students aged 18 and over.\"  [4]  (b) write the extra pseudocode statements that are needed to count and output the number of  students under the age of 7. use the variable countunder7 ; assume countunder7  has  already been set to zero.  ...  ...  ...  ...  ...  ...  .  [4]",
            "9": "9 0478/22/ f/m/22 \u00a9 ucles 2022 [turn over 3 four  validation checks and five descriptions are shown.  draw a line from each validation check to the most appropriate description.    validation check  description checks that the data input is  between two values length check checks that the data input is   an integer check digit checks that the data input has  three digits range check checks that the data has   been input type check checks that the data input has  the correct digits  [4]",
            "10": "10 0478/22/ f/m/22 \u00a9 ucles 2022 4 this flowchart inputs a whole number. the function int returns the integer value of a number. for  example, int (7.5)  is 7   an input of -1 ends the routine. start end is int(number/d) = number/d? is c = 0? output cis number = \u20131?input number d   int(number/2)c   0 d   d \u2013 1c   c + 1noyes yes no no noyes yesis d = 1?",
            "11": "11 0478/22/ f/m/22 \u00a9 ucles 2022 [turn over  (a) complete the trace table for the given algorithm using this input data:    7, 6, 5, 4, \u20131, 12, 34 number c d output  [6]  (b) describe the purpose of this algorithm.  ...  ...  ...  .  [2]  (c) (i) describe the problem that occurs if a whole number smaller than 4 and not equal to \u20131  is input.  ...  ...  ...  .  [2]   (ii) explain how to change the flowchart to prevent this problem occurring.  ...  ...  ...  .  [2]",
            "12": "12 0478/22/ f/m/22 \u00a9 ucles 2022 5 a database table, flower, is used to keep a record of the type of flowers available to make up a  bouquet. flowerid type colour style fragrance cn001 carnation pink stem y cn002 carnation red stem n cn103 carnation white stem n cn104 carnation yellow stem y cn105 carnation pink spray y cn106 carnation red spray n cn107 carnation white spray n cn108 carnation yellow spray y re101 rose pink stem y re102 rose red stem y re103 rose white stem n re104 rose yellow stem y re105 rose orange spray y re106 rose peach spray n ly101 lily white spray y",
            "13": "13 0478/22/ f/m/22 \u00a9 ucles 2022  a query-by-example has been written to display just the type, style and colour of all flowers that  have no fragrance. field: flowerid fragrance style colour table: flower flower flower flower sort: show: 3 3 3 3 criteria: = y or:  explain why the query-by-example is incorrect and write a correct query-by-example.   explanation  ..  ..  ..  ..  .. field: table: sort: show: criteria: or:  [6]",
            "14": "14 0478/22/ f/m/22 \u00a9 ucles 2022 blank page",
            "15": "15 0478/22/ f/m/22 \u00a9 ucles 2022 blank page",
            "16": "16 0478/22/ f/m/22 \u00a9 ucles 2022 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of cambridge assessment. cambridge assessment is the brand name of the university of cambridge  local examinations syndicate (ucles), which is a department of the university of cambridge.blank page"
        },
        "0478_s22_qp_11.pdf": {
            "1": "this document has 12 pages. any blank pages are indicated.  [turn overcambridge igcse\u2122 *7233005583* dc (pq) 303750/3 \u00a9 ucles 2022computer science  0478/11 paper 1 theory  may/june  2022  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/11/m/j/22 \u00a9 ucles 2022 1 jack has an mp3 file stored on his computer.  (a) (i) tick (3) to show which type of data is stored in an mp3 file.  tick (3)    video       sound       image     [1]   (ii) tick (3) to show whether the mp3 file is a lossy compressed file or a lossless compressed  file or not a compressed file.  tick (3)    lossy compressed file       lossless compressed file       not a compressed file     [1] 2 a computer is designed using the von neumann model for a computer system.  the computer has a central processing unit (cpu).   (a) data is fetched from primary storage into the cpu to be processed.   (i) state the name of the primary storage from where data is fetched.  .  [1]   (ii) the cpu performs a cycle to process data. fetch is the first stage in this cycle.     state the names of the second and third stages in the cycle. second stage   third stage    [2]   (iii) identify two components within the cpu that are used in the fetch stage of the cycle. component 1  . component 2  .  [2]",
            "3": "3 0478/11/m/j/22 \u00a9 ucles 2022 [turn over 3 three types of storage media are magnetic, optical and solid state.  (a) one example of solid\u2011state storage is a solid state drive (ssd).   identify one other example of solid\u2011state storage.  .  [1]  (b) optical storage uses a laser to store and read data from a disk.   explain how the laser is used to store and read data from the disk.  ...  ...  ...  .. .  ...  .  [3]  (c) a business is creating a new mobile device that has an ssd as secondary storage.   (i) give three  reasons why an ssd is the most suitable secondary storage for their mobile  device. reason 1  ...  ... reason 2  ...  ... reason 3  ...  ...  [3]   (ii) identify two examples of software that can be stored on the ssd. example 1  . example 2  .  [2]",
            "4": "4 0478/11/m/j/22 \u00a9 ucles 2022 4 all data needs to be converted to binary data so that it can be processed by a computer.  (a) explain why a computer can only process binary data.  ...  ...  ...  .  [2]  (b) the denary values 64, 101 and 242 are converted to 8 \u2011bit binary values.   give the 8 \u2011bit binary value for each denary value. 64  .. 101   242    [3]   working space  ...  ...  ...  ...  ...  (c) the hexadecimal values 42 and ce are converted to binary.   give the binary value for each hexadecimal value. 42  .. ce  .  [4]   working space  ...  ...  ...  ...",
            "5": "5 0478/11/m/j/22 \u00a9 ucles 2022 [turn over 5 an image is stored on a computer. the image is 16 \u2011bit colour and is 100 pixels high and  150 pixels  wide.  calculate the file size of the image in bytes. show all your working.  ..  ..  ..  ..  ..  answer  bytes  [3] 6 a compiler and an interpreter are two different types of translator.  (a) one similarity between a compiler and an interpreter is that they both translate high \u2011level  language into machine code.   (i) give one other similarity between a compiler and an interpreter.  ...  .  [1]   (ii) explain  two differences between a compiler and an interpreter.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "6": "6 0478/11/m/j/22 \u00a9 ucles 2022 7 adele chooses to set a biometric password for her mobile device, instead of a  personal  identification  number  (pin).  (a) state what is meant by a biometric password.  ...  .  [1]  (b) give two reasons why a biometric password is more secure than a pin. reason 1  ..  ... reason 2  ..  ...  [2]  (c) adele has a software \u2011based firewall installed on her mobile device.   the firewall gathers data about the traffic coming into and going out of her mobile device.   explain how the firewall uses the gathered data to keep the mobile device more secure.  ...  ...  ...  ...  ...  .  [3]  (d) adele also encrypts the data on her mobile device to keep it more secure.   state how encryption will keep the data more secure.  ...  .  [1]",
            "7": "7 0478/11/m/j/22 \u00a9 ucles 2022 [turn over blank page",
            "8": "8 0478/11/m/j/22 \u00a9 ucles 2022 8 consider the following logic statement: x = ((( a and not b) or (not ( b nor c))) and c)  (a) draw a logic circuit to represent the given logic statement.    do not attempt to simplify the logic statement. all logic gates must have a maximum of two  inputs. x ba c  [6]",
            "9": "9 0478/11/m/j/22 \u00a9 ucles 2022 [turn over  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4]",
            "10": "10 0478/11/m/j/22 \u00a9 ucles 2022 9 three internet terms are browser, internet protocol (ip) address and   uniform resource locator (url).  five statements are given about the internet terms.   tick (3) to show which statements apply to each internet term. some statements may apply to  more than one internet term. statementbrowser (3)ip address (3)url  (3) it contains the domain name it is a type of software it converts hypertext markup language (html)  to display web pages it is a type of address it stores cookies  [5] 10 many devices have a media access control (mac) address.  give three  features of a mac address. feature 1  ..  .. feature 2  ..  .. feature 3  ..  ..  [3]",
            "11": "11 0478/11/m/j/22 \u00a9 ucles 2022 [turn over 11 (a) the paragraph describes the process of printing a document using an inkjet printer.   complete the paragraph using the most appropriate terms from the list. not all of the terms in  the list need to be used. \u2022 binary \u2022 buffer \u2022 drum \u2022 information \u2022 interrupt \u2022 laser \u2022 liquid \u2022 nozzles \u2022 operating system \u2022 powder \u2022 thermal bubble \u2022 toner   data is sent from the computer to the printer. the data is held in a print    that is temporary storage until the data is  processed to be printed.   inkjet printers operate by having a print head that moves     side to side across the page. these    spray  ink droplets onto the page. these ink  droplets can be created using piezoelectric or   technology.    if the paper jams in the printing process, the printing stops and an    is sent to the computer.  [5]  (b) a printer is one example of an output device.   give three  other examples of output devices. example 1  . example 2  . example 3  .  [3]  (c) give three examples of input devices. example 1  . example 2  . example 3  .  [3]",
            "12": "12 0478/11/m/j/22 \u00a9 ucles 2022 permission to reproduce items where third \u2011party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer \u2011related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of cambridge assessment. cambridge assessment is the brand name of the university of cambridge  local examinations syndicate (ucles), which is a department of the university of cambridge.12  computer ethics are a concern for any users of the internet.  identify and describe  three  ethical issues that could be a concern when using the internet.  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..  ..    [6]"
        },
        "0478_s22_qp_12.pdf": {
            "1": "this document has 12 pages.  [turn overdc (rw) 303775/2 \u00a9 ucles 2022 *4914290235* computer science  0478/12 paper 1 theory  may/june  2022  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.cambridge igcse\u2122",
            "2": "2 0478/12/ m/j/22 \u00a9 ucles 2022 1 (a) denary values are converted to binary values to be processed by a computer.   draw one line from each denary value to the correctly converted 8\u2011bit binary value.  denary  8-bit binary 41 174 8610100110 10000110 0101011000100001 00101001 10101110  [3]   working space  ...  ...  ...  ...  ...  (b) binary values can also be converted to denary values.   give the correct denary value for the 12\u2011bit binary value 000101010111   show all your working.  ...  ...  ...  ...   denary value ..  [2]",
            "3": "3 0478/12/ m/j/22 \u00a9 ucles 2022 [turn over 2 hexadecimal is used for hypertext markup language (html) colour codes.  an html colour code is: #2f15d6  each pair of digits is stored as binary in an 8\u2011bit register.  (a) give the 8 \u2011bit binary value that would be stored for each pair of hexadecimal digits. 2f 15 d6  [6]   working space  ...  ...  ...  ...  ...  (b) html colour codes and media access control (mac) addresses are two examples of where  hexadecimal is used in computer science.   give two other examples of where hexadecimal can be used in computer science. example 1  . example 2  .  [2]",
            "4": "4 0478/12/ m/j/22 \u00a9 ucles 2022  (c) websites can be created using html structure and presentation.   state what is meant by html structure and presentation.   give an example of each in your answer. structure  ...  ...  ...  ... presentation  .  ...  ...  ...  [4]  (d) explain why presentation is often separated from structure when creating a web page.  ...  ...  ...  .  [2]",
            "5": "5 0478/12/ m/j/22 \u00a9 ucles 2022 [turn over 3 joelle is a student who uses the internet.  (a) the table contains five terms or definitions that relate to the internet.   complete the table by writing each missing term or definition. term definition browser   ...this is the company that provides a user with a  connection to the internet ...this is a protocol that is used to send data for web  pages across the internet uniform resource locator (url)   cookie    [5]",
            "6": "6 0478/12/ m/j/22 \u00a9 ucles 2022  (b) joelle uses a firewall to keep her data safe when she uses the internet.   tick (3) to show which statement about firewalls is true.     tick (3)   firewalls can only be hardware \u2011based     firewalls can only be software \u2011based     firewalls can be hardware \u2011based or software \u2011based    [1]  (c) joelle\u2019s parent also uses the firewall to limit the websites that joelle can access.   explain how the firewall is used to limit the websites that joelle can access.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/12/ m/j/22 \u00a9 ucles 2022 [turn over 4 jason is a programmer who writes computer programs in a high\u2011level language.  (a) describe what is meant by a high\u2011level language.  ...  ...  ...  ...  ...  .  [3]  (b) jason wants to distribute a computer program he has written. he is considering distributing it  to users as freeware or free software.   (i) explain one drawback to a user if the program is distributed as freeware.  ...  ...  ...  .  [2]   (ii) explain one benefit to a user if the program is distributed as free software.  ...  ...  ...  .  [2]",
            "8": "8 0478/12/ m/j/22 \u00a9 ucles 2022 5 consider the following logic statement: x = ((a or b) and (not ( b xor c)) and c)  (a) draw a logic circuit to represent the given logic statement.   do not attempt to simplify the logic statement. all logic gates must have a maximum of two  inputs. x ba c  [5]",
            "9": "9 0478/12/ m/j/22 \u00a9 ucles 2022 [turn over  (b) complete the truth table for the given logic statement. a b cworking spacex 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1  [4] 6 millions of emails are sent between users on a daily basis.  (a) identify two online security attacks that can be carried out using email.    describe how email is used to enable the attack. online security attack 1   description    ...  ...  ...  ... online security attack 2   description    ...  ...  ...  ...  [6]",
            "10": "10 0478/12/ m/j/22 \u00a9 ucles 2022  (b) online security attacks can maliciously damage data.   one security method to keep data safe from online attacks is a firewall.   identify two other security methods that keep data safe from online attacks. security method 1  . security method 2  .  [2]  (c) data can also be damaged accidentally.   one example of how data can be damaged accidentally is by shutting down a computer  before saving data. to prevent this from happening, a user should make sure they have  saved all data before shutting down a computer.   complete the table by giving three  other examples of how data can be damaged accidentally.    give a method of prevention for each example. example method of prevention .. ..  .. .. .. .. ..  .. .. .. .. ..  .. .. ..  [6]",
            "11": "11 0478/12/ m/j/22 \u00a9 ucles 2022 [turn over 7 cassie stores data for her business every day. she stores the data using optical data storage.  (a) identify three  examples of optical data storage. example 1  . example 2  . example 3  .  [3]  (b) six statements are given about the operation of three different types of storage.   tick (3) to show which statements apply to each type of storage. some statements may  apply to more than one type of storage. type of storage statementmagnetic (3)optical (3)solid state (3) this storage has no moving parts this storage uses a laser to read and write data this storage uses a read/write head this storage burns pits onto a reflective surface this storage uses nand and nor technology this storage stores data in tracks and sectors  [6]",
            "12": "12 0478/12/ m/j/22 \u00a9 ucles 2022 permission to reproduce items where third \u2011party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer \u2011related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of cambridge assessment. cambridge assessment is the brand name of the university of cambridge  local examinations syndicate (ucles), which is a department of the university of cambridge.8 sam develops a software application. he distributes a version of the software as shareware.  (a) describe what is meant by shareware.  ...  ...  ...  ...  ...  ...  ...  .  [4]  (b) identify three  ethical issues that may need to be considered when developing and distributing  software. ethical issue 1  .. ethical issue 2  .. ethical issue 3  ..  [3]"
        },
        "0478_s22_qp_13.pdf": {
            "1": "this document has 12 pages. any blank pages are indicated.  [turn overcambridge igcse\u2122computer science  0478/13 paper 1 theory  may/june  2022  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 75.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *3536262792* dc (cj) 303905/4 \u00a9 ucles 2022",
            "2": "2 0478/13/ m/j/22 \u00a9 ucles 2022 1 (a) the table lists five devices.   tick (3) to show if each device is an example of an input device, an output device or a  storage device. deviceinput (3)output (3)storage (3) keyboard microphone headphones hard disk drive (hdd) actuator  [5]  (b) there are three different types of storage device. one type is magnetic.   state the other two types of storage device. type 1  ... type 2  ...  [2]",
            "3": "3 0478/13/ m/j/22 \u00a9 ucles 2022 [turn over 2 an aeroplane has a small display screen above each seat, to display the seat number.   (a) the seat number is a hexadecimal value. a 12-bit binary register is used to store the data to  display each seat number.   three  seat numbers, 05a, 18c and 29f, are allocated to passengers.   give the 12-bit binary value that would be stored for each hexadecimal seat number. 05a  ... 18c  ... 29f  ...  [6]   working space  ...  ...  ...  ...  (b) the display screen used above each seat is a light-emitting diode (led) display screen.    give two reasons why an led display screen has been used. reason 1  ..  ... reason 2  ..  ...  [2]  (c) two of the registers store the values 010000001101 and 000001111110   give the hexadecimal seat number that would be displayed on the screen for each of these  binary values. 010000001101   000001111110    [4]   working space  ...  ...  ...  ...",
            "4": "4 0478/13/ m/j/22 \u00a9 ucles 2022 3 and, or and xor are three examples of logic gates.  (a) four  statements are given about these logic gates.   tick (3) to show which statements apply to each logic gate. some statements may apply to  more than one logic gate. statementand (3)or (3)xor (3) if both inputs are 0, the output is 0 if both inputs are different, the output is 1 if both inputs are 1, the output is 1 if both inputs are the same, the output is always 0  [4]  (b) not, and, or and xor are all examples of logic gates.   state the name of two other logic gates and complete a truth table for each.   logic gate 1   truth table: a b output 0 0 0 1 1 0 1 1   logic gate 2   truth table: a b output 0 0 0 1 1 0 1 1  [4]",
            "5": "5 0478/13/ m/j/22 \u00a9 ucles 2022 [turn over 4 freddie types a uniform resource locator (url) into the address bar of his browser.  (a) a url is a text-based version of a website address. it is made up of several different parts.   state the names of three  different parts of a url. part 1   part 2   part 3    [3]  (b) explain how the url is converted into an internet protocol (ip) address for the website.  ...  ...  ...  .  [2]  (c) a protocol is used to securely transmit the data for the website to the browser.   (i) state the name of this protocol.  .  [1]   (ii) identify how this protocol changes the data to transmit the data securely.  .  [1]",
            "6": "6 0478/13/ m/j/22 \u00a9 ucles 2022 5 harriet has a computer that is based on a von neumann model for a computer system.  the computer has a central processing unit (cpu).  (a) explain the purpose of the cpu.    identify the three  stages of the cycle performed by the cpu in your answer.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]  (b) the memory address register (mar) is one component built into the cpu.   (i) identify four other components that are built into the cpu. component 1  . component 2  . component 3  . component 4  .  [4]   (ii) describe the purpose of the mar in the cpu.  ...  ...  ...  .  [2]",
            "7": "7 0478/13/ m/j/22 \u00a9 ucles 2022 [turn over  (c) harriet\u2019s computer has both primary and secondary storage.   (i) explain what is meant by primary storage.     give three  examples of what is stored in primary storage in your answer.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [7]   (ii) the secondary storage in harriet\u2019s computer is damaged, so it is removed for repair.  this means the computer will no longer work.    explain why the secondary storage is needed for the computer to work.  ...  ...  ...  .  [2]",
            "8": "8 0478/13/ m/j/22 \u00a9 ucles 2022 6 frida has a jpeg file stored on her computer.  (a) tick (3) to show which type of data is stored in a jpeg file.      tick (3)   video     sound     image    [1]  (b) compression can be used to reduce the size of a file.   tick (3) to show whether the jpeg file is a lossy compressed file or a lossless compressed  file or not a compressed file.      tick (3)   lossy compressed file     lossless compressed file     not a compressed file    [1]  (c) frida scans a text document into her computer so that she can store a digital version. she  uses a 2d scanner to do this.   describe how the text document is scanned by the 2d scanner to create the digital version.  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "9": "9 0478/13/ m/j/22 \u00a9 ucles 2022 [turn over  (d) frida compresses the document for storage.   the compression algorithm she uses recognises repeating patterns in the data and indexes  these patterns. no data is permanently removed.   identify the type of compression frida has used.  .  [1]",
            "10": "10 0478/13/ m/j/22 \u00a9 ucles 2022 7 umar is a manager in an office. the data that he uses on a daily basis is stored on a file server  close to his computer.  data is sent from his computer to the file server using parallel simplex data transmission.  (a) describe how the data is sent using parallel simplex data transmission.  ...  ...  ...  ...  ...  .  [3]  (b) the file server is moved to another building that is 1  km away.   explain why the parallel simplex data transmission method that umar uses is no longer  suitable.  ...  ...  ...  .  [2]  (c) checksum and automatic repeat request (arq) are both used when transmitting the data  from a computer to the file server.   explain why checksum and arq are both used.  ...  ...  ...  ...  ...  .  [3]",
            "11": "11 0478/13/ m/j/22 \u00a9 ucles 2022 8 the paragraph provides information about translators.  complete the paragraph using the most appropriate terms from the list. not all terms in the list  need to be used. \u2022 all at once \u2022 assembler \u2022 assembly language \u2022 binary \u2022 commenting \u2022 compiling \u2022 debugging \u2022 executable file \u2022 high-level language \u2022 interpreted \u2022 is not required \u2022 is required \u2022 line by line \u2022 low-level language  a compiler and an interpreter translate ..  into machine   code. an interpreter does this by translating and executing the code  .. and a compiler does this by translating and executing  the code .. .  one benefit of a compiler is that it creates an .. , which  means that a translator .. each time to run the file.  .. is easier to do with an interpreter because it stops  translating and reports an error at the place where it occurs in the code.  [6]",
            "12": "12 0478/13/ m/j/22 \u00a9 ucles 2022 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of cambridge assessment. cambridge assessment is the brand name of the university of cambridge  local examinations syndicate (ucles), which is a department of the university of cambridge.blank page"
        },
        "0478_s22_qp_21.pdf": {
            "1": "this document has 12 pages.  [turn overcambridge igcse\u2122 dc (kn) 303743/3 \u00a9 ucles 2022 *3062879696* computer science  0478/21 paper 2 problem-solving and programming  may/june  2022  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3 in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/21/ m/j/22 \u00a9 ucles 2022 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the following tasks before the  examination to answer question 1. pre-release material friends of seaview pier is an organisation devoted to the restoration and upkeep of a pier in the  town. a pier is a wooden structure that provides a walkway over the sea. the pier requires regular  maintenance and the friends of the pier need to raise money for this purpose.  members of friends of seaview pier each pay $75 per year, as a contribution to the pier\u2019s running costs.  this entitles them to free admission to the pier throughout the year. they can also volunteer to help run  the pier, by working at the pier entrance gate, working in the gift shop, or painting and decorating.  to provide additional income, the pier\u2019s wooden planks can be sponsored. a brass plaque, which  contains a short message of the sponsor\u2019s choice, is fitted to a plank on the pier, for a donation of  $200.  write and test a program or programs for the friends of seaview pier: \u2022 your program or programs must include appropriate prompts for the entry of data. data must be  validated on entry. \u2022 all outputs, including error messages, need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 becoming a member of friends of seaview pier set up a system to enable people to become members of friends of seaview pier and for each new  member enter: \u2022 their first name and last name \u2022 whether or not they wish to work as a volunteer   \u25cbif they choose to volunteer, identify the area from:  \u2013the pier entrance gate  \u2013the gift shop  \u2013painting and decorating   \u2022 the date of joining \u2022 whether or not they have paid the $75 fee.  all of this information needs to be stored using suitable data structures. task 2  \u2013 using the membership data extend the program in task 1  so that a list of the first and last names of members can be output in  any of the following categories: \u2022 members who have chosen to work as volunteers. \u2022 volunteers who would like to work at the pier entrance gate. \u2022 volunteers who would like to work in the gift shop. \u2022 volunteers who would like to help with painting and decorating tasks. \u2022 members whose membership has expired (they have not re-joined this year). \u2022 members who have not yet paid their $75 fee. task 3  \u2013 sponsoring a wooden plank add an additional option to the program in task 1  to enable the pier\u2019s wooden planks to be  sponsored. separate data structures should be used to store the names of the individuals and  the short messages they would like to have written on their brass plaque. an output would display  everything that was input for the sponsor to confirm. if errors are found, the program should allow  data to be re-entered. once complete, the data is stored and the sponsor is charged $200.",
            "3": "3 0478/21/ m/j/22 \u00a9 ucles 2022 [turn over 1 (a) describe the data structures you could have used in task 1 . your description should include  types of data structure, names used for data structures, their uses and examples of sample  data.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]  (b) explain how you could change your program in  task 1  to total all the money collected from  new members who have paid.  ...  ...  ...  ...  ...  .  [3]  (c)  describe how data input in task 1  could be validated to find out if a new member wants to  work as a volunteer.  ...  ...  ...  ...  ...  .  [3]",
            "4": "4 0478/21/ m/j/22 \u00a9 ucles 2022  (d) write an algorithm to show how your program completes task 3  assuming the option to  sponsor a wooden plank has been chosen, using pseudocode, programming statements or a  flowchart. details completed in task 1  are not required.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/21/ m/j/22 \u00a9 ucles 2022 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [5]",
            "6": "6 0478/21/ m/j/22 \u00a9 ucles 2022  (e) explain how your program allows any one of the member or volunteer lists to be selected and  displayed (part of task 2 ). any programming statements used in your answer must be fully  explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/21/ m/j/22 \u00a9 ucles 2022 [turn over section b 2 tick (\u00fc) one box in each row to identify the most appropriate data type for each description. only  one tick (\u00fc) per column. descriptiondata type boolean char integer real string a single character from the keyboard multiple characters from the keyboard only one of two possible values only whole numbers any number    [4] 3 give one piece of normal test data and one piece of erroneous test data that could be used to  validate the input of an email address.  state the reason for your choice in each case. normal test data  ...  .. reason  .  ..  ..  .. erroneous test data  ..  .. reason  .  ..  ..  ..  [4]",
            "8": "8 0478/21/ m/j/22 \u00a9 ucles 2022 4 the flowchart shows an algorithm that should allow 60 test results to be entered into the variable  score . each test result is checked to see if it is 50 or more. if it is, the test result is assigned to the  pass  array. otherwise, it is assigned to the fail  array.   (a) complete this flowchart: start passcount 0 endyesfailcount 0 count 0 count count + 1yes nono   [6]",
            "9": "9 0478/21/ m/j/22 \u00a9 ucles 2022 [turn over  (b) write a pseudocode routine that will check that each test result entered into the algorithm is  between 0 and 100 inclusive.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]  ",
            "10": "10 0478/21/ m/j/22 \u00a9 ucles 2022 5 the pseudocode represents an algorithm.  the pre-defined function div gives the value of the result of integer division.   for example, y = 9 div 4  gives the value y = 2    the pre-defined function mod gives the value of the remainder of integer division.   for example,  r = 9 mod 4  gives the value r = 1     first \u2190 0   last \u2190 0   input limit   for counter \u2190 1 to limit     input value     if value >= 100       then         if value < 1000           then             first \u2190 value div 100             last \u2190 value mod 10               if first = last                 then                   output value               endif         endif     endif   next counter  (a) complete the trace table for the algorithm using this input data:   8, 66, 606, 6226, 8448, 642, 747, 77, 121 counter value first last limit output  [5]",
            "11": "11 0478/21/ m/j/22 \u00a9 ucles 2022 [turn over  (b) describe the purpose of the algorithm.   ...  ...  ...  .  [2]",
            "12": "12 0478/21/ m/j/22 \u00a9 ucles 2022 6 a computer game shop records its stock levels in a database table called games. the fields used  in the stock table are shown. name description gameid primary key gamename the name of each game agerestriction the minimum age at which a person is allowed to play each game gameprice the selling price for each game numberstock the quantity of each game currently in stock onorder whether or not each game is on order from the suppliers datelastordered the date the most recent order for each game was placed  gamedescription a summary of the contents and purpose of each game  (a) state the number of fields that are in the table games.   .  [1]  (b) state one important fact that must be true for a field to be a primary key.  ...  .  [1]  (c) complete the query-by-example grid to output all the games that have no stock and that are  on order with the supplier. display only the gameid, gamename and gameprice fields in  alphabetical order of the name of the game. field: table: sort: show: criteria: or:  [3] permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of cambridge assessment. cambridge assessment is the brand name of the university of cambridge  local examinations syndicate (ucles), which is a department of the university of cambridge."
        },
        "0478_s22_qp_22.pdf": {
            "1": "this document has 12 pages.  [turn overcambridge igcse\u2122 dc (pq) 303914/4 \u00a9 ucles 2022 *6568118850* computer science  0478/22 paper 2 problem-solving and programming  may/june  2022  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.  \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware.",
            "2": "2 0478/22/ m/j/22 \u00a9 ucles 2022 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the following tasks before the  examination to answer question 1. pre-release material a program is needed to allow a wildlife park to sell tickets. a booking consists of one or more tickets for  the same day(s) and can be made up to a week in advance. a booking can be made for a visit of one day  or two consecutive days. a booking can have extra attractions included. a booking will be valid for the  day(s) chosen only. ticket type cost for one day cost for two days one adult $20.00 $30.00 one child (an adult may bring up to two children) $12.00 $18.00 one senior $16.00 $24.00 family ticket (up to two adults or seniors, and three children) $60.00 $90.00 groups of six people or more, price per person $15.00 $22.50 extra attraction cost per person lion feeding $2.50 penguin feeding $2.00 evening barbecue (two-day tickets only) $5.00 write and test a program or programs for the wildlife park:  \u2022 your program or programs must include appropriate prompts for the entry of data. data must be  validated on entry.  \u2022 all outputs, including error messages, need to be set out clearly and understandably. \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these  three  tasks. each task must be fully tested. task 1  \u2013 displaying the ticket options and the extra attractions available set up your program to: \u2022 display the options, attractions and prices for one-day tickets \u2022 display the options, attractions and prices for two-day tickets \u2022 show the days available for booking; assume that there are tickets available for any valid day. task 2  \u2013 process a booking extend your program for task 1  to: \u2022 input the tickets and extra attractions required, then calculate the total cost of the booking \u2022 allocate a unique booking number \u2022 display the booking details, including the total cost and the unique booking number \u2022 repeat as required. task 3  \u2013 ensuring each booking is the best value check that the total for each booking gives the best value and offer an alternative if this is not the case.  for example, buying two family tickets is better than a group ticket for a group of 10 that includes  four adults and six children.",
            "3": "3 0478/22/ m/j/22 \u00a9 ucles 2022 [turn over 1  all variables, constants and other identifiers must have meaningful names.  (a) (i) identify one constant that you could have used for task 1 .    give the value and use of the constant. constant   value  . use    ...  [3]   (ii) identify one variable that you could have used for task 2 .    give the data type and use of the variable. variable  . data type  ... use    ...  [3]  (b) explain how your program showed the days available for booking in task 1 .  ...  ...  ...  ...  ...  .  [3]  (c) explain how your program made sure that each booking number allocated in task 2  was  unique.  ...  ...  ...  .  [2]",
            "4": "4 0478/22/ m/j/22 \u00a9 ucles 2022  (d) write an algorithm for the part of task 2  that inputs the tickets and extra attractions required  then calculates the total cost of the booking.   assume that the booking is for a single day.    use pseudocode, programming statements or a flowchart.    ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/22/ m/j/22 \u00a9 ucles 2022 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/22/ m/j/22 \u00a9 ucles 2022  (e) explain how your program decides when a family ticket is better value in task 3 .     any programming statements that you include in your answer must be fully explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "7": "7 0478/22/ m/j/22 \u00a9 ucles 2022 [turn over section b starts on page 8",
            "8": "8 0478/22/ m/j/22 \u00a9 ucles 2022 section b 2  an algorithm allows a user to input their password and checks that there are at least eight  characters in the password. then, the user is asked to re-input the password to check that both  inputs are the same. the user is allowed three attempts at inputting a password of the correct  length and a matching pair of passwords. the pre-defined function len(x)  returns the number of  characters in the string, x  01  attempt \u2190 0  02  repeat  03    passcheck \u2190 true  04    output \"please enter your password \"  05    input password  06    if len(password) < 8  07      then  08        passcheck \u2190 true  09      else  10        output \"please re-enter your password \"  11        input password2  12        if password <> password  13           then  14           passcheck \u2190 false  15        endif  16    endif  17    attempt \u2190 attempt + 1  18  until passcheck or attempt <> 3  19  if passcheck  20    then  21     output \"password success\"  22    else  23      output \"password fail\"  24  endif  (a) identify the three  errors in the pseudocode and suggest a correction to remove each error. error 1  ... correction  . error 2  ... correction  . error 3  ... correction  .  [3]",
            "9": "9 0478/22/ m/j/22 \u00a9 ucles 2022 [turn over  (b) the algorithm includes two types of check on the data input.   identify and describe each type of check. type of check 1   description    ... type of check 2   description    ...  [4]  (c)  give two sets of test data for this algorithm and a reason for choosing each set.   each set of test data and its reason must be different. set 1  . reason  .  ... set 2  . reason  .  ...  [4] 3 (a) describe a one-dimensional array. include an example of an array declaration.  ...  ...  ...  ...  ...  .  [3]  (b) explain how indexing could be used to search for a value stored in a one-dimensional array.  ...  ...  ...  .  [2]",
            "10": "10 0478/22/ m/j/22 \u00a9 ucles 2022 4 this algorithm checks the temperature of hot food being served to customers.    start counter 0 counter counter + 1error    ((hot + cold) / counter) * 100error hot0 cold0 serve 0 serve serve + 1input temp output error output \"too cold\"output \"too hot\"is temp = \u20131? is temp > 86? is temp < 63? endhothot + 1 coldcold + 1yes no no noyes yes",
            "11": "11 0478/22/ m/j/22 \u00a9 ucles 2022 [turn over  (a) complete the trace table for the algorithm using this input data:    75, 78, 84, 87, 91, 80, 75, 70, 65, 62, \u20131, 20  counter hot cold serve temp error output  [7]  (b) state how the final output from the algorithm could be improved.   ...  .  [1]  (c) identify the process in the algorithm that is not required.  ...  .  [1]",
            "12": "12 0478/22/ m/j/22 \u00a9 ucles 2022 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of cambridge assessment. cambridge assessment is the brand name of the university of cambridge  local examinations syndicate (ucles), which is a department of the university of cambridge.5 a database table, nurse, is used to keep a record of disposable items worn by veterinary nurses.    this is part of the table: itemnumber description singleuse uses stocklevel reorderlevel dig1 glove (pair) y 1 500 800 dia1 apron y 1 700 800 dim5 hair net y 1 650 500 dia2 apron n 5  25 100 dis4 suit n 3  70  50 div9 shoe cover (pair) y 1 400 250  (a) complete this query-by-example grid to display only the item number and the description of  single use items, where the stock level is below the reorder level. field: table: sort: show: criteria: or:  [4]  (b) give a reason why the field singleuse is not required in the table nurse.  ...  .  [1]"
        },
        "0478_s22_qp_23.pdf": {
            "1": "this document has 12 pages. any blank pages are indicated.  [turn overcambridge igcse\u2122computer science  0478/23 paper 2 problem-solving and programming  may/june  2022  1 hour 45 minutes you must answer on the question paper. no additional materials are needed. instructions  \u25cf answer all questions.  \u25cf do not attempt tasks 1, 2 and 3  in the copy of the pre-release material on page 2; these are for  information only.   \u25cf use a black or dark blue pen. you may use an hb pencil for any diagrams or graphs.  \u25cf write your name, centre number and candidate number in the boxes at the top of the page.  \u25cf write your answer to each question in the space provided.  \u25cf do not use an erasable pen or correction fluid.  \u25cf do not write on any bar codes.  \u25cf calculators must not be used in this paper. information  \u25cf the total mark for this paper is 50.  \u25cf the number of marks for each question or part question is shown in brackets [  ].  \u25cf no marks will be awarded for using brand names of software packages or hardware. *8113932485* dc (cj) 303921/2 \u00a9 ucles 2022",
            "2": "2 0478/23/ m/j/22 \u00a9 ucles 2022 section a you are advised to spend no longer than 40 minutes answering this section. here is a copy of the pre-release material. do not  attempt tasks 1, 2 and 3 now. use the pre-release material and your experience from attempting the following tasks before the  examination to answer question 1. pre-release material seaview castle visitor centre is open seven days a week. it offers a range of facilities and activities  including meeting rooms, a permanent fossil exhibition, supervised walks along the cliff tops and an  old stone quarry.   there are three meeting rooms, which can each be booked separately. there is one large room  that can be used for a variety of activities such as showing films, holding presentations, displaying  exhibitions or wedding receptions. there are also two smaller meeting rooms. each room can be  booked by the day according to the following tariff: room cost per day large $295 small 1 $175 small 2 $150 write and test a program or programs to arrange meeting room bookings:  \u2022 your program or programs must include appropriate prompts for the entry of data. data must be  validated on entry.  \u2022 all outputs, including error messages, need to be set out clearly and understandably.  \u2022 all variables, constants and other identifiers must have meaningful names.  you will need to complete these three  tasks. each task must be fully tested. task 1  \u2013 setting up a booking system structure for the meeting rooms set up suitable data structures for each of the three meeting rooms to store: \u2022 when it is booked during a fixed eight-week period \u2022 the client\u2019s name (the person making the booking) \u2022 a unique booking code \u2022 the cost of the booking.   task 2  \u2013 booking a meeting room extend the program in task 1  to enable bookings to be made so that the client enters their name,  the meeting room required and the day of the booking. after the data has been entered, the program  should check if the requested day is available for the required meeting room and if not, the client  should be allowed to enter an alternative day or exit the program. if the requested day is available, the booking details and cost of the booking should be output for  the client to confirm. once confirmed, a unique booking code should be generated and stored in  both the appropriate meeting room data structure and the unique booking code data structure. the  client\u2019s name and cost of the booking should be stored in the appropriate data structures set up in  task 1 .  bookings of more than one day must be entered as separate single day bookings.  task 3  \u2013 using the booking data extend the program in task 1  and task 2  to make use of the data that is available, to: \u2022 select a meeting room and output the days when it is free \u2022 total and output the amount of money currently taken for all three meeting rooms \u2022 check the bookings for a specific client.",
            "3": "3 0478/23/ m/j/22 \u00a9 ucles 2022 [turn over 1 all variables, constants and other identifiers must have meaningful names.  (a) identify one variable and one array you could have used for task 1  or task 2 .    give the use for the variable and array. variable  . use  ...  ... array  . use  ...  .  [4]  (b)  describe how you could test if the validation of the input to choose a meeting room works  (task 2 ).  ...  ...  ...  .  [2]  (c) explain how your program in  task 2  could be altered to allow a 30% discount on bookings for  the same meeting room of two to six days, inclusive.     ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "4": "4 0478/23/ m/j/22 \u00a9 ucles 2022  (d) write an algorithm to show how your program completes the following parts of task 2 :  \u2022 output the booking details and cost of the booking \u2022 take confirmation from the client \u2022 generate a unique booking code \u2022 store the booking details.    assume that task 1 and the first part of task 2  have been completed.    assume that the booking is for a single day and that the requested booking day is available.    use pseudocode, programming statements or a flowchart.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...",
            "5": "5 0478/23/ m/j/22 \u00a9 ucles 2022 [turn over  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [6]",
            "6": "6 0478/23/ m/j/22 \u00a9 ucles 2022  (e) explain how your program selects a meeting room, finds and then outputs the days when it  is available (part of task 3 ). any programming statements used in your answer must be fully  explained.  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [4]",
            "7": "7 0478/23/ m/j/22 \u00a9 ucles 2022 [turn over section b 2 tick (3) one or more boxes in each row to match the type(s) of test data to each description.  descriptiontypes of test data boundaryerroneous  /  abnormalextreme normal test data that is always on the limit of  acceptability test data that is either on the limit of  acceptability or test data that is just  outside the limit of acceptability test data that will always be rejected test data that is within the limits of  acceptability  [4] 3 describe what is meant by the terms variable and constant and give an example of each in your  answer.   variable    ..  ..  .. constant  ...  ..  ..  ..  [4]",
            "8": "8 0478/23/ m/j/22 \u00a9 ucles 2022 4 the pseudocode represents an algorithm.  the pre-defined function div gives the value of the result of integer division.   for example, y = 11 div 4  gives the value y = 2     count \u2190 0   input limit   for in \u2190 1 to limit     logic \u2190 true     test \u2190 2     input number     repeat       if number / test = number div test          then           logic \u2190 false         else           test \u2190 test + 1       endif     until not logic or test >= number div 2     if logic       then         store[count] \u2190 number         count \u2190 count + 1     endif   next in   for out \u2190 0 to count - 1     output store[out]   next out  (a) complete the trace table for the algorithm using this input data:   5, 9, 5, 8, 10, 7 in logic test numberstore [count]count limit out output  [7]",
            "9": "9 0478/23/ m/j/22 \u00a9 ucles 2022 [turn over  (b) state the purpose of this algorithm.  ...  ...  ...  .  [2]  (c) this algorithm only works for numbers that are 3 or greater.   describe how you could change this algorithm to make sure that only numbers that are  3 or greater are entered. any pseudocode statements used in your answer must be fully  described.  ...  ...  ...  ...  ...  ...  ...  ...  ...  .  [3]",
            "10": "10 0478/23/ m/j/22 \u00a9 ucles 2022 5 the flowchart shows an algorithm that should: \u2022 allow 100 numbers to be entered into the variable number \u2022 total the numbers as they are entered \u2022 output the total and average of the numbers after they have all been entered.  complete this flowchart:    start total 0 endcounter 0 yesno  [6]",
            "11": "11 0478/23/ m/j/22 \u00a9 ucles 2022 6 data about planets in the solar system is stored in a database table called planets. the fields  used in the table are shown. name of field contents of field planetname the name of the planet planetmass the planet\u2019s mass in kilograms larger whether or not the planet has a greater mass than earth maxdistance the maximum distance the planet is from earth in kilometres mindistance the minimum distance the planet is from earth in kilometres yearlength the length of time it takes for the planet to orbit the sun in earth days  (a) state the name of the field that could contain boolean data.  .  [1]  (b) complete the query-by-example grid to output the planets with a longer year length and  greater mass than earth. assume earth\u2019s year length is 365 days.    display only the name of the planets sorted in alphabetical order. field: table: sort: show: o o o o o criteria: or:  [3]",
            "12": "12 0478/23/ m/j/22 \u00a9 ucles 2022 permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. every  reasonable effort has been made by the publisher (ucles) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the  publisher will be pleased to make amends at the earliest possible opportunity. to avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the cambridge  assessment  international education copyright acknowledgements booklet. this is produced for each series of examinations and is freely available to download  at www.cambridgeinternational.org after the live examination series. cambridge assessment international education is part of cambridge assessment. cambridge assessment is the brand name of the university of cambridge  local examinations syndicate (ucles), which is a department of the university of cambridge.blank page"
        }
    },
    "Other Resources": {},
    "Specimen Papers": {}
}