BÀI TẬP THỰC HÀNH LẬP TRÌNH WINDOWS C#

Similar documents
Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

HƯỚNG DẪN SỬ DỤNG HỆ THỐNG CẬP NHẬT CHỨNG THƯ SỐ HOTLINE:

SIMULATE AND CONTROL ROBOT

Entity Framework (EF)

Tạo Project với MPLAB

BÀI 1: VBA LÀ GÌ? TẠO MACRO, ỨNG DỤNG CÁC HÀM TỰ TẠO (UDF), CÀI ĐẶT ADD-INS VBA là gì?

HƯỚNG DẪN CÀI ĐẶT PHẦN MỀM DIỆT VIRUS AVIRA

Hướng dẫn cài đặt FPT

LẬP TRÌNH WINDOWS FORM VỚI CÁC CONTROL NÂNG CAO (Các control trình bày dữ liệu dưới dạng danh sách)

HƯỚNG DẪN SỬ DỤNG PLESK PANEL

Khoa KH & KTMT Bộ môn Kỹ Thuật Máy Tính

Chương 5. Network Layer 19/09/2016 1

Giáo trình này được biên dịch theo sách hướng dẫn của Sun Light. Vì là hướng dẫn kỹ thuật, trong này những thuật ngữ kỹ thuật bằng tiếng Anh tôi chỉ

Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

HƯỚNG DẪN CÁCH SỬ DỤNG WINDOWS MOVIE MAKER

Bộ môn MMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

ĐỌC, GHI XML VỚI C# TRONG ADO.NET --- SỬ DỤNG VISUAL STUDIO

Nhấn nút New để tạo 1 biến mới Trang 17

STACK và QUEUE. Lấy STACK

Internet Protocol. Bởi: Phạm Nguyễn Bảo Nguyên

Chương 5. Network Layer. Phần 1 - Địa chỉ IPv4. Tài liệu : Forouzan, Data Communication and Networking

HƯỚNG DẪN SỬ DỤNG ĐẦU GHI H.264 DVR VISION VS (4CH - 8CH - 16CH)

Cụ thể những công việc mà AndroidManifest.xml thực hiện: - Đặt tên cho Java package của ứng dụng.

Lab01: M V C Lưu ý: Để thực hành, các bạn phải cài Visual Studio 2013 trở lên mới hỗ trợ MVC5.

Tình huống 1: PPPoE với Username và Password

Cài đặt và cấu hình StarWind iscsi trên Windows. iscsi SAN là gì?

HƢỚNG DẪN TRIỂN KHAI KASPERSKY - MOBILE DEVICE MANAGEMENT

Tài liệu hướng dẫn: Stored Procedure

GV: Phạm Đình Sắc or

Chương 6. Transport Layer. Tài liệu : Forouzan, Data Communication and Networking

I. Hướng Dẫn Đăng Nhập:

Bài Thực hành Asp.Net - Buổi 1 - Trang: 1

Nội dung chính của chương. Các công nghệ đĩa cứng Cấu tạo vật lý của đĩa cứng Cấu tạo logic của đĩa cứng Cài đặt đĩa cứng như thế nào?

Kỹ thuật thu nhỏ đối tượng trong Design (Layout)

GIẢI THUẬT ĐỊNH TUYẾN (ROUTING ALGORITHM)

Mô hình dữ liệu quan hệ (Relational data model)

Phần 1: Hướng dẫn sử dụng PictureBox tạo Slide Show

Bài tập căn bản Visual Basic.Net Vòng lặp. txtn. txtketqua. btntinh. txtn. txtketqua. btntinh. Trang 1

CHƯƠNG 2: CÁC ĐẶC ĐIỂM VỀ MÔI TRƯỜNG PHÁT TRIỂN (IDE)

TÀI LIỆU HƯỚNG DẪN SỬ DỤNG HOSTING PLESK PANEL

CẤU TRÚC DỮ LIỆU NÂNG CAO

MỤC LỤC. Giáo trình Thiết kế web Trang 1

Bài tập lớn số 1. Giả lập bộ định thời

Tìm hiểu Group Policy Object và các ví dụ

Phần 2. SỬ DỤNG POWERPOINT ĐỂ CHUẨN BỊ NỘI DUNG TRÌNH BÀY

TÀI LIỆU THỰC HÀNH MÔN CƠ SỞ DỮ LIỆU NÂNG CAO

Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

NHÚNG. Vi ñiều khiển BM Kỹ Thuật ðiện Tử - ðh Bách Khoa TP.HCM 2

Dọn "rác" Windows 7 vào dịp cuối năm

HỢP ĐỒNG MUA BÁN HÀNG HÓA QUỐC TẾ GV: NGUYỄN THỊ BÍCH PHƯỢNG

TỔNG QUAN VỀ.NET VÀ C#

BÀI LAB ĐỔI TÊN DOMAIN

Online Appointment System will work better with below conditions/ Hệ thống đặt hẹn online sẽ hoạt động tốt hơn với điều kiện sau đây:

BÀI 6 LÀM VIỆC VỚI THÀNH PHẦN MỞ RỘNG CỦA CSS3

LÂ P TRI NH WEB ASP.NET

Bài 10: Cấu trúc dữ liệu

SIEMENS INDUSTRIAL NETWORKS

HƯỚNG DẪN SỬ DỤNG NHANH MINDJET MIND MANAGER

BELGIUM ONLINE APPOINTMENT

BẢO MẬT TRONG SQL SERVER

ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN

PHÁT TRIỂN ỨNG DỤNG WEB

B5: Time to coding. Tới thư mục src/example.java và thay đổi nội dung file như sau: Mã: package at.exam;

BÀI THỰC HÀNH SỐ 1. Quản trị tập tin: 1/ Tạo các thư mục sau: Bài tập thực hành linux Linuxlab. bt1 bt11 bt111. bt121. bt12. bh1 bh11 bh111.

Parallels Cloud Server 6.0

1 Bước 1: Test thử kit LaunchPad.

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

Bài thực hành 1: Chỉ mục trong SQL Server

Tạo repository mới. The working tree. The staging index. Lệnh git init tạo một repository loại git. tại thư mục hiện tại: $ git init

HƯỚNG DẪN QUẢN TRỊ HỆ THỐNG

LINQ TO SQL & ASP.NET

Ôn tập Thiết bị mạng và truyền thông DH07TT - Lưu hành nội bộ (không sao chép dưới mọi hình thức)

Bài 7: Các cấu trúc điều khiển

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

NHẬP MÔN LẬP TRÌNH KHOA HỌC DỮ LIỆU. Bài 10: Thư viện Pandas (2)

Bài 13: C++11. EE3490: Kỹ thuật lập trình HK1 2017/2018 TS. Đào Trung Kiên ĐH Bách khoa Hà Nội

Chương 7. Application Layer. Tài liệu : Forouzan, Data Communication and Networking

B3: Bên khung Package Explore bên trái đi tới thư mục res, bạn sẽ thấy có 3 thư mục con:

Chủ đề 7: Triển khai và Bảo trì. COMP1026 Introduction to Software Engneering CH7-1 HIENLTH

Lập trình chuyên nâng cao. Lập trình phân tán (Distributed computing

CHAPTER 6: DANH SÁCH LIÊN KẾT (LINKED LISTS)

Tính kế thừa-2. Bởi: Thanh Hiền Vũ. Định nghĩa lại các thành viên lớp cơ sở trong một lớp dẫn xuất:

LÝ THUYẾT MÔ HÌNH VÀ TỐI ƢU. Th.S Nguyễn Tấn Phúc. Tel:

Mạng máy tính - Computer Network: Hệ. Giao thức - Protocol:

CHƯƠNG 5: LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG TRONG VB.NET

Cấu hình Router FTTH ---X---

Exceptions. Outline 7/31/2012. Exceptions. Exception handling is an important aspect of objectoriented. Chapter 10 focuses on:

Time Picker trong Android

Bài 10. Cấu trúc liên nối. khác nhau được gọi là cấu trúc liên nối. nhu cầu trao đổi giữa các module.

Môn Học: Cơ Sở Dữ Liệu 2. Chương 3 LẤY DỮ LIỆU TỪ NHIỀU NGUỒN

Lecture 12. Trees (1/2) Nội dung bài học:

Mô hình thực thi ASP.NET page Xây dựng Web Form HTML Control và Web Control Bổ sung code vào Page Page Event Life Cycle Postback event

Các kiểu định địa chỉ họ MSC-51

Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM LẬP TRÌNH MINICHAT. Bài giảng 3. Trang1. Khoa Khoa Học Và Kỹ Thuật Máy Tính

Cập nhật ResultSet trong JDBC

dụng một chính sách, điều này giúp dễ dàng quản lý và cung cấp tính năng Load Balancing (cân bằng tải) phục vụ tốt hơn các yêu cầu của tổ chức.

KIẾN TRÚC MÁY TÍNH. Giảng viên: ThS. Phan Thanh Toàn. v

BÀI 4 GIAO TIẾP GIỮA CÁC TIẾN TRÌNH TRONG LINUX

JAVASCRIPT. Giảng viên : Ths. PHẠM ĐÀO MINH VŨ

BÀI GIẢNG CHƯƠNG 3 GIAO TIẾP KẾT NỐI SỐ LIỆU

Transcription:

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN http://www.hcmup.edu.vn BÀI TẬP THỰC HÀNH LẬP TRÌNH WINDOWS C# Phần 1: Làm quen với ứng dụng Form 1. Bài tập mở đầu 1.1. Khởi tạo Project Từ Visual Studio 2005/2008/2010 ta chọn File New Project. Một hộp thoại xuất hiện, ta chọn Template là Windows Form Application. Ứng dụng được tạo ra như sau: Lương Trần Hy Hiến www.hienlth.info 1/16

Project BaiTap01 gồm có thành phần Program.cs giống trong ứng dụng Console Application và còn có một thành phần mới là Form1.cs đang ở chế độ Design với giao diện như sau: Chú ý cửa sổ Toolbox chứa các công cụ để thiết kế: Nếu không thấy cửa sổ này, ta chọn menu View Toolbox. Lương Trần Hy Hiến hienlth@hcmup.edu.vn 2/16

1.2. Ứng dụng mở đầu: 1.2.1. Đổi tên form: Click lên Form1 ở cửa sổ Design, quan sát trên cửa sổ Properties, ta thấy có thuộc tính Text, giá trị mặc định là Form1, ta đổi thành BaiTap01. Ta thấy thanh tiêu đề Form1 đổi sang BaiTap01. 1.2.2. Kéo thả các control từ Toolbox vào Form Từ thanh Toolbox, kéo thả một Label bỏ vào Form, sau đó di chuyển chuột đến cửa sổ Properties, chọn thuộc tính Text, đổi từ label1 sang Nhập n. Lương Trần Hy Hiến hienlth@hcmup.edu.vn 3/16

Tiếp theo kéo thả một Textbox bỏ vào form. Lương Trần Hy Hiến hienlth@hcmup.edu.vn 4/16

Trong cửa sổ Properties của textbox này, thuộc tính Name ta đổi từ textbox1 thành txtn. Tương tự thêm vào form một label có thuộc tính Text đổi thành Tổng và một textbox có thuộc tính Name đổi thành txttong. Tiếp theo, kéo một Button từ Toolbox và thả vào Form, đổi thuộc tính Name của button này là btntinh, text là Tính. Kéo thả thêm một Button nữa tương tự trên, Name = btnthoat, Text = Thoát. Lương Trần Hy Hiến hienlth@hcmup.edu.vn 5/16

Đưa chuột về các góc của Form để thay đổi kích thước cửa sổ. 1.2.3. Xử lý sự kiện click chuột lên button Double click vào button Tính (btntinh), một cửa sổ soạn thảo xuất hiện với nội dung như sau: Chú ý: Cửa sổ này là Form1.cs tương ứng với Form1.cs[Design]. Phương thức btntinh_click được phát sinh do ta vừa double click vào btntinh. Ta định nghĩa cho lớp này như sau: Lương Trần Hy Hiến hienlth@hcmup.edu.vn 6/16

Tiếp theo ta xử lý sự kiện click chuột cho button btnthoat. Quay lại Form1.cs[Design], double click lên button Thoát, Form1.cs có nội dung thay đổi như sau: Lương Trần Hy Hiến hienlth@hcmup.edu.vn 7/16

Ta xử lý cho sự kiện này như sau: private void btnthoat_click(object sender, EventArgs e) Close(); Chạy thử chương trình (F5): Nhập n = 4 và click vào button Tính. Kết quả xuất hiện ở txttong: Lương Trần Hy Hiến hienlth@hcmup.edu.vn 8/16

Click vào button Thoát để kết nối chương trình. 2. Bài tập có gợi ý 2.1. Bài 01 Viết chương trình nhập vào 2 số a và b, cho biết số lớn nhất và nhỏ nhất trong 2 số a,b với giao diện như sau Hình 1: Chương trình tìm Min, Max 2 số Hướng dẫn gợi ý: sử dụng cấu trúc If Else 2.2. Bài 02 Viết chương trình nhập vào 2 số a, b và c cho biết số lớn nhất và nhỏ nhất trong 3 số a, b và c với giao diện như sau Hình 2: Chương trình tìm Min, Max 3 số Lương Trần Hy Hiến hienlth@hcmup.edu.vn 9/16

2.3. Bài 03 - Nhập vào một số nguyên từ 0 đến 9, hiển thị bằng chữ các ký số trên, ví dụ: - Nhập 1 Một - Nhập 2 Hai - Nhập 3 Ba -.. - Nhập 9 Chín Hình 3: Chương trình đọc số Hướng dẫn gợi ý: sử dụng cấu trúc switch case 2.4. Bài 04 - Nhập vào một số nguyên dương N, hiển thị bằng chữ số vừa nhập trên, ví dụ: - Nhập 1 Một - Nhập 12 Mười hai - Nhập 123 Một trăm hai mươi ba Hình 4: Chương trình đọc số tổng quát Hướng dẫn gợi ý: sử dụng cấu trúc switch case Lương Trần Hy Hiến hienlth@hcmup.edu.vn 10/16

2.5. Bài 05 - Viết chương trình nhập vào giá trị nguyên dương N, tính tổng với giao diện như sau: S = 1 + 2 + 3 + + N Hình 5: CT tính tổng N số nguyên liên tiếp - 1 Hướng dẫn gợi ý: sử dụng vòng lặp While, For 2.6. Bài 06- Viết chương trình nhập vào giá trị nguyên dương N, tính tổng với giao diện như sau S = 1 + 2 + 3 + + N Tương tự tính tổng - S = 1 + 3 + 5 + 7 + + (2N +1) - S = 2 + 4 + 6 + 8 + + 2N. Hình 6: CT tính tổng N số nguyên liên tiếp - 2 2.7. Bài 07: Viết chương trình gồm 1 form trong đó có 1 button và 1 label hiển thị số lần nhấn button đó. Lương Trần Hy Hiến hienlth@hcmup.edu.vn 11/16

2.8. Bài 08- Viết chương trình nhập vào giá trị nguyên dương N, và số thực X, tính tổng S = X + X 2 + X 3 + X 4 +..+ X N Hình 7: CT tính tỗng lũy thừa Tương tự tính tổng - S = X + X 3 + X 5 + X 5 +..+ X 2N+1 - S = X 2 + X 4 + X 6 +..+ X 2N 2.9. Bài 09 Thiết kế giao diện và cài đặt chương trình như sau: Hình 8: Các phép toán cơ bản Lương Trần Hy Hiến hienlth@hcmup.edu.vn 12/16

2.10. Bài 10 (BT có hướng dẫn) Máy tính đơn giản thực hiện các chức năng +, -, *, /. MÁY TÍNH ĐƠN GIẢN 1 Hình 9: Chương trình máy tính đơn giản Bước 1: Tạo Project, ghi tiêu đề form, icon form, ẩn nút Minimize, Maximize 1 Xử lý cho nút X: Sự kiện FormClosing() Lương Trần Hy Hiến hienlth@hcmup.edu.vn 13/16

Bước 2: Thiết kế màn hình và đặt tên như hình sau: Trong đó các phím số đặt tên từ btn0 btn9. Bước 3: Khai báo các biến cần thiết string chuoitam = ""; //Dùng để lưu giữ tạm giá trị của số nhập vào char toantu; //Dùng lưu kí hiệu toán tử của phép toán, vd: +, -, *, / double[] toanhang = new double[2];//lưu 2 toán hạng (số hạng) của phép toán double ketqua; //Dùng lưu kết quả của phép toán int buoc = 1; //Dùng lưu giữ số bước thực hiện phép toán //Khai báo biến string chuoitam = ""; char toantu; double[] toanhang = new double[2]; double ketqua; int buoc = 1; Bước 4: Viết hàm cho chung cho các phím số (0 9) Đặt tên cho phím vừa bấm là b. Nếu b rỗng, kết thúc hàm. Ngoài ra chúng ta cũng loại trừ trường hợp có rất nhiều số 0 đứng trước một số khác (ví dụ 000000001 chính là 1). Do đó b.text == 0 && chuoitam.length == 0 thì kết thúc hàm. //Hàm bấm phím số private void NumberButtons(object sender, EventArgs e) Button b = sender as Button; if ((b == null) (b.text == "0" && chuoitam.length == 0)) return; chuoitam += b.text; txtmanhinh.text = chuoitam; Lưu ý: Cho tất cả các phím số gọi hàm này ứng với sự kiện click. Lương Trần Hy Hiến hienlth@hcmup.edu.vn 14/16

Bước 5: Viết hàm xử lý cho nút +/- (dương/âm) //Hàm xử lý cho nút +/- (dương/âm) private void btncongtru_click(object sender, EventArgs e) if (chuoitam.contains('-')) chuoitam = chuoitam.replace("-", ""); else chuoitam = "-" + chuoitam; txtmanhinh.text = chuoitam; Bước 6: Viết hàm xử lý cho phím. //Hàm xử lý phím chấm private void btncham_click(object sender, EventArgs e) if (!chuoitam.contains('.')) chuoitam = chuoitam + "."; txtmanhinh.text = chuoitam; Bước 7: Viết hàm xử lý cho nút C //Hàm xử lý nút C private void btnc_click(object sender, EventArgs e) if (chuoitam.length == 0) buoc = 1; toanhang[0] = toanhang[1] = 0.0; toantu = ' '; ketqua = 0.0; else chuoitam = "0"; txtmanhinh.text = chuoitam; Bước 8: Viết hàm xử lý cho phím bằng 2 //Hàm bấm phím số private void btnbang_click(object sender, EventArgs e) if (chuoitam.length!= 0) toanhang[1] = Double.Parse(chuoitam); switch (toantu) case '+': ketqua = toanhang[0] + toanhang[1]; break; case '-': ketqua = toanhang[0] - toanhang[1]; break; case '*': ketqua = toanhang[0] * toanhang[1]; break; case '/': ketqua = toanhang[0] / toanhang[1]; break; txtmanhinh.text = ketqua.tostring(); //Gán lại giá trị ban đầu buoc = 1; chuoitam = ""; 2 Sinh viên tự hoàn chỉnh thêm cho trường hợp bấm nhiều dấu = liên tiếp. Lương Trần Hy Hiến hienlth@hcmup.edu.vn 15/16

Bước 9: Viết hàm xử lý các phím thực hiện phép toán 3 //Hàm bấm phím số private void Operations(object sender, EventArgs e) Button b = sender as Button; if(buoc == 1) toantu = b.text[0];//lấy kí hiệu toán tử if (chuoitam.length == 0) toanhang[buoc - 1] = ketqua; else toanhang[buoc - 1] = Double.Parse(chuoitam); if (buoc == 2) btnbang_click(null, null); toantu = b.text[0]; toanhang[0] = ketqua; buoc = 2; else txtmanhinh.text = toanhang[0].tostring(); buoc++; chuoitam = ""; 2.11. Bài 11: Chương trình máy tính của Windows 7. Thiết kế máy tính bỏ túi có các chức năng như hình bên. Không cần thiết kế menu. 3 Sinh viên tự hoàn chỉnh thêm cho trường hợp bấm nhiều lần 1 toán tử. Lương Trần Hy Hiến hienlth@hcmup.edu.vn 16/16