The aim of this book is to teach programming in the BASIC language, as used by the ZX Spectrum, to the complete beginner. It is not an '0' level or C.S.E. textbook, although it does cover practically all the programming skills required at those levels. Mathematics has been kept to a minimum and therefore arithmetic functions such as ABS, EXP, LN, PI, SGN and SQR together with trigonometrical functions SIN, COS, TAN, ASN, ARC and ATN have not been inc1uded. Each unit is written so that it relies only on information already covered in previous units. This me ans that if the reader works through each unit in turn, he or she will not need to have any knowledge other than that already encountered in earlier units. If, however, the reader covers the units out of order, then difficulties may be experienced unless he or she has previous experience. The book is best used with a microcomputer at hand as it is recommended that the sampie programs are typed in. The pro gram listings are direct copies of the screen, thus providing an easy check that the program has been correct1y entered. Each unit gives plenty of opportunity to practise the skills just acquired and solutions to the activities are inc1uded at the back of the book. It should be remembered, however, that in programming there may often be several solutions to a problem and therefore if the reader's program works successfully it is just as acceptable as the solution given. Front Matter....Pages i-xiii Introduction....Pages 1-2 Using the keyboard....Pages 3-6 Correcting mistakes....Pages 7-8 Making a program....Pages 9-10 More about numbering lines....Pages 11-12 Editing a program....Pages 13-14 Extended mode. Using the cassette recorder....Pages 15-17 Testing your knowledge—questions on the Introduction and Units 1–5....Pages 18-20 Numeric or simple variables....Pages 21-24 String variables....Pages 25-28 Extracting parts of strings....Pages 29-31 Using the computer as a calculator....Pages 32-36 Controlling the print position....Pages 37-40 Beginnings and ends of programs....Pages 41-41 INPUT statement....Pages 42-45 Program descriptions—algorithms....Pages 46-50 Loops—using GOTO....Pages 51-55 Comparisons....Pages 56-64 More comparisons....Pages 65-76 Adding a counter....Pages 77-81 FOR-NEXT loops....Pages 82-91 READ and DATA statements....Pages 92-98 Nested loops....Pages 99-104 Graphics using PRINT statements, colour and moving graphics....Pages 105-115 Arrays—DIM statement....Pages 116-131 Subroutines....Pages 132-139 Making music....Pages 140-149 Some useful functions — RND, RAND and INT....Pages 150-154 High-resolution graphics — PLOT, DRAW, CIRCLE and INVERSE....Pages 155-169 User-defined characters....Pages 170-172 Some interesting string functions....Pages 173-176 Using the printer....Pages 177-178 Back Matter....Pages 179-205