Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Science 1620 C++ - Basics. #include using namespace std; int main() { return 0; } A very basic C++ Program. When writing your first programs,

Similar presentations


Presentation on theme: "Computer Science 1620 C++ - Basics. #include using namespace std; int main() { return 0; } A very basic C++ Program. When writing your first programs,"— Presentation transcript:

1 Computer Science 1620 C++ - Basics

2 #include using namespace std; int main() { return 0; } A very basic C++ Program. When writing your first programs, always start with this template. The code that you should write should go here. The details of this template (what each component means) will become clear as the semester progresses.

3 cout c onsole out put sends data to the current output stream for us, this will typically mean the screen this can be re-routed to other output devices if necessary when you wish to display something to the screen, use the following syntax: cout << a valid C++ expression

4 C++ Expression an expression in C++ is an entity that represents a value this value can take on many types we will look at one type of expressions first string literal

5 String Literal a string literal is a sequence of characters enclosed in quotation marks Examples: "Hello" "Computer Science 1620" ”Dolly Parton"

6 Back to cout to display a string literal to the screen, include it on the right side of the << operator Example: write a program that displays the text "Hello world!" on the computer screen.

7 #include using namespace std; int main() { cout << "Hello World!"; cout << endl; return 0; } String literal

8

9 Notice the semicolon at the end of each line all of your C++ constructs will end in a semicolon (unless otherwise instructed) indicates the end of an instruction

10 What about the second cout command? cout << endl; endl causes the data to be flushed from the buffer (explained in class), and moves the input to the next line your output should always include a call to endl (at some point)

11 cout concatenation instead of having two separate cout statements, you can include them on the same line

12 #include using namespace std; int main() { cout << "Hello World!" << endl; return 0; }

13 #include using namespace std; int main() { cout << "Hello " << "World!" << endl; return 0; }

14 Example: Write a program that writes your name and address to the screen: #include using namespace std; int main() { cout << "Robert Benkoczi" << endl; cout << "123 Sunset Blvd" << endl; cout << "Hollywood, CA" << endl; cout << "90210" << endl; return 0; }

15 applepie $ g++ -o print-adr print-adr.cc applepie $./print-adr Robert Benkoczi 123 Sunset Blvd Hollywood, CA 90210 applepie $

16 Recap: structure of a C++ program the first 2 lines are almost always included in a C++ program. every program begins with “main ( )”. main begins with { and ends with } the brackets ( ) after main are required. program starts and ends in “main”. return 0 is put right before the closing } statements always end with a semicolon. Anything preceded with // is a comment and the compiler ignores it. #include #include using namespace std; int main( ) { statement 1; statement 1; statement 2; return 0; } // end of program

17 Other data types C++ Data Types simple structured (struct, class) pointers function we will deal with these later

18 Other data types C++ Data Types four categories of simple data integer whole numbers, no fractional part floating point real numbers enumeration boolean

19 Integer types a number without a decimal part integers: 10, -24, 5800, -9600, etc… non-integers 14.5, -24.6, 5800.0, -8 x 10 6 How are integers written in C++? in the simplest case, exactly as you would expect no spaces or punctuation (commas, dollar signs, etc)

20 Note that a number in C++ is an expression hence, the number 34 is an expression typically called an integer literal the value of this expression is 34 because it is an expression, it can be used wherever an expression is permitted eg. as data to cout

21 Write a program that displays your name on the first line, and age on the second line. Display your name as a string, and your age as an integer. #include using namespace std; int main() { return 0; }

22 Integer types there are actually several flavours of "integer" in C++ by default, all integer literals are ints we will defer discussion about the others until we take variables * compiler dependent TypeRangeSize char-128.. 127*1 byte short-32768.. 32767*2 bytes int-2147483648 … 2147483647*4 bytes long-2147483648 … 2147483647*4 bytes

23 Internal vs source code representations Type: used to specify the internal representation of a value (or expression). EX: how is that value stored in the computer memory. Source code representation: how do we write a literal in the source code

24 Representation of integers Representing numbers: roman: I, II, III, IV, V, VI, VII, VIIII, IX, X arabic: coins with face value 1, 10, 100, 1000 etc Base 2 numbering (face value 1, 2, 4, 8...) 13 = 10 + 3 13 = 8 + 4 + 1 = 1101 (meaning 1 x 8, 1 x 4, 0 x 2, 1 x 1)

25 Representation of integers Representing numbers: roman: I, II, III, IV, V, VI, VII, VIIII, IX, X arabic: coins with face value 1, 10, 100, 1000 etc Base 2 numbering (face value 1, 2, 4, 8...) 13 = 10 + 3 13 = 8 + 4 + 1 = 1101 (meaning 1 x 8, 1 x 4, 0 x 2, 1 x 1) Addition is easy with arabic numerals! bits

26 Representation of integers char (8 bits or 1 byte) 0 1 1 1 1 1 1 1 = +127 int, long - same idea, more bits. represents the sign (+/-)

27 Representation of integers negative integers 1 0 0 0 0 0 0 0 = -0 (?) This one’s complement representation. Not nice to have negative 0! We would like to add + and - integers using the same procedure as for adding + integers. represents the sign (+/-)

28 Representation of integers two’s complement representation 1 ? ? ? ? ? ? ? = -x Goal: x + (-x) = x - x = 0 = 0 0 0 0 0 0 0 0 represents the sign (+/-)

29 Unsigned integers Use when there is no need to represent negative integers. We can represent more positive integers. TypeRangeSize unsigned char 0.. 255*1 byte unsigned short 0.. 65536*2 bytes unsigned int 0... 4 294 967 295* 4 bytes unsigned long 0... 4 294 967 295 * 4 bytes

30 Floating Point Numbers a number with a decimal part floating point numbers: 10.8, -24.8372, 5800.0, etc… non-fps 14, 28, 96, -49 How are fp numbers written in C++? (source code representation) in the simplest case, exactly as you would expect no spaces or punctuation (commas, dollar signs, etc) scientific notation: E = 10

31 Write a program that displays your name on the first line, age on the second line, and bank account balance on the 3rd. #include using namespace std; int main() { return 0; }

32 Floating Point types there are actually several flavours of fps in C++ by default, all floating point literals are doubles we will defer discussion about the others until we take variables * compiler dependent TypeRangeSize float1.17549e-38... 3.40282e+384 bytes double2.22507e-308... 1.79769e+308*8 bytes long double3.3621e-4932... 1.18973e+4932*10 bytes

33 Integers vs. Floating Point why would you use a floating point instead of an integer? when you are working with real numbers why would you use an integer instead of a floating-point number? 1) Integers use less memory than doubles 2) Integers are more precise than floats more on this when we take variables

34 Why would you use either number type instead of a string? after all, could we not just say: cout << "Car Price:" << endl; cout << "32999" << endl; two reasons 1) Cannot do arithmetic on a string 2) Strings typically require more space than the number.

35 1) Cannot do arithmetic on a string next class, we will perform arithmetic on numbers cout << (32999 – 5000) << endl; you cannot perform the same operation on the string representation cout << ("32999" – "5000") << endl;

36 2) Strings typically require more space than a number as mentioned, an int requires 4 bytes of memory a string requires x+1 bytes, where x is the number of characters in the string 32999 requires 4 bytes to store "32999" requires 6 bytes to store

37 Exercise: Determine an appropriate data type (int, fp, string) for each of the following? 1) The average height of the class 2) The number of desks in the class 3) The name of the class 4) The distance from my office to the classroom


Download ppt "Computer Science 1620 C++ - Basics. #include using namespace std; int main() { return 0; } A very basic C++ Program. When writing your first programs,"

Similar presentations


Ads by Google