Concrete abstractions : an introduction to computer science by Max Hailperin

By Max Hailperin

This article covers the fundamentals of programming and knowledge constructions, and provides first-time machine technology scholars the chance not to in simple terms write courses, yet to end up theorems and research algorithms to boot.

Show description

Read Online or Download Concrete abstractions : an introduction to computer science using Scheme PDF

Similar database storage & design books

Microsoft Sams Teach Yourself SQL Server 2005 Express in 24 Hours

Written with readability and a down-to-earth method, Sams educate your self SQL Server 2005 convey in 24 Hours covers the fundamentals of Microsoft's most up-to-date model of SQL Server. professional writer Alison Balter takes you from uncomplicated thoughts to an intermediate point in 24 one-hour classes. you are going to research all the simple projects precious for the management of SQL Server 2005.

Microsoft sql server 2008 integration services problem-design-solution

This booklet is a treasury for ETL builders / architects. it's very diverse from different ETL books within the approach that it truly is written with a top-to-bottom method rather than concentrating on info of an ETL device. each one bankruptcy provides an issue that an ETL developer/architect will face in the course of a true undertaking.

Database Programming with JDBC and Java

Java and databases make a robust blend. Getting the 2 facets to interact, notwithstanding, takes a few effort--largely simply because Java offers in gadgets whereas such a lot databases don't. This booklet describes the traditional Java interfaces that make moveable object-oriented entry to relational databases attainable and provides a powerful version for writing purposes which are effortless to take care of.

Learn SQL Server Administration in a Month of Lunches

Microsoft SQL Server is utilized by thousands of companies, ranging in measurement from Fortune 500s to small outlets world wide. no matter if you are simply getting begun as a DBA, helping a SQL Server-driven software, or you have been drafted via your workplace because the SQL Server admin, you don't want a thousand-page booklet to wake up and working.

Additional info for Concrete abstractions : an introduction to computer science using Scheme

Example text

The fundamental problem with this procedure is, it tries to always leave one multiplication for last, even when there are none to be done. Computing 1! doesn’t require any multiplications; the answer is simply 1. What we can do is treat this base case specially, using if, just like in the human program for making chains: (define factorial (lambda (n) (if (= n 1) 1 (* (factorial (- n 1)) n)))) (factorial 52) 80658175170943878571660636856403766975289505440883277824000000000 000 Thus, base cases are treated separately in recursive procedures.

At that point, the spiraling stops, because we’ve known since the very beginning that square could square 0. The key point that makes this spiral reasoning work is that the chain of reasoning leads inexorably down to the base case of zero. We only defined square in terms of smaller squares, so there is a steady progression toward the base case. By contrast, even though it is equally true that n2 ϭ (n ϩ 1)2 Ϫ (2n ϩ 1), the following procedure does not correctly compute the square of any positive integer: (define square ; This version doesn’t work.

A built-in procedure called remainder finds the remainder; for example, (remainder 1234 10) evaluates to 4. 9 Write a procedure that computes the number of 6s in the decimal representation of an integer. Generalize this to a procedure that computes the number of d’s, where d is another argument. 10 Write a procedure that calculates the number of odd digits in an integer. 11 Write a procedure that computes the sum of the digits in an integer. 12 Any positive integer i can be expressed as i ϭ 2n k, where k is odd, that is, as a power of 2 times an odd number.

Download PDF sample

Rated 4.83 of 5 – based on 9 votes