330 likes | 489 Vues
This document provides an overview of essential topics in computer programming, specifically focusing on data types, arithmetic operators, and input/output statements. It includes code examples to illustrate the use of arithmetic operations, data conversion techniques, and the significance of operator precedence in calculations. Students from the Department of Computer Engineering at Kasetsart University can enhance their programming skills by exploring these fundamental concepts, ensuring accurate data manipulation and output generation in various scenarios.
E N D
Input & OutputStatement 01204111 Computer & Programming Group 350-352 Dept. of Computer Engineering Kasetsart University Adopted from Thanomkulabut’s experiences. Brushed up by MikeLab.Net Factory @KU. Version 2012
Review • Data Type • Arithmetic Operators • Math Class
Priority of Arithmetic Operators high low
Arithmetic Arithmetic Operators Example • x/y*b++ • int a, b, c; • a = 2-10*3/5+(6%4); • b = 5*(15%4+(2-3))/9; • c = 5+9%2*4-14/4%3 Answer a = -2 b = 1 c = 9 2 3 Given x = 3.0, y = 2.0, b =2, what is the output? • x/y*++b • Answer: 4.5 • Answer: 3.0
Arithmetic Arithmetic Operators Example Answer int a=1, b=2, c=3; Console.WriteLine(a++ + ++b); Console.WriteLine(a++ - ++b); Console.WriteLine(++a + b++ + c++); Console.WriteLine(++a + b++ - c++); Console.WriteLine(++a - b++ - c++); 4 -2 7 1 -3 4, -2, 11, 6, -5
Arithmetic Operators Example(2) 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)
Math Class The Math Class
Today’s Outline • Input Statements • Console.ReadLine() / Console.Read() • Basic Data Conversions • Output Statements • Console.Write() /Console.WriteLine() • Output format • Escape Sequences Characters • Data Conversions • Type of Conversions • Convert class, Parse() methods
Input Statements • Console.ReadLine(); • Read all characters (in form of string) • Use with Convert or Parse commands frequently • Console.Read(); • Read ASCII code of the first character
Console.ReadLine() • Console.ReadLine() • Use to get the input (String) from user • Convert string to other data type • int.Parse() Convert string to integer • double.Parse() Convert string to double • …. stringst = Console.ReadLine(); Run-time error may be occurred if user’s input is incorrect
Console.ReadLine() Example Ex1: string myname; myname = Console.ReadLine(); Console.WriteLine(“Your name is {0}”, myname); Kun Toto Your name is Kun Toto Ex2: int x; Console.Write(“Input x:”); string temp = Console.ReadLine(); x= int.Parse(temp); x = x*x; Console.WriteLine(“x^2 = {0}”, x); Input x:12 X^2 = 144
Console.Read() • Console.Read returns an ACSII value (Integer) of the code of the first typed character. inti; Console.Write(“Input char:”); i = Console.Read(); Console.WriteLine(i); Input char: A 65
Output Statements • Console.Write(); • Show output • Console.WriteLine(); • Show output and shift to new line
Statement Output Statements • Use the method Write or WriteLine in the Console class (which is in System namespace) • Basic usage: • Advanced usage with formatting 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);
Basic Usage Console.Write(“Happy”); Console.Write(2009); Output : Happy2009 string Console.WriteLine(“Happy”); Console.WriteLine(2009); Output : integer Happy 2009
Advanced Usage int a=7, b=2; Console.WriteLine(“a={0} and b={1}”,a,b); Console.WriteLine(“{1}+{0}={2}”,b,a,a+b); a=7 and b=2 {0} {1} 7 + 2 = 9 {1} {0} {2}
Advanced Usage (3) int a = 10; For a complete list of format specifiers, see http://msdn.microsoft.com/library/en-us/csref/html/vclrfFormattingNumericResultsTable.asp
Escape Sequences Characters • What should you do if you would like to write “C:\mydocument” Console.WriteLine(““C:\mydocument””); Console.WriteLine(“\“C:\mydocument\””); Console.WriteLine(“\“C:\\mydocument\””);
Unicode Characters เกม 0e40 0e01 0e21 Console.Write(“\u0e40\u0e01\u0e21”); เกม Reference: http://unicode.org/charts/PDF/U0E00.pdf
Data Conversions • In some situation we have to convert data from one type to another. • We may want to convert width and height of rectangle from Console.ReadLine() to int and calculate the rectangle area from the converted data. • Type of conversions • Widening conversions • Convert from a smaller data type to a larger one • Ex; int double • Narrowing conversions • Convert from a larger data type to smaller one • Ex; double int Losing some information!!!
Data Conversions (2) • Assignment conversion • Occurs automatically when a value of one type is assigned to a variable of another. • Ex: aFloatVar = anIntVar; • Arithmetic promotion • Occurs automatically • Ex: aFloatVar/anIntVar • Casting Value of anIntVar is converted to float data type automatically Value of aFloatVar/anIntVarisconverted to float (Larger data type)
Casting • Both widening and narrowing conversions can be accomplished by explicitly casting a value. • To cast, the type is put in parentheses in front of the value being converted. • Example • byte b, inti, long l • i = (int)b; l = (long)b + (long)i; int byte int long long
Casting (2) • Example • byte b; int i; long l; double d; • d = (double) i /10; • b = (byte) l +3; • i = (int) d – 10; int double double int 100% OK, but may yield unpredictable result in some case byte long OK, but may yield unpredictable result in some case
Convert.To<type>(); byte boy=100; intimob=100; double dawn=100.0; char alpha=‘d’; string st=“1”; • boy = Convert.ToByte(imob); • dawn = Convert.ToDouble(st); • imob= Convert.ToInt32(alpha); • alpha = Convert.ToChar(boy); • st = Convert.ToString(imob); boy = 100 i = 100 byte int int char dawn = 1 byte char alpha = ‘d’ double string st = 100
<type>.Parse(); • Convert string data to others • Example • d = double.Parse(st); byte b=100; int i=100; double d=100.0; char c=‘d’; string st=“1”; • i = int.Parse (st); • c = char.Parse(st); • b = byte.Parse(st); d = 1 i = 1 double string int string c = 1 b = 1
Test I • Write a program which • Input : Your name • Output : Your name is <your name>.
Test II • Write a program which • Input : 3 numbers • Output : average of the 3 input numbers
Test III • Write a program which • Input : Length of radius of circle • Output : Area of the circle