1 / 25

CSCI 3328 Object Oriented Programming in C# Chapter 4: C# Control Statement – Part I

CSCI 3328 Object Oriented Programming in C# Chapter 4: C# Control Statement – Part I. Xiang Lian The University of Texas – Pan American Edinburg, TX 78539 lianx@utpa.edu. Objectives. In this chapter, you will: Learn the primitive data types in Visual C#

wpolak
Download Presentation

CSCI 3328 Object Oriented Programming in C# Chapter 4: C# Control Statement – Part I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CSCI 3328 Object Oriented Programming in C# Chapter 4: C# Control Statement – Part I Xiang Lian The University of Texas – Pan American Edinburg, TX 78539 lianx@utpa.edu

  2. Objectives • In this chapter, you will: • Learn the primitive data types in Visual C# • Become familiar with arithmetic operators • Explore how to design algorithms to solve problems • Learn the components of basic control structures • Study the syntax of basic sequence, selection, and repetition structures in Visual C#

  3. Introduction • Computer program • Sequence of statements whose objective is to accomplish a task • Programming • Process of planning and creating a program

  4. Introduction (cont'd) • Function • Collection of statements; when executed, accomplishes something • Syntax • Rules that specify which statements (instructions) are legal • Programming language • A set of rules, symbols, and special words • Visual C#

  5. Introduction (cont'd) • Reserved words, keywords, or word symbols • Words that are reserved by Visual C# • Usually in blue color in the IDE (Visual Studio)

  6. About Some Data Types in C# • Value Types Size (in bits) Range sbyte 8 128 to 127 byte 8 0 to 255 short 16 -32768 to 32767 ushort 16 0 to 65535 int 32 147483648 to 2147483647 uint 32 0 to 4294967295 long 64 -9223372036854775808 to 9223372036854775807 ulong 64 0 to 18446744073709551615 char 16 0 to 65535 bool 8 true, false enum types and struct types • Reference types include class types, interface types, delegate types, and array types • Pointer types

  7. Declaration of Variables • All variables must be declared before they are used in a program • Declaring a variable • int product = 3; • Declaring multiple variables of the same type • int number1, number2;

  8. Naming Convention • Consist of letters, digits, and the underscore character (_) • Must begin with a letter or underscore • C# is case sensitive • NUMBER is not the same as number

  9. Arithmetic Operators in Visual C# • Addition: + • Subtraction: - • Multiplication: * • Division: / • Modulus: % • Increment: ++ • Decrement: --

  10. Explicitly and Implicitly Converting Between Simple Types • Integer and integer division yields integer result • Suppose average is a floating point number: • Average = total/num; Average will only get an integer if total and num are integers. int sum = 200, num = 3; float avg; avg = sum / num; Console.WriteLine(avg); // Output: 66

  11. Unary Cast Operator int sum = 200, num = 3; floatav; av = (float) sum / num; Console.WriteLine(av); // Output: 66.6666 • float/float or float/int or int/float will yield a float. • C# implicitly promotes the one int to float

  12. Division and Modulus • x / y and x%y • int x=7, y = 2; • Console.WriteLine(x / y); • Console.WriteLine(x % y); • E.g., 7.0 / 2 evaluates to 3.5

  13. Last Chapter: Arithmetic Operators • Unary: +, - • Multiplicative: *, /, % • Additive: +, - • Relational operators • > < >= <= • Equality operators • ==, != • Precedence of operators • http://msdn.microsoft.com/en-us/library/6a71f45d.aspx high low

  14. Exercises • What are the values of the following expressions? • 10/3 • 5.2/2.0 • 9 % 3 • What is the order of the following expression? • X = 2 * 5 / 3+ 3 * 5 + 7

  15. Control Statements • Linear (sequential) program execution • Selection structure • repetition structure • Structured programming • Controlled entry and exit out of a module • Avoid goto statements

  16. Selection Structures in C# • if – single selection statement • if … else – double selection statement • switch – multiple selection statement [grade>=60] display "passed" [grade<60]

  17. Examples if (grade >= 60) Console.WriteLine("Passed!"); if (grade >= 60) Console.WriteLine("Passed!"); else Console.WriteLine("Failed!"); Conditional Operator Console.WriteLine(grade >= 60 ? "Passed!": “Failed!”);

  18. Nested If Statement if (grade >=90) Console.WriteLine(“A”); else if (grade >=80) Console.WriteLine(“B!”); … else Console.WriteLine(“F!”);

  19. Repetition Structure - while Read LCV (initialize) while (condition) { Block Read LCV again (change value) }

  20. Example length = Convert.ToInt16(Console.ReadLine()); while (length > 0) { Console.Write("Enter Height of the Wall: "); height = Convert.ToInt16(Console.ReadLine()); PaintAWallthisWall = newPaintAWall(length, height, pricePerGal); thisWall.CalculateCost(ref paintCost, ref laborCost, ref galPaint, ref sqFt); Console.Write("Enter Length and Height for Wall #: " + Convert.ToString(numWalls+1)); Console.Write("\nEnter Length of the Wall (0 to quit): "); length = Convert.ToInt16(Console.ReadLine()); }

  21. Counter Controlled vs Sentinel Controlled • Counter controlled while loop (use LCV as a counter) • int Counter =1; • while (Counter <=10) • { … Counter ++; • }//does it 10 times increment operator

  22. Counter Controlled vs Sentinel Controlled (cont'd) • Sentinel controlled while loop • string str; • while (str != "0") • { … str = Console.ReadLine(); • }//does it until str is "0" • Sentinel controlled is good when one does not know exact number of times to execute a loop

  23. Example of while Loop • int product = 3; • while (product <= 100) • product = 3*product;

  24. Nested Control Statements class MultiplicationTable { staticvoid Main(string[] args) { int i=2, j; while (i <= 12) { j = 1; while (j <= 10) { Console.WriteLine(i + " x " + j + " = " + i * j ); j++; } Console.WriteLine("\n"); i++; } } }

  25. Exercises • Write a console program using nested while loop to output the following pattern to screen: * ** *** **** *****

More Related