Documents Found!
As seen in
Less Work, Better Grades
Join
Course Hero
Access
best resources
Ace
your classes
Ace your courses with Course Hero!
|
|
|
Study Smarter, Score Higher
Here are the top 5 related documents
...Spring 09: CSci 5421-Advanced Algorithms and Data Structures
Sample Solution
(Prepared by Ravi Janardan)
This write-up illustrates what is expected by way of a solution for a problem involving the design and analysis of an algorithm (cf: Instruction...
...Spring 09: CSci 5421-Advanced Algorithms and Data Structures
Instructor Ravi Janardan Dept. of Computer Science & Engineering University of MinnesotaTwin Cities Minneapolis, MN 55455 Office: 6217 EE/CSci Bldg. Phone: (612)6257338 Email: janardan@cs.u...
...CSci 2011: Discrete Mathematics, Fall 2008
1. Using logical equivalence and definition of equivalence (i.e. p q p q), prove that p q q p. (DO NOT USE TRUTH TABLE!) 2. When the universe of discourse is set of all real numbers, determine the trut...
...Spring 09: CSci 5421-Advanced Algorithms and Data Structures
Out 2/9 Homework 2 Due 2/25
Please do all problems; we will grade a subset of four problems. Exercise/Problem numbers refer to the 2nd edition of the text. Please follow all of the instruc...
Document Content (unformatted)
Course Hero has millions of student submitted documents similar to the one
below including study guides, homework solutions, papers, exam answer keys and textbook solutions.
Mathematics Discrete and Its Applications Chapter 4: Induction and Recursion Lingma Acheson (linglu@iupui.edu) 1 Department of Computer and Information Science, IUPUI 4.1 Mathematical Induction Introduction Mathematical Induction is used to show that P(n) is true for every positive integer n. Used only to prove results obtained in some other way. Example: Suppose we have an infinite ladder, and we want to know whether we can reach every step on the ladder. We know two things 1. We can reach the first rung of the ladder. 2. If we can reach a particular rung of the ladder, then we can reach the next rung. Can we conclude that we can reach every rung? By 1, we can reach the first rung. By 2, we can reach the second rung. Apply 2 again, we can reach the third rung After 100 uses of 2, we can reach the 101st rung . 2 4.1 Mathematical Induction Mathematical Induction PRINCIPLE OF MATHEMATICAL INDUCTION To prove that P(n) is true for all positive integers n, where P(n) is a propositional function, we complete two steps. BASIS STEP: We verify that P(1) is true. INDUCTIVE STEP: We show that the conditional statement P(k) P(k+1) is true for all positive integers k. To complete the inductive step of a proof using the principle of mathematical induction, we assume that P(k) is true for an arbitrary positive integer k and show that under this assumption, P(k+1) must also be true. The assumption that P(k) is true is called the inductive hypothesis. The proof technique is stated as [P(1) k(P(k) P(k+1) )] nP(n) where the domain is the set of positive integers 3 4.1 Mathematical Induction Examples of Proofs by Mathematical Induction Show that if n is a positive integer, then n(n + 1) 1 + 2 + ... + n = 2 Solution: 1(1 + 1) BASIS STEP: P(1) is true, because 1 = 2 INDUCTIVE STEP: For the inductive hypothesis we assume that P(k) holds for an arbitrary positive integer k. That is, we assume that 1 + 2 + ... + k = k (k + 1) 2 Under this assumption, it must be shown that P(k+1) is true, i.e.: (k + 1)[(k + 1) + 1] (k + 1)(k + 2) 1 + 2 + ... + k + (k + 1) = = 2 2 When we add k+1 to both sides of the equation in P(k), we obtain k (k + 1) k (k + 1) + 2(k + 1) (k + 1)(k + 2) 1 + 2 + ... + k + (k + 1) = + (k + 1) = = 2 2 2 This shows that P(k+1) is true under the assumption that P(k) is 4 true. This complete the inductive step. 4.1 Mathematical Induction Use mathematical induction to prove that n3 n is divisible by 3 whenever n is a positive integer. Solution: BASIS STEP: The statement P(1) is true because 13 1 = 0 is divisible by 3. INDUCTIVE STEP: For the inductive hypothesis we assume that P(k) is true; that is we assume that k3 k is divisible by 3. To complete the inductive step, we must show that when we assume the inductive hypothesis, the statement (k+1)3 (k+1) is also divisible by 3. (k+1)3 (k+1) = (k3 + 3k2 + 3k + 1) (k + 1) = (k3 k) + 3(k2 + k) By inductive hypothesis, we know that (k3 k) is divisible by 3; and the second term is also divisible by 3. This completes the inductive step. 5 4.3 Recursive Definitions and Structural Induction Introduction 6 4.3 Recursive Definitions and Structural Induction Sometimes it s easier to define an object in terms of itself. This process is called Recursion. Example: the sequence of powers of 2 is given by an = 2n for n = 0, 1, 2, . This sequence can also be defined by giving the first term of the sequence, namely, a0 = 1, and a rule finding a term of the sequence from the previous one, namely, an+1 = 2an, for n = 0, 1, 2, . 7 4.3 Recursive Definitions and Structural Induction Recursively Defined Functions Use two steps to define a function with the set of nonnegative integers as its domain: BASIS STEP: Specify that value of the function at zero. RECURSIVE STEP: Give a rule for finding its value at an integer from its values at smaller integers. Such a definition is called a recursive or inductive definition. Examples: Suppose that f is defined recursively by f(0) = 3, f(n+1) = 2f(n) + 3 Find f(1), f(2), f(3), and f(4). Solution: f(1) = 2f(0) + 3 = 2*3 + 3 = 9 f(2) = 2f(1) + 3 = 2*9 + 3 = 21 f(3) = 2f(2) + 3 = 2*21 + 3 = 45 f(4) = 2f(3) + 3 = 2*45 + 3 = 93 8 4.3 Recursive Definitions and Structural Induction Examples: Give an inductive definition of the factorial function F(n) = n!. Solution: Basis Step: F(0) = 1 Inductive Step: F(n+1) = (n+1)F(n) E.g. Find F(5). F(5) = 5F(4) = 5*4F(3) = 5*4*3F(2) = 5 * 4 * 3 * 2F(1) = 5 * 4 * 3 * 2 * 1F(0) = 5 * 4 * 3 * 2 * 1 * 1 = 120 Give a recursive definition of Solution: Basis Step: . a k =0 n k a k =0 0 k = a0 k Inductive Step: a k =0 n +1 = ( ak ) + an +1 k =0 n 9 4.3 Recursive Definitions and Structural Induction DEFINITION 1 The Fibonacci numbers, f0, f1, f2, , are defined by the equations f0= 0, f1 = 1, and fn = fn-1 + fn-2 for n = 2, 3, 4, . Example: Find the Fibonacci numbers f2, f3, f4, f5, and f6. Solution: f2 = f1 + f0 = 1 + 0 = 1, f3 = f2 + f1 = 1 + 1 = 2, f4 = f3 + f2 = 2 + 1 = 3, f5 = f4 + f3 = 3 + 2 = 5, f6 = f5 + f4 + 5 + 3 = 8. Example: Find the Fibonacci numbers f7. Solution ? 10 4.3 Recursive Definitions and Structural Induction Recursively Defined Sets and Structures DEFINITION 2 The set * of strings over the alphabet can be defined recursively by BASIS STEP: (where is the empty string containing no symbols). * RECURSIVE STEP: If w and x * , then wx *. * The basis step of the recursive definition of strings says that the empty string belongs to *. The recursive step states that new strings are produced by adding a symbol from to the end of strings in *. At each application of the recursive step, strings containing one additional symbol are generated. Example: If = {0,1}, the strings to found be in *, the set of all bit strings are , specified to be in * in the basis step, 0 and 1 formed during the first application of the recursive step, 00, 01, 10, and 11 formed during the second application of the recursive step, and so on. 11 4.3 Recursive Definitions and Structural Induction Example: Well-Formed Formulae for Compound Statement Forms. We can define the set of well-formed formulae for compound statement forms involving T, F, propositional variables, and operators from the set { , , V, , }. BASIS STEP: T, F, and s, where s is a propositional variable, are wellformed formulae. RECURSIVE STEP: If E and F are well-formed formulae, then ( E), (E F), (E V F), (E F), and (E F) are well-formed formulae. By the basis step we know that T, F, p, and q are well-formed formulae, where p and q are propositional variables. From an initial application of the recursive step, we know that (p V q), (p F), (F q), and (q F) are well-formed formulae. A second application of the recursive step shows that ((p V q) (q F)), (q V (p V q)), and ((p F) T) are well-formed formulae. 12 4.3 Recursive Definitions and Structural Induction DEFINITION 4 The set of rooted trees, where a rooted tree consists of a set of vertices containing a distinguished vertex called the root, and edges connecting these vertices, can be defined recursively by these steps: BASIS STEP: A single vertex r is a rooted tree. RECURSIVE STEP: Suppose that T1, T2, , Tn are disjoint rooted trees with roots r1, r2, , rn, respectively. Then the graph formed by starting with a root r, which is not in any of the rooted trees, T1, T2, , Tn, and adding an edge from r to each of the vertices r1, r2, .., rn, is also a rooted tree. 13 4.3 Recursive Definitions and Structural Induction 14 4.3 Recursive Definitions and Structural Induction DEFINITION 5 The set of extended binary trees can be defined recursively by these steps: BASIS STEP: The empty set is an extended binary tree. RECURSIVE STEP: IfT1 and T2 are disjoint extended binary trees, there is an extended binary tree, denoted by T1 T2 , consisting of a root r together with edges connecting the root to each of the roots of the left subtree T1 and the right subtree T2 when these trees are nonempty. 15 4.3 Recursive Definitions and Structural Induction 16 4.3 Recursive Definitions and Structural Induction DEFINITION 6 The set of full binary trees can be defined recursively by these steps: BASIS STEP: There is a full binary tree consisting only of a single vertex r. RECURSIVE STEP: IfT1 and T2 are disjoint full binary trees, there is full binary tree, denoted by T1 T2 , consisting of a root r together with edges connecting the root to each of the roots of the left subtree T1 and the right subtree T2. 17 4.3 Recursive Definitions and Structural Induction 18 4.4 Recursive Algorithms Introduction DEFINITION 1 An algorithm is called recursive if it solves a problem by reducing it to an instance of the same problem with smaller input. Example: Give a recursive algorithm for computer n!, when n is a nonnegative integer. Review: Basis Step: F(0) = 1 Inductive Step: F(n+1) = (n+1)F(n) E.g. Find F(5). F(5) = 5F(4) = 5*4F(3) = 5*4*3F(2) = 5 * 4 * 3 * 2F(1) = 5 * 4 * 3 * 2 * 1F(0) = 5 * 4 * 3 * 2 * 1 * 1 = 120 ALGORITHM 1 A Recursive Algorithm for Computing n!. procedure factorial(n: nonnegative integer) if n = 0 then factorial(n):=1 else factorial(n):=n*factorial(n-1) 19 4.4 Recursive Algorithms Example: Give a recursive algorithm for computer an, where a is a nonzero number and n is a nonnegative integer ALGORITHM 2 A Recursive Algorithm for Computing an. procedure power(a: nonzero real number, n: nonnegative integer) if n = 0 then power(a,n):=1 else power(a,n):=a*power(a, n-1) 20 4.4 Recursive Algorithms Example: Express the linear search algorithm as a recursive procedure. ALGORITHM 5 A Recursive Linear Search Algorithm. procedure search(i,j,x: i,j,x integers, 1 <=i<=n, 1<=j<=n) if ai = x then location := i else if i = j then location : = 0 else search(i+1,j, x) 21 4.4 Recursive Algorithms Example: Construct a recursive version of a binary search algorithm ALGORITHM 6 A Recursive Binary Search Algorithm. procedure binarySearch(i,j,x: i,j,x integers, 1 <= i <= n, 1<= j <= n) m := (i + j ) / 2 if x = am then location := m else if (x < am and i < m ) then binarySearch(x, i, m-1) else if (x > am and j > m ) then binarySearch(x, m+1, j) else location := 0 22 4.4 Recursive Algorithms Recursion and Iteration Sometimes we start with the value of the computation at one or more integers, the base cases, and successively apply the recursive definition to find the values of the function at successive larger integers. Such a procedure is called iterative. ALGORITHM 7 A Recursive Algorithm for Fibonacci Numbers. procedure fibonacci(n: nonnegative integer) if n = 0 then fibonacci(0) := 0 else if (n = 1) then fibonacci(1) := 1 else fibonacci(n) := fibonacci(n-1) + fibonacci(n-2) How many additions are performed to find fibonacci(n)? 23 4.4 Recursive Algorithms f4 f3 f2 f0 f2 f1 f1 f0 fn+1 -1 addition to find fn f1 24 4.4 Recursive Algorithms ALGORITHM 8 An Iterative Algorithm for Computing Fibonacci Numbers. procedure iterativeFibonacci(n: nonnegative integer) if n = 0 then y:= 0 else begin x := 0 y := 1 for i := 1 to n -1 begin How many additions are performed to find fibonacci(n)? z := x + y x:=y y:=z end end {y is the nth Fibonacci number} 25 n 1 additions are used for an iterative algorithm. 4.4 Recursive Algorithms Java demo for two algorithms Recursive algorithm may require far more computation than an iterative one. Sometimes it s preferable to use a recursive procedure even if it is less efficient. Sometimes an iterative approach is preferable. 26
Find millions of documents here - Study Guides, Homework Solutions, Papers, Exam Answer Keys and more.
Course Hero has millions of course related materials that will enable you to learn better,
faster and get an A in all your courses.
Below is a small sample set of documents:
Below is a small sample set of documents:
IUPUI >> CSCI >> 340 (Fall, 2008)
Discrete Mathematics and Its Applications Chapter 1: The Foundations: Logic and Proofs Lingma Acheson (linglu@iupui.edu) 1 Department of Computer and Information Science, IUPUI 1.3 Predicates and Quantifiers Predicates Statements involving variab...
IUPUI >> CSCI >> 340 (Fall, 2008)
Discrete Mathematics and Its Applications Chapter 3: The Fundamentals: Algorithms, the Integers, and Matrices Lingma Acheson (linglu@iupui.edu) 1 Department of Computer and Information Science, IUPUI 3.1 Algorithms Introduction Algorithm: a proc...
IUPUI >> CSCI >> 355 (Spring, 2008)
Denotational Semantics Based on recursive function theory Define for each language entity both a mathematical object and a function that maps instances of that entity onto instances of the mathematical object. The method is named denotational beca...
IUPUI >> CSCI >> 355 (Spring, 2008)
CSCI 355 Spring 2008 Homework 1 Solution Chapter 3 Each problem is worth 10 points. Total 100 points. 2c. <switch_stmt> switch ( <expr> ) {case <literal> : <stmt_list> {case <literal> : <stmt_list> } [default : <stmt_list>] } 8. The following two d...
IUPUI >> CSCI >> 355 (Spring, 2008)
3.5 Dynamic Semantics Meanings of expressions, statements, and program units Static semantics type specifications Dynamic semantics briefed as semantics, meaning There is no single widely acceptable notation or formalism for describing semantic...
IUPUI >> CSCI >> 355 (Spring, 2008)
CSCI 355 Spring 2008 Homework 2 Solution Chapter 5 Each problem is worth 25points. Total 100 points. 2. The advantage of a typeless language is flexibility; any variable can be used for any type values. The disadvantage is poor reliability due to th...
IUPUI >> CSCI >> 355 (Spring, 2008)
Ambiguity in Grammars A grammar is ambiguous if and only if it generates a sentential form that has two or more distinct parse trees Copyright 2006 Addison-Wesley. All rights reserved. 318 An Ambiguous Expression Grammar <assign> -> <id> = <expr...
IUPUI >> CSCI >> 355 (Spring, 2008)
Chapter 7 Expressions and Assignment Statements ISBN 0-321-33025-0 Chapter 7 Topics Introduction Arithmetic Expressions Overloaded Operators Type Conversions Relational and Boolean Expressions Short-Circuit Evaluation Assignment Statements...
IUPUI >> CSCI >> 355 (Spring, 2008)
IEEE Standard 754 Floating Point Numbers Steve Hollasch / Last update 2005-Feb-24 IEEE Standard 754 floating point is the most common representation today for real numbers on computers, including Intel-based PC\'s, Macintoshes, and most Unix platform...
IUPUI >> CSCI >> 355 (Spring, 2008)
Subscript Bindings and Array Categories In some languages the lower bound of the subscript range is implicit, e.g. C-based languages 0; Fortran 95 1. In some other languages, subscript ranges must be completely specified by the programmer. Copyri...
IUPUI >> CSCI >> 431 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Basic SQL and SQLPlus - Querying using SELECT Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Relational Data Model RDBMSs are ba...
IUPUI >> CSCI >> N311 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Basic SQL and SQLPlus - Querying using SELECT Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Relational Data Model RDBMSs are ba...
IUPUI >> CSCI >> 431 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Database Programming Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu 12/17/08 Dale Roberts 1 DataBase Programming Creating a Database Applica...
IUPUI >> CSCI >> N311 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Database Programming Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu 12/17/08 Dale Roberts 1 DataBase Programming Creating a Database Applica...
IUPUI >> CSCI >> 431 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI PL/SQL Introduction Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts PL/SQL Introduction The limits of my language mean the limits o...
IUPUI >> CSCI >> N311 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI PL/SQL Introduction Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts PL/SQL Introduction The limits of my language mean the limits o...
IUPUI >> CSCI >> 431 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Introduction to Relational Databases Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Sharing Knowledge and Success Oracle is a r...
IUPUI >> CSCI >> N311 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Introduction to Relational Databases Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Sharing Knowledge and Success Oracle is a r...
IUPUI >> CSCI >> 431 (Fall, 2008)
Introduction to UTL_HTTP and UTL_SMTP Think of the Possibilities! By Mike OMara, TUSC Bradley Brown, TUSC 12/17/08 TUSC, Copyright 2001 1 Developers can no longer be an expert just in a particular tool or product; you must keep abreast of all sor...
IUPUI >> CSCI >> N311 (Fall, 2008)
Introduction to UTL_HTTP and UTL_SMTP Think of the Possibilities! By Mike OMara, TUSC Bradley Brown, TUSC 12/17/08 TUSC, Copyright 2001 1 Developers can no longer be an expert just in a particular tool or product; you must keep abreast of all sor...
IUPUI >> CSCI >> 431 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Data Modeling Introduction and Normalization Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Sample Table StudentName AdvisorNam...
IUPUI >> CSCI >> N311 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Data Modeling Introduction and Normalization Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Sample Table StudentName AdvisorNam...
IUPUI >> CSCI >> 431 (Fall, 2008)
CSCI N311 Advanced Database Programming, Oracle Final Project Proposal Purpose All database projects begin with a project proposal to meet some need. The purpose of this assignment is to create a project proposal for your final database project. A co...
IUPUI >> CSCI >> N311 (Fall, 2008)
CSCI N311 Advanced Database Programming, Oracle Final Project Proposal Purpose All database projects begin with a project proposal to meet some need. The purpose of this assignment is to create a project proposal for your final database project. A co...
IUPUI >> CSCI >> 431 (Fall, 2008)
Project 1: Introduction to Oracle SQL*Plus Objectives After completing this lab you should be able to: Login to Oracle running SQL*Plus from Linux Submit a query to the Oracle database Login to Oracle running SQL*Plus from Windows Due for Projec...
IUPUI >> CSCI >> N311 (Fall, 2008)
Project 1: Introduction to Oracle SQL*Plus Objectives After completing this lab you should be able to: Login to Oracle running SQL*Plus from Linux Submit a query to the Oracle database Login to Oracle running SQL*Plus from Windows Due for Projec...
IUPUI >> CSCI >> 431 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Object-Relational Features Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Object-Relational Databases Types, Object Views, Meth...
IUPUI >> CSCI >> N311 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Object-Relational Features Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Object-Relational Databases Types, Object Views, Meth...
IUPUI >> CSCI >> 431 (Fall, 2008)
Oracle Database PL/SQL User\'s Guide and Reference 10g Release 2 (10.2) B14261-01 June 2005 Oracle Database PL/SQL Users Guide and Reference 10g Release 2 (10.2) B14261-01 Copyright 1996, 2005, Oracle. All rights reserved. Contributors: Shashaanka ...
IUPUI >> CSCI >> N311 (Fall, 2008)
Oracle Database PL/SQL User\'s Guide and Reference 10g Release 2 (10.2) B14261-01 June 2005 Oracle Database PL/SQL Users Guide and Reference 10g Release 2 (10.2) B14261-01 Copyright 1996, 2005, Oracle. All rights reserved. Contributors: Shashaanka ...
IUPUI >> CSCI >> 431 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI SQL Tuning Introduction Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu 12/17/08 Dale Roberts 1 Oracle Data Dictionary Data Dictionary: store...
IUPUI >> CSCI >> N311 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI SQL Tuning Introduction Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu 12/17/08 Dale Roberts 1 Oracle Data Dictionary Data Dictionary: store...
IUPUI >> CSCI >> 431 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Data Modeling Attributes, Roles, Subclasses, Keys and Weak Entities Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Attributes on...
IUPUI >> CSCI >> N311 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI Data Modeling Attributes, Roles, Subclasses, Keys and Weak Entities Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Dale Roberts 1 Attributes on...
IUPUI >> CSCI >> 450 (Spring, 2008)
Providing a Philosophical Basis for Ethical Decisions Andrew Olson Copyright 2001. All rights reserved. Contact the author for permission before copying. No permission granted for use in commercial products. All copies must contain this copyright no...
IUPUI >> CSCI >> 450 (Spring, 2008)
Liability in Software Development Andrew Olson Copyright 2001. All rights reserved. Contact the author for permission before copying. No permission granted for use in commercial products. All copies must contain this copyright notice. The issue of ...
IUPUI >> CSCI >> 450 (Spring, 2008)
\"Selected Abstracts Related to Software Quality _ Forum On Risks To The Public In Computers And Related Systems ACM Committee on Computers and Public Policy, Peter G. Neumann, moderator http:/catless.ncl.ac.uk/Risks = Risks Digest, Volume 3, Issue 3...
IUPUI >> CSCI >> 450 (Spring, 2008)
Assignment 1 Due by the beginning of class, September 5, 2001 Create an Engineering Notebook with a ring binder or Ecco-style cover so that you can add and remove pages. Include in it the following information: a. a title page with your name, course...
IUPUI >> CSCI >> 481 (Fall, 2008)
Lingma Acheson Department of Computer and Information Science, IUPUI linglu@iupui.edu 1.1 Motivation: Why data mining? 1.2 What is data mining? 1.3 Data Mining: On what kind of data? 1.4 Data mining functionality: What kinds of Patterns Ca...
IUPUI >> CSCI >> 550 (Fall, 2008)
Rendering Rendering: computing how each pixel of the picture of a scene should look. Shading model (illumination model): method of modeling how lights interact with objects in a scene. Rendering hierarchy: rendering methods using different shading mo...
IUPUI >> CSCI >> 550 (Fall, 2008)
Texture Mapping Enhancing rendering realism by adding surface textures to faces of mesh objects. Texture image: a function f ( s, t ) : [0,1] [0,1] D where D is the color domain. It is often represented as a 2D image (bitmap), but can also be compu...
IUPUI >> CSCI >> 550 (Fall, 2008)
CSCI 550 Interactive Computer Graphics Shiaofen Fang Department of Computer and Information Science Indiana University Purdue University Indianapolis What is computer graphics ? Computer graphics is concerned with Producing pictures using computer. ...
IUPUI >> CSCI >> 550 (Fall, 2008)
CSCI 550 (Fall 2008) Assignment #3 Handout: Monday, Oct. 27, 2008 Due: 1:30pm, Wednesday, Nov. 24, 2008 Non-programming assignments can be either in any format: Word, PDF, plain text or hand-writing. Programming assignments can be submitted either o...
IUPUI >> CSCI >> 550 (Fall, 2008)
2D affine transformations 2D homogeneous coordinates: Point: (x,y,1); vector: (x,y,0) 2D affine transformation: x m11 x\' y \' = T y = m 21 1 0 1 x\' x m11 y \' = T y = m 21 0 0 0 m12 m22 0 m12 m22 0 m13 x m1...
IUPUI >> CSCI >> N100 (Fall, 2008)
Design Concepts: Module A: The Science of Color CSCI N241: Fundamentals of Web Design Copyright 2004 Department of Computer & Information Science Goals Understand the origin of natural color Understand the Additive Color Model Understand the Su...
IUPUI >> CSCI >> N100 (Fall, 2008)
Design Concepts: Module B: Adding Images CSCI N241: Fundamentals of Web Design Copyright 2004 Department of Computer & Information Science Goals Understand how what dithering and gamma are Understand how image compression works Understand how t...
IUPUI >> CSCI >> N201 (Fall, 2008)
Basic History of Computing Al Kwarizmi pascaline Jacquard Loom Lady Ada Babbage Analytical Engine Hollerith Tabulator Zuse Turing Eniac Grace Hopper ...
IUPUI >> INFO >> I112 (Fall, 2008)
Basic History of Computing Al Kwarizmi pascaline Jacquard Loom Lady Ada Babbage Analytical Engine Hollerith Tabulator Zuse Turing Eniac Grace Hopper ...
IUPUI >> CSCI >> N201 (Fall, 2008)
CSCI N100 Principles of Computing Basic Problem-Solving Course Goals Overcome fear of computers Wide range of applications Strong programming skills Whats different about computers? You know lots of machines Computers seem different They seem...
IUPUI >> INFO >> I112 (Fall, 2008)
CSCI N100 Principles of Computing Basic Problem-Solving Course Goals Overcome fear of computers Wide range of applications Strong programming skills Whats different about computers? You know lots of machines Computers seem different They seem...
IUPUI >> CSCI >> N201 (Fall, 2008)
CSCI N201 Programming Concepts and Database 4 History of Programming Languages Lingma Acheson linglu@iupui.edu Department of Computer and Information Science, IUPUI 1 Progression Hardware Machine code Assemblers Compilers Interpreters 2 H...
IUPUI >> CSCI >> N201 (Fall, 2008)
CSCI N201 Programming Concepts and Database 8 Conditions Lingma Acheson linglu@iupui.edu Department of Computer and Information Science, IUPUI 1 Task: Ask the user to input a required integer, and compare the input to the required integer. If i...
IUPUI >> CSCI >> N207 (Fall, 2008)
CSCI N207 Data Analysis Using Spreadsheet S.T.A.I.R Lingma Acheson linglu@iupui.edu Department of Computer and Information Science, IUPUI Problem Solving Technique Fundamental When you get stuck When things go wrong What is STAIR? A problem...
IUPUI >> CSCI >> N305 (Fall, 2008)
Blackbelt Project # 4 Banner 5 points Purpose The purpose of this project is to extend the functionality of the regular banner function to implement a complete character set. Description Extend the functionality of the banner program to display any t...
IUPUI >> CSCI >> N305 (Fall, 2008)
1 1 Introduction to Computers, the Internet and the Web 2007 Pearson Education, Inc. All rights reserved. 2 The chief merit of language is clearness. Galen Our life is frittered away by detail. Simplify, simplify. Henry David Thoreau He had a w...
IUPUI >> CSCI >> N305 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Introduction to Computers - Languages Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu Computer Organization A Typical Von-Neumann Archit...
IUPUI >> CSCI >> N305 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Information Representation: Characters and Images Dale Roberts, Lecturer IUPUI droberts@cs.iupui.edu Dale Roberts Information Representation Review All information ...
IUPUI >> CSCI >> N305 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Arrays Declarations Dale Roberts, Lecturer IUPUI droberts@cs.iupui.edu Dale Roberts Arrays Array Group of consecutive memory locations Same name and type, ex: an ar...
IUPUI >> CSCI >> N305 (Fall, 2008)
Character Arrays char string1[] = first; Note : string1 contains 5 characters plus a string termination character or null character \. char string1[] = { f , i , r , s , t , \ }; A String is an array of characters. A character array repr...
IUPUI >> CSCI >> N305 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Introduction to Computers - Hardware Dale Roberts, Lecturer Computer Science, IUPUI E-mail: droberts@cs.iupui.edu What is a Computer? Computer Device capable of perf...
IUPUI >> CSCI >> N305 (Fall, 2008)
1 11 C File Processing 2007 Pearson Education, Inc. All rights reserved. 2 I read part of it all the way through. Samuel Goldwyn Hats off! The flag is passing by. Henry Holcomb Bennett 2007 Pearson Education, Inc. All rights reserved. 3 Con...
IUPUI >> CSCI >> N305 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Arrays Multidimensional Arrays Dale Roberts, Lecturer IUPUI droberts@cs.iupui.edu Dale Roberts Multiple subscripted arrays Multiple-Dimensional Arrays Arrays requ...
IUPUI >> CSCI >> N305 (Fall, 2008)
Project # 2 Find-A-Bank 40 points Purpose The learning objective for this project is to use C language conditional statements to choose a bank to finance a loan. Additional experience shall be gained with the software development life cycle: Requirem...
IUPUI >> CSCI >> N305 (Fall, 2008)
Project # 6 Trip Distance Calculator 40 points Purpose The purpose of this project is to gain experience with arrays and looping. Description You are to write a Trip Distance Calculator the calculates the approximate driving distance for a trip the v...
IUPUI >> CSCI >> N305 (Fall, 2008)
1 2 Introduction to C Programming 2007 Pearson Education, Inc. All rights reserved. 2 What\'s in a name? That which we call a rose By any other name would smell as sweet. William Shakespeare Romeo and Juliet When faced with a decision, I always ...
IUPUI >> CSCI >> N305 (Fall, 2008)
CSCI 230 Homework Assignment 4 Appendix D Number Systems 24 Points Deitel Problems D.18, D.19, D.20, D.21, D.22, D.23, D.24, D.25 (3 pts each). ...
IUPUI >> CSCI >> N305 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Functions Recursion Dale Roberts, Lecturer IUPUI droberts@cs.iupui.edu Dale Roberts Recursion Recursive functions A function can invoke any other function; Can a f...
IUPUI >> CSCI >> N305 (Fall, 2008)
CSCI 230 Blackbelt Project 1 Vending Machine Change Making 5 extra credit points Problem Statement The purpose of this project is to extend Project 1 Change Maker to act as a vending machine. Some of these modification require you to use decision sta...
IUPUI >> CSCI >> N305 (Fall, 2008)
Department of Computer and Information Science, School of Science, IUPUI CSCI 230 Program Control - Algorithms Dale Roberts, Lecturer IUPUI droberts@cs.iupui.edu Dale 1 Roberts Algorithms Algorithms is the are part of the problem solving process ...
IUPUI >> CSCI >> N305 (Fall, 2008)
Emacs Command Cheat Sheet Standard Emacs Commands and Command Lines Meta Key on Various Keyboards: Common Abbreviations: M-x means press and then release the Meta key and then press the x key C-x means press and hold the Control key and then press...
What are you waiting for?