Introduction to Programming with Fortran
|
|
- Janice Stephens
- 5 years ago
- Views:
Transcription
1 Introduction to Programming with Fortran
2 Ian D. Chivers and Jane Sleightholme Introduction to Programming with Fortran With Coverage of Fortran 90, 95, 2003, and 77
3 Ian D. Chivers, BSc, PGCEd, MSc, MBCS Rhymney Consulting UK Jane Sleightholme, MSc, MBCS Kings College London UK British Library Cataloguing in Publication Data A catalogue record for this book is available from the British Library Library of Congress Control Number: ISBN-10: eisbn Printed on acid-free paper ISBN-13: Springer-Verlag London Limited 2006 Apart from any fair dealing for the purposes of research or private study, or criticism or review, as permitted under the Copyright, Designs and Patents Act 1988, this publication may only be reproduced, stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers, or in the case of reprographic reproduction in accordance with the terms of licences issued by the Copyright Licensing Agency. Enquiries concerning reproduction outside those terms should be sent to the publishers. The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant laws and regulations and therefore free for general use. The publisher makes no representation, express or implied, with regard to the accuracy of the information contained in this book and cannot accept any legal responsibility or liability for any errors or omissions that may be made. Printed in the United States of America (MVY) Springer Science+Business Media springeronline.com
4 Acknowlegement The material in the book has evolved firstly from our combined experience of working in Computing Services within the University of London at King's College, IDC ( ) and JS (1985 to date) Chelsea College, JS ( ) Imperial College, IDC ( ) in the teaching, advice and support of Fortran and related areas, and secondly in the provision of commercial training courses. The following are some of the organisations we've provided training for: AWE, Aldermaston. Centre for Ecology and Hydrology, Wallingford. Environment Agency, Worthing. The Met Office, Bracknell and Exeter. QinetiQ, Farnborough. Rolls Royce, Derby. Veritas DGC Ltd., Crawley. Westland Helicopters, Yeovil. The examples in the book are based on what will work with compilers that support the Fortran 90 and 95 standards and also support ISO TR and At the time of writing this book there are no compilers that fully support the Fortran 2003 standard. Thanks are due to: The staff and students at King's College, Chelsea College and Imperial College.
5 vi Acknowledgement The people who have attended the commercial courses. Its been great fun teaching you and things have been very lively at times. The people on the Fortran 90 list and comp.lang.fortran. Access to the expertise of several hundred people involved in the use and development of Fortran on a daily basis across a wide range of disciplines is inestimable. The people at NAG for the provision of the Fortran 95 compilers and Nag Tools on the enclosed cd. The staff and facilities at PTR Associates. It is a pleasure training there. The patience of our families during the time required to develop the courses upon which this book is based and whilst preparing the camera-ready copy. Finally Rebecca Mowat, Joanne Cooling, Helen Desmond and Beverley Ford at Springer for their enthusiasm and encouragement! Our King's home page is: All of the program examples can be found there. If you would like to contact us our addresses are: Ian D Chivers: ian.chivers@chiversandbryan.co.uk Jane Sleightholme: jane.sleightholme@kcl.ac.uk
6 Contents 1 Overview Introduction to Computer Systems The core of a computer system Central processor unit CPU Memory Bus Other components of a computer system Disks Others Software Problems Bibliography Introduction to Operating Systems History of operating systems The 1940s The 1950s The 1960s The 1960s and 1970s The 1970s, 1980s, and 1990s Networking Problems Bibliography Introduction to Using a Computer System Files Editors Single-user systems Networked systems Multiuser systems Other useful things to know
7 viii Contents 4.7 Common methods of using computer systems to develop Fortran programs Bibliography Introduction to Problem Solving Natural language Artificial language Notations Resumé Algorithms Top-down Bottom-up Stepwise refinement Modular programming Object oriented programming Systems analysis and design Problem definition Feasibility study and fact finding Analysis Design Detailed design Implementation Evaluation and testing Maintenance Conclusions Problems Bibliography Introduction to Programming Languages Some early theoretical work What is a programming language? Program language development and engineering The early days Fortran The Early Days Fortran Cobol Algol Chomsky and program language development Lisp Snobol Second-generation languages PL/1 and Algol Simula Pascal
8 Contents ix APL Basic C Some other strands in language development Abstraction, stepwise refinement and modules Structured programming Standardisation Ada Modula Modula Other language developments Logo Postscript, TeX and LaTeX Prolog SQL ICON Object orientated programming OOP Oberon and Oberon Smalltalk C Java Visual Basic C# Fortran Fortran ISO technical reports TR15580 and TR Fortran DTR enhanced module facilities Internet resources Standards information Fortran discussion lists Other sources Summary Bibliography Introduction to Programming Language strengths and weaknesses Elements of a programming language Data description statements Control structures Data-processing statements Input and output (I/O) statements Variables name, type and value
9 x Contents 7.4 Notes Some more Fortran rules Fortran character set Good programming guidelines Compilers Program development Problems Arithmetic Rounding and truncation Time taken for light to travel from the Sun to Earth The PARAMETER statement Range, precision and size of numbers Health warning: optional reading, beginners are advised to leave until later Selecting different INTEGER kind types Selecting different REAL kind types Specifying kind types for literal integer and real constants Positional number systems Bit data type and representation model Integer data type and representation model Real data type and representation model IEEE Testing the numerical representation of different kind types on a system Binary representation of different integer kind type numbers Binary representation of a real number Summary of how to select the appropriate kind type Variable status Summary Problems Bibliography Arrays 1: Some Fundamentals Tables of data Telephone directory Book catalogue Examination marks or results Monthly rainfall Arrays in Fortran The DIMENSION attribute An index Control structure Monthly rainfall
10 Contents xi Example 1: Rainfall People's weights Example 2: Setting array size with a parameter Summary Problems Arrays 2: Further Examples Varying the array size at run time Higher-dimension arrays A map Example 3: Sensible tabular output Example 4: Average of three sets of values Example 5: Booking arrangements in a theatre or cinema Additional forms of the DIMENSION attribute and DO loop statement Example 6: Voltage from 20 to +20 volts Example 7: Longitude from 180 to Notes The DO loop and straight repetition Example 8: Table of temperatures Example 9: Means and standard deviations Summary Problems Whole Array and Additional Array Features Terminology Rank Bounds Extent Size Shape Conformable Array element ordering Whole array manipulation Assignment Expressions Array sections Rank 1 array example Rank 2 array example Array constructors Rank 1 array example explicit values Rank 1 array example and implied DO loop Rank 1 array example and the DOT_PRODUCT intrinsic Rank 1 example with step size of 2 in implied DO loop
11 xii Contents Rank 1 array and the SUM intrinsic function Rank 2 arrays and the SUM intrinsic function Masked array assignment and the WHERE statement Notes The FORALL statement and FORALL construct Syntax Array element ordering and physical and virtual memory Summary Problems Bibliography Output of Results Integers I format or edit descriptor Reals F format or edit descriptor Metric and imperial conversion Overflow and underflow Reals E format or edit descriptor Simple E format example Spaces Characters A format or edit descriptor Headings Mixed type output in a FORMAT statement Common mistakes OPEN (and CLOSE) The OPEN statement Writing Repetition Some more examples Implied DO loops and array sections for array output Formatting for a line printer Mechanics of carriage control Generating a new line on both line printers and terminals Timing of writing formatted files Timing of writing unformatted files Summary Problems Reading in Data Reading from the terminal or keyboard versus reading from files Fixed fields on input Integers and the I format Reals and the F format Reals and the E Format
12 Contents xiii 13.3 Blanks, nulls and zeros Characters Skipping spaces and lines Reading File manipulation again Reading using array sections Timing of reading formatted files Timing of reading unformatted files Errors when reading Summary Problems Files Data files in Fortran Summary of options on OPEN More foolproof I/O Summary Problems Functions An introduction to predefined functions and their use Example 1: Simple function usage Generic functions Example 2: The ABS generic function Elemental functions Example 3: Elemental function use Transformational functions Example 4: Simple transformational use Example 5: Intrinsic DOT_PRODUCT use Notes on function usage Example 6: Easter Complete list of predefined functions Inquiry functions Transfer and conversion functions Computational functions Array functions Predefined subroutines Supplying your own functions Example 7: Simple user defined function An introduction to the scope of variables and local variables Recursive functions Example 8: Recursive factorial evaluation
13 xiv Contents Example 9: Recursive version of GCD Example 10: After removing recursion Pure functions Elemental functions Internal functions Example 11: Stirling's approximation Resumé Function syntax Rules and restrictions Problems Bibliography Recursion and problem solving Control Structures Selection among courses of action The BLOCK IF statement Example 1: Quadratic roots Note Example 2: Date calculation The CASE statement Example 3: Simple calculator Example 4: Counting vowels, consonants, etc The three forms of the DO statement Example 5: Sentinel usage CYCLE and EXIT Example 6: e**x evaluation Example 7: Wave breaking on an offshore reef Summary Control structure formal syntax Problems Bibliography Characters Character input Character operators Character substrings Character functions Collating sequence Summary Problems Complex Example Complex and kind type Summary
14 Contents xv 18.4 Problems Logical I/O Summary Problems User Defined Types Example 1: Dates Type definition Variable definition Example 2: Address lists Example 3: Nested user defined types Problems Bibliography An Introduction to Pointers Some basic pointer concepts The ASSOCIATED intrinsic function CVF 6.6C Intel, Windows, Lahey, Windows 5.70f NAG, Windows, Salford Referencing A and B before assignment CVF Intel, Windows Lahey, Windows 5.70f NAG, Windows Salford The NULL intrinsic Assignment via = Singly linked list Reading in an arbitrary quantity of numeric data Arrays of pointers Arrays of pointers and variable sized data sets Arrays of pointers and variable sized data sets Memory leak examples Nonstandard pointer examples Problems Introduction to Subroutines Example Defining a subroutine Referencing a subroutine
15 xvi Contents Dummy arguments or parameters and actual arguments Intent Local variables Local variables and the SAVE attribute Scope of variables Status of the action carried out in the subroutine Example Example 3 Quadratic example with interface blocks Example 4 Quadratic example and the CONTAINS statement Why bother? Summary Problems Subroutines: More on parameter passing Explicit-shape array Assumed-shape array Deferred-shape array Automatic arrays Assumed-size array Fortran 77 style Adjustable arrays Fortran 77 style Common code example Explicit-shape example Assumed-shape example Notes Characters arguments and assumed-length dummy arguments Rank 2 and higher arrays as parameters Explicit-shape dummy arrays Assumed-shape dummy array arguments Notes Using the intrinsic functions MATMUL and TRANSPOSE Automatic arrays and median calculation Internal subroutines and scope Timing the selection sort algorithm Timing Alternative median calculation algorithm Timing Recursive subroutines Quicksort Note Interface blocks Note Recursive subroutine Note Flexible design Note Timing information Summary
16 Contents xvii Problems Bibliography Commercial numerical and statistical subroutine libraries An Introduction to Modules Modules for global data Modules for precision specification and constant definition Note Modules for sharing arrays of data Modules for derived data types Person data type Modules containing procedures Quicksort example Modules containing procedures Statistics example The solution of linear equations using Gaussian elimination Notes Module for kind type Deferred-shape arrays Intrinisic functions MAXVAL and MAXLOC Notes on module usage and compilation Summary Problems Bibliography Converting from Fortran Deleted features Obsolescent features Arithmetic IF Real and double precision DO control variables Shared DO termination and non-enddo termination Alternate RETURN PAUSE statement ASSIGN and assigned GOTO statements Assigned FORMAT statements H editing Better alternatives Example Example Commercial conversion tools NAG Polyhedron Original Fortran Fortran 77 Version Fortran 90 Version Summary
17 xviii Contents 25.8 Problems Case Studies Using linked lists for sparse matrix problems Inner product of two sparse vectors Solving a system of first-order ordinary differential equations using Runga Kutta Merson Note: Alternative form of the ALLOCATE statement Note: Automatic arrays Note: Dummy procedure arguments Keyword and optional arguments Generic procedures A function that returns a variable length array Operator and assignment overloading A subroutine to extract the diagonal elements of a matrix Perfectly balanced tree Pure function example Pure constraints Elemental function example Elemental constraints Elemental subroutine example Date class Graphics example dislin Problems Bibliography ISO TR IEEE Arithmetic History IEEE 754 Specifications Single precision floating point format Double precision floating point format Two classes of extended floating point formats Accuracy requirements Base conversion Converting between decimal and binary floating point formats and vice versa Exception handling Rounding directions Rounding precisions Resumé ISO TR IEEE_FEATURES module IEEE_EXCEPTIONS module IEEE_ARITHMETIC module IEEE data type selection
18 Contents xix General support enquiry functions Rounding modes Number classification Arithmetic operations Summary Bibliography Web-based sources Hardware sources Operating Systems Java and IEEE C and IEEE ISO TR Allocatable Enhancements Allocatable dummy array example Allocatable function result example Allocatable structure component example Summary Problem Fortran 2003 and the Enhanced Module Facility Derived type enhancements Object oriented programming support Data manipulation enhancements Input/output enhancements Interoperability with the C programming language Procedure pointers Scoping enhancements Support for IEC (IEEE 754) exceptions and arithmetic Support for international usage: (ISO 10646) Enhanced integration with the host operating system The ASSOCIATE construct Enhanced modules facility Summary Parallel Programming MPI Co array Fortran Openmp PVM HPF Parallel programming and high-performance computing Summary Miscellaneous
19 xx Contents 31.1 Program development and software engineering Modules Programming style Programs should be easy to read Programming style Programs should behave well Data structures Algorithms Recursion Structured programming and the GOTO statement Efficiency, space-time trade-off Program testing Simple debugging techniques Software tools Cross referencing Pretty print NAGWare f90 Tools Numerical software sources Numerical Algorithms Group Visual Numerics Netlib Coda Bibliography: All sources (bar one) taken from comp.software-eng Software engineering Programming style Software testing Fun A Glossary B Sample Program Examples C ASCII Character Set D Intrinsic Functions and Procedures E English and Latin Texts F Coded Text Extract G Formal syntax H Compiler Options Index
INTRODUCING FORTRAN 90
INTRODUCING FORTRAN 90 Springer Berlin Heidelberg New Yorlc Barcelona Budapest HongKong London Milan Paris Tokyo Ian Chivers and Jane Sleightholme INTRODUCING FORTRAN 90, Springer Ian David Chivers, B.Sc.,
More informationPROBLEM SOLVING WITH FORTRAN 90
David R. Brooks PROBLEM SOLVING WITH FORTRAN 90 FOR SCIENTISTS AND ENGINEERS Springer Contents Preface v 1.1 Overview for Instructors v 1.1.1 The Case for Fortran 90 vi 1.1.2 Structure of the Text vii
More informationSymbolicC++: An Introduction to Computer Algebra using Object-Oriented Programming
SymbolicC++: An Introduction to Computer Algebra using Object-Oriented Programming Springer-Verlag London Ltd. Tan Kiat Shi, Willi-Hans Steeb and Yorick Hardy SymbolicC ++: An Introdurtion to Computer
More informationWeb Development with Java
Web Development with Java Tim Downey Web Development with Java Using Hibernate, JSPs and Servlets Tim Downey, BS, MS Florida International University Miami, FL 33199, USA British Library Cataloguing in
More informationPreface... (vii) CHAPTER 1 INTRODUCTION TO COMPUTERS
Contents Preface... (vii) CHAPTER 1 INTRODUCTION TO COMPUTERS 1.1. INTRODUCTION TO COMPUTERS... 1 1.2. HISTORY OF C & C++... 3 1.3. DESIGN, DEVELOPMENT AND EXECUTION OF A PROGRAM... 3 1.4 TESTING OF PROGRAMS...
More informationInside Relational Databases with Examples in Access
Inside Relational Databases with Examples in Access Inside Relational Databases with Examples in Access Mark Whitehorn and Bill Marklyn 123 Mark Whitehorn Applied Computing Division, University of Dundee,
More informationInterfacing with C++
Interfacing with C++ Jayantha Katupitiya Kim Bentley Interfacing with C++ Programming Real-World Applications ABC Dr. Jayantha Katupitiya Senior Lecturer School of Mechanical and Manufacturing Engineering
More information2 3. Syllabus Time Event 9:00{10:00 morning lecture 10:00{10:30 morning break 10:30{12:30 morning practical session 12:30{1:30 lunch break 1:30{2:00 a
1 Syllabus for the Advanced 3 Day Fortran 90 Course AC Marshall cuniversity of Liverpool, 1997 Abstract The course is scheduled for 3 days. The timetable allows for two sessions a day each with a one hour
More informationStereo Scene Flow for 3D Motion Analysis
Stereo Scene Flow for 3D Motion Analysis Andreas Wedel Daniel Cremers Stereo Scene Flow for 3D Motion Analysis Dr. Andreas Wedel Group Research Daimler AG HPC 050 G023 Sindelfingen 71059 Germany andreas.wedel@daimler.com
More informationFoundations of 3D Graphics Programming
Foundations of 3D Graphics Programming Jim X. Chen Edward J. Wegman Foundations of 3D Graphics Programming Using JOGL and Java3D With 139 Figures Jim X. Chen, PhD Computer Science Department George Mason
More informationCONTENTS. PART 1 Structured Programming 1. 1 Getting started 3. 2 Basic programming elements 17
List of Programs xxv List of Figures xxix List of Tables xxxiii Preface to second version xxxv PART 1 Structured Programming 1 1 Getting started 3 1.1 Programming 3 1.2 Editing source code 5 Source code
More informationEssential Series. Springer-Verlag London Ltd.
Essential Series Springer-Verlag London Ltd. Also in this series: Essential Visual Basic 4.0 fast 3-540-19998-5 Essential Delphi 2.0 fast 3-540-76026-1 Essential Java fast 3-540-76052-0 Essential Visual
More informationFundamentals of the Java Programming Language
Fundamentals of the Java Programming Language Student Guide SL-110 REV E D61798GC10 Edition 1.0 2009 D62399 Copyright 2006, 2009, Oracle and/or its affiliates. All rights reserved. Disclaimer This document
More informationOrganization of Programming Languages (CSE452) Why are there so many programming languages? What makes a language successful?
Organization of Programming Languages (CSE452) Instructor: Dr. B. Cheng Fall 2004 1 Why are there so many programming languages? Evolution -- we've learned better ways of doing things over time Socio-economic
More informationNAGWare f95 Recent and Future Developments
NAGWare f95 Recent and Future Developments Malcolm Cohen The Numerical Algorithms Group Ltd., Oxford Nihon Numerical Algorithms Group KK, Tokyo Contents 1. Standard Fortran 2. High Performance 3. NAGWare
More informationIntroduction to Computer Programming Using FORTRAN 77
Introduction to Computer Programming Using FORTRAN 77 Al-Dhaher, K. Garout, Y. Lafi, A. Al-Muhtaseb, H. Nazzal, A. Saeed, M. Yazdani, J. Zeidan, Y. August 1995 Second Edition Information and Computer Science
More informationIntroduction. A. Bellaachia Page: 1
Introduction 1. Objectives... 2 2. Why are there so many programming languages?... 2 3. What makes a language successful?... 2 4. Programming Domains... 3 5. Language and Computer Architecture... 4 6.
More informationAn Introduction to Programming with IDL
An Introduction to Programming with IDL Interactive Data Language Kenneth P. Bowman Department of Atmospheric Sciences Texas A&M University AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN
More informationName :. Roll No. :... Invigilator s Signature : INTRODUCTION TO PROGRAMMING. Time Allotted : 3 Hours Full Marks : 70
Name :. Roll No. :..... Invigilator s Signature :.. 2011 INTRODUCTION TO PROGRAMMING Time Allotted : 3 Hours Full Marks : 70 The figures in the margin indicate full marks. Candidates are required to give
More informationENGINEERING PROBLEM SOLVING WITH C++
ENGINEERING PROBLEM SOLVING WITH C++ Second Edition Delores M. Etter Electrical Engineering Department United States Naval Academy Jeanine A. Ingber Training Consultant Sandia National Laboratories Upper
More informationCompuScholar, Inc. Alignment to Nevada "Computer Science" Course Standards
CompuScholar, Inc. Alignment to Nevada "Computer Science" Course Standards Nevada Course Details: Course Name: Computer Science Primary Cluster: Information and Media Technologies Standards Course Code(s):
More informationExcel Programming with VBA (Macro Programming) 24 hours Getting Started
Excel Programming with VBA (Macro Programming) 24 hours Getting Started Introducing Visual Basic for Applications Displaying the Developer Tab in the Ribbon Recording a Macro Saving a Macro-Enabled Workbook
More informationContents. 1 Introduction to Computers, the Internet and the World Wide Web 1. 2 Introduction to C Programming 26
Preface xix 1 Introduction to Computers, the Internet and the World Wide Web 1 1.1 Introduction 2 1.2 What Is a Computer? 4 1.3 Computer Organization 4 1.4 Evolution of Operating Systems 5 1.5 Personal,
More informationFortran Coding Standards and Style
Fortran Coding Standards and Style The Fortran Company Version 20160112 Copyright 2015-2016, The Fortran Company All rights reserved. Redistribution, with or without modification, is permitted provided
More informationLECTURE 18. Control Flow
LECTURE 18 Control Flow CONTROL FLOW Sequencing: the execution of statements and evaluation of expressions is usually in the order in which they appear in a program text. Selection (or alternation): a
More informationFortran 90 - A thumbnail sketch
Fortran 90 - A thumbnail sketch Michael Metcalf CERN, Geneva, Switzerland. Abstract The main new features of Fortran 90 are presented. Keywords Fortran 1 New features In this brief paper, we describe in
More informationMastering. Pascal and Delphi Programming
Mastering Pascal and Delphi Programming MACMILLAN MASTER SERIES Accounting Advanced English Language Advanced Pure Mathematics Arabic Banking Basic Management Biology British Politics Business Administration
More informationInformatica 3 Syntax and Semantics
Informatica 3 Syntax and Semantics Marcello Restelli 9/15/07 Laurea in Ingegneria Informatica Politecnico di Milano Introduction Introduction to the concepts of syntax and semantics Binding Variables Routines
More informationProgramming Languages, Summary CSC419; Odelia Schwartz
Programming Languages, Summary CSC419; Odelia Schwartz Chapter 1 Topics Reasons for Studying Concepts of Programming Languages Programming Domains Language Evaluation Criteria Influences on Language Design
More informationContents. Figures. Tables. Examples. Foreword. Preface. 1 Basics of Java Programming 1. xix. xxi. xxiii. xxvii. xxix
PGJC4_JSE8_OCA.book Page ix Monday, June 20, 2016 2:31 PM Contents Figures Tables Examples Foreword Preface xix xxi xxiii xxvii xxix 1 Basics of Java Programming 1 1.1 Introduction 2 1.2 Classes 2 Declaring
More informationIndex. classes, 47, 228 coarray examples, 163, 168 copystring, 122 csam, 125 csaxpy, 119 csaxpyval, 120 csyscall, 127 dfetrf,14 dfetrs, 14
Index accessor-mutator routine example in a module, 7 PUBLIC or PRIVATE components, 6 ACM, ix editors of CALGO, ix Adams, Brainerd et al., see books, Fortran reference Airy s equation boundary value problem,
More informationSRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR
SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS QUESTION BANK (2017-2018) Course / Branch : M.Sc CST Semester / Year : EVEN / II Subject Name
More informationChapter 5 Names, Binding, Type Checking and Scopes
Chapter 5 Names, Binding, Type Checking and Scopes Names - We discuss all user-defined names here - Design issues for names: -Maximum length? - Are connector characters allowed? - Are names case sensitive?
More informationLecture 09. Ada to Software Engineering. Mr. Mubashir Ali Lecturer (Dept. of Computer Science)
Lecture 09 Ada to Software Engineering Mr. Mubashir Ali Lecturer (Dept. of dr.mubashirali1@gmail.com 1 Summary of Previous Lecture 1. ALGOL 68 2. COBOL 60 3. PL/1 4. BASIC 5. Early Dynamic Languages 6.
More informationProgramming Languages FILS Andrei Vasilateanu
Programming Languages FILS 2014-2015 Andrei Vasilateanu Course Master: Administration Andrei Vasilateanu, andraevs@gmail.com Teaching Assistants: Radu Serban Grading: Final exam 40% Laboratory 60% 2 Tests
More informationProgramming for Problem Solving 105A L T P Credit Major Minor Total Time
ES- Programming for Problem Solving 105A L T P Credit Major Minor Total Time Test Test 3 - - 3 75 25 100 3h Purpose To familiarize the students with the basics of Computer System and C Programming Course
More informationPreface to the Second Edition Preface to the First Edition Brief Contents Introduction to C++ p. 1 A Review of Structures p.
Preface to the Second Edition p. iii Preface to the First Edition p. vi Brief Contents p. ix Introduction to C++ p. 1 A Review of Structures p. 1 The Need for Structures p. 1 Creating a New Data Type Using
More informationMASTERING COBOL PROGRAMMING
MASTERING COBOL PROGRAMMING MACMILLAN MASTER SERIES Banking Basic English Law Basic Management Biology British Politics Business Communication Business Microcomputing Chemistry COBOL Programming Commerce
More informationLogic Programming with Prolog
Logic Programming with Prolog Max Bramer Logic Programming with Prolog Max Bramer, BSc, PhD, CEng, FBCS, FIEE, FRSA, ILTM Department of Computer Science and Software Engineering University of Portsmouth
More informationWelcome to Starting Out with Programming Logic and Design, Third Edition.
Welcome to Starting Out with Programming Logic and Design, Third Edition. This book uses a language-independent approach to teach programming concepts and problem-solving skills, without assuming any previous
More informationC-LANGUAGE CURRICULAM
C-LANGUAGE CURRICULAM Duration: 2 Months. 1. Introducing C 1.1 History of C Origin Standardization C-Based Languages 1.2 Strengths and Weaknesses Of C Strengths Weaknesses Effective Use of C 2. C Fundamentals
More informationGraphics Programming in c++
Graphics Programming in c++ Springer London Berlin Heidelberg New York Barcelona Budapest Hong Kong Milan Paris Santa Clara Singapore Tokyo Mark Walmsley Graphics Programming in c++ Writing Graphics Applications
More informationFortran 2003 and Beyond. Bill Long, Cray Inc. 17-May-2005
Fortran 2003 and Beyond Bill Long, Cray Inc. 17-May-2005 Fortran 2003 and Fortran 2008 Fortran is now ISO/IEC 1539:1-2004 Common name is Fortran 2003 or f03 This cancels and replaces the previous standard,
More informationInternational Standards Organisation. Parameterized Derived Types. Fortran
International Standards Organisation Parameterized Derived Types in Fortran Technical Report defining extension to ISO/IEC 1539-1 : 1996 {Produced 4-Jul-96} THIS PAGE TO BE REPLACED BY ISO CS ISO/IEC 1
More informationObject-Oriented Programming and Java
Object-Oriented Programming and Java Danny Poo Derek Kiong Swarnalatha Ashok Object-Oriented Programming and Java Second edition Dr Danny Poo School of Computing National University of Singapore, Singapore
More informationG Programming Languages - Fall 2012
G22.2110-003 Programming Languages - Fall 2012 Lecture 2 Thomas Wies New York University Review Last week Programming Languages Overview Syntax and Semantics Grammars and Regular Expressions High-level
More informationTechnical Specification on further interoperability with C
Technical Specification on further interoperability with C John Reid, ISO Fortran Convener Fortran 2003 (or 2008) provides for interoperability of procedures with nonoptional arguments that are scalars,
More informationUnit-II Programming and Problem Solving (BE1/4 CSE-2)
Unit-II Programming and Problem Solving (BE1/4 CSE-2) Problem Solving: Algorithm: It is a part of the plan for the computer program. An algorithm is an effective procedure for solving a problem in a finite
More informationObject-Oriented Programming and Data Structures
Java Methods A & AB Object-Oriented Programming and Data Structures Maria Litvin Phillips Academy, Andover, Massachusetts Gary Litvin Skylight Software, Inc. Skylight Publishing Andover, Massachusetts
More informationPart I Basic Concepts 1
Introduction xiii Part I Basic Concepts 1 Chapter 1 Integer Arithmetic 3 1.1 Example Program 3 1.2 Computer Program 4 1.3 Documentation 5 1.4 Input 6 1.5 Assignment Statement 7 1.5.1 Basics of assignment
More informationPhilip Andrew Simpson. FPGA Design. Best Practices for Team-based Reuse. Second Edition
FPGA Design Philip Andrew Simpson FPGA Design Best Practices for Team-based Reuse Second Edition Philip Andrew Simpson San Jose, CA, USA ISBN 978-3-319-17923-0 DOI 10.1007/978-3-319-17924-7 ISBN 978-3-319-17924-7
More informationJava Quick Syntax Reference. Second Edition. Mikael Olsson
Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Mikael Olsson Hammarland, Länsi-Suomi, Finland ISBN-13 (pbk):
More informationCourse Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++
Introduction to Programming in C++ Course Text Programming in C++, Zyante, Fall 2013 edition. Course book provided along with the course. Course Description This course introduces programming in C++ and
More informationGeorge Grätzer. Practical L A TEX
Practical L A TEX George Grätzer Practical L A TEX 123 George Grätzer Toronto, ON, Canada Additional material to this book can be downloaded from http://extras.springer.com ISBN 978-3-319-06424-6 ISBN
More informationNAGWare f95 and reliable, portable programming.
NAGWare f95 and reliable, portable programming. Malcolm Cohen The Numerical Algorithms Group Ltd., Oxford How to detect errors using NAGWare f95, and how to write portable, reliable programs. Support for
More informationIntroduction Primitive Data Types Character String Types User-Defined Ordinal Types Array Types. Record Types. Pointer and Reference Types
Chapter 6 Topics WEEK E FOUR Data Types Introduction Primitive Data Types Character String Types User-Defined Ordinal Types Array Types Associative Arrays Record Types Union Types Pointer and Reference
More informationThe Designer's Guide to VHDL Second Edition
The Designer's Guide to VHDL Second Edition Peter J. Ashenden EDA CONSULTANT, ASHENDEN DESIGNS PTY. VISITING RESEARCH FELLOW, ADELAIDE UNIVERSITY Cl MORGAN KAUFMANN PUBLISHERS An Imprint of Elsevier SAN
More informationTypes. What is a type?
Types What is a type? Type checking Type conversion Aggregates: strings, arrays, structures Enumeration types Subtypes Types, CS314 Fall 01 BGRyder 1 What is a type? A set of values and the valid operations
More informationCHAPTER 1 Introduction to Computers and Programming CHAPTER 2 Introduction to C++ ( Hexadecimal 0xF4 and Octal literals 031) cout Object
CHAPTER 1 Introduction to Computers and Programming 1 1.1 Why Program? 1 1.2 Computer Systems: Hardware and Software 2 1.3 Programs and Programming Languages 8 1.4 What is a Program Made of? 14 1.5 Input,
More informationCSc 10200! Introduction to Computing. Lecture 1 Edgardo Molina Fall 2013 City College of New York
CSc 10200! Introduction to Computing Lecture 1 Edgardo Molina Fall 2013 City College of New York 1 Introduction to Computing Lectures: Tuesday and Thursday s (2-2:50 pm) Location: NAC 1/202 Recitation:
More information1 OBJECT-ORIENTED PROGRAMMING 1
PREFACE xvii 1 OBJECT-ORIENTED PROGRAMMING 1 1.1 Object-Oriented and Procedural Programming 2 Top-Down Design and Procedural Programming, 3 Problems with Top-Down Design, 3 Classes and Objects, 4 Fields
More informationTable of Contents. Preface... xxi
Table of Contents Preface... xxi Chapter 1: Introduction to Python... 1 Python... 2 Features of Python... 3 Execution of a Python Program... 7 Viewing the Byte Code... 9 Flavors of Python... 10 Python
More informationLow-Level Languages. Computer Programs and Programming Languages
Computer Programs and Programming Languages What is a computer program? Set of instructions that directs computer to perform tasks Programming used to write instructions 1 Computer Programs and Programming
More informationProgramming. Principles and Practice Using C++ Bjarne Stroustrup. / Addison-Wesley. Second Edition
Programming Principles and Practice Using C++ Second Edition Bjarne Stroustrup / Addison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid
More informationLECTURE 17. Expressions and Assignment
LECTURE 17 Expressions and Assignment EXPRESSION SYNTAX An expression consists of An atomic object, e.g. number or variable. An operator (or function) applied to a collection of operands (or arguments)
More informationNOTE: Answer ANY FOUR of the following 6 sections:
A-PDF MERGER DEMO Philadelphia University Lecturer: Dr. Nadia Y. Yousif Coordinator: Dr. Nadia Y. Yousif Internal Examiner: Dr. Raad Fadhel Examination Paper... Programming Languages Paradigms (750321)
More information1 Chapter Plan...1 Exercise - Simple Program...2
Chapter 1: Introduction Exercise - Simple Program...2 2 Subject Matter...4 1. What is PL/1?...4 2. PL/1: Strengths and Advantages...5 3. Program Structure...6 4. Data Types...7 5. Built-in Functions...8
More informationCERTIFICATE IN WEB PROGRAMMING
COURSE DURATION: 6 MONTHS CONTENTS : CERTIFICATE IN WEB PROGRAMMING 1. PROGRAMMING IN C and C++ Language 2. HTML/CSS and JavaScript 3. PHP and MySQL 4. Project on Development of Web Application 1. PROGRAMMING
More informationPython Scripting for Computational Science
Hans Petter Langtangen Python Scripting for Computational Science Third Edition With 62 Figures 43 Springer Table of Contents 1 Introduction... 1 1.1 Scripting versus Traditional Programming... 1 1.1.1
More informationComputer Programming C++ (wg) CCOs
Computer Programming C++ (wg) CCOs I. The student will analyze the different systems, and languages of the computer. (SM 1.4, 3.1, 3.4, 3.6) II. The student will write, compile, link and run a simple C++
More information0 Mastering Microsoft Office
0 Mastering Microsoft Office MACMILLAN MASTER SERIES Accounting Advanced English Language Advanced Pure Mathematics Arabic Banking Basic Management Biology British Politics Business Administration Business
More informationCLASSIC DATA STRUCTURES IN JAVA
CLASSIC DATA STRUCTURES IN JAVA Timothy Budd Oregon State University Boston San Francisco New York London Toronto Sydney Tokyo Singapore Madrid Mexico City Munich Paris Cape Town Hong Kong Montreal CONTENTS
More informationPractical C++ Programming
SECOND EDITION Practical C++ Programming Steve Oualline O'REILLY' Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Preface xv Part I. The Basics 1. What Is C++? 3 A Brief History of C++ 3 C++
More informationProgrammiersprachen (Programming Languages)
2016-05-13 Preface Programmiersprachen (Programming Languages) coordinates: lecturer: web: usable for: requirements: No. 185.208, VU, 3 ECTS Franz Puntigam http://www.complang.tuwien.ac.at/franz/ps.html
More informationUnderstanding and Writing Compilers
Understanding and Writing Compilers Macmillan Computer Science Series Consulting Editor Professor F. H. Sumner, University of Manchester G. M. Birtwistle, Discrete Event Modelling on Simula Richard Bornat,
More informationThis course is designed for web developers that want to learn HTML5, CSS3, JavaScript and jquery.
HTML5/CSS3/JavaScript Programming Course Summary Description This class is designed for students that have experience with basic HTML concepts that wish to learn about HTML Version 5, Cascading Style Sheets
More informationSummary of Contents LIST OF FIGURES LIST OF TABLES
Summary of Contents LIST OF FIGURES LIST OF TABLES PREFACE xvii xix xxi PART 1 BACKGROUND Chapter 1. Introduction 3 Chapter 2. Standards-Makers 21 Chapter 3. Principles of the S2ESC Collection 45 Chapter
More information[CHAPTER] 1 INTRODUCTION 1
FM_TOC C7817 47493 1/28/11 9:29 AM Page iii Table of Contents [CHAPTER] 1 INTRODUCTION 1 1.1 Two Fundamental Ideas of Computer Science: Algorithms and Information Processing...2 1.1.1 Algorithms...2 1.1.2
More informationPractical Exercise 1 Question 1: The Hello World Program Write a Fortran 95 program to write out Hello World on the screen.
Practical Exercise Question : The Hello World Program Write a Fortran 95 program to write out Hello World on the screen. Question : Some Division One Results A particular number can be expressed as the
More information"Charting the Course to Your Success!" MOC D Querying Microsoft SQL Server Course Summary
Course Summary Description This 5-day instructor led course provides students with the technical skills required to write basic Transact-SQL queries for Microsoft SQL Server 2014. This course is the foundation
More informationTopic I. Introduction and motivation References: Chapter 1 of Concepts in programming languages by J. C. Mitchell. CUP, 2003.
Topic I Introduction and motivation References: Chapter 1 of Concepts in programming languages by J. C. Mitchell. CUP, 2003. Chapter 1 of Programming languages: Design and implementation (3RD EDITION)
More informationIntroduction to Programming Using Java (98-388)
Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;
More informationWelcome to Teach Yourself Acknowledgments Fundamental C++ Programming p. 2 An Introduction to C++ p. 4 A Brief History of C++ p.
Welcome to Teach Yourself p. viii Acknowledgments p. xv Fundamental C++ Programming p. 2 An Introduction to C++ p. 4 A Brief History of C++ p. 6 Standard C++: A Programming Language and a Library p. 8
More informationCompiler Support for the Fortran 2003 and 2008 Standards Revision 17
Introduction Compiler Support for the Fortran 2003 and 2008 Standards Revision 17 Ian D Chivers & Jane Sleightholme Ian Chivers: Rhymney Consulting, London. Jane Sleightholme: FortranPlus, London. ian@rhymneyconsulting.co.uk
More informationF# for Scientists. Jon Harrop Flying Frog Consultancy Ltd. Foreword by Don Syme A JOHN WILEY & SONS, INC., PUBLICATION WILEY
F# for Scientists Jon Harrop Flying Frog Consultancy Ltd. Foreword by Don Syme WILEY A JOHN WILEY & SONS, INC., PUBLICATION Preface Acknowledgments List of Figi ares List of Tables Acronyms 1 Introduction
More informationChapter 3:: Names, Scopes, and Bindings (cont.)
Chapter 3:: Names, Scopes, and Bindings (cont.) Programming Language Pragmatics Michael L. Scott Review What is a regular expression? What is a context-free grammar? What is BNF? What is a derivation?
More informationChapter 4. Fortran Arrays
Chapter 4. Fortran Arrays Fortran arrays are any object with the dimension attribute. In Fortran 90/95, and in HPF, arrays may be very different from arrays in older versions of Fortran. Arrays can have
More informationAbsolute C++ Walter Savitch
Absolute C++ sixth edition Walter Savitch Global edition This page intentionally left blank Absolute C++, Global Edition Cover Title Page Copyright Page Preface Acknowledgments Brief Contents Contents
More informationChapter 3:: Names, Scopes, and Bindings (cont.)
Chapter 3:: Names, Scopes, and Bindings (cont.) Programming Language Pragmatics Michael L. Scott Review What is a regular expression? What is a context-free grammar? What is BNF? What is a derivation?
More informationVALLIAMMAI ENGINEERING COLLEGE
VALLIAMMAI ENGINEERING COLLEGE SRM Nagar, Kattankulathur 603 203 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK B.E. - Electrical and Electronics Engineering IV SEMESTER CS6456 - OBJECT ORIENTED
More informationPace University. Fundamental Concepts of CS121 1
Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction
More informationQuestion No: 1 ( Marks: 1 ) - Please choose one One difference LISP and PROLOG is. AI Puzzle Game All f the given
MUHAMMAD FAISAL MIT 4 th Semester Al-Barq Campus (VGJW01) Gujranwala faisalgrw123@gmail.com MEGA File Solved MCQ s For Final TERM EXAMS CS508- Modern Programming Languages Question No: 1 ( Marks: 1 ) -
More informationMPI: A Message-Passing Interface Standard
MPI: A Message-Passing Interface Standard Version 2.1 Message Passing Interface Forum June 23, 2008 Contents Acknowledgments xvl1 1 Introduction to MPI 1 1.1 Overview and Goals 1 1.2 Background of MPI-1.0
More informationAbout Codefrux While the current trends around the world are based on the internet, mobile and its applications, we try to make the most out of it. As for us, we are a well established IT professionals
More informationCOMPUTING AND INFORMATICS. Time: Three hours. Maximum marks: 100
S'05 : 2 FN: AN203/ AD 303 (03) COMPUTING AND INFORMATICS. Time: Three hours Maximum marks: 100 Answer FIVEquestions, taking ANYTWO'from Group A, ANYTWOfrom Group B and ALLfrom ~roup C. All parts of a
More informationAn Object Oriented Programming with C
An Object Oriented Programming with C By Tanmay Kasbe Dr. Ravi Singh Pippal IDEA PUBLISHING WWW.ideapublishing.in i Publishing-in-support-of, IDEA PUBLISHING Block- 9b, Transit Flats, Hudco Place Extension
More informationAdvanced R. V!aylor & Francis Group. Hadley Wickham. ~ CRC Press
~ CRC Press V!aylor & Francis Group Advanced R Hadley Wickham ')'l If trlro r r 1 Introduction 1 1.1 Who should read this book 3 1.2 What you will get out of this book 3 1.3 Meta-techniques... 4 1.4 Recommended
More informationIntroduction to Computers and C++ Programming p. 1 Computer Systems p. 2 Hardware p. 2 Software p. 7 High-Level Languages p. 8 Compilers p.
Introduction to Computers and C++ Programming p. 1 Computer Systems p. 2 Hardware p. 2 Software p. 7 High-Level Languages p. 8 Compilers p. 9 Self-Test Exercises p. 11 History Note p. 12 Programming and
More informationChapter 1: An Overview of Computers and Programming Languages. Objectives. Objectives (cont d.) Introduction
Chapter 1: An Overview of Computers and Programming Languages Objectives Objectives (cont d.) In this chapter, you will: Learn about different types of computers Explore hardware and software Learn about
More informationITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University
ITC213: STRUCTURED PROGRAMMING Bhaskar Shrestha National College of Computer Studies Tribhuvan University Lecture 03: Program Development Life Cycle Readings: Not Covered in Textbook Program Development
More information