430 likes | 454 Views
Module 2 C# Basic Concept. Thanawin Rakthanmanon Email: fengtwr@ku.ac.th Computer Engineering Department Kasetsart University, Bangkok THAILAND. Outline. C# Overview Variable and Constant Expression Statement Modify-And-Assign Math Class. C# Program.
E N D
Module2C# Basic Concept Thanawin Rakthanmanon Email: fengtwr@ku.ac.th Computer Engineering Department Kasetsart University, Bangkok THAILAND
Outline • C# Overview • Variable and Constant • Expression • Statement • Modify-And-Assign • Math Class
C# Program • Consider all the programs you wrote in Lab#0 • What C#'s programming rules can you derive? namespace HelloW { class HelloWClass { static void Main () { System.Console.WriteLine("Hello World!"); System.Console.ReadLine(); } } }
C# Program • C# syntax is case-sensitive • Every statement ends with a semicolon ; • White space means nothing • Code block is inside braces{} • Anything between/* */ or after// is considered a comment • Comments will not be translated
Program Structure • The starting point of the program is: • This is known as the method Main • A method is put inside a class • A class may be put inside a namespace static void Main () { ... starting point ... }
Class Class namespace Program Structure • In C# • A program can contain several namespaces • A namespace can contain several classes • A class can contain several methods • In other words • Think of a namespace as a container of classes • Think of a class as a container of methods method1 method2
Class namespace Class Class method1 method2 : : Program Structure (example) namespace namespace HelloW { class HelloWClass { static void Main () { System.Console.WriteLine(“Hello"); } } } method1 method2 method3
Program Structure • For this 204111 course • Program with only one class and at most one namespace • For now until sometime before midterm • Program with one method (i.e., Main) namespace HelloW { class HelloWClass { static void Main () { System.Console.WriteLine("Hello World!"); System.Console.ReadLine(); } } }
C# Overview Naming Rules • Letters, digits and underscores(_) • First character letter or _ • Up to 63 characters long • Must not be a reserved word * Case Sensitive Example KU66 ≠ kU66 ≠ku66
C# Overview C# Reserved Words
Outline • C# Overview • Variable and Constant • Expression • Statement • Modify-And-Assign • Math Class
Variable & Constant What is Variable? A variable is used to store “data.” “It must be declared before used”
Variable & Constant C# Variable Declaration • Syntax: <datatype> <name>; • Example: • We can also assign its initial value. Example: int radius; double area; int a,b,c; bool isokay; int k = 200; bool done = false;
Variable & Constant C# Constant Declaration • Syntax: const <datatype> <name> = <value>; • Example: const int radius = 15; const double area=1.5; const bool isokay=true; const string movie=”StarWarIII”;
Outline • C# Overview • Variable and Constant • Expression • Statement • Modify-And-Assign • Math Class
Expression C# Expression • Arithmetic Expression • Boolean Expression
Expression Arithmetic Expression • Operators • + - * / • % (remainder after division) • Example • 11 + 5 16 • 11 / 2 5 • 11 % 2 1 • 5.0 % 2.2 0.6
Precedence rules for Arithmetic Operators • ( ) parentheses • *, / , % • + – • If equal precedence, left to right int Width,High; Width=10*5+(16*12)/5; High= (16+5)+20%2;
Calculation Priority Calculate from left to right! public static void Main(){ int a,b,c,d; a=1; b=2; c=3; d = c/b*a; Console.WriteLine("d={0}",d); d = a/b; Console.WriteLine("d={0}",d); } Console.WriteLine(3/4*8); = Console.WriteLine((3/4)*8); = 0 (= ) ? 3 ??? x 8 4
Expression Expressionin C# • Arithmetic Expression • Boolean Expression
Expression Boolean Expression • Operators • Comparison • Equal = • Not equal != • Less < • Greater > • Less than or equal to <= • Greater than or equal to >= • Boolean • And && • Or || • Not ! 0 and 0 = 0 0 and 1 = 0 1 and 0 = 0 1 and 1 = 1 0 or 0 = 0 0 or 1 = 1 1 or 0 = 1 1 or 1 = 1 not 0 = 1 not 1 = 0
Example: Boolean Expression • 50 > 10 true • ’A’ < ’B’ true • ’ANT’ < ’B’ true • ’5’ > ’1’ true • ’5’ > ’10’ true • ’5’ > ’100’ true
Quiz • ((1 and 0) or (1 and 1)) = ? • What is I/O device ? • What is RAM and ROM ? • 1 byte = xxx bits • 1 Mbyte = ? • C# is xxx language. • 10000102 = ?
Outline • C# Overview • Variable and Constant • Expression • Statement • Modify-And-Assign • Math Class
Statements • A statement is a unit of command to instruct your program • A method consists of one or more statements Statement#1 class Hello { static void Main () { System.Console.WriteLine("Hello World!"); System.Console.ReadLine(); } } Statement#2
Statement C# Statement Types • Assignment Statement • Input Statement • Output Statement
Statement Assignment Statement • Assigning value to variable • Use the equal sign (=) when making assignments. • Syntax: <variable> = <expression>; int Width,High; Width=10; High=5; int Width = 10; int High = 5;
Statement C# Statement Types • Assignment Statement • Input Statement • Output Statement
Statement Input Statement • Console.ReadLine() Return string • Use to get the input from user • Convert string to other data type • int.Parse() Convert string to integer • double.Parse() Convert string to double Example string st; st = System.Console.ReadLine();
Example: Input Statement string st; int i; double d; 1. st = Console.ReadLine(); i = int.Parse(st); 2. st = Console.ReadLine(); d = double.Parse(st); 3. i = int.Parse(Console.ReadLine()); 4. d = double.Parse(Console.ReadLine());
Statement Example: Input Statement Ex1: string myname; myname = System.Console.ReadLine(); Ex2: int Width,High; string temp1; temp1 = System.Console.ReadLine(); Width = int.Parse(temp1); temp1 = System.Console.ReadLine(); High = int.Parse(temp1);
Statement Example: Input Statement
Statement C# Statement Types • Assignment Statement • Input Statement • Output Statement
More information about formatting http://msdn.microsoft.com/library/en-us/csref/html/vclrfFormattingNumericResultsTable.asp Output Statements • Use the method Write or WriteLine in the Console class (which is in System namespace) • Basic usage: • Advanced usage: • Even more advanced usage: Console.WriteLine("Hello"); Console.WriteLine(area); Console.WriteLine(”Size {0}x{1}”, width, height); double salary=12000; Console.WriteLine("My salary is {0:f2}.", salary);
Outline • C# Overview • Variable and Constant • Expression • Statement • Modify-And-Assign • Math Class
Increment & Decrement • Pre in/decrement: • Use the value which has already been in-decrement. • Post in-decrement: • Use the value before in-decrement
Modify-And-Assign Operations sum += x; // is equivalent to sum = sum + x prod *= 2.5; // is equivalent to prod = prod * 2.5 y -= 3+a; // is equivalent to y = y – (3+a) Try this ! int y=8; int a=2; Console.WriteLine(y -= 3+a);
Operator Priority Highest Priority (Do First) Lowest Priority (Do Last)
Summary Summary • C# Overview • Variable and Constant • Expression • Statement • Modify-And-Assign • Math Class