ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
ได้พิมพ์โดยHoratio Stevenson ได้เปลี่ยน 6 ปีที่แล้ว
1
Principles of Problem Solving and Basic Programming หลักการแก้ปัญหาและการเขียนโปรแกรมเบื้องต้น2(1-2-3) สัปดาห์ที่ 3 ชนิดข้อมูลและการแทนชนิดข้อมูลการประกาศตัวแปร (Data Representation)
2
Number in Computer System
Outline 1 Objectives 2 p Number in Computer System 3 Data Types 4 Variable & Variable Declaration 5 Assignments
3
objectives เพื่อให้นิสิตรู้และเข้าใจในระบบตัวเลขของคอมพิวเตอร์
เพื่อให้นิสิตเรียนรู้และเข้าใจเกี่ยวกับชนิดข้อมูลของภาษาทางคอมพิวเตอร์ เพื่อให้นิสิตรู้และเข้าใจเกี่ยวกับตัวแปรและการประกาศตัวแปรเพื่อการเขียนโปรแกรมคอมพิวเตอร์เบื้องต้น เพื่อให้นิสิตสามารถเลือกชนิดข้อมูลที่เหมาะสม เพื่อแก้ปัญหาโจทย์ในชีวิตประจำวันได้
4
Number in Computer System
Outline 1 Objectives 2 p Number in Computer System 3 Data Types 4 Variable & Variable Declaration 5 Assignments
5
Number System (1) เป็นระบบตัวเลขที่มนุษย์ทุกคุ้นเคย ที่เห็นได้ชัดเจนที่สุดคือการนับจำนวนสิ่งของต่างๆ ซึ่งพบว่าระบบจำนวนส่วนใหญ่ที่ใช้กันจะมีเลข 0 – 9 แต่ยังมีระบบจำนวนชนิดอื่นอีก เช่น ในเลขโรมัน ระบบคอมพิวเตอร์หรือภาษาคอมพิวเตอร์จะใช้เลขเพียง 2 ตัว คือ 0 และ 1 ซึ่งไม่เหมือนกับที่มนุษย์ใช้กันปกติ เราเรียกระบบจำนวนที่มีจำนวนตัวเลขที่ใช้งานต่างกันว่าระบบเลขฐาน เช่น ระบบตัวเลขฐานสิบ ระบบตัวเลขฐานสอง เป็นต้น
6
Number System (2) ฐานสิบประกอบด้วย ตัวเลข 0-9 (525)10 = 5 x100 ฐานสองประกอบด้วย ตัวเลข 0 กับ 1 (101)2 = 122 + 021 + 120 ฐานสิบหกประกอบด้วยตัวเลข 0-9 และ A-F (3B2)16 = 3 160
7
10n 10n-1 …….. 102 101 100 2n 2n-1 …….. 22 21 20 Number System (3)
ระบบเลขฐานสิบ MSB LSB 10n 10n-1 …… ระบบเลขฐานสอง 2n 2n-1 ……
8
Number System (4) ตัวอย่าง จงแปลง ไปเป็นเลขฐานสิบ × × × × × × × (1×64)+(0×32)+(0×16)+(0×8) + (1×4) + (1×2) + (1 ×1) = = 71
9
4510 = 1011012 Number System (5) จงแปลง 45 ฐานสิบ ให้เป็นฐานสอง 2 45 2
LSB 2 เศษ 1 2 เศษ 0 2 เศษ 1 2 เศษ 1 เศษ 0 MSB 4510 =
10
94610 = 03B216 Number System (6) จงแปลง 946 ฐานสิบ ให้เป็นฐานสิบหก 16
เศษ 2 16 เศษ 11 = B เศษ 3 = 03B216
11
The Conversion of Hexadecimal to Binary
ฐานสิบหก ฐานสอง 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 ฐานสิบหก ฐานสอง 8 1000 9 1001 A 1010 B 1011 C 1100 D 1101 E 1110 F 1111
12
The Number Size of Computer
บิท (bit) คือ ตัวเลขฐานสองเพียงตัวเดียว ไบท์ (Byte) คือ ตัวเลขขนาด 8 บิท เวิร์ด (Word) คือ ตัวเลขขนาด 16 บิท หรือ 2 ไบท์ กิโลไบท์ (KB) คือ ตัวเลขขนาด 210 = 1024 ไบท์ เมกะไบท์ (MB) คือ ตัวเลขขนาด 210 210 ไบท์ จิกกะไบท์ (GB) คือ ตัวเลขขนาด 210 210 210 ไบท์ bit : binary digit
13
The Memory Size of Computer
หน่วยความจำ 128 MB หมายความว่าสามารถเก็บข้อมูลได้ 210 210 = ตำแหน่ง ตำแหน่งที่ 0 ???? ???? ???? ???? ???? ตำแหน่งที่ ????
14
The Number in Computer System (1)
จำนวนเต็ม ที่มีเฉพาะค่าบวก ขนาด 8 bit เรียกว่า “1 Byte”มีค่าเริ่มจาก 0 ถึง 255 ขนาด 16 bit เรียกว่า “1 Word (2 Byte)” มีค่าเริ่มจาก 0 ถึง 65535 มาจาก 28 = 256 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
15
The Number in Computer System (2)
จำนวนเต็มที่มีทั้งค่าบวกและค่าลบ ขนาด 8 bit มีค่าเริ่มจาก -128 ถึง 127 (2's Complement) บิทแรกสุด เป็น sign bit (1 เป็นค่าลบ, 0 เป็นค่าบวก) ขนาด 16 bit เรียกว่า integer มีค่าเริ่มจาก -32,768 ถึง 32,767 ขนาด 32 bit เรียกว่า long integer มีค่าเริ่มจาก -2,147,483,648 ถึง 2,147,483,647 1 1 1 1 1 1 1 1
16
2’Complement Example ตัวอย่าง การแปลงเลขจาก –5 ฐาน 10 เป็น 8 Bit 2’Complement ทำได้โดย 1) เขียน เลข 5 ในรูปฐานสองปกติ ได้ 2) ทำการกลับบิตจาก 0 เป็น 1 และ 1 เป็น 0 เรียกว่า 1’s Complement จะได้ กลับบิตเป็น 3) นำผลจาก 1’s Complement แปลงเป็น 2’s Complement โดยการบวก 1 จะได้ = เป็นคำตอบ
17
The Number in Computer System (3)
จำนวนทศนิยม ขนาด 4 Byte เรียกว่า “float” มีค่าเริ่มจาก 3.4 ถึง 3.4 1038 ขนาด 8 Byte เรียกว่า “double” มีค่าเริ่มจาก 1.7 ถึง 1.7 10308 ขนาด 10 Byte เรียกว่า “long double” มีค่าเริ่มจาก 3.4 ถึง 3.4 Sign bit Exponent bits Mantissa bits
18
The Number in Computer System (6)
ข้อมูลที่เป็นตัวอักษรและสัญลักษณ์ จะใช้รหัสแอสกี (ASCII) ขนาด 8 บิท ซึ่งเป็นรหัสมาตรฐาน ถูกกำหนดโดยสถาบันมาตรฐานแห่งชาติของสหรัฐอเมริกา (ANSI) เช่น ตัวอักษร A มีค่าเท่ากับ 6510 หรือ 4116 ตัวอักษร B มีค่าเท่ากับ 6610 หรือ 4216 ตัวอักษร a มีค่าเท่ากับ 9710 หรือ 6116 ตัวอักษร 7 มีค่าเท่ากับ 5510 หรือ 3716 ASCII : American National Standard Code for Information Interchange ANSI : American National Standard Institute
19
ASCII Code Table (8 bit) 1 2 3 4 5 6 7 8 9 A B C D E F 1 2 ! " # $ % &
1 2 3 4 5 6 7 8 9 A B C D E F 1 2 ! " # $ % & ' ( ) * + , - . / 3 1 2 3 4 5 6 7 8 9 : ; < = > ? 4 @ A B C D E F G H I J K L M N O 5 P Q R S T U V W X Y Z [ \ ] ^ _ 6 ' a b c d e f g h i j k l m n o 7 p q r s t u v w x y z { | } ~ 8 9 A B C D E F
20
ASCII Code Table (16 bit)
21
ASCII Code Table (16 bit)
22
Number in Computer System
Outline 1 Objectives 2 p Number in Computer System 3 Data Types 4 Variable & Variable Declaration 5 Assignments
23
Why data type is needed ? X = 504 + 2.67; X = ? Y = 15 – 5.05; Y = ?
Z = 15 * 3.414; Z = ? S = 22/7; S = ?
24
Testing Data Type of Program
#include<stdio.h> main( ) { int X,Y,Z,S,T; X = ; printf(“X = %d\n”, X); Y = 15 – 5.05; printf(“ Y = %d\n”, Y); Z = 15 * 3.414; printf(“Z = %d\n”, Z); S = 22/7; printf(“S = %d\n”, S); T = 22%7; printf(“T = %d\n”, T); }
25
Format Control of Printf Function
ส่วนแสดงชนิดข้อมูล การใช้งาน %d แสดงผลข้อมูลชนิดจำนวนเต็ม %u แสดงผลข้อมูลชนิดจำนวนเต็มบวก (ไม่คิดเครื่องหมาย) %o แสดงผลข้อมูลเป็นเลขฐานแปด %x แสดงผลข้อมูลเป็นเลขฐานสิบหก %f แสดงผลข้อมูลชนิดจำนวนทศนิยม (6 ตำแหน่ง) %e แสดงผลข้อมูลเป็นจำนวนทศนิยมและอยู่ในรูปยกกำลัง %c แสดงผลข้อมูลชนิดอักขระ %s แสดงผลข้อมูลชนิดข้อความ %p แสดงผลข้อมูลชนิดตัวชี้ตำแหน่ง
26
What is data types ? Data types is the type of data representation in programming language. In the C programming language, data types refers to an extensive system for declaring variables of different types. C has different data types for different types of data and can be broadly classified as : Primary data types Secondary data types
27
What is data types ? (Thai Version)
ชนิดของข้อมูล (data type) ในการเขียนโปรแกรมหนึ่งๆ จะมีข้อมูลต่างๆ เข้ามาเกี่ยวข้อง เช่น การนับจำนวนรอบ (loop) ของการทำงานโดยใช้ข้อมูลชนิดจำนวนเต็ม หรือการแสดงข้อความ โดยใช้ข้อมูลชนิดตัวอักษร จะเห็นว่าข้อมูลต่างๆ ถูกแบ่งออกเป็นหลายชนิดตามจุดประสงค์ของการใช้งาน นอกจากนี้ข้อมูลแต่ละชนิดยังใช้เนื้อที่หน่วยความจำ (memory) ไม่เท่ากัน
28
C Data Types
29
Primary Data Type in C Program
ข้อมูลชนิดตัวอักษร (Character) คือข้อมูลที่เป็นรหัสแทนตัวอักษรหรือค่าจำนวนเต็มได้แก่ ตัวอักษร ตัวเลข และกลุ่มตัวอักขระพิเศษใช้พื้นที่ในการเก็บข้อมูล 1 ไบต์ ข้อมูลชนิดจำนวนเต็ม (Integer) คือข้อมูลที่เป็นเลขจำนวนเต็ม ได้แก่ จำนวนเต็มบวก จำนวนเต็มลบ ศูนย์ ใช้พื้นที่ในการเก็บ 2 ไบต์ ข้อมูลชนิดจำนวนเต็มที่มีขนาด 2 เท่า (Long Integer) คือข้อมูลที่มีเลขเป็นจำนวนเต็ม ใช้พื้นที่ 4 ไบต์ ข้อมูลชนิดเลขทศนิยม (Float) คือข้อมูลที่เป็นเลขทศนิยม ขนาด 4 ไบต์ ข้อมูลชนิดเลขทศนิยมอย่างละเอียด (Double) คือข้อมูลที่เป็นเลขทศนิยม ใช้พื้นที่ในการเก็บ 8 ไบต์
30
Primary Data Types in C Program (cont.)
ชนิด ขนาดความกว้าง ช่วงของค่า การใช้งาน Char 8 บิต ASCII character (-128 ถึง 127) เก็บข้อมูลชนิดอักขระ Unsigned char 0-255 เก็บข้อมูลอักขระแบบไม่คิดเครื่องหมาย int, Short 16 บิต ถึง 32767 เก็บข้อมูลชนิดจำนวนเต็ม long 32 บิต ถึง เก็บข้อมูลชนิดจำนวนเต็มแบบยาว Float 3.4E-38 ถึง 3.4E+38 หรือ ทศนิยม 6 เก็บข้อมูลชนิดเลขทศนิยม Double 64 บิต 1.7E-308 ถึง 1.7E+308 หรือ ทศนิยม 12 Unsigned int 0 ถึง 65535 เก็บข้อมูลชนิดจำนวนเต็ม ไม่คิดเครื่องหมาย Unsigned long 0 ถึง เก็บข้อมูลชนิดจำนวนเต็มแบบยาว ไม่คิดเครื่องหมาย
31
Number in Computer System
Outline 1 Objectives 2 p Number in Computer System 3 Data Types 4 Variable & Variable Declaration 5 Assignments
32
What is variable ? X = 504 + 2.67; X = ? Y = 15 – 5.05; Y = ?
Z = 15 * 3.414; Z = ? S = 22/7; S = ?
33
What is variable ? (cont.)
In mathematics, a variable is a value that may change within the scope of a given problem or set of operations. ตัวแปร (Variable) คือ การจองพื้นที่ในหน่วยความจำของคอมพิวเตอร์สำหรับเก็บข้อมูลที่ต้องใช้ในการทำงานของโปรแกรม โดยมีการตั้งชื่อเรียกหน่วยความจำในตำแหน่งนั้นด้วย เพื่อความสะดวกในการเรียกใช้ข้อมูล ถ้าจะใช้ข้อมูลใดก็ให้เรียกผ่านชื่อของตัวแปรที่เก็บเอาไว้
34
Data Type of Variables ข้อมูลชนิดตัวอักษร (Character) คือข้อมูลที่เป็นรหัสแทนตัวอักษรหรือค่าจำนวนเต็มได้แก่ ตัวอักษร ตัวเลข และกลุ่มตัวอักขระพิเศษใช้พื้นที่ในการเก็บข้อมูล 1 ไบต์ ข้อมูลชนิดจำนวนเต็ม (Integer) คือข้อมูลที่เป็นเลขจำนวนเต็ม ได้แก่ จำนวนเต็มบวก จำนวนเต็มลบ ศูนย์ ใช้พื้นที่ในการเก็บ 2 ไบต์ ข้อมูลชนิดจำนวนเต็มที่มีขนาด 2 เท่า (Long Integer) คือข้อมูลที่มีเลขเป็นจำนวนเต็ม ใช้พื้นที่ 4 ไบต์ ข้อมูลชนิดเลขทศนิยม (Float) คือข้อมูลที่เป็นเลขทศนิยมใช้พื้นที่ในการเก็บขนาด 4 ไบต์ ข้อมูลชนิดเลขทศนิยมอย่างละเอียด (Double) คือข้อมูลที่เป็นเลขทศนิยมใช้พื้นที่ในการเก็บ 8 ไบต์
35
Memory Allocation
36
Size of Variables ชนิดของตัวแปร ขนาด ค่าต่ำสุด ค่าสูงสุด unsigned char
8 bit 255 char -128 127 unsigned int 16 bit 32 bit 65,535 4,294,967,295 short int -32,768 32,767 int -2,147,483,648 2,147,483,647 unsigned long long float 3.410-38 3.4 1038 double 64 bit 1.7 1.710308 long double 80 bit 3.4 3.4104932
37
Size of Variables & Memory Size
char short int unsigned int long unsigned long float double long double Maximum Minimum
38
Variable การเก็บค่าของตัวแปรทำได้ 2 ลักษณะ คือ
แบบตัวแปรที่เก็บค่าคงที่ (Constant) - ค่าคงที่ แบบตัวแปรที่เก็บค่าทั่วไป (Variable) - ตัวแปร การสร้างตัวแปร ต้องรู้ว่าจะใช้ตัวแปรเก็บข้อมูลอะไร ประกาศตัวแปรให้เหมาะสมกับข้อมูลที่จะเก็บ(ชนิดของข้อมูล) ชนิดของตัวแปรหลักในภาษา C ตัวแปรที่ใช้เก็บอักขระ (Character variable) ตัวแปรที่ใช้เก็บเลขจำนวนเต็ม (Integer variable) ตัวแปรที่ใช้เก็บเลขจำนวนจริง (Float variable) ตัวแปรที่ใช้เก็บอักขระแบบสตริง (String variable)
39
int i; ประกาศ i ให้ชนิดเป็น integer
Variable Declaration รูปแบบของการประกาศตัวแปร ชนิดตัวแปร ชื่อตัวแปร; int i; ประกาศ i ให้ชนิดเป็น integer float realnum; ประกาศ realnum ให้มีชนิดเป็น float char ch; ประกาศ ch ให้ชนิดเป็น character
40
Name Identifier ชื่อ (Identifier) - ไอเดนติฟายเออร์ เป็นชื่อที่ผู้ใช้กำหนดขึ้นในโปรแกรม เช่น ชื่อค่าคงที่ ชื่อตัวแปร ชื่อฟังก์ชัน เป็นต้น ต้องขึ้นต้นด้วยตัวอักษรภาษาอังกฤษ (ตัวใหญ่หรือเล็กก็ได้) หรือขีดล่าง ‘_’ ตามด้วยตัวอักษรภาษาอังกฤษ ตัวเลข หรือขีดล่าง (Underscore) ‘_’ ไม่มีช่องว่างหรือตัวอักษรพิเศษอื่นๆ เช่น ‘!’, ‘#’, ‘$’, ‘%’, ‘^’ เป็นต้น ตัวพิมพ์ใหญ่และเล็กจะเป็นคนละตัวกันเช่น NAME, name, Name, NamE ห้ามซ้ำกับคำสงวน Reserve Words ของภาษา C ห้ามตั้งชื่อซ้ำกับ Function ที่อยู่ใน Library ของภาษา C หมายเหตุ: คอมไพเลอร์ในภาษาซีสามารถเห็นความแตกต่างของชื่อตัวแปรได้ยาวไม่เกิน 8 ตัวอักษร และชื่อตัวแปรจะแตกต่างกันถ้าใช้รูปแบบของตัวอักษรต่างกัน
41
Reserved words auto double int struct break else long switch case enum
register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static While asm _cs _ds _es _ss cdecl far huge interrupt near pascal _export
42
Number in Computer System
Outline 1 Objectives 2 p Number in Computer System 3 Data Types 4 Variable & Variable Declaration 5 Assignments
43
Assignment #1 จงแสดงวิธีการแก้ปัญหาสำหรับการหาปริมาตรทรงกระบอก โดยเลือกใช้ชนิดข้อมูลที่เหมาะสมสำหรับข้อมูลของความสูงและรัศมีของวงกลมที่เป็นฐานของทรงกระบอก ซึ่งค่าตัวเลขทั้งสองให้นิสิตเป็นคนกำหนดเอง จากนั้นแสดงค่าของปริมาตรทรงกระบอกที่คำนวณได้ r h ปริมาตรทรงกระบอก = ¶ x r2 x h
44
Assignment # 2 จงแสดงวิธีการแก้ปัญหาสำหรับการหาปริมาตรพีรามิดฐานสี่เหลี่ยม โดยเลือกใช้ชนิดข้อมูลที่เหมาะสมสำหรับข้อมูลของความสูงและพื้นที่ฐานของพีรามิด ซึ่งค่าตัวเลขทั้งสองให้นิสิตเป็นคนกำหนดเอง จากนั้นแสดงค่าของปริมาตรพีรามิดที่คำนวณได้
45
Assignment # 3 จงแสดงวิธีการแก้ปัญหาสำหรับการหาพื้นที่ผิวกรวย โดยเลือกใช้ชนิดข้อมูลที่เหมาะสมสำหรับข้อมูลของความสูงเอียงและรัศมีของกรวย ซึ่งค่าตัวเลขทั้งสองให้นิสิตเป็นคนกำหนดเอง จากนั้นแสดงค่าของพื้นที่ผิวกรวยที่คำนวณได้
46
Assignment # 4 จงแสดงวิธีการแก้ปัญหาโดยเลือกใช้ชนิดข้อมูลที่เหมาะสมสำหรับแก้ปัญหาสมการดังต่อไปนี้ X = Sec (0) + tan (30)
47
Assignment # 5 จงแสดงวิธีการแก้ปัญหาเพื่อคำนวณการเคลื่อนที่ในแนวโปรเจ็คไทล์โดยเลือกใช้ชนิดข้อมูลที่เหมาะสมสำหรับสูตรคำนวณ
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.