ebook img

Beginning Programming for Dummies PDF

433 Pages·2004·7.68 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Beginning Programming for Dummies

549979 FM.qxd 11/6/03 1:46 PM Page i Beginning Programming FOR DUMmIES ‰ 3 RD EDITION by Wallace Wang 549979 FM.qxd 11/6/03 1:46 PM Page ii Beginning Programming For Dummies®, 3rd Edition Published by Wiley Publishing, Inc. 111 River Street Hoboken, NJ 07030-5774 Copyright ©2004 by Wiley Publishing, Inc., Indianapolis, Indiana Published by Wiley Publishing, Inc., Indianapolis, Indiana Published simultaneously in Canada No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permis- sion of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the Publisher for permission should be addressed to the Legal Department, Wiley Publishing, Inc., 10475 Crosspoint Blvd., Indianapolis, IN 46256, (317) 572-3447, fax (317) 572-4447, e-mail: permcoordinator@ wiley.com. Trademarks:Wiley, the Wiley Publishing logo, For Dummies, the Dummies Man logo, A Reference for the Rest of Us!, The Dummies Way, Dummies Daily, The Fun and Easy Way, Dummies.com, and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc., and/or its affiliates in the United States and other countries, and may not be used without written permission. All other trademarks are the property of their respective owners. Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book. LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: WHILE THE PUBLISHER AND AUTHOR HAVE USED THEIR BEST EFFORTS IN PREPARING THIS BOOK, THEY MAKE NO REPRESENTATIONS OR WAR- RANTIES WITH RESPECT TO THE ACCURACY OR COMPLETENESS OF THE CONTENTS OF THIS BOOK AND SPECIFICALLY DISCLAIM ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. NO WARRANTY MAY BE CREATED OR EXTENDED BY SALES REPRESENTATIVES OR WRITTEN SALES MATERIALS. THE ADVICE AND STRATEGIES CONTAINED HEREIN MAY NOT BE SUITABLE FOR YOUR SITUATION. YOU SHOULD CONSULT WITH A PROFESSIONAL WHERE APPROPRI- ATE. NEITHER THE PUBLISHER NOR AUTHOR SHALL BE LIABLE FOR ANY LOSS OF PROFIT OR ANY OTHER COMMERCIAL DAMAGES, INCLUDING BUT NOT LIMITED TO SPECIAL, INCIDENTAL, CONSE- QUENTIAL, OR OTHER DAMAGES. For general information on our other products and services or to obtain technical support, please contact our Customer Care Department within the U.S. at 800-762-2974, outside the U.S. at 317-572-3993, or fax 317-572-4002. Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books. Library of Congress Control Number: 2003114793 ISBN: 0-7645-4997-9 Manufactured in the United States of America 10 9 8 7 6 5 4 3 2 1 3B/SU/RR/QT 549979 FM.qxd 11/6/03 1:46 PM Page iii About the Author After spending his first two post-college years working for a dead-end corpo- ration that encouraged its employees to use euphemisms to disguise the fact that they were manufacturing nuclear weapons with the potential to wipe out most forms of life on the planet, Wallace Wang decided that his life was meant to be spent doing something more exciting than existing in a corporate culture that stifled freedom and democracy while building missiles ostensibly to protect freedom and democracy. With the thought of escape in his mind, he bought one of the first IBM personal computers on the market—and quickly realized that the accompanying computer manuals were completely incom- prehensible. After deciphering the manuals and learning to master the arcane commands of the ancient MS-DOS version 1.25 operating system, Wallace decided to pub- lish fragments of his notes in a local computer magazine for the amusement of others—and to provide an alternative source of income for his eventual departure from the mentally suffocating environment of the military-industrial complex. After people began responding favorably to his introductory computer maga- zine articles, he continued writing more, eventually turning to writing full-time. For the first time, he managed to earn a living in a job that didn’t involve devel- oping something that could blow up people who happen to live in another part of the world. Today, the author is happily pursuing a dual career in the book publishing industry and the stand-up comedy industry. His eventual goal is to convince people that enjoying yourself while learning is all right. In the meantime, he plans to continue making fun of any idiots and morons who happen to get in his way. 549979 FM.qxd 11/6/03 1:46 PM Page iv Dedication This book is dedicated to all the wonderful people I’ve met along the path of life, including . . . Cassandra (my wife), Jordan (my son), and Bo, Scraps, Tasha, and Nuit (our cats). Lily Carnie, the only person I know who can truly see both sides of the story. All the friendly folks I’ve met while performing at the Riviera Comedy Club, located at the Riviera Hotel & Casino in Las Vegas: Steve Schirripa (who also appears on the HBO show, The Sopranos, which you can read about at www. hbo.com/sopranos), Don Learned, Bob Zany, Gerry Bednob, Bruce Clark, Darrell Joyce, Tony Vicich, and Kip Addotta. The next time you’re visiting Las Vegas, drop by the Riviera and watch a comedy show. Then dump some money in a slot machine on the way out to ensure that the Riviera Hotel & Casino continues making enough money to keep its comedy club open. Patrick DeGuire, who helped me form Top Bananas (at www.topbananas.com), our company devoted to providing clean, quality stand-up comedy to the wonderfulpeople in San Diego. Thanks must also go to Leo (the man, the myth, thelegend) Fontaine, Chris (the Zooman) Clobber, and Dante (who gets excited just to see his name in a book). 549979 FM.qxd 11/6/03 1:46 PM Page v Author’s Acknowledgments If it weren’t for Matt Wagner and Bill Gladstone at Waterside Productions, I may never have written this book (and someone else may have). That’s why I don’t mind paying these guys 15 percent of the book royalties so that they can afford to buy their groceries. Additional thanks go to Allen Wyatt (the technical reviewer) for making sure that everything in this book is accurate, and to Cassandra (my wife) for putting up with multiple computers that (from her point of view) seem to spontaneously appear and disappear from the house at random. Each time a computer disappears, a more advanced model appears that promises more speed and hard disk space but still never seems to have more speed or as much room as the previous computer model that it replaced. A final note of thanks must go to the Chinese and Russians who’ve translated my other books, Microsoft Office For Dummiesand Visual Basic For Dummies. The Chinese and Russian editions are the only foreign translations of my books ever to include my previously published references to General Dynamics as a “bomb factory.” Whether translators in other countries purposely omitted this humorous reference or whether it’s just a coincidence that only the Chinese and Russian editions included this reference is unknown. Still, this fact alone provides an endless source of amusement to think that Chinese and Russian readers are privy to an American joking about his country’s nuclear missile factories, while readers in other countries are not. For that reason alone, the Chinese and Russian translators of my books have my eternal gratitude and blessing, not because they happen to be Chinese or Russian, but because they appear to be able to appreciate a joke. 549979 FM.qxd 11/6/03 1:46 PM Page vi Publisher’s Acknowledgments We’re proud of this book; please send us your comments through our online registration form located at www.dummies.com/register/. Some of the people who helped bring this book to market include the following: Acquisitions, Editorial, and Production Media Development Project Coordinator: Erin Smith Project Editor:Andrea C. Boucher Layout and Graphics: Seth Conley, (Previous Edition: Linda Morris) Michael Kruzil, Barry Offringa, Lynsey Osborne, Heather Ryan, Acquisitions Editor:Bob Woerner Shae Wilson, Melanie Wolven Technical Editor:Allen Wyatt Proofreaders: TECHBOOKS Production Editorial Manager:Carol Sheehan Services, Carl William Pierce, Brian H. Walls Permissions Editor:Carmen Krikorian, Indexer: TECHBOOKS Production Service Senior Permissions Editor Media Development Specialist:Travis Silvers Media Development Manager: Laura VanWinkle Media Development Supervisor: Richard Graves Editorial Assistant:Amanda Foxworth Cartoons:Rich Tennant (www.the5thwave.com) Publishing and Editorial for Technology Dummies Richard Swadley,Vice President and Executive Group Publisher Andy Cummings,Vice President and Publisher Mary C. Corder,Editorial Director Publishing for Consumer Dummies Diane Graves Steele,Vice President and Publisher Joyce Pepple,Acquisitions Director Composition Services Gerry Fahey,Vice President of Production Services Debbie Stailey,Director of Composition Services 549979 FM.qxd 11/6/03 1:46 PM Page vii Contents at a Glance Introduction ................................................................1 Part I: Programming a Computer ...................................7 Chapter 1: Learning Computer Programming for the First Time ................................9 Chapter 2: All about Programming Languages ............................................................19 Chapter 3: How to Write a Program ..............................................................................37 Chapter 4: The Tools of a Computer Programmer ......................................................47 Part II: Learning Programming with Liberty BASIC ......59 Chapter 5: Getting Your Hands on a Real Language: Liberty BASIC .........................61 Chapter 6: Handling Input and Output .........................................................................71 Chapter 7: Variables, Constants, and Comments ........................................................79 Chapter 8: Crunching Numbers and Playing with Strings ..........................................95 Chapter 9: Making Decisions with Control Statements ............................................111 Chapter 10: Repeating Yourself with Loops ...............................................................129 Part III: Advanced Programming with Liberty BASIC ..................................................139 Chapter 11: Writing Large Programs by Using Subprograms ..................................141 Chapter 12: Drawing Pictures and Making Noise ......................................................161 Chapter 13: Saving and Retrieving Stuff in Files ........................................................175 Chapter 14: Creating a User Interface .........................................................................191 Chapter 15: Debugging Programs ................................................................................215 Part IV: Dealing with Data Structures .......................223 Chapter 16: Storing Stuff in Arrays ..............................................................................225 Chapter 17: Lumping Related Data in Records ..........................................................235 Chapter 18: Linked Lists and Pointers ........................................................................241 Chapter 19: Playing with Object-Oriented Programming .........................................255 Part V: Algorithms: Telling the Computer What to Do ...............................................267 Chapter 20: Sorting .......................................................................................................269 Chapter 21: Searching ...................................................................................................287 Chapter 22: Optimizing Your Code ..............................................................................299 549979 FM.qxd 11/6/03 1:46 PM Page viii Part VI: Internet Programming ..................................309 Chapter 23: Playing with HTML ...................................................................................311 Chapter 24: Making Interactive Web Pages with JavaScript ....................................339 Chapter 25 Using Java Applets on Web Pages ...........................................................351 Part VII: The Part of Tens .........................................359 Chapter 26: Ten Cool Programming Careers ..............................................................361 Chapter 27: Ten Additional Programming Resources ...............................................371 Appendix: About the CD ...............................................................................................387 Bonus Chapter: Programming in Python....................CD-1 Index ......................................................................395 End-User License Agreement .....................................413 549979 FM.qxd 11/6/03 1:46 PM Page ix Table of Contents Introduction .................................................................1 Who Should Buy This Book ...........................................................................2 How This Book Is Organized ..........................................................................2 Part I: Programming a Computer .........................................................2 Part II: Learning Programming with Liberty BASIC ...........................3 Part III: Advanced Programming with Liberty BASIC ........................3 Part IV: Dealing with Data Structures .................................................3 Part V: Algorithms: Telling the Computer What to Do .....................4 Part VI: Internet Programming .............................................................4 Part VII: The Part of Tens .....................................................................4 How to Use This Book ....................................................................................5 Foolish assumptions .............................................................................5 Icons used in this book .........................................................................5 Part I: Programming a Computer ...................................7 Chapter 1: Learning Computer Programming for the First Time . . . . . .9 Why Learn Computer Programming? ...........................................................9 How Does a Computer Program Work? ......................................................13 Programming is problem-solving ......................................................14 Programming isn’t difficult; it’s just time-consuming .....................15 What Do I Need to Know to Program a Computer? ..................................16 Chapter 2: All about Programming Languages . . . . . . . . . . . . . . . . . . .19 Why So Many Different Programming Languages? ...................................19 The joy of assembly language ............................................................20 C: The portable assembler .................................................................22 High-level programming languages ...................................................24 Rapid Application Development (RAD) programming languages ..................................................................27 Database programming languages ....................................................29 Scripting programming languages ....................................................30 Web-page programming languages ...................................................32 So What’s the Best Programming Language to Learn? .............................34 Chapter 3: How to Write a Program . . . . . . . . . . . . . . . . . . . . . . . . . . . .37 Before You Write Your Program ..................................................................37 The program’s users ...........................................................................38 The target computer ...........................................................................38 Your own programming skill ..............................................................39

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.