Assignment 3 CSCE 155H/RAIK 183H Fall 2016

Size: px
Start display at page:

Download "Assignment 3 CSCE 155H/RAIK 183H Fall 2016"

Transcription

1 Assignment 3 CSCE 155H/RAIK 183H Fall 2016 Instructions Follow instructions carefully, failure to do so may result in points being deducted. Hand in all your source code files through webhandin and make sure your programs compile and run by using the webgrader interface. You can grade yourself and re-handin as many times as you wish up until the due date. Print a hardcopy of the rubric for this assignment and hand it in by the due date. Partner Policy You may work in pairs for this assignment if you chose. If you do work in any groups or pairs, you must follow these guidelines: 1. You must work on all problems together. You may not simply partition the work between you. 2. You should not discuss problem details with other groups or individuals beyond general questions. 3. Hand in only one hard copy (and one soft copy) under the first author s name/cse login. Be sure to include both names. Programs 1. In this exercise you will build a small library of several utility functions by implementing the following functions with the given prototypes and specified functionality. 1 int circlestatistics(double radius, double *diameter, 2 double *circumference, double *area) implement this function to compute common values regarding a circle given its radius. The function should place the specified values in the variables passed by reference. The return value should indicate an error code: 0 for no error, 1 for any type of error (negative radius, NULL pointers). int converttime(int days, int *y, int *w, int *d) This function takes a number of days and converts it to years, y, (ignore leap year days), weeks w, and (remaining) days d and places the three results in the variables provided. The function returns 0 for no error and 1 if any of the inputs are invalid (days is negative or any of the pointers are NULL ). 1 int lorentztimedilation(double normaltime, 2 double percentc, double *dilatedtime) An object traveling at a velocity v experiences a dilated time relative to a stationary object which is quantified by the Lorentz equation: T = t (1 v2 ) c 2

2 where t is the normal amount of lapsed time (stationary object) and T is the dilated time experienced by the traveling object. For small velocities, the dilation is small, but for velocities approaching a percentage of the speed of light, c, the dilation becomes significant. At 25% the speed of light, a year for the object traveling would correspond to years at the stationary object. Implement the function to compute the dilated time given the normal time t and the percentage of the speed of light, placing the result in the third argument. The function should return 0 for no error and 1 for invalid inputs (negative normal time, percentages outside of the range [0, 1), or a NULL pointer). double agm(double x, double y, double epsilon) The arithmetic-geometric mean of two numbers x, y, denoted M(x, y) (or agm(x, y)) can be computed iteratively as follows. Initially, a 1 = 1 2 (x + y) and g 1 = xy (i.e. the normal arithmetic and geometric means). Then, compute a n+1 = 1 2 (a n + g n ) g n+1 = a n g n The two sequences will converge to the same number which is the arithmeticgeometric mean of x, y. Obviously we cannot compute an infinite sequence, so we compute until a n g n < ɛ for some small number ɛ. Place all of your function prototypes into a file named utils.h and and their definitions in a file named utils.c. In addition, create a main test driver program that demonstrates at least 3 test calls to each of your functions to verify that their output matches your expected output. You should not prompt for input; rather your test cases should be hardcoded in your test driver s main function. Place your main function into a file named utilstester.c. Hand in all three of your source files using webhandin. 2. The standard math library ( math.h ) provides a function to compute the natural logarithm ln(x) ( log ) of a number x. In this exercise, we ll be writing several of our own functions to compute the natural logarithm. root of a given number. In particular, you will implement the following methods to compute ln(x). A formula version approximates the natural logarithm as: π ln(x) 2M(1, 4/s) m ln(2) Where M(a, b) is the arithmetic-geometric mean and s = x2 m. In this formula, m is a parameter (a larger m provides more precision). Use this method in a function with the following signature: int lnformula(double x, int m, double *result) The standard Taylor Series for the natural logarithm is: ( 1) n+1 ln(x) = (x 1) n n n=1 Page 2

3 As we cannot compute an infinite series, we will simply compute the series to the first m terms. Also note that this series is not convergent for values x > 1 Use this method in a function with the following signature: int lntaylorseries(double x, int m, double *result) Borchardt s algorithm is an iterative method that works as follows. Let Then repeat: a 0 = 1 + x 2 b 0 = x a k+1 = a k+b k 2 b k+1 = a k+1 b k until the absolute difference between a k, b k is small; that is a k b k < ɛ. Then the logarithm is approximated as ln(x) 2 x 1 a k + b k Use this method in a function with the following signature: int lnborchardt(double x, double epsilon, double *result) Newton s method works if x is sufficiently close to 1. It works by setting y 0 = 1 and then computing y n+1 = y n + 2 x eyn x + e yn The iteration is performed m times. To ensure this method works, you need to modify x to be as close to possible to 1. One way to do this is to divide or multiply by e until x is close to 1. Suppose we divided by e k times; that is x = z e k where z is close to 1. Then ln(x) = ln(z e k ) = ln(z) + ln(e k ) = ln(z) + k Thus, we can apply Newton s method to z and add k to the result to get ln(x). Use this method in a function with the following signature: int lnnewton(double x, int m, double *result) In addition, do the following: Place your function prototypes in a file named mylog.h and function definitions in a file named mylog.c Each function should compute the approximation of ln (x) and place it in the variable result which is passed by reference Each function should return an integer to indicate an error-level: 0 for no error, a non-zero value for error conditions. Error conditions would include non-positive values of x, invalid parameters (ɛ 0, m < 1) or NULL pointer values. Page 3

4 Write a main driver program to demonstrate (and test) your functions. Place your main function in a file named lndemo.c and have it read a collection of floating point numbers via command line arguments and compute their natural logarithms using each of the methods as well as the standard log method and compute the errors of each. For the purposes of this demo, fix ɛ = and m = 8 for the parameters above. That is, your program should be runnable from the command line as: ~>./a.out which should produce output something like: x math.h Formula Taylor Borchadt Newton Hand in all three of your source files using webhandin. To help you with Newton s method, the following code snippet will scale a variable x by e to the smallest value greater than 1. 1 int k = 0; 2 double scaled_x = x; 3 while(scaled_x < 1.0) { 4 scaled_x *= M_E; 5 k--; 6 } 7 while( (scaled_x / M_E) > 1.0) { 8 scaled_x /= M_E; 9 k++; 10 } 3. Energy can be measured in several different scales: calories (c), joules (J), ergs (erg) and foot-pound force (ft-lbf) among others. To convert between these scales, you can use the following facts: 1 erg equals J 1 ft-lbs equals joules 1 calorie is equal to joules You could write several functions to compute back and forth between these four scales. However, for this exercise, you will write a single function to convert a single value to all four at once. Specifically you will implement the following function: 1 int convertenergy(double *cals, 2 double *joules, 3 double *ergs, 4 double *ftlbf, 5 Scale scale); Page 4

5 Note: You will need to define an enumerated type called Scale that has four values: CALORIE, JOULE, ERG, FTLBF, the value passed to the function will serve as a flag to indicate which scale the conversion is from; the value stored in the corresponding variable should be used convert to the remaining three. The return value will be a flag indicating an error-level: 0 for no error, otherwise a non-zero value for various types of errors (negative energy values, null pointers, invalid scales, etc.). You are encouraged to define another Error enumerated type for this purpose. Place your enum declaration and the prototype declaration in a file called energy.h Place your actual function implementation in a file called energy.c Create a main function in energydemo.c that prompts the user for one of the scales (an integer 1 4 in the order listed above) and a value to convert and outputs the result of all four scales (or indicates an appropriate error message). 4. Reimplement the natural logarithm methods in Java with the following changes (a Java source file, MyLog.java has been provided to get you started). All methods should be public static The return value should be the computed natural logarithm rather than an error code All input values should be their wrapper classes to allow for null For invalid inputs throw appropriate exceptions instead: IllegalArgumentException or NullPointerException You should implement a test driver program but you do not need to hand it in. Place all of your classes in a package named unl.cse 5. Reimplement the energy conversion method in Java. As Java does not have pointers and the basic wrapper classes ( Double, Integer ) are immutable, you cannot pass in multiple variables. Instead, implement the method with the following signature: 1 public static double convertenergy( 2 Double v, 3 Scale inputscale, 4 Scale outputscale) Where Scale is an enumerated type with the same four scales. The method should convert the input value v which is in the inputscale to the outputscale and return the result. In addition, do the following: Page 5

6 Place your method in a class named EnergyUtils Create your Scale enumerated class with the same values as before. Create an exception class named InvalidEnergyException and throw it for any inputs that are invalid (negative energy values). Note that all the method signatures allow a Double ; be sure to handle the case when null is passed appropriately You should implement a test driver program but you do not need to hand it in. Place all of your classes in a package named unl.cse Page 6

CSCE 310 Assignment 3 Summer 2018

CSCE 310 Assignment 3 Summer 2018 Name(s) CSE Login Programming Language(s) Used Question Points Score 1 10 2 10 3 20 4 5 5 5 6 10 7 20 8 120 Total: 200 Graders Notes: Instructions Follow instructions carefully, failure to do so may result

More information

Introduction to FORTRAN

Introduction to FORTRAN Introduction to by Dr. Ibrahim A. Assakkaf Spring 2000 Department of Civil and Environmental Engineering University of Maryland Slide No. 1 Introduction = FORmula TRANslation Developed for the IBM 704

More information

Computer Science & Engineering 150A Problem Solving Using Computers

Computer Science & Engineering 150A Problem Solving Using Computers Computer Science & Engineering 150A Problem Solving Using Computers Lecture 03 - Stephen Scott (Adapted from Christopher M. Bourke) 1 / 41 Fall 2009 Chapter 3 3.1 Building Programs from Existing Information

More information

Computer Science & Engineering 150A Problem Solving Using Computers. Chapter 3. Existing Information. Notes. Notes. Notes. Lecture 03 - Functions

Computer Science & Engineering 150A Problem Solving Using Computers. Chapter 3. Existing Information. Notes. Notes. Notes. Lecture 03 - Functions Computer Science & Engineering 150A Problem Solving Using Computers Lecture 03 - Functions Stephen Scott (Adapted from Christopher M. Bourke) Fall 2009 1 / 1 cbourke@cse.unl.edu Chapter 3 3.1 Building

More information

CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point?

CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point? CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point? Overview For this lab, you will use: one or more of the conditional statements explained below scanf()

More information

Chapter 3. Computer Science & Engineering 155E Computer Science I: Systems Engineering Focus. Existing Information.

Chapter 3. Computer Science & Engineering 155E Computer Science I: Systems Engineering Focus. Existing Information. Chapter 3 Computer Science & Engineering 155E Computer Science I: Systems Engineering Focus Lecture 03 - Introduction To Functions Christopher M. Bourke cbourke@cse.unl.edu 3.1 Building Programs from Existing

More information

CS321 Introduction To Numerical Methods

CS321 Introduction To Numerical Methods CS3 Introduction To Numerical Methods Fuhua (Frank) Cheng Department of Computer Science University of Kentucky Lexington KY 456-46 - - Table of Contents Errors and Number Representations 3 Error Types

More information

Question 2. [5 points] Given the following symbolic constant definition

Question 2. [5 points] Given the following symbolic constant definition CS 101, Spring 2012 Mar 20th Exam 2 Name: Question 1. [5 points] Determine which of the following function calls are valid for a function with the prototype: void drawrect(int width, int height); Assume

More information

Introduction to Programming Using Java (98-388)

Introduction 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 information

ASSIGNMENT 2. COMP-202A, Fall 2011, All Sections. Due: Monday, October 17th, 2011 (23:30)

ASSIGNMENT 2. COMP-202A, Fall 2011, All Sections. Due: Monday, October 17th, 2011 (23:30) ASSIGNMENT 2 COMP-202A, Fall 2011, All Sections Due: Monday, October 17th, 2011 (23:30) Please read the entire pdf before starting. The bottom has important instructions for how to test your code before

More information

1. Practice the use of the C ++ repetition constructs of for, while, and do-while. 2. Use computer-generated random numbers.

1. Practice the use of the C ++ repetition constructs of for, while, and do-while. 2. Use computer-generated random numbers. 1 Purpose This lab illustrates the use of looping structures by introducing a class of programming problems called numerical algorithms. 1. Practice the use of the C ++ repetition constructs of for, while,

More information

CS2141 Software Development using C/C++ C++ Basics

CS2141 Software Development using C/C++ C++ Basics CS2141 Software Development using C/C++ C++ Basics Integers Basic Types Can be short, long, or just plain int C++ does not define the size of them other than short

More information

CpSc 1011 Lab 4 Formatting and Flow Control Windchill Temps

CpSc 1011 Lab 4 Formatting and Flow Control Windchill Temps CpSc 1011 Lab 4 Formatting and Flow Control Windchill Temps Overview By the end of the lab, you will be able to: use fscanf() to accept inputs from the user and use fprint() for print statements to the

More information

CSCE 120: Learning To Code

CSCE 120: Learning To Code CSCE 120: Learning To Code Manipulating Data I Introduction This module is designed to get you started working with data by understanding and using variables and data types in JavaScript. It will also

More information

Summer Math Assignments for Students Entering Integrated Math

Summer Math Assignments for Students Entering Integrated Math Summer Math Assignments for Students Entering Integrated Math Purpose: The purpose of this packet is to review pre-requisite skills necessary for the student to be successful in Integrated Math. You are

More information

Math 125 Little Book Homework Chapters 7, 10, 11, and 12

Math 125 Little Book Homework Chapters 7, 10, 11, and 12 Math 125 Little Book Homework Chapters 7, 10, 11, and 12 Do NOT copy the book follow the guidelines given for each section. NO CREDIT will be given if you copy the book! You earn 2 points if you turn in

More information

Chapter 4: Basic C Operators

Chapter 4: Basic C Operators Chapter 4: Basic C Operators In this chapter, you will learn about: Arithmetic operators Unary operators Binary operators Assignment operators Equalities and relational operators Logical operators Conditional

More information

BASIC ELEMENTS OF A COMPUTER PROGRAM

BASIC ELEMENTS OF A COMPUTER PROGRAM BASIC ELEMENTS OF A COMPUTER PROGRAM CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING LOGO Contents 1 Identifier 2 3 Rules for naming and declaring data variables Basic data types 4 Arithmetic operators

More information

C Functions. 5.2 Program Modules in C

C Functions. 5.2 Program Modules in C 1 5 C Functions 5.2 Program Modules in C 2 Functions Modules in C Programs combine user-defined functions with library functions - C standard library has a wide variety of functions Function calls Invoking

More information

Lesson 5: Introduction to the Java Basics: Java Arithmetic THEORY. Arithmetic Operators

Lesson 5: Introduction to the Java Basics: Java Arithmetic THEORY. Arithmetic Operators Lesson 5: Introduction to the Java Basics: Java Arithmetic THEORY Arithmetic Operators There are four basic arithmetic operations: OPERATOR USE DESCRIPTION + op1 + op2 Adds op1 and op2 - op1 + op2 Subtracts

More information

CSE100 Principles of Programming with C++

CSE100 Principles of Programming with C++ 1 Instructions You may work in pairs (that is, as a group of two) with a partner on this lab project if you wish or you may work alone. If you work with a partner, only submit one lab project with both

More information

Scientific Programming in C VI. Common errors

Scientific Programming in C VI. Common errors Scientific Programming in C VI. Common errors Susi Lehtola 6 November 2012 Beginner errors If you re a beginning C programmer, you might often make off-by one errors when you use arrays: #i n c l u de

More information

First Programs. CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington

First Programs. CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington First Programs CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1 Output System.out.println( ) prints out something. System.out.println is the first

More information

First Programs. CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington

First Programs. CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington First Programs CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1 Output System.out.println( ) prints out something. System.out.println is the first

More information

7.1 It is well known that the formula for converting a temperature in Celsius to Fahrenheit is. o F = 9 5 o C (7.10)

7.1 It is well known that the formula for converting a temperature in Celsius to Fahrenheit is. o F = 9 5 o C (7.10) 190 Engineering Software Development in Java 7.15 Exercises The problems in this section cover the basics, including use of keyboard input, looping and branching constructs, simple arrays, and generation

More information

(Refer Slide Time: 02:59)

(Refer Slide Time: 02:59) Numerical Methods and Programming P. B. Sunil Kumar Department of Physics Indian Institute of Technology, Madras Lecture - 7 Error propagation and stability Last class we discussed about the representation

More information

Number- Algebra. Problem solving Statistics Investigations

Number- Algebra. Problem solving Statistics Investigations Place Value Addition, Subtraction, Multiplication and Division Fractions Position and Direction Decimals Percentages Algebra Converting units Perimeter, Area and Volume Ratio Properties of Shapes Problem

More information

Part I. Problems in this section are mostly short answer and multiple choice. Little partial credit will be given. 5 points each.

Part I. Problems in this section are mostly short answer and multiple choice. Little partial credit will be given. 5 points each. Math 106/108 Final Exam Page 1 Part I. Problems in this section are mostly short answer and multiple choice. Little partial credit will be given. 5 points each. 1. Factor completely. Do not solve. a) 2x

More information

All classes in a package can be imported by using only one import statement. If the postcondition of a method is not met, blame its implementer

All classes in a package can be imported by using only one import statement. If the postcondition of a method is not met, blame its implementer Java By Abstraction ANSWERS O ES-A GROUP - A For each question, give +0.5 if correct, -0.5 if wrong, and 0 if blank. If the overall total is negative, record it (on the test's cover sheet)

More information

Math 213 Exam 2. Each question is followed by a space to write your answer. Please write your answer neatly in the space provided.

Math 213 Exam 2. Each question is followed by a space to write your answer. Please write your answer neatly in the space provided. Math 213 Exam 2 Name: Section: Do not remove this answer page you will return the whole exam. You will be allowed two hours to complete this test. No books or notes may be used other than a onepage cheat

More information

CSci 1113, Fall 2015 Lab Exercise 4 (Week 5): Write Your Own Functions. User Defined Functions

CSci 1113, Fall 2015 Lab Exercise 4 (Week 5): Write Your Own Functions. User Defined Functions CSci 1113, Fall 2015 Lab Exercise 4 (Week 5): Write Your Own Functions User Defined Functions In previous labs, you've encountered useful functions, such as sqrt() and pow(), that were created by other

More information

Binary Search. Roland Backhouse February 5th, 2001

Binary Search. Roland Backhouse February 5th, 2001 1 Binary Search Roland Backhouse February 5th, 2001 Outline 2 An implementation in Java of the card-searching algorithm is presented. Issues concerning the correctness of the implementation are raised

More information

Sail into Summer with Math!

Sail into Summer with Math! Sail into Summer with Math! For Students Entering Math C This summer math booklet was developed to provide students in kindergarten through the eighth grade an opportunity to review grade level math objectives

More information

Using APIs. Chapter 3. Outline Fields Overall Layout. Java By Abstraction Chapter 3. Field Summary static double PI

Using APIs. Chapter 3. Outline Fields Overall Layout. Java By Abstraction Chapter 3. Field Summary static double PI Outline Chapter 3 Using APIs 3.1 Anatomy of an API 3.1.1 Overall Layout 3.1.2 Fields 3.1.3 Methods 3.2 A Development Walkthrough 3.2.1 3.2.2 The Mortgage Application 3.2.3 Output Formatting 3.2.4 Relational

More information

Note: If a periodic function is shifted p units right or left the resulting graph will be the same.

Note: If a periodic function is shifted p units right or left the resulting graph will be the same. Week 1 Notes: 8.1 Periodic Functions If y = f(x) is a function and p is a nonzero constant such that f(x) = f(x + p) for every x in the domain of f, then f is called a periodic function. The smallest positive

More information

COP 3014: Fall Final Study Guide. December 5, You will have an opportunity to earn 15 extra credit points.

COP 3014: Fall Final Study Guide. December 5, You will have an opportunity to earn 15 extra credit points. COP 3014: Fall 2017 Final Study Guide December 5, 2017 The test consists of 1. 15 multiple choice questions - 30 points 2. 2 find the output questions - 20 points 3. 2 code writing questions - 30 points

More information

The Newton Method as a Short WEB Example

The Newton Method as a Short WEB Example The Newton Method as a Short WEB Example August 31, 1996 15:22 Abstract: This is written in John Krommes FWEB but with the output higher level language being C. FWEB is the most supported of the dialects

More information

Table : IEEE Single Format ± a a 2 a 3 :::a 8 b b 2 b 3 :::b 23 If exponent bitstring a :::a 8 is Then numerical value represented is ( ) 2 = (

Table : IEEE Single Format ± a a 2 a 3 :::a 8 b b 2 b 3 :::b 23 If exponent bitstring a :::a 8 is Then numerical value represented is ( ) 2 = ( Floating Point Numbers in Java by Michael L. Overton Virtually all modern computers follow the IEEE 2 floating point standard in their representation of floating point numbers. The Java programming language

More information

BASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I

BASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I BASIC COMPUTATION x public static void main(string [] args) Fundamentals of Computer Science I Outline Using Eclipse Data Types Variables Primitive and Class Data Types Expressions Declaration Assignment

More information

static int min(int a, int b) Returns the smaller of two int values. static double pow(double a,

static int min(int a, int b) Returns the smaller of two int values. static double pow(double a, The (Outsource: Supplement) The includes a number of constants and methods you can use to perform common mathematical functions. A commonly used constant found in the Math class is Math.PI which is defined

More information

CpSc 1010, Fall 2014 Lab 10: Command-Line Parameters (Week of 10/27/2014)

CpSc 1010, Fall 2014 Lab 10: Command-Line Parameters (Week of 10/27/2014) CpSc 1010, Fall 2014 Lab 10: Command-Line Parameters (Week of 10/27/2014) Goals Demonstrate proficiency in the use of the switch construct and in processing parameter data passed to a program via the command

More information

Assoc. Prof. Marenglen Biba. (C) 2010 Pearson Education, Inc. All rights reserved.

Assoc. Prof. Marenglen Biba. (C) 2010 Pearson Education, Inc. All rights reserved. Assoc. Prof. Marenglen Biba (C) 2010 Pearson Education, Inc. All rights reserved. Up to here Not included in program Java collections framework prebuilt data structures interfaces and methods for manipulating

More information

CpSc 111 Lab 5 Conditional Statements, Loops, the Math Library, and Redirecting Input

CpSc 111 Lab 5 Conditional Statements, Loops, the Math Library, and Redirecting Input CpSc Lab 5 Conditional Statements, Loops, the Math Library, and Redirecting Input Overview For this lab, you will use: one or more of the conditional statements explained below scanf() or fscanf() to read

More information

CSci 1113, Spring 2018 Lab Exercise 3 (Week 4): Repeat, Again and Again

CSci 1113, Spring 2018 Lab Exercise 3 (Week 4): Repeat, Again and Again CSci 1113, Spring 2018 Lab Exercise 3 (Week 4): Repeat, Again and Again Iteration Imperative programming languages such as C++ provide high-level constructs that support both conditional selection and

More information

Revising CS-M41. Oliver Kullmann Computer Science Department Swansea University. Robert Recorde room Swansea, December 13, 2013.

Revising CS-M41. Oliver Kullmann Computer Science Department Swansea University. Robert Recorde room Swansea, December 13, 2013. Computer Science Department Swansea University Robert Recorde room Swansea, December 13, 2013 How to use the revision lecture The purpose of this lecture (and the slides) is to emphasise the main topics

More information

First Programs. CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington

First Programs. CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington First Programs CSE 1310 Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1 Output System.out.println( ) prints out something. System.out.println is the first

More information

What is log a a equal to?

What is log a a equal to? How would you differentiate a function like y = sin ax? What is log a a equal to? How do you prove three 3-D points are collinear? What is the general equation of a straight line passing through (a,b)

More information

COMP 111 PROGRAMMING I MODULARITY USING FUNCTIONS

COMP 111 PROGRAMMING I MODULARITY USING FUNCTIONS COMP 111 PROGRAMMING I MODULARITY USING FUNCTIONS Instructor: Dr Dionysiou ADMINISTRATIVE This week s lecture [BRON06] Chapter 6 (6.1) What is a function? Function declaration (prototype) Function definition

More information

CSCI 131, Midterm Exam 1 Review Questions This sheet is intended to help you prepare for the first exam in this course. The following topics have

CSCI 131, Midterm Exam 1 Review Questions This sheet is intended to help you prepare for the first exam in this course. The following topics have CSCI 131, Midterm Exam 1 Review Questions This sheet is intended to help you prepare for the first exam in this course. The following topics have been covered in the first 5 weeks of the course. The exam

More information

Carleton University Department of Systems and Computer Engineering SYSC Foundations of Imperative Programming - Winter 2012

Carleton University Department of Systems and Computer Engineering SYSC Foundations of Imperative Programming - Winter 2012 Carleton University Department of Systems and Computer Engineering SYSC 2006 - Foundations of Imperative Programming - Winter 2012 Lab 2 - C Functions Objective The objective of this lab is to write some

More information

Math 214 Introductory Statistics Summer Class Notes Sections 3.2, : 1-21 odd 3.3: 7-13, Measures of Central Tendency

Math 214 Introductory Statistics Summer Class Notes Sections 3.2, : 1-21 odd 3.3: 7-13, Measures of Central Tendency Math 14 Introductory Statistics Summer 008 6-9-08 Class Notes Sections 3, 33 3: 1-1 odd 33: 7-13, 35-39 Measures of Central Tendency odd Notation: Let N be the size of the population, n the size of the

More information

WARM UP LESSONS BARE BASICS

WARM UP LESSONS BARE BASICS WARM UP LESSONS BARE BASICS CONTENTS Common primitive data types for variables... 2 About standard input / output... 2 More on standard output in C standard... 3 Practice Exercise... 6 About Math Expressions

More information

Fundamentals of Programming Session 13

Fundamentals of Programming Session 13 Fundamentals of Programming Session 13 Instructor: Reza Entezari-Maleki Email: entezari@ce.sharif.edu 1 Fall 2014 These slides have been created using Deitel s slides Sharif University of Technology Outlines

More information

C++ (Non for C Programmer) (BT307) 40 Hours

C++ (Non for C Programmer) (BT307) 40 Hours C++ (Non for C Programmer) (BT307) 40 Hours Overview C++ is undoubtedly one of the most widely used programming language for implementing object-oriented systems. The C++ language is based on the popular

More information

ASSIGNMENT 1 Expressions, Data Types, and Simple Calculations

ASSIGNMENT 1 Expressions, Data Types, and Simple Calculations ASSIGNMENT 1 Expressions, Data Types, and Simple Calculations COMP-202B, Winter 2010, All Sections Due: Friday, January 22, 2010 (23:55) You MUST do this assignment individually and, unless otherwise specified,

More information

ML 1 Basic OCaml. 1 Change Log. 2 Objectives and Background. 3 Done in Computer-Based Testing Facility. 4 Problems

ML 1 Basic OCaml. 1 Change Log. 2 Objectives and Background. 3 Done in Computer-Based Testing Facility. 4 Problems ML 1 Basic OCaml CS 421 Fall 2017 Revision 1.1 Assigned August 31, 2017 Due September 6, 2017 September 8, 2017 Extension None past the allowed lab sign-up time 1 Change Log 1.1 Changed problem 30 from

More information

The Program Specification:

The Program Specification: Reading to Input Failure, Decisions, Functions This programming assignment uses many of the ideas presented in sections 3 through 8 of the course notes, so you are advised to read those notes carefully

More information

Learning Coding and Math with RoboBlockly Teaching Resource for Grade 7 Math

Learning Coding and Math with RoboBlockly Teaching Resource for Grade 7 Math Learning Coding and Math with RoboBlockly Teaching Resource for Grade 7 Math Harry H. Cheng UC Davis Center for Integrated Computing and STEM Education (C-STEM) http://c-stem.ucdavis.edu http://roboblockly.ucdavis.edu

More information

Compiling and Running a C Program in Unix

Compiling and Running a C Program in Unix CPSC 211 Data Structures & Implementations (c) Texas A&M University [ 95 ] Compiling and Running a C Program in Unix Simple scenario in which your program is in a single file: Suppose you want to name

More information

Array Dependence Analysis as Integer Constraints. Array Dependence Analysis Example. Array Dependence Analysis as Integer Constraints, cont

Array Dependence Analysis as Integer Constraints. Array Dependence Analysis Example. Array Dependence Analysis as Integer Constraints, cont Theory of Integers CS389L: Automated Logical Reasoning Omega Test Işıl Dillig Earlier, we talked aout the theory of integers T Z Signature of T Z : Σ Z : {..., 2, 1, 0, 1, 2,..., 3, 2, 2, 3,..., +,, =,

More information

Project 1. due date Sunday July 8, 2018, 12:00 noon

Project 1. due date Sunday July 8, 2018, 12:00 noon Queens College, CUNY, Department of Computer Science Object-oriented programming in C++ CSCI 211 / 611 Summer 2018 Instructor: Dr. Sateesh Mane c Sateesh R. Mane 2018 Project 1 due date Sunday July 8,

More information

CpSc 1011 Lab 3 Integer Variables, Mathematical Operations, & Redirection

CpSc 1011 Lab 3 Integer Variables, Mathematical Operations, & Redirection CpSc 1011 Lab 3 Integer Variables, Mathematical Operations, & Redirection Overview By the end of the lab, you will be able to: declare variables perform basic arithmetic operations on integer variables

More information

CSCI 2101 Java Style Guide

CSCI 2101 Java Style Guide CSCI 2101 Java Style Guide Fall 2017 This document describes the required style guidelines for writing Java code in CSCI 2101. Guidelines are provided for four areas of style: identifiers, indentation,

More information

Data Structure and Algorithm Midterm Reference Solution TA

Data Structure and Algorithm Midterm Reference Solution TA Data Structure and Algorithm Midterm Reference Solution TA email: dsa1@csie.ntu.edu.tw Problem 1. To prove log 2 n! = Θ(n log n), it suffices to show N N, c 1, c 2 > 0 such that c 1 n ln n ln n! c 2 n

More information

8. Functions (II) Control Structures: Arguments passed by value and by reference int x=5, y=3, z; z = addition ( x, y );

8. Functions (II) Control Structures: Arguments passed by value and by reference int x=5, y=3, z; z = addition ( x, y ); - 50 - Control Structures: 8. Functions (II) Arguments passed by value and by reference. Until now, in all the functions we have seen, the arguments passed to the functions have been passed by value. This

More information

Example C++ Program Demonstrating Usage of a Pointer to a Function in the Call to Another Function

Example C++ Program Demonstrating Usage of a Pointer to a Function in the Call to Another Function ME 5241 Computer Aided Engineering Tom Chase Fall 2000 Example C++ Program Demonstrating Usage of a Pointer to a Function in the Call to Another Function The sample code below implements the Newton s Method

More information

Math Analysis Chapter 1 Notes: Functions and Graphs

Math Analysis Chapter 1 Notes: Functions and Graphs Math Analysis Chapter 1 Notes: Functions and Graphs Day 6: Section 1-1 Graphs Points and Ordered Pairs The Rectangular Coordinate System (aka: The Cartesian coordinate system) Practice: Label each on the

More information

Programming Assignment 2

Programming Assignment 2 CS 122 Fall, 2004 Programming Assignment 2 New Mexico Tech Department of Computer Science Programming Assignment 2 CS122 Algorithms and Data Structures Due 11:00AM, Wednesday, October 13th, 2004 Objectives:

More information

Maths: Phase 5 (Y12-13) Outcomes

Maths: Phase 5 (Y12-13) Outcomes Maths: Phase 5 (Y12-13) Outcomes I know numbers are beautiful. If they aren t beautiful nothing is. Paul Erdose Maths is discovered it doesn t just exist. Maths is a tool to understand, question and criticise

More information

Functions. Lab 4. Introduction: A function : is a collection of statements that are grouped together to perform an operation.

Functions. Lab 4. Introduction: A function : is a collection of statements that are grouped together to perform an operation. Lab 4 Functions Introduction: A function : is a collection of statements that are grouped together to perform an operation. The following is its format: type name ( parameter1, parameter2,...) { statements

More information

VALLIAMMAI ENGINEERING COLLEGE SRM NAGAR, KATTANGULATHUR

VALLIAMMAI ENGINEERING COLLEGE SRM NAGAR, KATTANGULATHUR VALLIAMMAI ENGINEERING COLLEGE SRM NAGAR, KATTANGULATHUR 603 203 FIRST SEMESTER B.E / B.Tech., (Common to all Branches) QUESTION BANK - GE 6151 COMPUTER PROGRAMMING UNIT I - INTRODUCTION Generation and

More information

Class 9: Static Methods and Data Members

Class 9: Static Methods and Data Members Introduction to Computation and Problem Solving Class 9: Static Methods and Data Members Prof. Steven R. Lerman and Dr. V. Judson Harward Goals This the session in which we explain what static means. You

More information

Finite arithmetic and error analysis

Finite arithmetic and error analysis Finite arithmetic and error analysis Escuela de Ingeniería Informática de Oviedo (Dpto de Matemáticas-UniOvi) Numerical Computation Finite arithmetic and error analysis 1 / 45 Outline 1 Number representation:

More information

Faculty of Engineering Computer Engineering Department Islamic University of Gaza C++ Programming Language Lab # 6 Functions

Faculty of Engineering Computer Engineering Department Islamic University of Gaza C++ Programming Language Lab # 6 Functions Faculty of Engineering Computer Engineering Department Islamic University of Gaza 2013 C++ Programming Language Lab # 6 Functions C++ Programming Language Lab # 6 Functions Objective: To be familiar with

More information

Partial Derivatives (Online)

Partial Derivatives (Online) 7in x 10in Felder c04_online.tex V3 - January 21, 2015 9:44 A.M. Page 1 CHAPTER 4 Partial Derivatives (Online) 4.7 Tangent Plane Approximations and Power Series It is often helpful to use a linear approximation

More information

ENCM 339 Fall 2017 Lecture Section 01 Lab 9 for the Week of November 20

ENCM 339 Fall 2017 Lecture Section 01 Lab 9 for the Week of November 20 page 1 of 9 ENCM 339 Fall 2017 Lecture Section 01 Lab 9 for the Week of November 20 Steve Norman Department of Electrical & Computer Engineering University of Calgary November 2017 Lab instructions and

More information

Introduction to C++ Introduction. Structure of a C++ Program. Structure of a C++ Program. C++ widely-used general-purpose programming language

Introduction to C++ Introduction. Structure of a C++ Program. Structure of a C++ Program. C++ widely-used general-purpose programming language Introduction C++ widely-used general-purpose programming language procedural and object-oriented support strong support created by Bjarne Stroustrup starting in 1979 based on C Introduction to C++ also

More information

General Syntax. Operators. Variables. Arithmetic. Comparison. Assignment. Boolean. Types. Syntax int i; float j = 1.35; int k = (int) j;

General Syntax. Operators. Variables. Arithmetic. Comparison. Assignment. Boolean. Types. Syntax int i; float j = 1.35; int k = (int) j; General Syntax Statements are the basic building block of any C program. They can assign a value to a variable, or make a comparison, or make a function call. They must be terminated by a semicolon. Every

More information

Computer Programming, I. Laboratory Manual. Experiment #2. Elementary Programming

Computer Programming, I. Laboratory Manual. Experiment #2. Elementary Programming Think Twice Code Once The Islamic University of Gaza Engineering Faculty Department of Computer Engineering Fall 2017 ECOM 2005 Khaleel I. Shaheen Computer Programming, I Laboratory Manual Experiment #2

More information

LECTURE 0: Introduction and Background

LECTURE 0: Introduction and Background 1 LECTURE 0: Introduction and Background September 10, 2012 1 Computational science The role of computational science has become increasingly significant during the last few decades. It has become the

More information

Carleton University Department of Systems and Computer Engineering SYSC Foundations of Imperative Programming - Winter 2012

Carleton University Department of Systems and Computer Engineering SYSC Foundations of Imperative Programming - Winter 2012 Carleton University Department of Systems and Computer Engineering SYSC 2006 - Foundations of Imperative Programming - Winter 2012 Lab 3 - Arrays and Functions Objective The objective of this lab is to

More information

Geometry Summer Packet

Geometry Summer Packet Geometry Summer Packet Name ALLEN PARK HIGH SCHOOL Summer Assessment Geometry Summer Packet For Students Entering Geometry Summer 04 This summer packet is intended to be completed by the FIRST DAY of school.

More information

COS 126 Midterm 1 Written Exam Fall 2011

COS 126 Midterm 1 Written Exam Fall 2011 NAME: login id: Precept: COS 126 Midterm 1 Written Exam Fall 2011 This test has 8 questions, weighted as indicated. The exam is closed book, except that you are allowed to use a one page cheatsheet. No

More information

Lesson #3. Variables, Operators, and Expressions. 3. Variables, Operators and Expressions - Copyright Denis Hamelin - Ryerson University

Lesson #3. Variables, Operators, and Expressions. 3. Variables, Operators and Expressions - Copyright Denis Hamelin - Ryerson University Lesson #3 Variables, Operators, and Expressions Variables We already know the three main types of variables in C: int, char, and double. There is also the float type which is similar to double with only

More information

Introduction to Java Applications

Introduction to Java Applications 2 Introduction to Java Applications OBJECTIVES In this chapter you will learn: To write simple Java applications. To use input and output statements. Java s primitive types. Basic memory concepts. To use

More information

Introduction to C++ with content from

Introduction to C++ with content from Introduction to C++ with content from www.cplusplus.com 2 Introduction C++ widely-used general-purpose programming language procedural and object-oriented support strong support created by Bjarne Stroustrup

More information

Lab ACN : C++ Programming Exercises

Lab ACN : C++ Programming Exercises Lab ACN : C++ Programming Exercises ------------------------------------------------------------------------------------------------------------------- Exercise 1 Write a temperature conversion program

More information

Math Section 4.2 Radians, Arc Length, and Area of a Sector

Math Section 4.2 Radians, Arc Length, and Area of a Sector Math 1330 - Section 4.2 Radians, Arc Length, and Area of a Sector The word trigonometry comes from two Greek roots, trigonon, meaning having three sides, and meter, meaning measure. We have already defined

More information

CSC Java Programming, Fall Java Data Types and Control Constructs

CSC Java Programming, Fall Java Data Types and Control Constructs CSC 243 - Java Programming, Fall 2016 Java Data Types and Control Constructs Java Types In general, a type is collection of possible values Main categories of Java types: Primitive/built-in Object/Reference

More information

ASSIGNMENT 2 Conditionals, Loops, Utility Bills, and Calculators

ASSIGNMENT 2 Conditionals, Loops, Utility Bills, and Calculators ASSIGNMENT 2 Conditionals, Loops, Utility Bills, and Calculators COMP-202A, Fall 2009, All Sections Due: Friday, October 9, 2009 (23:55) You MUST do this assignment individually and, unless otherwise specified,

More information

Violations of the contract are exceptions, and are usually handled by special language constructs. Design by contract

Violations of the contract are exceptions, and are usually handled by special language constructs. Design by contract Specification and validation [L&G Ch. 9] Design patterns are a useful way to describe program structure. They provide a guide as to how a program fits together. Another dimension is the responsibilities

More information

CpSc 1111 Lab 9 2-D Arrays

CpSc 1111 Lab 9 2-D Arrays CpSc 1111 Lab 9 2-D Arrays Overview This week, you will gain some experience with 2-dimensional arrays, using loops to do the following: initialize a 2-D array with data from an input file print out the

More information

Year 6 Maths Long Term Plan

Year 6 Maths Long Term Plan Week & Focus 1 Number and Place Value Unit 1 2 Subtraction Value Unit 1 3 Subtraction Unit 3 4 Subtraction Unit 5 5 Unit 2 6 Division Unit 4 7 Fractions Unit 2 Autumn Term Objectives read, write, order

More information

2 + (-2) = 0. Hinojosa 7 th. Math Vocabulary Words. Unit 1. Word Definition Picture. The opposite of a number. Additive Inverse

2 + (-2) = 0. Hinojosa 7 th. Math Vocabulary Words. Unit 1. Word Definition Picture. The opposite of a number. Additive Inverse Unit 1 Word Definition Picture Additive Inverse The opposite of a number 2 + (-2) = 0 Equal Amount The same in quantity = Fraction A number in the form a/b, where b 0. Half One of two equal parts of a

More information

MAT128A: Numerical Analysis Lecture Two: Finite Precision Arithmetic

MAT128A: Numerical Analysis Lecture Two: Finite Precision Arithmetic MAT128A: Numerical Analysis Lecture Two: Finite Precision Arithmetic September 28, 2018 Lecture 1 September 28, 2018 1 / 25 Floating point arithmetic Computers use finite strings of binary digits to represent

More information

Computing Basics. 1 Sources of Error LECTURE NOTES ECO 613/614 FALL 2007 KAREN A. KOPECKY

Computing Basics. 1 Sources of Error LECTURE NOTES ECO 613/614 FALL 2007 KAREN A. KOPECKY LECTURE NOTES ECO 613/614 FALL 2007 KAREN A. KOPECKY Computing Basics 1 Sources of Error Numerical solutions to problems differ from their analytical counterparts. Why? The reason for the difference is

More information

These notes are intended exclusively for the personal usage of the students of CS352 at Cal Poly Pomona. Any other usage is prohibited without

These notes are intended exclusively for the personal usage of the students of CS352 at Cal Poly Pomona. Any other usage is prohibited without These notes are intended exclusively for the personal usage of the students of CS352 at Cal Poly Pomona. Any other usage is prohibited without previous written authorization. 1 2 The simplest way to create

More information

Programming in C. Pointers and Arrays

Programming in C. Pointers and Arrays Programming in C Pointers and Arrays NEXT SET OF SLIDES FROM DENNIS FREY S FALL 2011 CMSC313 http://www.csee.umbc.edu/courses/undergraduate/313/fall11/" Pointers and Arrays In C, there is a strong relationship

More information

Year 6.1- Number and Place Value 2 weeks- Autumn 1 Read, write, order and compare numbers up to and determine the value of each digit.

Year 6.1- Number and Place Value 2 weeks- Autumn 1 Read, write, order and compare numbers up to and determine the value of each digit. Year 6.1- Number and Place Value 2 weeks- Autumn 1 Read, write, order and compare numbers up to 10 000 000 and determine the value of each digit. Round any whole number to a required degree of accuracy.

More information

CpSc 111 Lab 3 Integer Variables, Mathematical Operations, & Redirection

CpSc 111 Lab 3 Integer Variables, Mathematical Operations, & Redirection CpSc 111 Lab 3 Integer Variables, Mathematical Operations, & Redirection Overview By the end of the lab, you will be able to: declare variables perform basic arithmetic operations on integer variables

More information