Computer Programming Basics Assistant Professor Jeon, Seokhee Assistant Professor Department of Computer Engineering, Kyung Hee University, Korea.

Post on 17-Dec-2015

220 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

ComputerComputer Programming BasicsProgramming Basics

Jeon, Seokhee

Assistant ProfessorAssistant ProfessorDepartment of Computer Engineering,Department of Computer Engineering,

Kyung Hee University, KoreaKyung Hee University, Korea

Pre-compiler directivePre-compiler directive

Opening brace

Closing brace

Opening brace

Closing brace

Structure of a C++ ProgramStructure of a C++ Program

Without namespaceWithout namespaceWithout namespaceWithout namespace

Hello World!Hello World!

Namespace std contains all the classes, objects and functions of the standard

C++ library.

Namespace std contains all the classes, objects and functions of the standard

C++ library. #include <iostream>

int main () {

std::cout << "Hello world!\n";

return 0;

}

Preprocessor DirectivesPreprocessor Directives

#include <iostream>•“I want to use a predefined library called iostream”

•Always start with a ‘#’

•iostream: a library for inputs (from e.g., a user) and outputs (to e.g., the monitor)

““using” Directivesusing” Directives

using namespace std;•“I want to use objects in a name group ‘std’ ”

•Tells the compiler where to look for names in the library

•Can deal with the situation where two or more objects in different libraries share a same name (naming confliction).

– Read Appendix N for more about namespace

main functionmain function

int main()•The main body of the program.•Compiler first tries to locate “main()” to find where to begin the program•In the form of a function

– I will cover “function” soon

CommentComment

• Internal program document• Not considered as a program code

Start of comment

End of comment

Start of comment

End of comment

Nested Block Comments are InvalidNested Block Comments are Invalid

VariablesVariables

• Named memory locations that have a type– Named: identifier– Type: needs declaration

• What you can do with variables– Storing data– Modifying data– Reading data

Variables and IdentifiersVariables and Identifiers

Memory

Address of memory:

Hard to remember

Identifier: name of address

Variables and IdentifiersVariables and Identifiers

Memory

studentID

studentGrade1

studentGrade2

Identifiers

Variables and IdentifiersVariables and Identifiers

Memory

studentID

studentGrade

studentName

Compiler keeps trackof [identifier-address]table

Variables and IdentifiersVariables and Identifiers

In program

studentID_Total_Grade = studentGrade1 + studentGrade2

Naming IdentifiersNaming Identifiers

• Allowed characters: A-Z, a-z, 0-9, _ (underscore)• Not allowed to start with a digit. E.g., 3class (x),

class3(o)• The identifier cannot duplicate a reserved word. e.g.,

if, case, while…• Good names descriptive but short• C++ is case sensitive; PI, Pi and pi are different.

Standard Data TypesStandard Data Types

Integer and Floating Point TypesInteger and Floating Point Types

2 or 4 Bytes2 or 4 Bytes

4 Bytes4 Bytes

2 Bytes2 Bytes

8 Bytes8 Bytes

10 Bytes10 Bytes

4 Bytes4 Bytes

Size of value type depends on computer architectureSize of value type depends on computer architecture

Maximum/Minimum of Integer Value Maximum/Minimum of Integer Value TypeType

Type Sign Byte Minimum value Maximum value

short int/shortsigned

2-32,768 32,767

unsigned 0 65,535

int (PC)signed

2-32,768 32,767

unsigned 0 65,535

int (Mainframe)signed

4-2,147,483,648 2,147,483,647

unsigned 0 4,294,967,295

long int/longsigned

4-2,147,483,648 2,147,483,647

unsigned 0 4,294,967,295

Maximum/Minimum of C++ data typesMaximum/Minimum of C++ data types

Variables DeclarationVariables Declaration

Variable InitializationVariable Initialization

• Variable declaration ≠ variable initialization• Should be initialized by a programmer before it is

used

e.g.,

int count; declaration (o), initialization(x)

char grade = ‘d’; declaration (o), initialization(o)

ConstantsConstants

• Data values that cannot be changed during program execution

• E.g.,– 3.141592– ‘d’– “Hello word”– ‘\0’

To RememberTo Remember

• A character constant is enclosed by the single quotes. (e.g. ‘a’)

• Use double quotes for string constants. (e.g. “Jeon, Seokhee”)

• bool types are treated as a number. True: non-zero. False: zero.

Standard streamsStandard streams

• A mapping between data and input/output device

More about More about coutcout

• width(int) function sets the width for printing a value

• Only works until the next insertion command comes

int x = 42;cout.width(5);cout << x << ‘\n’; // Outputs 42

cout << x << ‘\n’; // Outputs 42

More about More about coutcout

• fill(char) function sets the fill character. • The character remains as the fill character until set

again.

int x = 42;cout.width(5);cout.fill(‘*’);cout << x << ‘\n’; // Outputs ***42

More about More about coutcout

• precision (int) sets the number of significant digits of float type numbers

float y = 23.1415;cout.precision(1);cout << y << '\n'; // Outputs 2e+01cout.precision(2);cout << y << '\n'; // Outputs 23cout.precision(3);cout << y << '\n'; // Outputs 23.1

More about More about coutcout

• Output Manipulators (not a function)

endl - outputs a new line character, flushes output

dec - sets int output to decimal

hex - sets int output to hexadecimal

oct - sets int output to octal

#include <iomanip.h>int x = 42;cout << oct << x << endl; // Outputs 52\ncout << hex << x << endl; // Outputs 2a\ncout << dec << x << endl; // Outputs 42\n

Example codes reading (Program 2-2)Example codes reading (Program 2-2)

• #include <iostream>• using namespace std;

• int main (void) • {• int a;• int b;• int c;• int sum;

• cout << "Welcome. This program adds\n";• cout << "three numbers. Enter three numbers\n";• cout << "in the form: nnn nnn nnn <return>\n";

• cin >> a >> b >> c;

• // Numbers are now stored in a, b, and c. Add them.• sum = a + b + c;

• cout << "\nThe total is: " << sum << "\n";• cout << "\nThank you. Have a good day.\n";• return 0;• } // main

Welcome. This program addsthree numbers. Enter three numbersin the form: nnn nnn nnn <return>11 22 33

The total is: 66

Thank you. Have a good day.

Welcome. This program addsthree numbers. Enter three numbersin the form: nnn nnn nnn <return>11 22 33

The total is: 66

Thank you. Have a good day.

Try to understand other examples in Try to understand other examples in textbook!textbook!

• Program 2-3 ~ 2-13

top related