+ All Categories
Home > Documents > Arash Rafiey

Arash Rafiey

Date post: 31-Dec-2015
Category:
Upload: tate-kaufman
View: 47 times
Download: 0 times
Share this document with a friend
Description:
Arash Rafiey. [email protected] TA : Xu Cheng [email protected] Office Hours M-W 10:30 – 11:30. How Create a C++ Program. #include using namespace std; void main() { cout
55
Arash Rafiey [email protected] TA : Xu Cheng [email protected] Office Hours M-W 10:30 – 11:30
Transcript

Arash Rafiey

[email protected]

TA : Xu Cheng

[email protected]

Office Hours

M-W 10:30 – 11:30

How Create a C++ Program

#include<iostream>using namespace std; void main() { cout<<“Hello World”;}

If your compiler gives error then

#include<iostream.h>void main() { cout<<“Hello World”; cout<<endl; // for going to new line cout<<“ good bye”;}

cout is an object for printing out some thing on the screen.

#include<iostream.h>void main() { cout<<“Hello World \n”; cout<<“ good bye”;}

we can use \n instead of cout<<endl;

How to run your program

• Using Linux or unix:g++ myFile.cpp

./a.out

g++ myFile.cpp myFile.out

./myFile.out

Declare Statement & Variable• Each variable must be declare before use• Each variable has a type:

For example int , char, float. int for Integer type; char for character like ‘A’; float for real number;

Example

int LuckyNumber=17;

float RealNumber;

char a=‘A’;

Identifiers

• Identifier: name of a variable, function, or class • Rules for identifiers in C++:

1 Can be made up of letters, digits, and the underscore (_) character

2 Cannot start with a digit 3 Cannot use other symbols such as ? or % 4 Spaces are not permitted inside identifiers 5 You cannot use reserved words 6 They are case sensitive

Self Check

1. What is the type of the values 0 and ‘0’?

2. Which of the following are legal identifiers?

Greeting1gvoid101dalmatiansHello, World<greeting>

Answer

• int and char

• Only the first two are legal identifiers

Syntax : Variable Definition

• typeName variableName = value;or typeName variableName;

Example :int numbe = 12;

Purpose:To define a new variable of a particular type and optionally

supply an initial value

The Assignment Operator

• Assignment operator: =

• Not used as a statement about equality

• Used to change the value of a variable

int number1; int number2, number3;

number1=number2=number3=88;

number2=number2-1;

number3=number2+1;

How to read a variable

#include<iostream>using namespace std; void main() { int number; cout<<“please enter a number \n”; cin>>number; number=number+1; cout<<“the number is “<<number;}

Integer Types

• The short, int and long Integer Types

A short integer is at least 16 bits

A int integer is at least as big as short

A long integer is at least 32 bits and at

least as big as int .

• E.g. A 16-bit int might run from -32768 to 32767

• The sizeof operator returns the size (in bytes)

#include<iostream.h>int main() { int n_int = INT_MAX; short n_short = SHRT_MAX; long n_long = LONG_MAX; cout << “int is “ << sizeof (int) << “ bytes” << endl; cout << “short: “ << n_short << endl; cout << “long: “ << n_long << endl; return 0;}

• int is 4 bytes

• Maximum values:– Short: 32767

– Long: 2147483647

Characters and small integers#include<iostream.h>int main() { char ch = ‘M’; // assign ASCII code int a = ch; cout << “ASCII code: “ << ch << “ is “ << a << endl; ch = ch + 1; a = ch; cout << “ASCII code: “ << ch << “ is “ << a << endl;

return 0;}

Output

• M is 77

• N is 78

Boolean type

• bool isReady = true;

• int ans = true; // ans assigned 1

• int promise = false; // promise assigned 0

• bool start = -100; // true

• bool stop = 0; // false

Floating-point number

• E.g. • 12.34• 9300.3• 0.02• 8.0

• We have

float, double, long double

Arithmetic operators

• Summation: +

• Multiplication: *

• Division: /

• Subtraction: -

Operator Precedence

• int number = 3 + 4 * 5 // 35 or 23?

• float logs = 120 / 4 * 5 // 150 or 6??

Type Casting

• Conversion between types:• (typeName) value // c• typeName (value) // c++• e.g.

– cout << int(‘A’) << endl; // 65– float one, – int two;

• one = 1.9 + 2.1;• two = (int) 1.9 + (int) 2.1;

Functions

• Building blocks of programs

• A function

– Has an input and an output– Contains a set of instructions

• x = sqrt(16); // returns 4

Syntax

• typeName functionName (typeName varName_1, …)

{

BODY

.

.

.

return value;

}

Examples of functions int sum (int firstValue, int secondValue){ int final; final = firstValue + secondValue; return final;} void main(){ int a = 1; int b = 2; int total = sum(a,b); cout << “Total is: “ << total << endl;}

Arrays

• An array is a data form that holds several values of the same type

• Syntax:– typeName arrayName[value];

• e.g:– int someArray[3];

• Index starts from 0!!!– someArray[0] = 1;– someArray[2] = 2;

Initializations Rules for Arrays

• int array[4] = {2,6,4,5};

• int secondArray[4];• secondArray[4] = {5,6,7,8}; // error!!!• secondArray = array; //error!!!

• float Hotel[5] = {1.1, 2.2};• long total[500] = {0};

• short array[] = {1,2,3,4};

String

• Series of characters stored in a consecutive bytes

• Create a string as an array but the last element must be the null character ‘\0’– e.g

• char dog[5] = {‘b’,’e’,’a’,’u’,’x’}; //NOT!!• char dog[6] = {‘b’,’e’,’a’,’u’,’x’,’\0’}; // STRING!!

More examples

• char dog[5] = “beaux”; //a better way

null character is implicitly included.

• char name[]=“c++”; // compiler counts

• char boss[8]=“Arvind”;

#include<iostream.h>int main() { int arSize = 20; char name[arSize]; char dessert[arSize]; cout << “Enter your name: “ << endl; cin >> name; cout << “Enter your dessert: “ << endl; cin >> dessert;

cout << name << “ has selected: “ << dessert << endl; return 0;}

Another way to read a string#include<iostream.h>int main() { int arSize = 20; char name[arSize]; char dessert[arSize]; cout << “Enter your name: “ << endl; cin.getline(name, arSize); // reads through newline cout << “Enter your dessert: “ << endl; cin.getline(dessert, arSize);

cout << name << “ has selected: “ << dessert << endl; return 0;}

The String class

• To define strings more easily:– Include the string class:

• #include<string>

• string str_1 = “jaguar”;

Assignment & Concatenation & Appending

• char char_1[20];

• char char_2[20] = “jaguar”;

• string str_1;

• string str_2 = “panther”;

• char_1 = char_2; // INVALID!!

• str_1 = str_2; // VALID!!

Appending

• string str_3;• str_3 = str_1 + str_2; // join str_1 and str_2

• str_1 += str_2; // add str_2 to the end of str_1

More string operations:

• Copying: #include <cstring>

– strcpy(char_1, char_2); //copy char_2 into char_1 strcat(char_1, char_2); //append char_2 to char_1

• Size of a string:– char charOne[20] = {‘p’,’i’,’e’};– string strOne = “pie”;– strlen(charOne);– strOne.size();

Increment & Decrement

• Increment: ++ int a = 20;

int b = 20;

cout << “a: “ << a << “ b: “ << b << endl;

cout << “a++: “ << a++ << “ ++b: “ << ++b << endl;

cout << “a: “ << a << “ b: “ << b << endl;

a: 20 b:20

a++: 20 ++b:21

a:21 b:21

int x = 5;

int y = ++x;

Decrement: --

• Same rules as increment ( i.e. ++)

Loops

• different types:

– for– while– etc.

For Loop

• for(initialValue; test-expression ; update-expression)

{

BODY

}

Example

#include<iostream.h>int main() { int a; for (a = 0; a < 10; a++ ) { cout << a << endl; }return 0;}

While loop

• while(test-expression)

{

BODY

}

Example#include<iostream.h>int main() { int arSize = 20; char name[arSize]; cin >> name; int a = 0; while (name[a] != ‘\0’) { cout << name[a] << endl; a++; }return 0;}

Conditional Statements

• if statements• Syntax: if (condition) { IF_BODY } else { ELSE_BODY }

Conditions:

• Relational Expressions:– Comparisons:

• e.g» == tests equality» > is greater?

Example

int number; cin >> number;if ( number < 0) { cout << “Negative Value” << endl; } else { cout << “Non-negative Value” << endl; }

Comparing two strings

#include<iostream.h>int main() { int arSize = 20; char name1[arSize]; char name2[arSize]; cout<<“String1”<<endl; cin>>name1; cout<<“String2”<<endl; cin>>name2;

int len1,len2,a;len1=strlen(name1);len2=strlen(name2);bool flag=true;if (len1 != len2 ) cout<<“different”;else { for (a=0; name1[a]==name2;a++); if (a==len1) cout<<“The same”; else cout<<“different”;}}

Sort an Array of Integer

#include<iostream.h>int main() { int arSize = 20; int ArrayNumber[arSize]; int indx; for(index=0; index <20; index++) { cout<<“enter an integer”<<endl; cin>>ArrayNumber[index]; }

int i,j; int temp; for( i=1; i< 20;i++) for (j=0; j< i;j++) if (ArrayNumber[ j] > ArrayNumber[ j+1]) { temp= ArrayNumber[ j ]; ArrayNumber[ j ]=ArrayNumber[ j+1]; ArrayNumber[ j+1]=temp; }}


Recommended