Tổng hợp Bài Tập MTLTTQ

249
Đổi Dương Lich ra Âm Lịch public partial class Form1 : Form { public Form1() { InitializeComponent(); } #region private string DocNamAmLich(Int64 Nam) { string[] can ={ "Giáp", "Ất", "Bính", "Đinh", "Mậu", "Kỷ", "Canh", "Tân", "Nhâm", "Quý" }; string[] chi ={ "Tý", "Sửu", "Dần", "Mẹo", "Thìn", "Tỵ", "Ngọ", "Mùi", "Thân", "Dậu", "Tuất", "Hợi" }; Int64 SoCan, SoChi, n, m; n = (Nam - 2008) % 10; m = (Nam - 2008) % 12; SoCan = (10 + 4 + n) % 10; //Nam 2008 co can la 4 (Mau), cong 10 de sau khi chia lay du duoc so duong SoChi = (12 + 0 + m) % 12;//Nam 2008 co chi la 0 (Ty), cong 12 de sau khi chia lay du duoc so duong return can[SoCan] + " " + chi[SoChi]; } #endregion private void bt_Doi_Click(object sender, EventArgs e) { Int64 so; try 1

Transcript of Tổng hợp Bài Tập MTLTTQ

Page 1: Tổng hợp Bài Tập MTLTTQ

Đổi Dương Lich ra Âm Lịch

public partial class Form1 : Form { public Form1() { InitializeComponent(); } #region private string DocNamAmLich(Int64 Nam) { string[] can ={ "Giáp", "Ất", "Bính", "Đinh", "Mậu", "Kỷ", "Canh", "Tân", "Nhâm", "Quý" }; string[] chi ={ "Tý", "Sửu", "Dần", "Mẹo", "Thìn", "Tỵ", "Ngọ", "Mùi", "Thân", "Dậu", "Tuất", "Hợi" }; Int64 SoCan, SoChi, n, m; n = (Nam - 2008) % 10; m = (Nam - 2008) % 12; SoCan = (10 + 4 + n) % 10; //Nam 2008 co can la 4 (Mau), cong 10 de sau khi chia lay du duoc so duong SoChi = (12 + 0 + m) % 12;//Nam 2008 co chi la 0 (Ty), cong 12 de sau khi chia lay du duoc so duong return can[SoCan] + " " + chi[SoChi]; } #endregion

private void bt_Doi_Click(object sender, EventArgs e) { Int64 so; try { so = Convert.ToInt64(cb_Duong.Text); txt_Am.Text = DocNamAmLich(so); } catch {

1

Page 2: Tổng hợp Bài Tập MTLTTQ

MessageBox.Show("Lỗi nhập số", "Báo lỗi:", MessageBoxButtons.OK, MessageBoxIcon.Error); } }

private void bt_Thoat_Click(object sender, EventArgs e) { Close(); }

private void Form1_Load(object sender, EventArgs e) { for (int i = 1; i <= 5000; i++) { cb_Duong.Items.Add(i); } cb_Duong.SelectedIndex = DateTime.Now.Year - 1; }

private void cb_Duong_SelectedIndexChanged(object sender, EventArgs e) { Int64 so; try { so = Convert.ToInt64(cb_Duong.SelectedItem); // label1.Text = DocNamAmLich(so); } catch { MessageBox.Show("Lỗi nhập số", "Báo lỗi:", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }

Tính Tổng N!

2

Page 3: Tổng hợp Bài Tập MTLTTQ

public partial class Form2 : Form { public Form2() { InitializeComponent(); }

private void bt_Tinhtong_Click(object sender, EventArgs e) {

try { int tong = 0; int a; a = Convert.ToInt32(txt_Nhap.Text.ToString()); for (int i = 0; i <= a; i++) { tong += i; } lb_Ketqua.Text = tong.ToString();

}catch

{ MessageBox.Show("Lỗi nhập số", "Báo lỗi:", MessageBoxButtons.OK, MessageBoxIcon.Error);

} }

private void bt_Thoat_Click(object sender, EventArgs e) { Close(); }

private void Form2_Load(object sender, EventArgs e) { txt_Nhap.Text = "0"; } }

Giải Phương Trình Bậc 1:

3

Page 4: Tổng hợp Bài Tập MTLTTQ

public partial class GiaiPTBacNhat : Form { public GiaiPTBacNhat() { InitializeComponent(); }

private void button3_Click(object sender, EventArgs e) { Close(); }

private void GiaiPTBacNhat_Load(object sender, EventArgs e) {

} public float giaiPTBacNhat(float a, float b) { return -(b / a); }

private void button_GiaiPT_Click(object sender, EventArgs e) { if (textBox_A.Text == "") { MessageBox.Show("Nhập hệ số A ","Thông báo",MessageBoxButtons.OK); textBox_A.Focus(); } else if (textBox_B.Text == "") { MessageBox.Show("Nhập hệ số B ", "Thông báo", MessageBoxButtons.OK); textBox_B.Focus(); } else { float a = float.Parse(textBox_A.Text); float b = float.Parse(textBox_B.Text); float kq = -(b / a); label_Ngiem.Text = "Phương trinh " + textBox_A.Text + "x + " + textBox_B.Text + " = 0 có nghiệm X = " + kq.ToString(); } }

private void button2_Click(object sender, EventArgs e) { if (textBox_A.Text == "") { MessageBox.Show("Nhập hệ số A ", "Thông báo", MessageBoxButtons.OK); textBox_A.Focus(); }

4

Page 5: Tổng hợp Bài Tập MTLTTQ

else if (textBox_B.Text == "") { MessageBox.Show("Nhập hệ số B ", "Thông báo", MessageBoxButtons.OK); textBox_B.Focus(); } else { float a = float.Parse(textBox_A.Text); float b = float.Parse(textBox_B.Text); label_N.Text = "Phương trinh " + textBox_A.Text + "x + " + textBox_B.Text + " = 0 có nghiệm X = " + Convert.ToString(giaiPTBacNhat(a, b)); } }

private void textBox_A_KeyPress(object sender, KeyPressEventArgs e) { if (((e.KeyChar > 47) && (e.KeyChar < 58) || (e.KeyChar == 46)) || (e.KeyChar < 32) || (e.KeyChar == 43) || e.KeyChar == 45 ) { e.Handled = false; //MessageBox.Show("Key Pressed = " + e.KeyChar.ToString()); } else { e.Handled = true; }

}

private void textBox_B_KeyPress(object sender, KeyPressEventArgs e) { if (((e.KeyChar > 47) && (e.KeyChar < 58) || (e.KeyChar == 46)) || (e.KeyChar < 32) || (e.KeyChar == 43) || e.KeyChar==45 ) // 48 -> 57 = 0->9 , 46 = . , 43 = + , 45 = - , <32 = ký tự đặc biệt (alt, ctrl) { e.Handled = false; } else { e.Handled = true; // MessageBox.Show("Key Pressed = " + e.KeyChar.ToString()); } } }

5

Page 6: Tổng hợp Bài Tập MTLTTQ

Hộp Chọn và hiện đường dẫn file

public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { openFileDialog1.Title = "Chọn một tập tin"; openFileDialog1.InitialDirectory = "C:\\winnt"; openFileDialog1.Filter = "Tập tin văn bản .TXT|*.txt|Tập tin .INI|*.ini|Tập tin .DLL|*.dll|Tất cả tập tin|*.*";

openFileDialog1.ShowDialog(); textBox1.Text = openFileDialog1.FileName;

} private void button2_Click(object sender, EventArgs e) { openFileDialog2.Title = "Chọn nhiều tập tin"; openFileDialog2.InitialDirectory = "C:\\winnt"; openFileDialog2.Filter = "Tập tin văn bản .TXT|*.txt|Tập tin .INI|*.ini|Tập tin .DLL|*.dll|Tất cả tập tin|*.*"; openFileDialog2.ShowDialog(); string[] nhieufile = openFileDialog2.FileNames; for (int i = 1; i < nhieufile.Length; i++) { MessageBox.Show(nhieufile[i], "tập tin thứ " + i.ToString() + " là :"); } } private void button3_Click(object sender, EventArgs e)

6

Page 7: Tổng hợp Bài Tập MTLTTQ

{ colorDialog1.ShowDialog(); textBox1.BackColor = colorDialog1.Color; } }

Xúc xắc chạy 4 chiều

(Bỏ them Timer vào !!!)

public partial class Form1 : Form { Boolean chayquaphai = true; Boolean chayxuong = true;

public Form1() { InitializeComponent(); }

private void timer1_Tick(object sender, EventArgs e) { if ((chayquaphai == true) && (chayxuong == true)) { if ((label1.Location.X + 5 <= this.Width - 60) && (label1.Location.Y + 5 <= this.Height - 70)) { label1.Location = new Point(label1.Location.X + 5, label1.Location.Y + 3); } else chayquaphai = false; } else if ((chayquaphai == true) && (chayxuong == false)) { if ((label1.Location.X + 5 <= this.Width - 70) && (label1.Location.Y - 5 >= -30)) { label1.Location = new Point(label1.Location.X + 5, label1.Location.Y - 5); } else

7

Page 8: Tổng hợp Bài Tập MTLTTQ

chayxuong = true; } else if ((chayquaphai == false) && (chayxuong == true)) { if ((label1.Location.X - 5 >= -10) && (label1.Location.Y + 5 <= this.Height - 70)) { label1.Location = new Point(label1.Location.X - 5, label1.Location.Y + 5); } else chayxuong = false; } else if ((chayquaphai == false) && (chayxuong == false)) { if ((label1.Location.X - 5 >= -20) && (label1.Location.Y - 5 >= -0)) label1.Location = new Point(label1.Location.X-5, label1.Location.Y -4); else chayquaphai = true; } }

Hộp Màu Chạy

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

8

Page 9: Tổng hợp Bài Tập MTLTTQ

private void vScrollBar1_ValueChange(object sender, EventArgs e) { label1.Text = vScrollBar1.Value.ToString(); textBox1.BackColor = Color.FromArgb(vScrollBar1.Value, vScrollBar2.Value, vScrollBar3.Value); } private void vScrollBar2_ValueChange(object sender, EventArgs e) { label2.Text = vScrollBar2.Value.ToString(); textBox1.BackColor = Color.FromArgb(vScrollBar1.Value, vScrollBar2.Value, vScrollBar3.Value); } private void vScrollBar3_ValueChange(object sender, EventArgs e) { label3.Text = vScrollBar3.Value.ToString(); textBox1.BackColor = Color.FromArgb(vScrollBar1.Value, vScrollBar2.Value, vScrollBar3.Value); }

private void timer1_Tick(object sender, EventArgs e) { if (checkBox1.Checked) { if (vScrollBar1.Value + 1 <= vScrollBar1.Maximum) vScrollBar1.Value = vScrollBar1.Value + 1; else vScrollBar1.Value = vScrollBar1.Minimum; } if (checkBox2.Checked) { if (vScrollBar2.Value + 2 <= vScrollBar2.Maximum) vScrollBar2.Value = vScrollBar2.Value + 2; else vScrollBar2.Value = vScrollBar2.Minimum; } if(checkBox3.Checked) { if (vScrollBar3.Value + 4 <= vScrollBar3.Maximum) vScrollBar3.Value = vScrollBar3.Value + 4; else vScrollBar3.Value = vScrollBar3.Minimum; }

}

private void hScrollBar1_Scroll(object sender, ScrollEventArgs e) { timer1.Interval = hScrollBar1.Value; }

9

Page 10: Tổng hợp Bài Tập MTLTTQ

private void button1_Click(object sender, EventArgs e) { if (timer1.Enabled == true) { button1.Text = "Chạy"; timer1.Enabled = false; } else { timer1.Enabled = true; button1.Text = "Dừng"; } } }

Hộp Chữ Chay – nhanh chậm

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void Form1_Load(object sender, EventArgs e) { label1.Text = "Cộng hòa xã hội chủ nghĩa Việt Nam "; textBox1.Text = " ENTER se ok...(Khoang trang) "; } string s; private void timer1_Tick(object sender, EventArgs e) { s = label1.Text;

10

Page 11: Tổng hợp Bài Tập MTLTTQ

if (radioButton1.Checked == true) { label1.Text = s.Substring(1, s.Length - 1) + s.Substring(0, 1); } else if (radioButton3.Checked == true) { label1.Text = s.Substring(s.Length - 1, 1) + s.Substring(0, s.Length-1); } }

private void hScrollBar1_Scroll(object sender, ScrollEventArgs e) { this.Text = hScrollBar1.Value.ToString(); timer1.Interval = hScrollBar1.Value; }

private void textBox1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode.ToString()=="Return") label1.Text = textBox1.Text + " "; /*if (e.KeyValue == 13) label1.Text = textBox1.Text + " ";*/ }

private void button2_Click(object sender, EventArgs e) { Application.Exit(); }

private void button1_Click(object sender, EventArgs e) { label1.Text = " Cộng hòa xã hội chủ nghĩa Việt Nam "; textBox1.Text = " ENTER se ok...(Khoang trang) "; //radioButton1.Checked = true; timer1.Interval = 50; }

}

Đệ Quy và vòng lập

11

Page 12: Tổng hợp Bài Tập MTLTTQ

(Hộp RichTextBoc – Button 1->4)

public partial class Form1 : Form { public Form1() { InitializeComponent(); } private ulong GiaiThua(ulong so) { if (so == 1) return 1; else return so * GiaiThua(so - 1); } private void button1_Click(object sender, EventArgs e) { ulong x; string kq=""; x = Convert.ToUInt64(textBox1.Text); for (ulong i = 1; i <= x; i++) { kq += i + "!=" + Convert.ToString(GiaiThua(i)) + '\n'; richTextBox2.Text = kq; }

}

private void button2_Click(object sender, EventArgs e) { ulong n; ulong x = 1; string kq = ""; n = Convert.ToUInt64(textBox1.Text);

12

Page 13: Tổng hợp Bài Tập MTLTTQ

for (ulong i = 1; i <= n; i++) { x = x * i; kq += i + "!=" + x + '\n'; richTextBox4.Text = kq; }

} private ulong Fibo(ulong so) { if (so == 1) return 0; else if(so == 2) return 1; else return (Fibo(so - 2) + Fibo(so - 1));

} private void button4_Click(object sender, EventArgs e) { ulong x; string kq = "ptu thu 1:0\nptu thu 2:1\n"; x = Convert.ToUInt64(textBox2.Text); for (ulong i = 3; i <= x; i++) { kq += "ptu thu " + i + ":" + Convert.ToString(Fibo(i)) + '\n'; richTextBox1.Text = kq; } }

private void button3_Click(object sender, EventArgs e) { ulong x = 0; ulong y = 1; ulong tam; // richTextBox3.Text=""; string kq="ptu thu 1:0\nptu thu 2:1\n"; ulong n=Convert.ToUInt64(textBox2.Text); for(ulong i=3;i<=n;i++) { tam=y; y=x+y; x=tam; kq+="ptu thu "+i+":"+y+'\n'; richTextBox3.Text=kq; } } }

13

Page 14: Tổng hợp Bài Tập MTLTTQ

Đọc số :

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { try { UInt64 SoNhap = Convert.ToUInt64(textBox1.Text); label1.Text = DocMuoiLamSo(SoNhap); textBox1.Focus(); } catch { MessageBox.Show("Lỗi nhập số", "Báo lỗi nhập liệu:",MessageBoxButtons.OK, MessageBoxIcon.Error); }

} private string DocMotSo(UInt64 so) { string kq=""; switch (so) { case 0: kq="không"; break; case 1: kq = "một"; break;

14

Page 15: Tổng hợp Bài Tập MTLTTQ

case 2: kq = "hai"; break; case 3: kq= "ba"; break; case 4: kq = "bốn"; break; case 5: kq = "năm"; break; case 6: kq= "sáu"; break; case 7: kq = "bảy"; break; case 8: kq = "tám"; break; case 9: kq= "chín"; break; } return kq; } private string DocHaiSo(UInt64 so) { string kq = ""; byte HangChuc = Convert.ToByte(so / 10); byte HangDonVi = Convert.ToByte(so % 10); if(so<10) kq = DocMotSo(so); else if(so==10) kq = "mười"; else if (so == 15) kq = "mười lăm"; else if((so==11)||(so==12)||(so==13)||(so==14)||(so==15)||(so==16)||(so==17)||(so==18)||(so==19)) kq = "mười " + DocMotSo(HangDonVi); else if ((so == 25) || (so == 35) || (so == 45) || (so == 55) || (so == 65) || (so == 75) || (so == 85) || (so == 95)) kq = DocMotSo(HangChuc)+ " mươi lăm";

else if((so==20)||(so==30)||(so==40)||(so==50)||(so==60)||(so==70)||(so==80)||(so==90)) kq =DocMotSo(HangChuc)+ " mươi"; else if((so==21)||(so==31)||(so==41)||(so==51)||(so==61)||(so==71)||(so==81)||(so==91)) kq = DocMotSo(HangChuc)+ " mươi mốt"; else kq = DocMotSo(HangChuc)+ " mươi " + DocMotSo(HangDonVi);

return kq; } private string DocBaSo(UInt64 so) { string kq = "";

15

Page 16: Tổng hợp Bài Tập MTLTTQ

byte HangTram = Convert.ToByte(so / 100); byte HaiSoCuoi = Convert.ToByte(so % 100); byte HangChuc = Convert.ToByte(HaiSoCuoi / 10); byte HangDonVi = Convert.ToByte(HaiSoCuoi % 10);

if (so <=99) kq = DocHaiSo(so); else if ((so == 100)||(so == 200) || (so == 300) || (so == 400) || (so == 500) || (so == 600) || (so == 700) || (so == 800) || (so == 900)) kq = DocMotSo(HangTram) + " trăm"; else if (HangChuc==0) kq = DocMotSo(HangTram) + " trăm lẻ " + DocMotSo(HangDonVi);

else kq = DocMotSo(HangTram) + " trăm " + DocHaiSo(HaiSoCuoi);

return kq; } private string DocSauSo(UInt64 so) { string kq = ""; UInt64 BaSoDau = Convert.ToUInt64(so / 1000); UInt64 BaSoCuoi = Convert.ToUInt64(so % 1000); byte HangTram = Convert.ToByte(BaSoCuoi / 100); byte HaiSoCuoi = Convert.ToByte(BaSoCuoi% 100); byte HangChuc = Convert.ToByte(BaSoCuoi / 10); //byte HangDonVi = Convert.ToByte(BaSoCuoi % 10);

if (so <= 999) kq = DocBaSo(so); else if (BaSoCuoi == 0) kq = DocBaSo(BaSoDau) + " ngàn"; else if ((HangTram == 0)&&(HangChuc==0)) kq = DocBaSo(BaSoDau) + " ngàn, không trăm lẻ " + DocBaSo(BaSoCuoi); else if (HangTram == 0) kq = DocBaSo(BaSoDau) + " ngàn, không trăm " + DocBaSo(BaSoCuoi); else kq = DocBaSo(BaSoDau) + " ngàn, " + DocBaSo(BaSoCuoi);

return kq; } private string DocChinSo(UInt64 so) { string kq = ""; UInt64 BaSoDau = Convert.ToUInt64(so / 1000000); UInt64 SauSoCuoi = Convert.ToUInt64(so % 1000000); UInt64 BaSoGiua = Convert.ToUInt64(SauSoCuoi/1000); UInt64 BaSoCuoi = Convert.ToUInt64(so % 1000);

16

Page 17: Tổng hợp Bài Tập MTLTTQ

byte HangTram = Convert.ToByte(BaSoCuoi / 100); byte HaiSoCuoi = Convert.ToByte(BaSoCuoi % 100); byte HangChuc = Convert.ToByte(BaSoCuoi / 10); byte HangDonVi = Convert.ToByte(BaSoCuoi % 10); byte HangTramNgan = Convert.ToByte(Convert.ToInt16(so / 100000) % 10); byte HangChucNgan = Convert.ToByte(Convert.ToInt32(so / 10000) % 10);

if (so <= 999999) kq = DocSauSo(so); else if (SauSoCuoi == 0) kq = DocBaSo(BaSoDau) + " triệu"; else if(BaSoGiua!=0) if(HangTramNgan==0 && HangChucNgan==0) kq = DocBaSo(BaSoDau) + " triệu, không trăm lẻ " + DocSauSo(SauSoCuoi); else if(HangTramNgan==0) kq = DocBaSo(BaSoDau) + " triệu, không trăm " + DocSauSo(SauSoCuoi); else kq = DocBaSo(BaSoDau) + " triệu, " + DocSauSo(SauSoCuoi); else if ((HangTram == 0)&&(HangChuc==0)) kq = DocBaSo(BaSoDau) + " triệu, không trăm lẻ " + DocMotSo(HangDonVi); else if (HangTram == 0) kq = DocBaSo(BaSoDau) + " triệu, không trăm " + DocHaiSo(HaiSoCuoi); else kq = DocBaSo(BaSoDau) + " triệu, " + DocSauSo(SauSoCuoi);

return kq; } private string DocMuoiHaiSo(UInt64 so) { string kq = ""; UInt64 BaSoDau = Convert.ToUInt64(so / 1000000000); UInt64 ChinSoCuoi = Convert.ToUInt64(so % 1000000000); UInt64 SauSoGiua = Convert.ToUInt64(ChinSoCuoi / 1000); //UInt64 BaSoGiua = Convert.ToUInt64(SauSoCuoi / 1000); //UInt64 BaSoCuoi = Convert.ToUInt64(so % 1000); byte HangTram = Convert.ToByte((Convert.ToInt16(so % 1000)) / 100); //byte HaiSoCuoi = Convert.ToByte(BaSoCuoi % 100); byte HangChuc = Convert.ToByte((Convert.ToInt16(so % 100)) / 10); //byte HangDonVi = Convert.ToByte(BaSoCuoi % 10);

if (so <= 999999999) kq = DocChinSo(so); else if(ChinSoCuoi==0) kq = DocBaSo(BaSoDau) + " tỉ"; else if((SauSoGiua==0)&&(HangTram==0)&&(HangChuc==0))

17

Page 18: Tổng hợp Bài Tập MTLTTQ

kq = DocBaSo(BaSoDau) + " tỉ, không trăm lẻ " + DocChinSo(ChinSoCuoi); else if ((SauSoGiua == 0) && (HangTram == 0)) kq = DocBaSo(BaSoDau) + " tỉ, không trăm " + DocChinSo(ChinSoCuoi);

else kq = DocBaSo(BaSoDau) + " tỉ, " + DocChinSo(ChinSoCuoi);

return kq; } private string DocMuoiLamSo(UInt64 so) { string kq = ""; UInt64 SauSoDau = Convert.ToUInt64(so / 1000000000); UInt64 ChinSoCuoi = Convert.ToUInt64(so % 1000000000); UInt64 SauSoGiua = Convert.ToUInt64(ChinSoCuoi / 1000);//123 456 789 012 345, là số 789 012

//UInt64 BaSoGiua = Convert.ToUInt64(SauSoCuoi / 1000); //UInt64 BaSoCuoi = Convert.ToUInt64(so % 1000); byte HangTram = Convert.ToByte((Convert.ToInt16(so % 1000)) / 100); //byte HaiSoCuoi = Convert.ToByte(BaSoCuoi % 100); byte HangChuc = Convert.ToByte((Convert.ToInt16(so % 100)) / 10); //byte HangDonVi = Convert.ToByte(BaSoCuoi % 10); byte HangTramTrieu = Convert.ToByte(Convert.ToInt64(so / 100000000) % 10); byte HangChucTrieu = Convert.ToByte(Convert.ToInt64(so / 10000000) % 10); byte HangTrieu = Convert.ToByte(Convert.ToInt64(so / 1000000) % 10);

if (so <= 999999999999) kq = DocMuoiHaiSo(so); else if (ChinSoCuoi == 0) kq = DocSauSo(SauSoDau) + " tỉ";

else if ((SauSoGiua == 0) && (HangTram == 0) && (HangChuc == 0)) kq = DocSauSo(SauSoDau) + " tỉ, không trăm lẻ " + DocChinSo(ChinSoCuoi); else if ((SauSoGiua == 0) && (HangTram == 0)) kq = DocSauSo(SauSoDau) + " tỉ, không trăm " + DocChinSo(ChinSoCuoi);

else if(HangTramTrieu==0 && HangChucTrieu==0 && HangTrieu!=0) kq = DocSauSo(SauSoDau) + " tỉ, không trăm lẻ " + DocChinSo(ChinSoCuoi); else if (HangTramTrieu == 0 && HangTrieu != 0) kq = DocSauSo(SauSoDau) + " tỉ, không trăm " + DocChinSo(ChinSoCuoi); else kq = DocSauSo(SauSoDau) + " tỉ, " + DocChinSo(ChinSoCuoi);

return kq; }

18

Page 19: Tổng hợp Bài Tập MTLTTQ

private void textBox1_TextChanged(object sender, EventArgs e) { try { if (textBox1.Text.Length != 0) textBox2.Text = (Convert.ToUInt64(textBox1.Text)).ToString("#,###"); else textBox2.Text = "";

button1.Text = "Đọc số Unicode (" + textBox1.Text.Length.ToString() + " số)"; } catch { } }

private void button2_Click(object sender, EventArgs e) { Application.Exit(); }

private void Form1_Load(object sender, EventArgs e) { textBox1.Text = "123456789012345"; button1.PerformClick(); } }

Hẹn giờ

19

Page 20: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void Form1_Load(object sender, EventArgs e) { //textBox1.Text = DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"); textBox1.Text = DateTime.Now.ToLongTimeString(); }

private void timer1_Tick(object sender, EventArgs e) { //label2.Text = DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"); label2.Text = DateTime.Now.ToLongTimeString(); if (checkBox1.Checked == true) if (textBox1.Text == label2.Text) MessageBox.Show("Đã tới giờ rồi???Học bài thôi!!!"); } }

20

Page 21: Tổng hợp Bài Tập MTLTTQ

InMaASCI

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { for (int n = 65; n <= 90; n++) { listBox1.Items.Add("Mã ASCII của " + Convert.ToChar(n) + " là " + n); } listBox1.Items.Count.ToString(); }

private void button2_Click(object sender, EventArgs e)21

Page 22: Tổng hợp Bài Tập MTLTTQ

{ listBox1.Items.Clear(); for (int n = 97; n <= 122; n++) { listBox1.Items.Add("Mã ASCII của " + Convert.ToChar(n) + " là " + n); } listBox1.Items.Count.ToString(); }

private void button3_Click(object sender, EventArgs e) { listBox1.Items.Clear(); for (int n = 48; n <= 57; n++) {

listBox1.Items.Add("Mã ASCII của " + Convert.ToChar(n) + " là " + n); } listBox1.Items.Count.ToString();

}

private void button4_Click(object sender, EventArgs e) { listBox1.Items.Clear(); for (int n = 65; n <= 90; n++) { listBox1.Items.Add("Mã ASCII của " + Convert.ToChar(n) + " là " + n); } listBox1.Items.Add("---------"); for (int n = 97; n <= 122; n++) { listBox1.Items.Add("Mã ASCII của " + Convert.ToChar(n) + " là " + n); } listBox1.Items.Add("---------"); for (int n = 48; n <= 57; n++) {

listBox1.Items.Add("Mã ASCII của " + Convert.ToChar(n) + " là " + n); } listBox1.Items.Count.ToString();

}

private void button5_Click(object sender, EventArgs e) { Int16 n = Convert.ToInt16(textBox1.Text); label1.Text = Convert.ToChar(n).ToString();

22

Page 23: Tổng hợp Bài Tập MTLTTQ

}

private void Form1_Load(object sender, EventArgs e) {

} }

Lấy ký tự y chang

public partial class Form1 : Form { public Form1() { InitializeComponent(); } int i=-1; private void Form1_Load(object sender, EventArgs e) { textBox1.Text = "Cộng hòa xã hội chủ nghĩa Việt Nam"; }

private void textBox2_KeyPress(object sender, KeyPressEventArgs e) { i++; if (i < textBox1.Text.Length) { e.KeyChar=Convert.ToChar(textBox1.Text.Substring(i,1));

23

Page 24: Tổng hợp Bài Tập MTLTTQ

} else e.KeyChar=Convert.ToChar(Keys.None); } }

Lịch thế giới

public partial class Form1 : Form { DateTime dt; public Form1() { InitializeComponent(); }

private void timer1_Tick(object sender, EventArgs e) { dt = DateTime.Now; switch (comboBox1.SelectedIndex)

24

Page 25: Tổng hợp Bài Tập MTLTTQ

{ case 0: break; case 1: dt = dt.AddHours(1); break; case 2: dt = dt.AddHours(-12); break; case 3: dt = dt.AddHours(2); break; case 4: dt = dt.AddHours(-6); break;

} label1.Text = "Nam " + dt.Year.ToString(); label2.Text = "Thang " + dt.Month.ToString(); label3.Text = dt.Day.ToString(); switch (dt.DayOfWeek) { case DayOfWeek.Monday: label4.Text = "Thu hai"; break; case DayOfWeek.Tuesday: label4.Text = "Thu ba"; break; case DayOfWeek.Wednesday: label4.Text = "Thu tu"; break; case DayOfWeek.Thursday: label4.Text = "Thu nam"; break; case DayOfWeek.Friday: label4.Text = "Thu sau"; break; case DayOfWeek.Saturday: label4.Text = "Thu bay"; break; case DayOfWeek.Sunday: label4.Text = "Chu Nhat"; break; } label5.Text = dt.ToString("hh:mm:ss"); }

private void Form1_Load(object sender, EventArgs e) { comboBox1.Items.Add("Viet Nam"); comboBox1.Items.Add("Trung Quoc"); comboBox1.Items.Add("My"); comboBox1.Items.Add("Nhat"); comboBox1.Items.Add("Phap"); comboBox1.SelectedIndex = 0; } }

Cách truyền tham số

25

Page 26: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { int x = 5; int y = 10; int z = 15; TruyenGiaTri(x); TruyenThamKhao(ref y); TruyenVoiOUT(out z); label1.Text = Convert.ToString(x); label2.Text = Convert.ToString(y); label3.Text = Convert.ToString(z);

} private void TruyenGiaTri(int n) { n = n * 2; } private void TruyenThamKhao(ref int n) { n = n * 2; } private void TruyenVoiOUT(out int n) { n = 100; n = n * 2; } }

Cộng trừ ngày tháng giây

26

Page 27: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void timer1_Tick(object sender, EventArgs e) { dateTimePicker1.Value = DateTime.Now; }

private void Form1_Load(object sender, EventArgs e) { comboBox1.SelectedIndex = 2; }

private void button1_Click(object sender, EventArgs e) { DateTime d = dateTimePicker1.Value; double db = Convert.ToDouble(textBox1.Text); switch (comboBox1.SelectedIndex) { case 0: d = d.AddHours(db); break; case 1: d = d.AddMinutes(db); break; case 2: d = d.AddSeconds(db); break; case 3:

27

Page 28: Tổng hợp Bài Tập MTLTTQ

d = d.AddDays(db); break; case 4: d = d.AddMonths(Convert.ToInt16(db)); break; case 5: d = d.AddYears(Convert.ToInt16(db)); break; } label1.Text = d.ToString("dd/MM/yyyy hh:mm:ss"); }

private void button2_Click(object sender, EventArgs e) { if (timer1.Enabled ) { timer1.Enabled = false; button2.Text = "Chạy đồng hồ"; } else { timer1.Enabled = true; button2.Text = "Dừng đồng hồ"; } } }

KHUNG ĐỀ THI co menu

public partial class Dethi : Form { public Dethi() {

28

Page 29: Tổng hợp Bài Tập MTLTTQ

InitializeComponent(); }

private void aboutF1ToolStripMenuItem_Click(object sender, EventArgs e) { AboutBox ab = new AboutBox(); ab.MdiParent = this; ab.Show(); }

private void thoátCtrXToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit(); }

private void thuNhỏToolStripMenuItem_Click(object sender, EventArgs e) { if (thuNhỏToolStripMenuItem.Checked) { this.WindowState = FormWindowState.Normal; } else { this.WindowState = FormWindowState.Maximized; } }

private void inBảngSốXeToolStripMenuItem_Click(object sender, EventArgs e) { In_bang_so_xe.Form1 f1 = new In_bang_so_xe.Form1(); // show cai form cần ra ! f1.MdiParent = this; f1.Show(); } }

=============================

public partial class DeThi1 : Form { public DeThi1() { InitializeComponent(); }

private void Form1_Load(object sender, EventArgs e) {

}

private void thoátToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit(); }

private void thuNhỏToolStripMenuItem_Click(object sender, EventArgs e)29

Page 30: Tổng hợp Bài Tập MTLTTQ

{ if (thuNhỏToolStripMenuItem.Checked) { //thuNhỏToolStripMenuItem.Checked = false; this.WindowState=FormWindowState.Normal; } else { this.WindowState = FormWindowState.Maximized; } }

private void aboutToolStripMenuItem_Click(object sender, EventArgs e) { AboutBox1 ab = new AboutBox1(); ab.MdiParent = this; ab.Show(); }

private void inBảngSốXeToolStripMenuItem_Click(object sender, EventArgs e) { BangSoXe bsx = new BangSoXe(); bsx.MdiParent = this; bsx.Show(); }

private void phaMàuRGBToolStripMenuItem_Click(object sender, EventArgs e) { PhaMau.PhaMau pm = new PhaMau.PhaMau(); pm.MdiParent = this; pm.Show(); }

Bảng số xe mới

30

Page 31: Tổng hợp Bài Tập MTLTTQ

public partial class BangSoXe : Form { public BangSoXe() { InitializeComponent(); }

private void button4_Click(object sender, EventArgs e) { String BangSo; listBox1.Items.Clear(); Cursor.Current = Cursors.WaitCursor; for (int i = 1; i <= 9999; i++) { BangSo = Convert.ToString(i); switch (BangSo.Length) { case 1: BangSo = "000" + BangSo; break; case 2: BangSo = "00" + BangSo; break; case 3: BangSo = "0" + BangSo; break; } listBox1.Items.Add(BangSo);

}

31

Page 32: Tổng hợp Bài Tập MTLTTQ

label1.Text = listBox1.Items.Count.ToString() + " bảng số"; }

private void button1_Click(object sender, EventArgs e) { String BangSo, D1, D2, D3, D4; ; listBox1.Items.Clear(); Cursor.Current = Cursors.WaitCursor; for (int i = 1; i <= 9999; i++) { BangSo = Convert.ToString(i); switch (BangSo.Length) { case 1: BangSo = "000" + BangSo; break; case 2: BangSo = "00" + BangSo; break; case 3: BangSo = "0" + BangSo; break; }

D1 = BangSo.Substring(0, 1); D2 = BangSo.Substring(1, 1); D3 = BangSo.Substring(2, 1); D4 = BangSo.Substring(3, 1);

if ((D2 == "7") && (D3 == "8")) listBox1.Items.Add(BangSo); } label1.Text = listBox1.Items.Count.ToString() + " bảng số"; //Cursor.Current = Cursors.Default; } }

private void button2_Click(object sender, EventArgs e) { String BangSo, D1, D2, D3, D4; ; listBox1.Items.Clear(); Cursor.Current = Cursors.WaitCursor; for (int i = 1; i <= 9999; i++) { BangSo = Convert.ToString(i); switch (BangSo.Length) { case 1: BangSo = "000" + BangSo; break;

32

Page 33: Tổng hợp Bài Tập MTLTTQ

case 2: BangSo = "00" + BangSo; break; case 3: BangSo = "0" + BangSo; break; }

D1 = BangSo.Substring(0, 1); D2 = BangSo.Substring(1, 1); D3 = BangSo.Substring(2, 1); D4 = BangSo.Substring(3, 1);

if (((D1 == "7") && (D2 == "8"))||((D2 == "7") && (D3 == "8"))||((D3 == "7") && (D4 == "8"))) listBox1.Items.Add(BangSo); } label1.Text = listBox1.Items.Count.ToString() + " bảng số"; //Cursor.Current = Cursors.Default; } }

private void button3_Click(object sender, EventArgs e) { this.Close(); }

}

Pha màu 2 chiều:

33

Page 34: Tổng hợp Bài Tập MTLTTQ

(có timer)

public partial class PhaMau : Form { bool DoTang=true; bool LucTang=true; bool LamTang = true; public PhaMau() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { if (timer1.Enabled == true) { timer1.Enabled = false; button1.Text = "Chạy"; } else { timer1.Enabled = true; button1.Text = "Ngừng"; }

}

private void vScrollBar1_Scroll(object sender, ScrollEventArgs e) { }

34

Page 35: Tổng hợp Bài Tập MTLTTQ

private void timer1_Tick(object sender, EventArgs e) { if (radioButton1.Checked) { if (checkBox1.Checked) { if (vScrollBar1.Value + 1 <= 255) vScrollBar1.Value += 1; else vScrollBar1.Value = 0; }

if (checkBox2.Checked) { if (vScrollBar2.Value + 2 <= 255) vScrollBar2.Value += 2; else vScrollBar2.Value = 0; }

if (checkBox3.Checked) { if (vScrollBar3.Value + 4 <= 255) vScrollBar3.Value += 4; else vScrollBar3.Value = 0; textBox1.BackColor = Color.FromArgb(vScrollBar1.Value, vScrollBar2.Value, vScrollBar3.Value); } } else { if (checkBox1.Checked) { if (DoTang) { if (vScrollBar1.Value + 1 <= 255) vScrollBar1.Value += 1; else DoTang = false; } else { if (vScrollBar1.Value - 1 >= 0) vScrollBar1.Value -= 1; else DoTang = true; } }

35

Page 36: Tổng hợp Bài Tập MTLTTQ

if (checkBox2.Checked) { if (LucTang) { if (vScrollBar2.Value + 2 <= 255) vScrollBar2.Value += 2; else LucTang = false; } else { if (vScrollBar2.Value - 2 >= 0) vScrollBar2.Value -= 2; else LucTang = true; } }

if (checkBox3.Checked) { if (LamTang) { if (vScrollBar3.Value + 4 <= 255) vScrollBar3.Value += 4; else LamTang = false; } else { if (vScrollBar3.Value - 4 >= 0) vScrollBar3.Value -= 4; else LamTang = true; }

} } //textBox1.BackColor = Color.FromArgb(vScrollBar1.Value, vScrollBar2.Value, vScrollBar3.Value); }

private void vScrollBar1_ValueChanged(object sender, EventArgs e) { label1.Text = vScrollBar1.Value.ToString(); textBox1.BackColor = Color.FromArgb(vScrollBar1.Value, vScrollBar2.Value, vScrollBar3.Value); }

private void vScrollBar2_ValueChanged(object sender, EventArgs e) {

36

Page 37: Tổng hợp Bài Tập MTLTTQ

label2.Text = vScrollBar2.Value.ToString(); textBox1.BackColor = Color.FromArgb(vScrollBar1.Value, vScrollBar2.Value, vScrollBar3.Value); }

private void vScrollBar3_ValueChanged(object sender, EventArgs e) { label3.Text = vScrollBar3.Value.ToString(); textBox1.BackColor = Color.FromArgb(vScrollBar1.Value, vScrollBar2.Value, vScrollBar3.Value); }

private void hScrollBar1_ValueChanged(object sender, EventArgs e) { timer1.Interval = 301 - hScrollBar1.Value; }

private void label1_Click(object sender, EventArgs e) {

}

private void button2_Click(object sender, EventArgs e) { this.Close(); } }

Bảng help

partial class AboutBox1 : Form { public AboutBox1() { InitializeComponent();

37

Page 38: Tổng hợp Bài Tập MTLTTQ

// Initialize the AboutBox to display the product information from the assembly information. // Change assembly information settings for your application through either: // - Project->Properties->Application->Assembly Information // - AssemblyInfo.cs this.Text = String.Format("About {0}", AssemblyTitle); this.labelProductName.Text = AssemblyProduct; this.labelVersion.Text = String.Format("Version {0}", AssemblyVersion); this.labelCopyright.Text = AssemblyCopyright; this.labelCompanyName.Text = AssemblyCompany; }

#region Assembly Attribute Accessors

public string AssemblyTitle { get { // Get all Title attributes on this assembly object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false); // If there is at least one Title attribute if (attributes.Length > 0) { // Select the first one AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0]; // If it is not an empty string, return it if (titleAttribute.Title != "") return titleAttribute.Title; } // If there was no Title attribute, or if the Title attribute was the empty string, return the .exe name return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase); } }

public string AssemblyVersion { get { return Assembly.GetExecutingAssembly().GetName().Version.ToString(); } }

public string AssemblyDescription { get {

38

Page 39: Tổng hợp Bài Tập MTLTTQ

// Get all Description attributes on this assembly object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false); // If there aren't any Description attributes, return an empty string if (attributes.Length == 0) return ""; // If there is a Description attribute, return its value return ((AssemblyDescriptionAttribute)attributes[0]).Description; } }

public string AssemblyProduct { get { // Get all Product attributes on this assembly object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false); // If there aren't any Product attributes, return an empty string if (attributes.Length == 0) return ""; // If there is a Product attribute, return its value return ((AssemblyProductAttribute)attributes[0]).Product; } }

public string AssemblyCopyright { get { // Get all Copyright attributes on this assembly object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); // If there aren't any Copyright attributes, return an empty string if (attributes.Length == 0) return ""; // If there is a Copyright attribute, return its value return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; } }

public string AssemblyCompany { get { // Get all Company attributes on this assembly

39

Page 40: Tổng hợp Bài Tập MTLTTQ

object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false); // If there aren't any Company attributes, return an empty string if (attributes.Length == 0) return ""; // If there is a Company attribute, return its value return ((AssemblyCompanyAttribute)attributes[0]).Company; } } #endregion

private void okButton_Click(object sender, EventArgs e) { this.Close(); } }

Đồng hộ chạy ngược

public partial class Form1 : Form { DateTime dt = DateTime.Now; int SoGiayHen,dem; public Form1() { InitializeComponent(); }

private void timer1_Tick(object sender, EventArgs e) { label1.Text = DateTime.Now.ToString(); dem++; label5.Text = Convert.ToString(dem); dt = dt.AddSeconds(-1); label2.Text = dt.ToString();

40

Page 41: Tổng hợp Bài Tập MTLTTQ

if (dem == SoGiayHen) { MessageBox.Show("Hết giờ hẹn rồi", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); label5.Visible = false; } }

private void button1_Click(object sender, EventArgs e) { SoGiayHen = Convert.ToInt32(textBox1.Text); dt= DateTime.Now; dem = 0; label5.Text = ""; label5.Visible = true;

}

private void Form1_Load(object sender, EventArgs e) {

} }

Đệ quy và vòng lập 2

(hop ricktexbox)

public partial class Form1 : Form { public Form1()

41

Page 42: Tổng hợp Bài Tập MTLTTQ

{ InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { Cursor.Current = Cursors.WaitCursor; UInt64 n; string kq=""; n = Convert.ToUInt64(textBox1.Text); for (UInt64 i = 1; i <= n; i++) { kq += i + "! = " + GiaiThua(i).ToString() + "\n"; } richTextBox1.Text = kq;

} private void button2_Click(object sender, EventArgs e) { Cursor.Current = Cursors.WaitCursor; UInt64 n; string kq = ""; n=Convert.ToUInt64(textBox1.Text); for (UInt64 i = 1; i <= n; i++) { kq += "Phần tử thứ " + i + ": " + Fibo(i).ToString() + "\n"; } richTextBox1.Text = kq; }

private void button3_Click(object sender, EventArgs e) { Cursor.Current = Cursors.WaitCursor; UInt64 n; UInt64 x=1; string kq = ""; n = Convert.ToUInt64(textBox1.Text); for (UInt64 i = 1; i <= n; i++) { x = x * i; kq += i + "! = " + x + "\n"; } richTextBox1.Text = kq;

}

private void button4_Click(object sender, EventArgs e)

42

Page 43: Tổng hợp Bài Tập MTLTTQ

{ Cursor.Current = Cursors.WaitCursor; UInt64 n; UInt64 x=0; UInt64 y=1; UInt64 tam; richTextBox1.Text = ""; string kq = "Phần tử thứ 1: 0\nPhần tử thứ 2: 1\n"; n = Convert.ToUInt64(textBox1.Text);

for (UInt64 i = 3; i <= n; i++) { tam = y; y = x + y; x = tam;

kq += "Phần tử thứ " + i + ": " + y + "\n"; } richTextBox1.Text = kq;

} //Hàm Fibo viết đệ quy public UInt64 Fibo(UInt64 so) { if (so == 1) return 0; else if (so == 2) return 1; else return (Fibo(so - 2) + Fibo(so - 1)); }

//Hàm giai thừa viết đệ quy public UInt64 GiaiThua(UInt64 so) { if (so == 1) return 1; else return so * GiaiThua(so - 1);

}

}

43

Page 44: Tổng hợp Bài Tập MTLTTQ

Chọn ngày tháng năm Anh Việt 1:

public partial class Form1 : Form { public Form1() { InitializeComponent(); } #region các phương thức public void nam() { cbo_nam.Items.Clear(); for (int i = 1900; i <= 2500; i++) { cbo_nam.Items.Add(i); } //cbo_nam.SelectedIndex = 0; } public void ngay_thangdu() { cbo_ngay.Items.Clear(); for (int i = 1; i <= 31; i++) { cbo_ngay.Items.Add(i); } } public void ngay_thangthieu() { cbo_ngay.Items.Clear(); for (int i = 1; i <= 30; i++) {

44

Page 45: Tổng hợp Bài Tập MTLTTQ

cbo_ngay.Items.Add(i); } //cbo_ngay.Text = DateTime.Now.Day.ToString(); //cbo_ngay.SelectedValue=""; } public void ngay_thanghai() { int s; cbo_ngay.Items.Clear(); if (int.Parse(cbo_nam.Text) % 4 == 0 || int.Parse(cbo_nam.Text) % 100 == 0) s=29; else s=28;

for (int i = 1; i <= s; i++) { cbo_ngay.Items.Add(i); } // cbo_ngay.Text = DateTime.Now.Day.ToString(); //cbo_ngay.SelectedValue=""; }

public void thang() { cbo_thang.Items.Clear(); for (int i = 1; i <= 12; i++) { cbo_thang.Items.Add(i); } //cbo_nam.SelectedValue; } public string docngay() { string ngay, thang, nam; ngay = cbo_ngay.Text; thang = cbo_thang.Text; nam = cbo_nam.Text; DateTime t = new DateTime(Convert.ToInt16(nam),Convert.ToInt16(thang),Convert.ToInt16(ngay)); return docthu1(t) + ", Ngày " + ngay + " Tháng " + thang + " Năm " + nam; } public string docngay_En() { string ngay, thang, nam,ngayEN; ngay = cbo_ngay.Text; thang = cbo_thang.Text; nam = cbo_nam.Text; int ng = Convert.ToInt16(cbo_ngay.Text);

45

Page 46: Tổng hợp Bài Tập MTLTTQ

switch (ng) { case 1: case 11: case 21: case 31: ngayEN = "st "; break; case 2: case 12: case 22: ngayEN = "rd "; break; default : ngayEN = "th "; break; }

DateTime t = new DateTime(Convert.ToInt16(nam), Convert.ToInt16(thang), Convert.ToInt16(ngay)); return t.ToString("dddd") + ", " + t.ToString("dd") + ngayEN + " " + t.ToString("MMMM") + " " + t.ToString("yyyy"); } public string docthu(DateTime dt) { String str = ""; //DateTime dt; switch (dt.DayOfWeek) { case DayOfWeek.Monday: str = "Thứ hai"; break; case DayOfWeek.Tuesday: str = "Thứ ba"; break; case DayOfWeek.Wednesday: str = "Thứ tư"; break; case DayOfWeek.Thursday: str = "Thứ năm"; break; case DayOfWeek.Friday: str = "Thứ sáu"; break; case DayOfWeek.Saturday: str = "Thứ bảy"; break; case DayOfWeek.Sunday: str = "Chủ nhật"; break;

46

Page 47: Tổng hợp Bài Tập MTLTTQ

} return str;

}

public string docthu1(DateTime dt) { String str = ""; // DateTime dt; switch (dt.DayOfWeek.GetHashCode()) { case 1: str = "Thứ hai"; break; case 2: str = "Thứ ba"; break; case 3: str = "Thứ tư"; break; case 4: str = "Thứ năm"; break; case 5: str = "Thứ sáu"; break; case 6: str = "Thứ bảy"; break; case 0: str = "Chủ nhật"; break;

} return str;

} public void chonNgay() { switch (int.Parse(cbo_thang.Text)) { case 1: ngay_thangdu(); break; case 3: ngay_thangdu(); break; case 5: ngay_thangdu(); break; case 7: ngay_thangdu(); break;

47

Page 48: Tổng hợp Bài Tập MTLTTQ

case 8: ngay_thangdu(); break; case 10: ngay_thangdu(); break; case 12: ngay_thangdu(); break; case 4: ngay_thangthieu(); break; case 6: ngay_thangthieu(); break; case 9: ngay_thangthieu(); break; case 11: ngay_thangthieu(); break; case 2: ngay_thanghai(); break; } } #endregion

private void Form1_Load(object sender, EventArgs e) { nam(); ngay_thangdu(); thang(); cbo_thang.Text = DateTime.Now.Month.ToString(); cbo_ngay.Text = DateTime.Now.Day.ToString(); cbo_nam.Text = DateTime.Now.Year.ToString(); }

private void cbo_thang_SelectedIndexChanged(object sender, EventArgs e) { chonNgay(); }

private void cbo_nam_SelectedIndexChanged(object sender, EventArgs e) { chonNgay(); }

private void btn_homnay_Click(object sender, EventArgs e) { cbo_thang.Text = DateTime.Now.Month.ToString(); cbo_ngay.Text = DateTime.Now.Day.ToString(); cbo_nam.Text = DateTime.Now.Year.ToString();

lbl_tiengviet.Text = docngay(); lbl_tienganh.Text = docngay_En();

48

Page 49: Tổng hợp Bài Tập MTLTTQ

}

private void btn_ngaydachon_Click(object sender, EventArgs e) { lbl_tiengviet.Text = docngay(); lbl_tienganh.Text = docngay_En(); } }

Chọn ngày tháng năm 2

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void Form1_Load(object sender, EventArgs e) { for (int i = 1; i <= 31; i++) { comboBox1.Items.Add(i); } comboBox1.Text = Convert.ToString(DateTime.Now.Day); for (int i = 1; i <= 12; i++) { comboBox2.Items.Add(i); } comboBox2.Text = Convert.ToString(DateTime.Now.Month); for (int i = 1900; i <= 2100; i++) { comboBox3.Items.Add(i); } comboBox3.Text = Convert.ToString(DateTime.Now.Year);

49

Page 50: Tổng hợp Bài Tập MTLTTQ

DateTime dt = new DateTime(Convert.ToInt32(comboBox3.Text), Convert.ToInt32(comboBox2.Text),Convert.ToInt32( comboBox1.Text)); label1.Text = ngaythuTiengAnh(dt); label2.Text = ngaythuTiengViet(dt); this.Text = dt.ToString("dd/MM/yyyy"); } private string ngaythuTiengViet(DateTime dt) { string thu = ""; switch (dt.DayOfWeek) { case DayOfWeek.Saturday: thu = "Thứ bảy"; break; case DayOfWeek.Sunday: thu = "Chủ Nhật"; break; case DayOfWeek.Monday: thu = "Thứ hai"; break; case DayOfWeek.Tuesday: thu = "Thứ ba"; break; case DayOfWeek.Wednesday: thu = "Thứ tư"; break; case DayOfWeek.Thursday: thu = "Thứ năm"; break; case DayOfWeek.Friday: thu = "Thứ sáu"; break; } return thu + " ,ngày " + dt.ToString("dd") + " tháng " + dt.ToString("MM") + " năm " + dt.ToString("yyyy"); } private string ngaythuTiengAnh(DateTime dt) { string kt; if ((dt.Day == 1) || (dt.Day == 21) || (dt.Day == 31)) kt = "st"; if ((dt.Day == 2) || (dt.Day == 22)) kt = "nd"; if ((dt.Day == 3) || (dt.Day == 23)) kt = "rd"; else kt = "th"; return dt.ToString("dddd") + " " + dt.ToString("MMMM") + " " + dt.ToString("dd") + kt+" " + dt.ToString("yyyy"); }

private void button1_Click(object sender, EventArgs e) { try { DateTime dt = new DateTime(Convert.ToInt32(comboBox3.Text), Convert.ToInt32(comboBox2.Text), Convert.ToInt32(comboBox1.Text)); label1.Text = ngaythuTiengAnh(dt);

50

Page 51: Tổng hợp Bài Tập MTLTTQ

label2.Text = ngaythuTiengViet(dt); this.Text = dt.ToString("dd/MM/yyyy"); } catch { MessageBox.Show("Không có ngày này", "có lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }

Số nguyên tố và số chính phương

(Button theo thứ tự từ trên xuống)

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { label1.Text = ""; try { Cursor.Current = Cursors.WaitCursor; UInt64 SoNhap = Convert.ToUInt64(textBox1.Text); if (XetNguyenTo(SoNhap) == true) label1.Text = "là số nguyên tố"; else label1.Text = "không là số nguyên tố";

51

Page 52: Tổng hợp Bài Tập MTLTTQ

} catch { label1.Text = "có lỗi"; } } private bool XetNguyenTo(UInt64 So) { bool KQ = true; if (So > 1) { for (UInt64 i = 2; i <= Convert.ToUInt64(So/2); i++) { if (So % i == 0) { KQ = false; break; } } } return KQ; } private bool XetChinhPhuong(UInt64 So) { double d = Math.Sqrt(So); if (d % 1 == 0) return true; else return false;

} private void button3_Click(object sender, EventArgs e) { try { Cursor.Current = Cursors.WaitCursor; UInt64 n1 = Convert.ToUInt64(textBox2.Text); UInt64 n2 = Convert.ToUInt64(textBox3.Text); listBox1.Items.Clear(); label2.Text = ""; for (UInt64 i = n1; i <= n2; i++) { if (XetNguyenTo(i) == true) listBox1.Items.Add(i); } label2.Text = listBox1.Items.Count.ToString(); } catch {

52

Page 53: Tổng hợp Bài Tập MTLTTQ

label2.Text = "có lỗi"; }

}

private void button2_Click(object sender, EventArgs e) { label1.Text = ""; try { Cursor.Current = Cursors.WaitCursor; UInt64 SoNhap = Convert.ToUInt64(textBox1.Text); if (XetChinhPhuong(SoNhap) == true) label1.Text = "là số chính phương"; else label1.Text = "không là số chính phương"; } catch { label1.Text = "có lỗi"; } }

private void button4_Click(object sender, EventArgs e) { try { Cursor.Current = Cursors.WaitCursor; UInt64 n1 = Convert.ToUInt64(textBox2.Text); UInt64 n2 = Convert.ToUInt64(textBox3.Text); listBox1.Items.Clear(); label2.Text = ""; for (UInt64 i = n1; i <= n2; i++) { if (XetChinhPhuong(i) == true) listBox1.Items.Add(i); } label2.Text = listBox1.Items.Count.ToString(); } catch { label2.Text = "có lỗi"; }

} }

53

Page 54: Tổng hợp Bài Tập MTLTTQ

Xúc xắc ngẩu nhiên:

(mỗi hình xuc xắc là 1 lable)

using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;using System.IO;

namespace RollDie{ /// <summary> /// Summary description for RollDie. /// </summary> public class RollDie : System.Windows.Forms.Form { private System.Windows.Forms.Button rollButton;

private System.Windows.Forms.RichTextBox displayTextBox;

private System.Windows.Forms.Label dieLabel1; private System.Windows.Forms.Label dieLabel2; private System.Windows.Forms.Label dieLabel3; private System.Windows.Forms.Label dieLabel4; private System.Windows.Forms.Label dieLabel5; private System.Windows.Forms.Label dieLabel6; private System.Windows.Forms.Label dieLabel7; private System.Windows.Forms.Label dieLabel8; private System.Windows.Forms.Label dieLabel9;

54

Page 55: Tổng hợp Bài Tập MTLTTQ

private System.Windows.Forms.Label dieLabel10; private System.Windows.Forms.Label dieLabel11; private System.Windows.Forms.Label dieLabel12; /// <summary> /// Required designer variable. /// </summary> private System.ComponentModel.Container components = null;

Random randomNumber = new Random(); int[] frequency = new int[ 7 ];

public RollDie() { // // Required for Windows Form Designer support // InitializeComponent(); }

/// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { if ( disposing ) { if ( components != null ) { components.Dispose(); } }

base.Dispose( disposing ); }

#region Windows Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(RollDie)); this.dieLabel10 = new System.Windows.Forms.Label(); this.dieLabel4 = new System.Windows.Forms.Label(); this.dieLabel5 = new System.Windows.Forms.Label(); this.dieLabel6 = new System.Windows.Forms.Label(); this.dieLabel7 = new System.Windows.Forms.Label(); this.dieLabel1 = new System.Windows.Forms.Label();

55

Page 56: Tổng hợp Bài Tập MTLTTQ

this.dieLabel2 = new System.Windows.Forms.Label(); this.dieLabel3 = new System.Windows.Forms.Label(); this.displayTextBox = new System.Windows.Forms.RichTextBox(); this.dieLabel8 = new System.Windows.Forms.Label(); this.dieLabel9 = new System.Windows.Forms.Label(); this.rollButton = new System.Windows.Forms.Button(); this.dieLabel12 = new System.Windows.Forms.Label(); this.dieLabel11 = new System.Windows.Forms.Label(); this.SuspendLayout(); // // dieLabel10 // this.dieLabel10.Location = new System.Drawing.Point(235, 90); this.dieLabel10.Name = "dieLabel10"; this.dieLabel10.Size = new System.Drawing.Size(56, 48); this.dieLabel10.TabIndex = 2; // // dieLabel4 // this.dieLabel4.Location = new System.Drawing.Point(235, 34); this.dieLabel4.Name = "dieLabel4"; this.dieLabel4.Size = new System.Drawing.Size(56, 48); this.dieLabel4.TabIndex = 2; // // dieLabel5 // this.dieLabel5.Location = new System.Drawing.Point(299, 34); this.dieLabel5.Name = "dieLabel5"; this.dieLabel5.Size = new System.Drawing.Size(56, 48); this.dieLabel5.TabIndex = 2; // // dieLabel6 // this.dieLabel6.Location = new System.Drawing.Point(363, 34); this.dieLabel6.Name = "dieLabel6"; this.dieLabel6.Size = new System.Drawing.Size(56, 48); this.dieLabel6.TabIndex = 2; // // dieLabel7 // this.dieLabel7.Location = new System.Drawing.Point(43, 90); this.dieLabel7.Name = "dieLabel7"; this.dieLabel7.Size = new System.Drawing.Size(56, 48); this.dieLabel7.TabIndex = 2; // // dieLabel1 // this.dieLabel1.Location = new System.Drawing.Point(43, 34); this.dieLabel1.Name = "dieLabel1"; this.dieLabel1.Size = new System.Drawing.Size(56, 48);

56

Page 57: Tổng hợp Bài Tập MTLTTQ

this.dieLabel1.TabIndex = 2; // // dieLabel2 // this.dieLabel2.Location = new System.Drawing.Point(107, 34); this.dieLabel2.Name = "dieLabel2"; this.dieLabel2.Size = new System.Drawing.Size(56, 48); this.dieLabel2.TabIndex = 2; // // dieLabel3 // this.dieLabel3.Location = new System.Drawing.Point(171, 34); this.dieLabel3.Name = "dieLabel3"; this.dieLabel3.Size = new System.Drawing.Size(56, 48); this.dieLabel3.TabIndex = 2; // // displayTextBox // this.displayTextBox.BackColor = System.Drawing.Color.Gold; this.displayTextBox.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.980198F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.displayTextBox.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(192))))); this.displayTextBox.Location = new System.Drawing.Point(32, 241); this.displayTextBox.Name = "displayTextBox"; this.displayTextBox.Size = new System.Drawing.Size(399, 147); this.displayTextBox.TabIndex = 0; this.displayTextBox.Text = ""; // // dieLabel8 // this.dieLabel8.Location = new System.Drawing.Point(107, 90); this.dieLabel8.Name = "dieLabel8"; this.dieLabel8.Size = new System.Drawing.Size(56, 48); this.dieLabel8.TabIndex = 2; // // dieLabel9 // this.dieLabel9.Location = new System.Drawing.Point(171, 90); this.dieLabel9.Name = "dieLabel9"; this.dieLabel9.Size = new System.Drawing.Size(56, 48); this.dieLabel9.TabIndex = 2; // // rollButton // this.rollButton.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.980198F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.rollButton.Location = new System.Drawing.Point(136, 173); this.rollButton.Name = "rollButton"; this.rollButton.Size = new System.Drawing.Size(188, 40);

57

Page 58: Tổng hợp Bài Tập MTLTTQ

this.rollButton.TabIndex = 1; this.rollButton.Text = "Sinh 12 mặt ngẫu nhiên"; this.rollButton.Click += new System.EventHandler(this.rollButton_Click); // // dieLabel12 // this.dieLabel12.Location = new System.Drawing.Point(363, 90); this.dieLabel12.Name = "dieLabel12"; this.dieLabel12.Size = new System.Drawing.Size(56, 48); this.dieLabel12.TabIndex = 2; // // dieLabel11 // this.dieLabel11.Location = new System.Drawing.Point(299, 90); this.dieLabel11.Name = "dieLabel11"; this.dieLabel11.Size = new System.Drawing.Size(56, 48); this.dieLabel11.TabIndex = 2; // // RollDie // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(463, 416); this.Controls.Add(this.dieLabel11); this.Controls.Add(this.dieLabel10); this.Controls.Add(this.dieLabel12); this.Controls.Add(this.dieLabel9); this.Controls.Add(this.dieLabel7); this.Controls.Add(this.dieLabel6); this.Controls.Add(this.dieLabel8); this.Controls.Add(this.dieLabel5); this.Controls.Add(this.dieLabel4); this.Controls.Add(this.dieLabel3); this.Controls.Add(this.dieLabel2); this.Controls.Add(this.dieLabel1); this.Controls.Add(this.rollButton); this.Controls.Add(this.displayTextBox); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); // nằm trong thư mự bin/debug/image/ this.Name = "RollDie"; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; this.Text = "Sinh số ngẫu nhiên cho xúc xắc"; this.ResumeLayout(false);

}#endregion

/// <summary> /// The main entry point for the application. /// </summary> [STAThread]

58

Page 59: Tổng hợp Bài Tập MTLTTQ

static void Main() { Application.Run( new RollDie() ); }

private void rollButton_Click( object sender, System.EventArgs e ) { // pass the labels to a method that will // randomly assign a face to each die DisplayDie( dieLabel1 ); DisplayDie( dieLabel2 ); DisplayDie( dieLabel3 ); DisplayDie( dieLabel4 ); DisplayDie( dieLabel5 ); DisplayDie( dieLabel6 ); DisplayDie( dieLabel7 ); DisplayDie( dieLabel8 ); DisplayDie( dieLabel9 ); DisplayDie( dieLabel10 ); DisplayDie( dieLabel11 ); DisplayDie( dieLabel12 );

double total = 0;

for ( int i = 1; i < 7; i++ ) total += frequency[ i ];

displayTextBox.Text = "Mặt\tSố lần\t\tTỉ lệ\n";

// output frequency values for ( int x = 1; x < frequency.Length; x++ ) { displayTextBox.Text += x + "\t" + frequency[ x ] + "\t\t" + String.Format( "{0:N}", frequency[ x ] / total * 100 ) + "%\n"; }

} // end rollButton_Click

// simulates roll, display proper // image and increment frequency public void DisplayDie( Label dieLabel ) { int face = randomNumber.Next( 1, 7 );

dieLabel.Image = Image.FromFile( Directory.GetCurrentDirectory() + "\\images\\die" + face + ".gif" );

59

Page 60: Tổng hợp Bài Tập MTLTTQ

frequency[ face ]++; }

} // end class RollDie

} // end namespace RollDie

Tạo và Mỡ file, đọc file

(textbox va richtexbox)

public partial class Form1 : Form { string filename; string strLine; string strAll; public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { saveFileDialog1.ShowDialog(); filename = saveFileDialog1.FileName; textBox1.Text = filename;

FileStream aFile = new FileStream(filename, FileMode.Create); StreamWriter sw = new StreamWriter(aFile); sw.Write("File vừa tạo ra"); sw.Close(); aFile.Close();

60

Page 61: Tổng hợp Bài Tập MTLTTQ

}

private void button2_Click(object sender, EventArgs e) { saveFileDialog1.ShowDialog(); //openFileDialog1.ShowDialog(); filename = saveFileDialog1.FileName; textBox1.Text = filename;

FileStream aFile = new FileStream(filename, FileMode.Create); StreamWriter sw = new StreamWriter(aFile); strAll = richTextBox1.Text; sw.Write(strAll); sw.Close(); aFile.Close(); }

private void button3_Click(object sender, EventArgs e) { openFileDialog1.ShowDialog(); filename = openFileDialog1.FileName; textBox1.Text = filename;

FileStream aFile = new FileStream(filename, FileMode.Open); StreamReader sr = new StreamReader(aFile); strAll = sr.ReadToEnd(); richTextBox1.Text = strAll; sr.Close(); aFile.Close(); } }

61

Page 62: Tổng hợp Bài Tập MTLTTQ

Kiểm tra các sự kiện

public partial class Form1 : Form { System.Drawing.Color mau ; public Form1() { InitializeComponent(); }

private void button7_Click(object sender, EventArgs e) { Application.Exit(); }

private void button1_Click(object sender, EventArgs e) { mau = this.BackColor; this.BackColor = button1.BackColor; button1.Enabled = false; }

private void button6_Click(object sender, EventArgs e) { this.BackColor = mau; button1.Enabled = true;

62

Page 63: Tổng hợp Bài Tập MTLTTQ

}

private void button2_Enter(object sender, EventArgs e) { this.BackColor = button2.BackColor; }

private void button2_Leave(object sender, EventArgs e) { this.BackColor = mau; }

private void Form1_Load(object sender, EventArgs e) { mau = this.BackColor; }

private void button3_MouseHover(object sender, EventArgs e) { this.BackColor = button3.BackColor; }

private void button3_MouseLeave(object sender, EventArgs e) { this.BackColor = mau; }

private void button4_MouseDown(object sender, MouseEventArgs e) { this.BackColor = button4.BackColor; }

private void button4_MouseUp(object sender, MouseEventArgs e) { this.BackColor = mau; }

private void button5_KeyPress(object sender, KeyPressEventArgs e) { }

private void button5_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e) { textBox1.Text = e.KeyData.ToString(); }

private void button5_Click(object sender, EventArgs e) {

63

Page 64: Tổng hợp Bài Tập MTLTTQ

} }

4 phép tính

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { double x = Convert.ToDouble(textBox1.Text); double y = Convert.ToDouble(textBox2.Text); lblKQ.Text=Convert.ToString(x+y);

}

private void button4_Click(object sender, EventArgs e) { double x = Convert.ToDouble(textBox1.Text); double y = Convert.ToDouble(textBox2.Text); if (y != 0) lblKQ.Text = Convert.ToString(x / y); else lblKQ.Text = "Lỗi";

}

private void button5_Click(object sender, EventArgs e) { Application.Exit();

64

Page 65: Tổng hợp Bài Tập MTLTTQ

}

private void button2_Click(object sender, EventArgs e) { double x = Convert.ToDouble(textBox1.Text); double y = Convert.ToDouble(textBox2.Text); lblKQ.Text = Convert.ToString(x - y);

}

private void button3_Click(object sender, EventArgs e) { double x = Convert.ToDouble(textBox1.Text); double y = Convert.ToDouble(textBox2.Text); lblKQ.Text = Convert.ToString(x * y);

} }

Hinhtron và elip tai. 1 diem.

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(System.Drawing.Color.Red); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawEllipse(myPen,10,20,100,200);//X,Y,Width,Heght của hình chữ nhật đường bao myPen.Dispose();

65

Page 66: Tổng hợp Bài Tập MTLTTQ

formGraphics.Dispose(); }

private void button2_Click(object sender, EventArgs e) { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(System.Drawing.Color.Red); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawEllipse(myPen,10,20,200,200);//X,Y,Width,Heght của hình chữ nhật đường bao myPen.Dispose(); formGraphics.Dispose(); }

private void button3_Click(object sender, EventArgs e) {

} }

Đường thẳng – chữ nhật – elip (Vẽ từ dưới lên !!!)

public partial class Form1 : Form { Graphics g; SolidBrush brush = new SolidBrush(Color.Blue); Pen pen = new Pen(Color.Blue); Point p1 = new Point(); public Form1() { InitializeComponent(); }

private void Form1_Load(object sender, EventArgs e) {

66

Page 67: Tổng hợp Bài Tập MTLTTQ

g = pane1.CreateGraphics(); }

private void button1_Click(object sender, EventArgs e) { if (colorDialog1.ShowDialog() == DialogResult.OK) { textBox1.BackColor = colorDialog1.Color; pen = new Pen(textBox1.BackColor); brush = new SolidBrush(textBox1.BackColor); } }

private void panel1_MouseDown(object sender, MouseEventArgs e) { p1.X = e.X; p1.Y = e.Y;

}

private void panel1_MouseUp(object sender, MouseEventArgs e) { Point p2 = new Point(); p2.X = e.X; p2.Y = e.Y;

int m; if ((p1.X > p2.X) && (e.Button != MouseButtons.Left)) { m = p1.X; p1.X = p2.X; p2.X = m; } if ((p1.Y > p2.Y) && (e.Button != MouseButtons.Left)) { m = p1.Y; p1.Y = p2.Y; p2.Y = m; }

switch (e.Button) { case MouseButtons.Left: g.DrawLine(pen, p1.X, p1.Y, e.X, e.Y); break; case MouseButtons.Middle: g.FillRectangle(brush, p1.X, p1.Y, p2.X - p1.X, p2.Y - p1.Y); break; case MouseButtons.Right:

67

Page 68: Tổng hợp Bài Tập MTLTTQ

g.FillEllipse(brush, p1.X, p1.Y, p2.X - p1.X, p2.Y - p1.Y); break; } }

private void panel1_DoubleClick(object sender, EventArgs e) { g.Clear(pane1.BackColor); } }

Hinh chu nhat – Duong thang – Hinh đăc ruột

Chuột trái: vẽ hình chữ nhật rỗng; Chuột phải: vẽ hình chữ nhật đặc; Chuột giữa: vẽ đường thẳng (nhấp đúp xóa các hình đã vẽ)

public partial class Form1 : Form { int X1, Y1; Color mau = Color.Red; public Form1() { InitializeComponent(); }

private void Form1_MouseUp(object sender, MouseEventArgs e) { switch (e.Button) { case MouseButtons.Left: { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(mau); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawRectangle(myPen, X1, Y1, e.X - X1, e.Y - Y1); myPen.Dispose(); formGraphics.Dispose();

68

Page 69: Tổng hợp Bài Tập MTLTTQ

} break; case MouseButtons.Middle: { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(mau); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawLine(myPen, X1, Y1, e.X , e.Y ); myPen.Dispose(); formGraphics.Dispose(); } break; case MouseButtons.Right: { System.Drawing.SolidBrush myBrush; myBrush = new System.Drawing.SolidBrush(mau); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.FillRectangle(myBrush, X1, Y1, e.X - X1, e.Y - Y1); myBrush.Dispose(); formGraphics.Dispose(); } break; }

}

private void Form1_MouseDown(object sender, MouseEventArgs e) { X1 = e.X; Y1 = e.Y; }

private void Form1_DoubleClick(object sender, EventArgs e) { System.Drawing.Graphics formGraphic = this.CreateGraphics(); formGraphic.Clear(DefaultBackColor); formGraphic.Dispose(); } }

Vẽ đường thẳng đơn giản69

Page 70: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form {

int X1, Y1; Color Mau = Color.Blue; public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(Mau); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawLine(myPen, 0, 0, 100, 300); myPen.Dispose(); formGraphics.Dispose(); }

private void Form_MouseDown(object sender, MouseEventArgs e) {

X1 = e.X; Y1 = e.Y;

} private void Form_MouseUp(object sender, MouseEventArgs e) { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(Mau);

70

Page 71: Tổng hợp Bài Tập MTLTTQ

System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawLine(myPen, X1, Y1, e.X, e.Y); myPen.Dispose(); formGraphics.Dispose(); } private void button2_Click(object sender, EventArgs e) { colorDialog1.ShowDialog(); button2.BackColor = colorDialog1.Color; Mau = colorDialog1.Color;

}

private void button3_Click(object sender, EventArgs e) { System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.Clear(DefaultBackColor); formGraphics.Dispose(); }

private void chọnMàuToolStripMenuItem_Click(object sender, EventArgs e) { colorDialog1.ShowDialog(); button2.BackColor = colorDialog1.Color; Mau = colorDialog1.Color;

}

private void vẽ1LineToolStripMenuItem_Click(object sender, EventArgs e) { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(Mau); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawLine(myPen, 0, 0, 100, 300); myPen.Dispose(); formGraphics.Dispose();

}

private void xóaCácLineToolStripMenuItem_Click(object sender, EventArgs e) { System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.Clear(DefaultBackColor); formGraphics.Dispose();

}

private void thoátToolStripMenuItem_Click(object sender, EventArgs e) {

71

Page 72: Tổng hợp Bài Tập MTLTTQ

Application.Exit(); } }

Vẽ đương thẳng cao cấp

public partial class Form1 : Form { int X1, Y1; Color Mau = Color.Blue; int DoDayNetVe=1; public Form1() { InitializeComponent(); }

private void button1_Click_1(object sender, EventArgs e) { System.Drawing.Pen myPen; //myPen = new System.Drawing.Pen(System.Drawing.Color.Red); myPen = new System.Drawing.Pen(Mau, DoDayNetVe); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawLine(myPen, 0, 0, 100, 200);//x1,y1,x2,y2 myPen.Dispose(); formGraphics.Dispose(); }

private void Form1_MouseDown(object sender, MouseEventArgs e) { X1 = e.X; Y1 = e.Y; }

private void Form1_MouseUp(object sender, MouseEventArgs e) { System.Drawing.Pen myPen;

72

Page 73: Tổng hợp Bài Tập MTLTTQ

myPen = new System.Drawing.Pen(Mau, DoDayNetVe); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawLine(myPen, X1, Y1, e.X, e.Y); myPen.Dispose(); formGraphics.Dispose(); }

private void Form1_DoubleClick(object sender, EventArgs e) { System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.Clear(DefaultBackColor); formGraphics.Dispose(); }

private void button2_Click(object sender, EventArgs e) { colorDialog1.ShowDialog(); Mau = colorDialog1.Color; button2.BackColor = Mau; }

private void button3_Click(object sender, EventArgs e) { System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.Clear(DefaultBackColor); formGraphics.Dispose();

}

private void chọnMàuToolStripMenuItem_Click(object sender, EventArgs e) { button2.PerformClick(); }

private void vẽ1LineMẫuToolStripMenuItem_Click(object sender, EventArgs e) { button1.PerformClick(); }

private void xóaCácLineToolStripMenuItem_Click(object sender, EventArgs e) { button3.PerformClick(); }

private void thoátToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit(); }

private void Form1_Load(object sender, EventArgs e)

73

Page 74: Tổng hợp Bài Tập MTLTTQ

{ listBox1.SelectedIndex = 0; }

private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { DoDayNetVe = listBox1.SelectedIndex + 1; } }

Chùm đường thẳng

public partial class Form2 : Form { int X1, Y1; Color Mau = Color.Blue; bool DangVe = false;

public Form2() { InitializeComponent(); }

private void Form2_MouseDown(object sender, MouseEventArgs e) { X1 = e.X; Y1 = e.Y; DangVe = true; }

private void Form2_MouseUp(object sender, MouseEventArgs e) { DangVe = false; }

74

Page 75: Tổng hợp Bài Tập MTLTTQ

private void Form2_MouseMove(object sender, MouseEventArgs e) { if (DangVe) { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(Mau); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawLine(myPen, X1, Y1, e.X, e.Y); myPen.Dispose(); formGraphics.Dispose(); } }

private void button2_Click(object sender, EventArgs e) { colorDialog1.ShowDialog(); Mau = colorDialog1.Color; button2.BackColor = Mau; }

private void button3_Click(object sender, EventArgs e) { System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.Clear(DefaultBackColor); formGraphics.Dispose(); } }

Chùm đường thẳng cao cấp

public partial class Form1 : Form { int dodaynetve; int X1, Y1;

75

Page 76: Tổng hợp Bài Tập MTLTTQ

Color mau = Color.OrangeRed; bool Dangve = false; public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { colorDialog1.ShowDialog(); button1.BackColor = colorDialog1.Color; mau = colorDialog1.Color; } private void Form1_MouseMove(object sender, MouseEventArgs e) { if(Dangve) { System.Drawing.Pen myPen; myPen = new System.Drawing.Pen(mau,dodaynetve); System.Drawing.Graphics formGraphics = this.CreateGraphics(); formGraphics.DrawLine(myPen, X1, Y1, e.X, e.Y); myPen.Dispose(); formGraphics.Dispose(); } } private void Form1_MouseUp(object sender, MouseEventArgs e) { Dangve = false; }

private void Form1_MouseDown(object sender, MouseEventArgs e) { X1 = e.X; Y1 = e.Y; Dangve = true; }

private void button2_Click(object sender, EventArgs e) { System.Drawing.Graphics formGraphics=this.CreateGraphics(); formGraphics.Clear(DefaultBackColor); formGraphics.Dispose(); }

private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { dodaynetve = listBox1.SelectedIndex + 1;

}

76

Page 77: Tổng hợp Bài Tập MTLTTQ

private void Form1_Load(object sender, EventArgs e) { listBox1.SelectedIndex = 0; } }

Messgebox và radio

using System;using System.Windows.Forms;

// Form contains several RadioButtons--user chooses one// from each group to create a custom MessageBoxpublic partial class RadioButtonsTestForm : Form{ // create variables that store the user's choice of options private MessageBoxIcon iconType; private MessageBoxButtons buttonType;

// default constructor public RadioButtonsTestForm() { InitializeComponent(); } // end constructor

// change Buttons based on option chosen by sender private void buttonType_CheckedChanged( object sender, EventArgs e ) { if ( sender == okButton ) // display OK Button

77

Page 78: Tổng hợp Bài Tập MTLTTQ

buttonType = MessageBoxButtons.OK;

// display OK and Cancel Buttons else if ( sender == okCancelButton ) buttonType = MessageBoxButtons.OKCancel;

// display Abort, Retry and Ignore Buttons else if ( sender == abortRetryIgnoreButton ) buttonType = MessageBoxButtons.AbortRetryIgnore;

// display Yes, No and Cancel Buttons else if ( sender == yesNoCancelButton ) buttonType = MessageBoxButtons.YesNoCancel;

// display Yes and No Buttons else if ( sender == yesNoButton ) buttonType = MessageBoxButtons.YesNo;

// only on option left--display Retry and Cancel Buttons else buttonType = MessageBoxButtons.RetryCancel; } // end method buttonType_Changed

// change Icon based on option chosen by sender private void iconType_CheckedChanged( object sender, EventArgs e ) { if ( sender == asteriskButton ) // display asterisk Icon iconType = MessageBoxIcon.Asterisk;

// display error Icon else if ( sender == errorButton ) iconType = MessageBoxIcon.Error;

// display exclamation point Icon else if ( sender == exclamationButton ) iconType = MessageBoxIcon.Exclamation;

// display hand Icon else if ( sender == handButton ) iconType = MessageBoxIcon.Hand;

// display information Icon else if ( sender == informationButton ) iconType = MessageBoxIcon.Information;

// display question mark Icon else if ( sender == questionButton ) iconType = MessageBoxIcon.Question;

// display stop Icon

78

Page 79: Tổng hợp Bài Tập MTLTTQ

else if ( sender == stopButton ) iconType = MessageBoxIcon.Stop;

// only one option left--display warning Icon else iconType = MessageBoxIcon.Warning; } // end method iconType_CheckChanged

// display MessageBox and Button user pressed private void displayButton_Click( object sender, EventArgs e ) { // display MessageBox and store // the value of the Button that was pressed DialogResult result = MessageBox.Show( "This is your Custom MessageBox.", "Custon MessageBox", buttonType, iconType, 0, 0 );

// check to see which Button was pressed in the MessageBox // change text displayed accordingly switch (result) { case DialogResult.OK: displayLabel.Text = "OK was pressed."; break; case DialogResult.Cancel: displayLabel.Text = "Cancel was pressed."; break; case DialogResult.Abort: displayLabel.Text = "Abort was pressed."; break; case DialogResult.Retry: displayLabel.Text = "Retry was pressed."; break; case DialogResult.Ignore: displayLabel.Text = "Ignore was pressed."; break; case DialogResult.Yes: displayLabel.Text = "Yes was pressed."; break; case DialogResult.No: displayLabel.Text = "No was pressed."; break; } // end switch }

private void RadioButtonsTestForm_Load(object sender, EventArgs e) {

} // end method displayButton_Click} // end class RadioButtonsTestForm

Đoán xúc xắc79

Page 80: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form { public Form1() { InitializeComponent(); } int x = 0; private void button1_Click(object sender, EventArgs e) { label1.Image = Image.FromFile(Directory.GetCurrentDirectory() + "\\Images\\die1.gif"); x = 1;

}

private void button2_Click(object sender, EventArgs e) { label1.Image = Image.FromFile(Directory.GetCurrentDirectory() + "\\Images\\die2.gif"); x = 2; }

private void button3_Click(object sender, EventArgs e) { label1.Image = Image.FromFile(Directory.GetCurrentDirectory() + "\\Images\\die3.gif"); x = 3; }

private void button4_Click(object sender, EventArgs e) { label1.Image = Image.FromFile(Directory.GetCurrentDirectory() + "\\Images\\die4.gif"); x = 4; }

private void button5_Click(object sender, EventArgs e)80

Page 81: Tổng hợp Bài Tập MTLTTQ

{ label1.Image = Image.FromFile(Directory.GetCurrentDirectory() + "\\Images\\die5.gif"); x = 5; }

private void button6_Click(object sender, EventArgs e) { label1.Image = Image.FromFile(Directory.GetCurrentDirectory() + "\\Images\\die6.gif"); x = 6; }

private void button7_Click(object sender, EventArgs e) { int soNN; Random rd = new Random(); soNN = rd.Next(1, 7); label2.Image = Image.FromFile(Directory.GetCurrentDirectory()+ "\\Images\\die"+ soNN.ToString() +".gif"); if (x <= soNN) listBox1.Items.Add("Thắng"); else listBox1.Items.Add("Thua"); }

private void Form1_Load(object sender, EventArgs e) {

} }

Lấy vị trí chuỗi

81

Page 82: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void textBox1_TextChanged(object sender, EventArgs e) { }

private void button1_Click(object sender, EventArgs e) { textBox1.SelectionStart = Convert.ToInt16(textBox2.Text) - 1; textBox1.SelectionLength = Convert.ToInt16(textBox3.Text); textBox1.Focus(); }

private void button2_Click(object sender, EventArgs e) { label3.Text = Convert.ToString(textBox1.SelectionStart + 1); label4.Text = Convert.ToString(textBox1.SelectionLength); textBox1.Focus(); } }

Lich nhỏ

82

Page 83: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void btnXem_Click(object sender, EventArgs e) { MessageBox.Show(dteDate.Value.DayOfWeek.ToString() + ",Ngày" + dteDate.Value.Day.ToString() + ",tháng" + dteDate.Value.Month.ToString() + ",năm " + dteDate.Value.Year.ToString());

} }

Đèn giao thông

public partial class DenGT : Form { int dem ; int trangthai; public DenGT()

83

Page 84: Tổng hợp Bài Tập MTLTTQ

{ InitializeComponent(); dem = 0; trangthai = 0; }

private void timTick_Tick(object sender, EventArgs e) { dem++; if (dem >10 && trangthai==0) { dem = 0; trangthai = 1; picDenvang.Visible = true; picDenxanh.Visible = false; picDendo.Visible = false; } if (dem >2 && trangthai ==1) { dem = 0; trangthai = 2; picDenvang.Visible = false; picDenxanh.Visible = false; picDendo.Visible = true; } if (dem > 10 && trangthai == 2) { dem = 0; trangthai = 0; picDenvang.Visible = false; picDenxanh.Visible = true; picDendo.Visible = false; } if (dem < 10) lblTG.Text = "0" + dem.ToString(); else lblTG.Text = dem.ToString(); }

}

Xử lý văn bản

84

Page 85: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form { string[] mamga; public Form1() { InitializeComponent(); } #region private void khoitaomang() { mamga = txt_Nhap.Text.Split(' '); } private void xoakt() { khoitaomang();

foreach (string x in mamga) if (x != "") txt_Xuat.Text = txt_Xuat.Text + x + " "; } private void daochuoi() { khoitaomang();

for (int j = mamga.Length -1 ; j >=0; j--) if (mamga[j] != "") txt_Xuat.Text = txt_Xuat.Text + mamga[j] + " "; }

private void dem() { khoitaomang(); int demchu = 0;

85

Page 86: Tổng hợp Bài Tập MTLTTQ

for (int k=0; k < mamga.Length; k++) if ( mamga[k] != "") demchu+=1; txt_Xuat.Text = demchu.ToString(); }

#endregion private void bt_Xoatrang_Click(object sender, EventArgs e) { txt_Xuat.Text = ""; xoakt(); }

private void bt_Dem_Click(object sender, EventArgs e) {

txt_Xuat.Text = ""; dem(); }

private void bt_Daochuoi_Click(object sender, EventArgs e) { txt_Xuat.Text = ""; daochuoi(); } }

Menu button

public partial class frmMain : Form { public frmMain() { InitializeComponent(); }

private void btnCal_Click(object sender, EventArgs e)86

Page 87: Tổng hợp Bài Tập MTLTTQ

{ new frmCalculator().ShowDialog(); }

private void btnReadNum_Click(object sender, EventArgs e) { new frmReadNum().ShowDialog(); }

private void btnImage_Click(object sender, EventArgs e) { new frmAnhDong().ShowDialog(); }

private void btnAnimatedText_Click(object sender, EventArgs e) { new frmAnimatedText().ShowDialog(); }

private void btnRollNumber_Click(object sender, EventArgs e) { new frmRollNumber().ShowDialog(); }

private void btnListBox_Click(object sender, EventArgs e) { new frmListBox().ShowDialog(); } }

Máy tính

public partial class frmCalculator : Form { public frmCalculator() { InitializeComponent();

87

Page 88: Tổng hợp Bài Tập MTLTTQ

}

private double dTotal = 0; private char cPhepTinh = ' '; private bool flag = false; private bool isGetResult = true;

private void Number_Click(object sender, EventArgs e) { // Nếu như là vừa bắt đầu nhập giá trị // hoặc là vừa nhấn nút phép tính ( + - X / %) if (flag || txtDisplay.Text == "0") { // Xóa dữ liệu trong ô textbox txtDisplay.Text = ""; flag = false; } // Đưa giá trị từ button vừa nhấn vào ô textbox ở vị trí sau cùng txtDisplay.AppendText(((Button)sender).Text); }

private void btnBack_Click(object sender, EventArgs e) { // Nếu ô text box có nhiều hơn 1 ký tự if (txtDisplay.TextLength > 1) { // Nếu ký tự cuối cùng là dấu chấm '.' // thì sẽ bỏ cả dấu chấm và số trước dấu chấm // đây là hàm Remove của kiểu string // có 2 đối số là vị trí bắt đầu bỏ bớt, và số ký tự sẽ bỏ ra khỏi chuỗi if (txtDisplay.Text.EndsWith(".")) txtDisplay.Text = txtDisplay.Text.Remove(txtDisplay.TextLength - 2, 2); else // không thì chỉ bỏ bớt một ký tự cuối cùng txtDisplay.Text = txtDisplay.Text.Remove(txtDisplay.TextLength - 1, 1); } else if (txtDisplay.TextLength == 1) { // Nếu chỉ có một ký tự trong ô textbox thì set giá trị về 0 // Ví dụ ô có giá trị là '9' ==> '0' txtDisplay.Text = "0"; } }

private void btnDec_Click(object sender, EventArgs e) { // Nếu không phải là số thập phân thì chèn thêm dấu chấm '.' vào if (!txtDisplay.Text.Contains(".")) txtDisplay.AppendText("."); }

88

Page 89: Tổng hợp Bài Tập MTLTTQ

private void PhepTinh_Click(object sender, EventArgs e) { // Lấy button vừa nhấn Button cur = (Button)sender; // Gán phép tính vào biến cPhepTinh = cur.Text[0]; // bật cờ xác định là vừa thiết lập phép tính flag = true; // nếu như giá trị của dTotal là 0 // hoặc là vừa tính toán xong if (dTotal == 0 || isGetResult) { dTotal = Convert.ToDouble(txtDisplay.Text); isGetResult = false; return; // Thoát khỏi hàm } switch (cPhepTinh) { case '+': dTotal += Convert.ToDouble(txtDisplay.Text); break; case '-': dTotal -= Convert.ToDouble(txtDisplay.Text); break; case 'X': dTotal *= Convert.ToDouble(txtDisplay.Text); break; case '/': dTotal /= Convert.ToDouble(txtDisplay.Text); break; case '%': dTotal %= Convert.ToDouble(txtDisplay.Text); break; default: break; } txtDisplay.Text = dTotal.ToString(); }

private void btnResult_Click(object sender, EventArgs e) { if (cPhepTinh == ' ') return; switch (cPhepTinh) { case '+': dTotal += Convert.ToDouble(txtDisplay.Text); break; case '-':

89

Page 90: Tổng hợp Bài Tập MTLTTQ

dTotal -= Convert.ToDouble(txtDisplay.Text); break; case 'X': dTotal *= Convert.ToDouble(txtDisplay.Text); break; case '/': dTotal /= Convert.ToDouble(txtDisplay.Text); break; case '%': dTotal %= Convert.ToDouble(txtDisplay.Text); break; default: break; } txtDisplay.Text = dTotal.ToString(); cPhepTinh = ' '; isGetResult = true; }

private void btnCancel_Click(object sender, EventArgs e) { txtDisplay.Text = "0"; }

private void btnCancelAll_Click(object sender, EventArgs e) { txtDisplay.Text = "0"; dTotal = 0; cPhepTinh = ' '; } }

Đọc số nhỏ

90

Page 91: Tổng hợp Bài Tập MTLTTQ

public partial class frmReadNum : Form { public frmReadNum() { InitializeComponent(); }

// Bài này chỉ vừa làm xong chưa test nhiều nên chắc vẫn còn lỗi // tuy nhiên đây là ý tưởng thôi // mọi người dựa theo để làm hoàn thiện

private void btnRead_Click(object sender, EventArgs e) { lblDisplay.Text = ReadNum(txtInputNum.Text); }

string[] arrA = { "", "một", "hai", "ba", "bốn", "năm", "sáu", "bảy", "tám", "chín" }; string[] arrB = { "ngàn", "triệu", "tỷ" };

private string ReadNum(string strNum) { // hàm devide là chia chiều dài của chuỗi số với 3 // hàm ceiling là lấy số nguyên bé nhất lớn hơn số được lấy. ví dụ: ceiling của 3,2 là 4 // vì khi đọc số chúng ta đọc mỗi lần 3 số hàng trăm, hàng chục, hàng đơn vị int count = Convert.ToInt32(Math.Ceiling(decimal.Divide(strNum.Length, 3)));

string[] arr = new string[count]; string[] arr2 = new string[count];

int i = 0, j = 0; while (strNum.Length > 0) { // Ví dụ chuỗi 123456 // lấy chữ số 6 đưa vào mảng sẽ là 6

91

Page 92: Tổng hợp Bài Tập MTLTTQ

// sau đó loại chữ số 6 ra khỏi chuỗi, lúc này chuỗi sẽ thành 12345 // chữ số 6 được đưa vào mảng sẽ là 6 ở vị trí 0 trong mảng // tiếp tục lấy chữ số cuối cùng của mảng mới, lúc này là chữ số 5 // lúc này ở vị trí 0 trong mảng arr sẽ có giá trị là 56 // tiếp tục lặp lại bước trên giá trị của vị trí 0 trong mảng arr sẽ là 456 // mảng ban đầu sẽ còn lại 123 // tiếp tục lặp lại các bước trên // sau khi hoàn tất ta sẽ có mảng arr chứa hai giá trị là arr[0] = 456, arr[1] = 123

//========== Các bước chi tiết ============//

// Lấy chữ số ở vị trí cuối cùng của mảng arr[i] = strNum[strNum.Length - 1].ToString() + arr[i]; // bỏ chữ số ở vị trí cuối cùng (vừa lấy ở trên) ra khỏi chuỗi strNum = strNum.Remove(strNum.Length - 1, 1); j++; // Khi đã lấy đủ 3 chữ số thì cho mảng arr tăng lên thêm 1 index (i) // reset counter (j) về = 0; if (j == 3) { j = 0; i++; } }

// Sau khi chia chuỗi ký tự thành nhiều chuỗi nhỏ mỗi chuỗi có nhiều nhất là 3 chữ số // ta bắt đầu đọc lần lượt các chuỗi số đó

string rs = ""; for (int k = arr.Length - 1; k >= 0; k--) { // Nếu chuỗi chứa 3 giá trị 0 ==> không cần đọc if (arr[k] != "000") { rs += ReadThreeNum(arr[k]).Trim(); // ví dụ ta có chuỗi là 789456123 // thì mảng arr có 3 giá trị là 123, 456, 789 // khi ta đọc thì sẽ đọc 789 trước (đọc ngược mảng arr) // nếu k > 0 tức là không phải đọc chuỗi ký tự sau cùng // thì ta sẽ lấy ký tự ở vị trí (phần dư của k - 1 chia cho 3) trong mảng arrB // ví dụ là chuỗi trên, khi đọc chuỗi ở vị trí k là 2 thì ta sẽ có phần dư là (2 - 1) % 3 = 1 // ứng với giá trị là triệu // khi này ta sẽ có giá trị của rs sau khi gọi hàm ReadThreeNum(789) là bảy trăm tám mươi chín // ta thêm chữ 'triệu' vào sẽ được 'bảy trăm tám mươi chín triệu' // tương tự khi ta đọc tiếp chuỗi 456 // rs = bảy trăm tám mươi chín triệu bốn trăm năm mươi sáu // kiểm tra tiếp k, khi này k có giá trị là 1 // (1 - 1) % 3 = 0 vậy ứng với chữ 'ngàn' trong mảng arrB

92

Page 93: Tổng hợp Bài Tập MTLTTQ

// chuỗi còn lại là 123, sau khi gọi hàm ReadThreeNum thì ta được một trăm hai mươi ba // vì lúc này k = 0 nên chúng ta dừng ko kiểm tra tiếp // vậy chuỗi rs sẽ là bảy trăm tám mươi chín triệu bốn trăm năm mươi sáu ngàn một trăm hai mươi ba rs += (k > 0 ? " " + arrB[(k - 1) % 3] : ""); rs += "\r\n"; // \r có nghĩa là break line (ngắt dòng) \n có nghĩa là newline(xuống dòng) } } return rs.Trim(); }

private string ReadThreeNum(string strNum) { string rs = ""; int curnum = 0; bool flag = false;

// bắt đầu đọc số // kiểm tra nếu chuỗi đưa vào có 3 ký tự thì sẽ có hàng trăm // nên chúng ta sẽ đọc hàng trăm trước if (strNum.Length == 3) { // chuyển ký tự đầu tiên (hàng trăm) sang dạng số curnum = Convert.ToInt32(strNum[0].ToString()); // Nếu gặp trường hợp giá trị hàng trăm = 0 nhưng ở hàng chục hoặc hàng đơn vị khác 0 // thì chúng ta đọc thành không trăm // ví dụ 012 sẽ là không trăm mười hai // hoặc 001 sẽ là không trăm linh một if (strNum[0] == '0' && (strNum[1] != '0' || strNum[2] != '0')) rs += "không trăm "; else // nếu không phải là không trăm thì ta dựa vào mảng arrA để đọc giá trị của số đó và thêm chữ 'trăm' vào sau rs += arrA[curnum] + " trăm "; // loại chữ số đầu tiên ra khỏi chuỗi // ví dụ 123 ==> bỏ số 1 ra còn lại 23 strNum = strNum.Remove(0, 1); } // tương tự ta kiểm tra nếu chuỗi có 2 ký tự thì có hàng chục // ta bắt đầu đọc hàng chục if (strNum == "00") return rs;

if (strNum.Length == 2) { // chuyển ký tự đầu tiên (hàng chục) sang dạng số curnum = Convert.ToInt32(strNum[0].ToString()); // nếu giá trị là 0 thì nó sẽ là 'linh' // ví dụ 01 == linh một, 02 == linh 2

93

Page 94: Tổng hợp Bài Tập MTLTTQ

// nếu là 1 thì sẽ là mười, vì trong mảng arrA chúng ta mặc định giá trị ở vị trí 1 là chữ 'một' if (curnum == 0) rs += "linh "; else if (curnum == 1) rs += "mười "; else { // các trường hợp còn lại thì chúng ta dựa vào mảng arrA để đọc lên chữ số đó // bật cờ để dánh dấu là không phải 'linh' hoặc 'mười' // vì khi nếu là mười và giá trị của hàng đơn vị là 1 thì phải đọc là mười một // còn các trường hợp khác là mốt ví dụ: hai mươi mốt, ba mươi mốt flag = true; rs += arrA[curnum] + " mươi "; } // tương tự như trên la loại chữ số vừa đọc ra khỏi chuỗi strNum = strNum.Remove(0, 1); }

// nếu chuỗi có giá trị là 0 thì ko cần đọc tiếp if (strNum == "0") return rs;

if (strNum.Length == 1) { // chuyển ký tự đầu tiên (hàng đơn vị) sang dạng số curnum = Convert.ToInt32(strNum[0].ToString()); // nếu giá trị hàng đơn vị là 1 và có bật cờ thì chúng ta điền giá trị là 'mốt' vào if (curnum == 1 && flag) rs += "mốt"; else if (curnum == 5) // nếu giá trị là 5 thì sẽ là 'lăm'. ví dụ hai mươi lăm, mười lăm, v.v... rs += "lăm"; else rs += arrA[curnum]; // các trường hợp khác thì dựa vào mảng arrA để đọc lên } return rs.Trim(); } }

94

Page 95: Tổng hợp Bài Tập MTLTTQ

Ảnh di chuyển lên xuống

public partial class frmAnhDong : Form { public frmAnhDong() { InitializeComponent(); }

private void btnClose_Click(object sender, EventArgs e) { this.Close(); }

private bool isMoveDown = true;

private void frmAnhDong_Load(object sender, EventArgs e) { }

private void tmrMain_Tick(object sender, EventArgs e) { if (isMoveDown) { if (picMain.Height + picMain.Top < this.ClientSize.Height - 12) { picMain.Top += 1; return; } picMain.Top -= 1; isMoveDown = false; }

95

Page 96: Tổng hợp Bài Tập MTLTTQ

else { if (picMain.Top > 12) { picMain.Top -= 1; return; } picMain.Top += 1; isMoveDown = true; } } }

Text động

public partial class frmAnimatedText : Form { public frmAnimatedText() { InitializeComponent(); } int intCurrentGradientShift = 10; int intGradiantStep = 5; string text = "Trần Bách Thành "; string left = "", right = "";

private void frmAnimatedText_Load(object sender, EventArgs e) { }

private void tmrMain_Tick(object sender, EventArgs e) { Graphics grfx = CreateGraphics(); grfx.Clear(SystemColors.Control); Font font = new Font("Times New Roman", 30,

96

Page 97: Tổng hợp Bài Tập MTLTTQ

FontStyle.Bold, GraphicsUnit.Point); left = text.Substring(0, 1); right = text.Substring(1); text = right + left; SizeF sizfText = new SizeF(grfx.MeasureString(text, font));

PointF ptfTextStart = new PointF(Convert.ToSingle(ClientSize.Width - sizfText.Width) / 2, Convert.ToSingle(ClientSize.Height - sizfText.Height) / 2);

PointF ptfGradientStart = new PointF(0, 0); PointF ptfGradientEnd = new PointF(intCurrentGradientShift, 200);

LinearGradientBrush grBrush = new LinearGradientBrush(ptfGradientStart, ptfGradientEnd, Color.Blue, BackColor); grfx.DrawString(text, font, grBrush, ptfTextStart); grfx.Dispose(); intCurrentGradientShift += intGradiantStep;

if (intCurrentGradientShift == 500) { intGradiantStep = -5; } else if (intCurrentGradientShift == -50) { intGradiantStep = 5; } } }

Casino

public partial class frmRollNumber : Form { public frmRollNumber() { InitializeComponent();

97

Page 98: Tổng hợp Bài Tập MTLTTQ

}

private void btnRoll_Click(object sender, EventArgs e) { btnRoll.Enabled = false; tmrFirst.Interval = 10; tmrSecond.Interval = 10; tmrLast.Interval = 10; tmrFirst.Start(); tmrSecond.Start(); tmrLast.Start(); }

private void tmrFirst_Tick(object sender, EventArgs e) { if (tmrFirst.Interval > 100) { tmrFirst.Stop(); } else { tmrFirst.Interval += 6; Random ran = new Random(); lblFirst.Text = ran.Next(0, 10).ToString(); } }

private void tmrSecond_Tick(object sender, EventArgs e) { if (tmrSecond.Interval > 100) { tmrSecond.Stop(); } else { tmrSecond.Interval += 4; Random ran = new Random(); lblSecond.Text = ran.Next(0, 10).ToString(); } }

private void tmrLast_Tick(object sender, EventArgs e) { if (tmrLast.Interval > 100) { tmrLast.Stop(); btnRoll.Enabled = true; } else {

98

Page 99: Tổng hợp Bài Tập MTLTTQ

tmrLast.Interval += 2; Random ran = new Random(); lblLast.Text = ran.Next(0, 10).ToString(); } } }

List – Combo

public partial class frmListBox : Form { public frmListBox() { InitializeComponent(); }

private void frmListBox_Load(object sender, EventArgs e) { lstLeft.Items.AddRange(new string[] { "Bánh Bèo", "Bánh Cam", "Bánh Đậu Xanh", "Bánh Cốm", "Bánh Bao", "Bánh Kem", "Bánh Đa", "Bánh Xèo", "Bánh Khọt" }); cboFirst.Items.AddRange(new string[] { "Chè Mè Đen", "Chè Đậu Xanh", "Chè Chuối", "Chè Bưởi" }); cboFirst.SelectedIndex = 0; }

private void btncboTolst_Click(object sender, EventArgs e) { if (cboFirst.Items.Count == 0 || cboFirst.SelectedIndex == -1) return; int i = cboFirst.SelectedIndex; lstFromComboBox.Items.Add(cboFirst.Items[i]); cboFirst.Items.RemoveAt(i); if (cboFirst.Items.Count>0) cboFirst.SelectedIndex = 0; else cboFirst.Text = "";

99

Page 100: Tổng hợp Bài Tập MTLTTQ

}

private void btnLeftToRight_Click(object sender, EventArgs e) { if (lstLeft.SelectedItems.Count == 0) return; int i = lstLeft.SelectedIndex; lstRight.Items.Add(lstLeft.Items[i]); lstLeft.Items.RemoveAt(i); }

private void btnRightToLeft_Click(object sender, EventArgs e) { if (lstRight.SelectedItems.Count == 0) return; int i = lstRight.SelectedIndex; lstLeft.Items.Add(lstRight.Items[i]); lstRight.Items.RemoveAt(i); } }

List-List

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void bt_exit_Click(object sender, EventArgs e) { Close(); }

private void bt_motphai_Click(object sender, EventArgs e)

100

Page 101: Tổng hợp Bài Tập MTLTTQ

{ int n = lbox_Trai.SelectedItems.Count; if(n==0) { MessageBox.Show("Chon 1 cai di !"); } else { for(int i =0; i<n; i++) { lbox_phai.Items.Add(lbox_Trai.SelectedItem); lbox_Trai.Items.Remove(lbox_Trai.SelectedItem); } } }

private void Form1_Load(object sender, EventArgs e) { lbox_Load(); }

#region private void lbox_Load() { lbox_Trai.Items.Add("aN"); lbox_Trai.Items.Add("bN"); lbox_Trai.Items.Add("cN"); lbox_Trai.Items.Add("dN"); lbox_Trai.Items.Add("eN"); lbox_Trai.Items.Add("fN"); } #endregion

private void bt_hetphai_Click(object sender, EventArgs e) { int n = lbox_Trai.Items.Count;

lbox_Trai.SelectedIndex = 0;

for (int i = 0; i < n; i++) { try { lbox_phai.Items.Add(lbox_Trai.SelectedItem); lbox_Trai.Items.Remove(lbox_Trai.SelectedItem); lbox_Trai.SelectedIndex = 0; } catch

101

Page 102: Tổng hợp Bài Tập MTLTTQ

{ } } }

private void bt_mottrai_Click(object sender, EventArgs e) { int n = lbox_phai.SelectedItems.Count; if (n == 0) { MessageBox.Show("Chon 1 cai di !"); } else { for (int i = 0; i < n; i++) { lbox_Trai.Items.Add(lbox_phai.SelectedItem); lbox_phai.Items.Remove(lbox_phai.SelectedItem); } } }

private void bt_hettrai_Click(object sender, EventArgs e) { int n = lbox_phai.Items.Count;

lbox_phai.SelectedIndex = 0;

for (int i = 0; i < n; i++) { try { lbox_Trai.Items.Add(lbox_phai.SelectedItem); lbox_phai.Items.Remove(lbox_phai.SelectedItem); lbox_phai.SelectedIndex = 0; } catch { } } } }

102

Page 103: Tổng hợp Bài Tập MTLTTQ

Lấy số ngẫu nhiên

public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button_ngaunhien_trunglap_Click(object sender, EventArgs e) { Form2 frm = new Form2(); Random ran = new Random(); frm.ShowDialog(); for (int i = 0; i <= frm.so; i++) { listBox_so.Items.Add(ran.Next(int.Parse(textBox_tu.Text), int.Parse(textBox_den.Text))); } } private void button_thoat_Click(object sender, EventArgs e) { Close(); }

private void button_ngaunhien_kotrunglap_Click(object sender, EventArgs e) {// Sub SoNgauNhienKoLapLai(ByVal SoMax)// 'Tao mot Array de chua so// ReDim iSoArray(SoMax) As Integer// Dim So1 As Integer, So2 As Integer

103

Page 104: Tổng hợp Bài Tập MTLTTQ

// Randomize // For So1 = 1 To SoMax//TimSoMoi:// So2 = 1// 'Tim so// iSoArray(So1) = Int((SoMax - 1 + 1) * Rnd + 1) // 'neu So2=So1 moi vao so sanh, vi khi So2<So1 thi// 'nhung so trong Array den So1 da duoc so sach.// Do Until So2 = So1// 'neu so moi tim giong so trong array thi di tim so moi// If iSoArray(So1) = iSoArray(So2) Then GoTo TimSoMoi// So2 = So2 + 1// Loop// Next // 'TEST// Dim i As Integer// For i = 1 To SoMax// Debug.Print iSoArray(i)// Next//End Sub }

private void button_sxtang_Click(object sender, EventArgs e) { listBox_so.Sorted = true; }

private void Form1_Load(object sender, EventArgs e) { }

}

public partial class Form2 : Form { public Form2() { InitializeComponent();

104

Page 105: Tổng hợp Bài Tập MTLTTQ

}

private void button_cancel_Click(object sender, EventArgs e) { Close(); } public int so; private void button_ok_Click(object sender, EventArgs e) { so = int.Parse(textBox_so.Text); Close(); } }

Đồng hồ-chiec nón kỳ diệu

(Có dung timer)

public partial class Form4 : Form { public Form4() { InitializeComponent(); }

Graphics g; Pen pen = new Pen(Color.Black); SolidBrush brush = new SolidBrush(Color.Blue); int n; private void Form4_Load(object sender, EventArgs e) { g = this.CreateGraphics(); }

105

Page 106: Tổng hợp Bài Tập MTLTTQ

private void Form4_Paint(object sender, PaintEventArgs e) { g.FillEllipse(brush, 452, 188, 10, 10); g.FillEllipse(brush, 607, 185, 10, 10); g.FillEllipse(brush, 284, 185, 10, 10); g.FillEllipse(brush, 450, 357, 10, 10); g.FillEllipse(brush, 450, 27, 10, 10); g.FillEllipse(brush, 587, 278, 10, 10); g.FillEllipse(brush, 304, 278, 10, 10); g.FillEllipse(brush, 365, 337, 10, 10); g.FillEllipse(brush, 535, 337, 10, 10); g.FillEllipse(brush, 306, 106, 10, 10); g.FillEllipse(brush, 581, 106, 10, 10); g.FillEllipse(brush, 358, 53, 10, 10); g.FillEllipse(brush, 529, 53, 10, 10); }

private void Form4_MouseMove(object sender, MouseEventArgs e) { label_toado.Text="("+e.X.ToString() + "," + e.Y.ToString()+")"; }

private void button_quay_Click(object sender, EventArgs e) { Random rd = new Random(); n=rd.Next(0, 11); timer1.Start(); }

private void timer1_Tick(object sender, EventArgs e) { switch (n) { case 0: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 453, 30); n++; break; case 1: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 534, 57); n++; break; case 2: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 586, 111); n++; break; case 3: g.Clear(this.BackColor);

106

Page 107: Tổng hợp Bài Tập MTLTTQ

g.DrawLine(pen, 457, 191, 611, 190); n++; break; case 4: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 590, 281); n++; break; case 5: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 539, 341); n++; break; case 6: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 457, 359); n++; break; case 7: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 369, 341); n++; break; case 8: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 309, 281); n++; break; case 9: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 288, 188); n++; break; case 10: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 310, 109); n++; break; case 11: g.Clear(this.BackColor); g.DrawLine(pen, 457, 191, 362, 56); n=0; break; } } }

107

Page 108: Tổng hợp Bài Tập MTLTTQ

….test ko biet

public partial class Form5 : Form { public Form5() { InitializeComponent(); } Graphics g; Pen pen = new Pen(Color.Black); SolidBrush brush = new SolidBrush(Color.Blue); private void Form5_Load(object sender, EventArgs e) {

}

private void Form5_Paint(object sender, PaintEventArgs e) { g = this.CreateGraphics(); }

private void Form5_MouseMove(object sender, MouseEventArgs e) { label_toado.Text = "(" + e.X.ToString() + "," + e.Y.ToString() + ")"; } }

I. Console a. Định nghĩa mảng

108

Page 109: Tổng hợp Bài Tập MTLTTQ

/Mảng có dộ dài cố định phải chứa các đối tượng cùng loại. //Một mảng ArrayList có thể lưu trữ các đối tượng thuộc các loại khác nhau.

namespace Baitap3_Container___Muctieu2{ class Program { static void Main(string[] args) { ArrayList al = new ArrayList(); al.Add("Hello"); al.Add("15,16,17"); al.Add(new DateTime(2010, 5, 30)); Console.WriteLine (al[0]); Console.WriteLine(); Console.WriteLine(al[1]); Console.WriteLine(); Console.WriteLine(al[2]); Console.WriteLine(); Console.ReadLine();b. Containernamespace Baitap3_Container___Muctieu3{ class Program { static void Main(string[] args) { Queue/*<string>*/ q = new Queue/*<string>*/(); q.Enqueue("ABC"); q.Enqueue("123"); q.Enqueue(new Decimal(15.30)); q.Enqueue(new DateTime(2002,5,10)); Console.WriteLine(q.Dequeue()); Console.WriteLine(q.Dequeue()); Console.WriteLine(q.Dequeue()); Console.WriteLine(q.Dequeue()); Console.ReadLine(); /*foreach ( String a in q) Console.WriteLine(q.Dequeue()); Console.ReadLine();*/c. Định nghĩa Lớpnamespace Baitap3_DinhNghiaLop{ class Program { static void Main(string[] args) { A myA = new A(); A.Static_Member(); myA.Instance_Member(); Console.WriteLine();

109

Page 110: Tổng hợp Bài Tập MTLTTQ

B myB= new B(); myB.Instance_Member(); B.Static_Member(); Console.WriteLine(); Console.WriteLine("Bien X = " + myB.X); Console.Write(myB.Y); Console.WriteLine("Bien Y = " ); Console.WriteLine("Bien Z = " + myB.Z); Console.ReadLine(); } class A { static public void Static_Member()//Khai bao static thi tu ham main co the goi truc tiep phuong thuc { Console.WriteLine("Calling from Static Member"); } public void Instance_Member()//Khai bao public thi ham Main fai new lop A moi goi dc phuong thuc { Console.WriteLine("Calling from Instance Member"); } } class B : A //Lop B ke thua tu A nen co the goi cac phuong thuc trong class A { private int x; private int y; private int z; public int X { get { return x; } } public int Y { set { y=value;} } public int Z { get { return z; } set {z=value;}d. Tính giá trị Max của biến Bytenamespace TinhToan{ class Tinhtoan { static void Main() { byte b; b = byte.MaxValue; Console.WriteLine("Maximum Byte is " + b.ToString ());

110

Page 111: Tổng hợp Bài Tập MTLTTQ

Console.ReadLine(); }e. Xuất ra 1 chuỗi namespace XuatChuoi{ class Program { static void Main(string[] args) { int[] i = new int[5] { 40, 30, 60, 80, 100 }; int j; for (j = 0; j < 5; j++) { Console.WriteLine("Index = " + j.ToString() + " & Value = " + i[j].ToString()); Console.ReadLine(); } string[] str = new string[3] { "I", "LOVE", "U" }; int iStr; for (iStr = 0; iStr < 3; iStr++) { Console.WriteLine("Index = " + iStr.ToString() + " & Value = " + str[iStr]); Console.ReadLine(); } DateTime[] date = new DateTime[2] { new DateTime(2010, 3, 20,20,30,55), new DateTime(2009, 12, 30,9,40,59) }; int iDate; foreach (DateTime s in date) Console.WriteLine("Index = " + s.ToString() + " & Value = " + s.ToString()); Console.ReadLine();

Các phép toán số học & logic

namespace Bai1d{ public partial class Form1 : Form

111

Page 112: Tổng hợp Bài Tập MTLTTQ

{ private void button_thoat_Click(object sender, EventArgs e) { this.Close(); } private void button_and_Click(object sender, EventArgs e) { } private int dichchuyentrai() { int a = int.Parse(textBox_so1.Text); int b = int.Parse(textBox_so2.Text); int c = a << b; return c; } private int dichchuyenphai() { int a = int.Parse(textBox_so1.Text); int b = int.Parse(textBox_so2.Text); int c = a >> b; return c; } private void button_dichphai_Click(object sender, EventArgs e) { textBox_kq.Text = dichchuyentrai().ToString(); }

private void button_dichtrai_Click(object sender, EventArgs e) { textBox_kq.Text = dichchuyenphai().ToString(); }

I. Graphics – Buoi 3a. Toạ độ trên form

private void Form1_MouseMove(object sender, MouseEventArgs e)

112

Page 113: Tổng hợp Bài Tập MTLTTQ

{ x.Text = e.X.ToString(); y.Text = e.Y.ToString();

}

b. Điều khiển Control bằng tay

namespace DieukhienControlbangtay{ public partial class Form1 : Form { int x,x_old; int y,y_old; public Form1() { InitializeComponent(); }

private void button_up_Click(object sender, EventArgs e) { moveup(); }

#region Cac phuong thuc private void moveup() { x = pictureBox1.Location.X; y = pictureBox1.Location.Y; pictureBox1.Location = new System.Drawing.Point(x, y - 10); } private void movedown() { x = pictureBox1.Location.X; y = pictureBox1.Location.Y; pictureBox1.Location = new System.Drawing.Point(x, y + 10); }

113

Page 114: Tổng hợp Bài Tập MTLTTQ

private void moveleft() { x = pictureBox1.Location.X; y = pictureBox1.Location.Y; pictureBox1.Location = new System.Drawing.Point(x-10 ,y); } private void moveright() { x = pictureBox1.Location.X; y = pictureBox1.Location.Y; pictureBox1.Location = new System.Drawing.Point(x + 10, y); } private void reset() { x = pictureBox1.Location.X; y = pictureBox1.Location.Y; pictureBox1.Location = new System.Drawing.Point(x_old,y_old); } #endregion

private void button_down_Click(object sender, EventArgs e) { movedown(); }

private void button_left_Click(object sender, EventArgs e) { moveleft(); }

private void button_right_Click(object sender, EventArgs e) { moveright(); }

private void button_res_Click(object sender, EventArgs e) { reset(); }

private void checkBox_chay1chieu_CheckedChanged(object sender, EventArgs e) { if (checkBox_chay1chieu.Checked) timer_tg.Enabled = true; else timer_tg.Enabled = false;

}

private void Form1_Load(object sender, EventArgs e)

114

Page 115: Tổng hợp Bài Tập MTLTTQ

{ x_old = pictureBox1.Location.X; y_old = pictureBox1.Location.Y; }

private void timer_tg_Tick(object sender, EventArgs e) { x = pictureBox1.Location.X; y = pictureBox1.Location.Y; pictureBox1.Location = new System.Drawing.Point(x + 10, y); if (x >= this.Width) x = 0; pictureBox1.Location = new System.Drawing.Point(x + 10, y); }

c. Tự động chạy : (Chay 2chieu)namespace BTChuong3{ public partial class DienkhienControl_Chay2chieu : Form { bool thuan; public DienkhienControl_Chay2chieu() { InitializeComponent(); } private void timer_h_Tick(object sender, EventArgs e) { Point p = pictureBox1.Location; if (p.X >= (this.Width - pictureBox1.Width)) thuan = false; else if (p.X < 0) thuan = true; if (thuan) pictureBox1.Location = new Point(p.X + 5, p.Y); else pictureBox1.Location = new Point(p.X - 5, p.Y); }

private void DienkhienControl_Chay2chieu_Load(object sender, EventArgs e) { thuan = true; } }}

115

Page 116: Tổng hợp Bài Tập MTLTTQ

d. Hộp thoại thông dụng – Dialog

namespace Dialog{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } OpenFileDialog open;

private void btn1TapTin_Click(object sender, EventArgs e) { open = new OpenFileDialog(); open.InitialDirectory = "C:\\windows"; open.Title = "Chọn 1 tập tin"; open.Filter = "Các tập tin DLL|*.dll|Các tập tin INI và LOG|*.ini;*.log|Tất cả các tập tin|*.*"; open.ShowDialog(); txtThongBao.Text = open.FileName; }

private void btnNhieuTapTin_Click(object sender, EventArgs e) { open = new OpenFileDialog(); open.Multiselect = true;

open.InitialDirectory = "C:\\windows"; open.Title = "Chọn 1 tập tin"; open.Filter = "Các tập tin DLL|*.dll|Các tập tin INI và LOG|*.ini;*.log|Tất cả các tập tin|*.*"; open.ShowDialog(); string[] text= open.FileNames; txtThongBao.Text="Có tất cả "+text.Length.ToString()+" tập tin: \r\n"; foreach (string s in text) { txtThongBao.Text += s + "\r\n"; } }

116

Page 117: Tổng hợp Bài Tập MTLTTQ

FolderBrowserDialog folder; private void btn1ThuMuc_Click(object sender, EventArgs e) { folder = new FolderBrowserDialog(); folder.SelectedPath = "C:\\windows";

folder.ShowDialog(); txtThongBao.Text= folder.SelectedPath;

} ColorDialog color; private void btnMauNen_Click(object sender, EventArgs e) { color = new ColorDialog(); DialogResult rs=color.ShowDialog(); if (rs == DialogResult.OK) txtThongBao.BackColor = color.Color; }

private void btnMauChu_Click(object sender, EventArgs e) { color = new ColorDialog(); DialogResult rs = color.ShowDialog(); if (rs == DialogResult.OK) txtThongBao.ForeColor = color.Color; } FontDialog font; private void btnFont_Click(object sender, EventArgs e) { font = new FontDialog(); DialogResult rs = font.ShowDialog(); if (rs == DialogResult.OK) txtThongBao.Font = font.Font; }

private void btnReset_Click(object sender, EventArgs e) { txtThongBao.Text = "Ví dụ lập trình C# sử dụng các hộp thoại thông dụng của hệ điều hành Windows"; txtThongBao.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold); txtThongBao.BackColor = System.Drawing.Color.SandyBrown; txtThongBao.ForeColor = System.Drawing.Color.Blue; }

private void btnThoat_Click(object sender, EventArgs e) { timer2.Enabled = true; }

117

Page 118: Tổng hợp Bài Tập MTLTTQ

private void timer1_Tick(object sender, EventArgs e) { if (this.Opacity >= 1) timer1.Enabled = false; else this.Opacity += 0.01; }

private void Form1_FormClosing(object sender, FormClosingEventArgs e) { //e.Cancel = true; //if (this.Opacity <= 0) // Application.Exit(); //else // this.Opacity -= 0.01; }

private void timer2_Tick(object sender, EventArgs e) { if (this.Opacity <= 0) Application.Exit(); else this.Opacity -= 0.01; }

a. Vẽ Hình Chữ Nhật

namespace VeHinhChuNhat{ public partial class Form1 : Form { Graphics g; Pen Mypen = new Pen(Color.Blue, 1); Point p1 = new Point(); //Point p2 = new Point(); SolidBrush Mybrush = new SolidBrush(Color.Blue);

public Form1() {

118

Page 119: Tổng hợp Bài Tập MTLTTQ

InitializeComponent(); g = this.CreateGraphics(); }

private void Form1_MouseDoubleClick(object sender, MouseEventArgs e) { this.Refresh(); } private void button_chonmau_Click(object sender, EventArgs e) { if (colorDialog1.ShowDialog() == DialogResult.OK) { Mypen.Color = colorDialog1.Color; Mybrush.Color = colorDialog1.Color; } button_chonmau.BackColor = colorDialog1.Color;

}

private void Form1_MouseUp(object sender, MouseEventArgs e) { switch (e.Button) { case MouseButtons.Left: {

int a, b; a = e.X - p1.X; b = e.Y - p1.Y; if (a < 0 && b < 0) { a = a * (-1); b = b * (-1); g.DrawRectangle(Mypen, e.X, e.Y, a, b); } else if (a > 0 && b < 0) { b = b * (-1); g.DrawRectangle(Mypen,p1.X,e.Y, a, b); } else if (a < 0 && b >0) { a = a * (-1); g.DrawRectangle(Mypen, e.X, p1.Y, a, b); } else g.DrawRectangle(Mypen, p1.X, p1.Y, e.X - p1.X, e.Y - p1.Y); //g.Dispose();

119

Page 120: Tổng hợp Bài Tập MTLTTQ

//Mypen.Dispose(); } break; case MouseButtons.Right: { System.Drawing.SolidBrush mybrush1; mybrush1 = new System.Drawing.SolidBrush(System.Drawing.Color.Blue); // g.FillRectangle(mybrush1, p1.X, p1.Y, e.X - p1.X, e.Y - p1.Y); int a, b; a = e.X - p1.X; b = e.Y - p1.Y; if (a < 0 && b < 0) { a = a * (-1); b = b * (-1); g.FillRectangle(Mybrush, e.X, e.Y, a, b); } else if (a<0 && b>0) { a = a * (-1); g.FillRectangle(Mybrush, e.X, p1.Y, a, b); } else if (a > 0 && b < 0) { b = b * (-1); g.FillRectangle(Mybrush, p1.X, e.Y, a, b); } else g.FillRectangle(Mybrush, p1.X, p1.Y, e.X - p1.X, e.Y - p1.Y); } break; case MouseButtons.Middle: { g.DrawLine(Mypen, p1.X, p1.Y, e.X, e.Y); } break; } } private void Form1_MouseDown(object sender, MouseEventArgs e) { p1.X = e.X; p1.Y = e.Y; } private void button_xoamau_Click(object sender, EventArgs e) { this.Refresh(); }

120

Page 121: Tổng hợp Bài Tập MTLTTQ

b.Vẽ Hình Eclipse

121

Page 122: Tổng hợp Bài Tập MTLTTQ

122

Page 123: Tổng hợp Bài Tập MTLTTQ

c. Notepad

namespace NotePad{ public partial class NotePad : Form { public NotePad() { InitializeComponent(); } private void ClearFont() { timesNewRomanToolStripMenuItem.Checked = false; arialToolStripMenuItem.Checked = false; courierToolStripMenuItem.Checked = false; fontToolStripMenuItem.Checked = false; } private void timesNewRomanToolStripMenuItem_Click(object sender, EventArgs e) { ClearFont(); timesNewRomanToolStripMenuItem.Checked = true; if (richTextBoxNoiDung.SelectedText.ToString() != "") { //Thay đổi font tại vị trí được tô đen richTextBoxNoiDung.SelectionFont = new Font("Times New Roman", richTextBoxNoiDung.Font.Size, richTextBoxNoiDung.Font.Style); } else richTextBoxNoiDung.Font= new Font("Times New Roman", richTextBoxNoiDung.Font.Size, richTextBoxNoiDung.Font.Style); }

private void arialToolStripMenuItem_Click(object sender, EventArgs e) {

123

Page 124: Tổng hợp Bài Tập MTLTTQ

ClearFont(); arialToolStripMenuItem.Checked = true; if (richTextBoxNoiDung.SelectedText.ToString() != "") { //Thay đổi font tại vị trí được tô đen richTextBoxNoiDung.SelectionFont = new Font("Arial", richTextBoxNoiDung.Font.Size, richTextBoxNoiDung.Font.Style); } else richTextBoxNoiDung.Font = new Font("Arial", richTextBoxNoiDung.Font.Size, richTextBoxNoiDung.Font.Style); }

private void courierToolStripMenuItem_Click(object sender, EventArgs e) { ClearFont(); courierToolStripMenuItem.Checked = true; if (richTextBoxNoiDung.SelectedText.ToString() != "") { //Thay đổi font tại vị trí được tô đen richTextBoxNoiDung.SelectionFont = new Font("Courier", richTextBoxNoiDung.Font.Size, richTextBoxNoiDung.Font.Style); } else richTextBoxNoiDung.Font = new Font("Courier", richTextBoxNoiDung.Font.Size, richTextBoxNoiDung.Font.Style); } private void fontToolStripMenuItem_Click(object sender, EventArgs e) { ClearFont(); fontToolStripMenuItem.Checked = true; FontDialog f = new FontDialog(); DialogResult result=f.ShowDialog(); if (result == DialogResult.Cancel) return; if (richTextBoxNoiDung.SelectedText.ToString() != "") richTextBoxNoiDung.SelectionFont = f.Font; else richTextBoxNoiDung.Font = f.Font; }

private void ClearColor() { redToolStripMenuItem.Checked = false; greenToolStripMenuItem.Checked = false; blueToolStripMenuItem.Checked = false; colorToolStripMenuItem1.Checked = false; }

124

Page 125: Tổng hợp Bài Tập MTLTTQ

private void redToolStripMenuItem_Click(object sender, EventArgs e) { ClearColor(); redToolStripMenuItem.Checked = true; if (richTextBoxNoiDung.SelectedText.ToString() != "") { //Text được chọn có màu gì thì thay thế bằng màu Red richTextBoxNoiDung.SelectionColor = Color.Red; } else richTextBoxNoiDung.ForeColor = Color.Red; }

private void greenToolStripMenuItem_Click(object sender, EventArgs e) { ClearColor(); greenToolStripMenuItem.Checked = true; if (richTextBoxNoiDung.SelectedText.ToString() != "") { richTextBoxNoiDung.SelectionColor = Color.Green; } else richTextBoxNoiDung.ForeColor = Color.Green; }

private void blueToolStripMenuItem_Click(object sender, EventArgs e) { ClearColor(); blueToolStripMenuItem.Checked = true; if (richTextBoxNoiDung.SelectedText.ToString() != "") { richTextBoxNoiDung.SelectionColor = Color.Blue; } else richTextBoxNoiDung.ForeColor = Color.Blue; }

private void colorToolStripMenuItem1_Click(object sender, EventArgs e) { ClearColor(); colorToolStripMenuItem1.Checked = true; ColorDialog c = new ColorDialog(); DialogResult result = c.ShowDialog(); if (result == DialogResult.Cancel) return; if (richTextBoxNoiDung.SelectedText.ToString() != "") richTextBoxNoiDung.SelectionColor = c.Color; else richTextBoxNoiDung.ForeColor = c.Color; }

125

Page 126: Tổng hợp Bài Tập MTLTTQ

private void undoToolStripMenuItem_Click(object sender, EventArgs e) { richTextBoxNoiDung.Undo(); }

private void cutToolStripMenuItem_Click(object sender, EventArgs e) { richTextBoxNoiDung.Cut(); }

private void copyToolStripMenuItem_Click(object sender, EventArgs e) { richTextBoxNoiDung.Copy(); }

private void pasteToolStripMenuItem_Click(object sender, EventArgs e) { richTextBoxNoiDung.Paste(); }

private void selectAllToolStripMenuItem_Click(object sender, EventArgs e) { richTextBoxNoiDung.SelectAll(); }

private void timeDateToolStripMenuItem_Click(object sender, EventArgs e) { richTextBoxNoiDung.Text = DateTime.Now.ToString(); }

About a; private void aToolStripMenuItem_Click(object sender, EventArgs e) { a = new About(); a.Show(); timer1.Enabled=true; }

private void timer1_Tick(object sender, EventArgs e) { a.Close(); timer1.Dispose(); } private void openToolStripMenuItem_Click(object sender, EventArgs e) { openToolStripMenuItem.Checked = true; saveToolStripMenuItem.Checked = false; try {

126

Page 127: Tổng hợp Bài Tập MTLTTQ

OpenFileDialog open = new OpenFileDialog(); open.InitialDirectory = @"C:\"; open.Title = "Chon 1 file text"; open.Filter = "Text File|*.txt|Rich Text Format|*.rtf|All Word Documents|*.doc"; open.FilterIndex = 1; if (open.ShowDialog() == DialogResult.Cancel) richTextBoxNoiDung.Text = ""; else { StreamReader sr = new StreamReader(open.FileName, Encoding.UTF8); richTextBoxNoiDung.Text = sr.ReadToEnd(); sr.Close(); lblStatus.Text = open.FileName; } } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void saveToolStripMenuItem_Click(object sender, EventArgs e) { openToolStripMenuItem.Checked = true; saveToolStripMenuItem.Checked = false;

SaveFileDialog save = new SaveFileDialog(); save.Title = "Luu file lai"; save.Filter = "Text File|*.txt|Rich Text Format|*.rtf|Document|*.doc|Tất cả các file|*.*"; save.FilterIndex = 1; save.OverwritePrompt = true; if (save.ShowDialog() != DialogResult.Cancel) { StreamWriter sw = new StreamWriter(save.FileName, false, Encoding.UTF8); foreach (string line in richTextBoxNoiDung.Lines) sw.WriteLine(line); sw.Close(); lblStatus.Text = save.FileName; } } private void exitToolStripMenuItem1_Click(object sender, EventArgs e) { Application.Exit(); } private void toolStripButton3_Click(object sender, EventArgs e) { richTextBoxNoiDung.Text = ""; richTextBoxNoiDung.Focus(); }

127

Page 128: Tổng hợp Bài Tập MTLTTQ

private void NotePad_Load(object sender, EventArgs e) { richTextBoxNoiDung.Focus(); }

private void InDam_Click(object sender, EventArgs e) { richTextBoxNoiDung.SelectionFont = new Font(richTextBoxNoiDung.SelectionFont.Name, richTextBoxNoiDung.SelectionFont.Size, richTextBoxNoiDung.SelectionFont.Style ^ FontStyle.Bold); }

private void InNghieng_Click(object sender, EventArgs e) { richTextBoxNoiDung.SelectionFont = new Font(richTextBoxNoiDung.SelectionFont.Name, richTextBoxNoiDung.SelectionFont.Size, richTextBoxNoiDung.SelectionFont.Style ^ FontStyle.Italic); }

private void GachDuoi_Click(object sender, EventArgs e) { richTextBoxNoiDung.SelectionFont = new Font(richTextBoxNoiDung.SelectionFont.Name, richTextBoxNoiDung.SelectionFont.Size, richTextBoxNoiDung.SelectionFont.Style ^ FontStyle.Underline); }

private void pagesetup_Click(object sender, EventArgs e) { pageSetupDialog.Document = printDocument; pageSetupDialog.PageSettings = printDocument.DefaultPageSettings;

pageSetupDialog.AllowMargins = true; pageSetupDialog.AllowOrientation = true; pageSetupDialog.AllowPaper = true; pageSetupDialog.AllowPrinter = true;

pageSetupDialog.ShowNetwork = true; pageSetupDialog.ShowHelp = true; pageSetupDialog.EnableMetric = false;

if (pageSetupDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) printDocument.DefaultPageSettings = pageSetupDialog.PageSettings; }

private void print_Click(object sender, EventArgs e) { printDialog.Document = printDocument; if (printDialog.ShowDialog() == DialogResult.OK) {

128

Page 129: Tổng hợp Bài Tập MTLTTQ

printDocument.Print(); } }

d. MenuStrip

129

Page 130: Tổng hợp Bài Tập MTLTTQ

namespace BaiThiMau{ public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void aboutUsToolStripMenuItem_Click(object sender, EventArgs e) { AboutBox1 aboutbox = new AboutBox1(); aboutbox.MdiParent = this; aboutbox.Show();

}

private void tôMàuTrắngChoMenuFileToolStripMenuItem_Click(object sender, EventArgs e) { //menuStrip1.Font menuStrip1.BackColor = Color.White; }

130

Page 131: Tổng hợp Bài Tập MTLTTQ

private void tôMàuVàngChoMenuFileToolStripMenuItem_Click(object sender, EventArgs e) { menuStrip1.BackColor = Color.Yellow; }

private void tôMàuĐỏChoMenuFileToolStripMenuItem_Click(object sender, EventArgs e) { menuStrip1.BackColor = Color.Red; }

private void vẽLineToolStripMenuItem_Click(object sender, EventArgs e) { VeLine.Form1 frm1 = new VeLine.Form1(); frm1.MdiParent = this; frm1.Show(); }

private void exitToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit(); }

e. ListBoxMultiSelect

private void LapTrinh_ListBox_Load(object sender, EventArgs e) { for (int i = 0; i < 20; i++) { listBox1.Items.Add(i); } label1.Text = listBox1.Items.Count.ToString() + " phần tử";

131

Page 132: Tổng hợp Bài Tập MTLTTQ

label2.Text = listBox2.Items.Count.ToString() + " phần tử"; }private void btn_chontatca_Click(object sender, EventArgs e) { for (int i = 0; i < listBox1.Items.Count; i++) listBox1.SetSelected(i, true); }private void btn_chonchiso_Click(object sender, EventArgs e) { try { listBox1.SelectedIndex = Convert.ToInt16(txt_ChonLaiChiSo.Text); } catch { MessageBox.Show("Nhập số sai", "Báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error); } }private void btn_bochon_Click(object sender, EventArgs e) { for (int i = 0; i < listBox1.Items.Count; i++) listBox1.SetSelected(i, false); }private void btn_bochochiso_Click(object sender, EventArgs e) { try { listBox1.SetSelected(Convert.ToInt16(txt_BoChonTaiChiSo.Text), false); } catch { MessageBox.Show("Nhập số sai", "Báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error); } }private void btn_xoatatca_dachon_Click(object sender, EventArgs e) { while (listBox1.SelectedItems.Count > 0) { listBox1.Items.Remove(listBox1.SelectedItem); } label1.Text = listBox1.Items.Count.ToString() + " phần tử"; }private void btn_xoataichiso_Click(object sender, EventArgs e) { try { listBox1.Items.RemoveAt(Convert.ToInt16(txt_XoaTaiChiSo.Text)); label1.Text = listBox1.Items.Count.ToString();

132

Page 133: Tổng hợp Bài Tập MTLTTQ

} catch { MessageBox.Show("Nhập số sai", "Báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error); } }private void btn_chepqua_Click(object sender, EventArgs e) { foreach (object ob in listBox1.SelectedItems) { listBox2.Items.Add(ob.ToString()); } label2.Text = listBox2.Items.Count.ToString() + " phần tử"; }private void btn_chuyenqua_Click(object sender, EventArgs e) { while (listBox1.SelectedItems.Count > 0) { listBox2.Items.Add(listBox1.SelectedItem); listBox1.Items.Remove(listBox1.SelectedItem); } label1.Text = listBox1.Items.Count.ToString() + " phần tử"; label2.Text = listBox2.Items.Count.ToString() + " phần tử"; } private void btn_themvaocuoi_Click(object sender, EventArgs e) { listBox2.Items.Add(txt_ChuoiThemVao.Text); label2.Text = listBox2.Items.Count.ToString() + " phần tử"; }private void btn_themvaotai_Click(object sender, EventArgs e) { try { listBox2.Items.Insert(Convert.ToInt16(txt_ThemVaoTai.Text), txt_ChuoiThemVao.Text); label2.Text = listBox1.Items.Count.ToString() + " phần tử"; } catch { MessageBox.Show("Nhập số sai", "Báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error); } }private void btn_Clear_Click(object sender, EventArgs e) { listBox2.Items.Clear(); label2.Text = listBox2.Items.Count.ToString() + " phần tử"; } private void label1_Click(object sender, EventArgs e) {

133

Page 134: Tổng hợp Bài Tập MTLTTQ

label1.Text = listBox1.Items.Count.ToString() + " phần tử"; }private void btn_Reset_Click(object sender, EventArgs e) { listBox1.Items.Clear(); for (int i = 0; i < 20; i++) { listBox1.Items.Add(i); } label1.Text = listBox1.Items.Count.ToString() + " phần tử"; } private void checkBox1_CheckedChanged(object sender, EventArgs e) { listBox2.Sorted = checkBox1.Checked; } }}

e.Xem Hình Slideshow

namespace XemhinhSlideShow{ public partial class Form1 : Form { public Form1() { InitializeComponent(); }

//string ThuMuc; private void button1_Click(object sender, EventArgs e) { OpenFileDialog of =new OpenFileDialog(); of.InitialDirectory = @"C:\WINDOWS\Web\Wallpaper"; of.Multiselect = true;

134

Page 135: Tổng hợp Bài Tập MTLTTQ

of.Filter = "Các tập tin JPG, JPEG, BMP, WMF|*.JPG;*.JPEG;*.BMP;*.WMF|Tất cả các tập tin|*.*"; of.ShowDialog(); string[] CacFile = of.FileNames; for(int i=0;i<CacFile.Length;i++) { listBox1.Items.Add(CacFile[i]); } private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { try { label2.Text = listBox1.SelectedItem.ToString(); pictureBox1.Image = Image.FromFile(label2.Text); } catch { } }

private void button2_Click(object sender, EventArgs e) {

timer1.Enabled = false; button3.Text = "Chạy\r\ntự động"; listBox1.Items.Clear(); pictureBox1.Image = null; label2.Text = ""; timer1.Interval = 500; trackBar1.Value = 500; } private void timer1_Tick(object sender, EventArgs e) { if (listBox1.SelectedIndex < listBox1.Items.Count-1) listBox1.SelectedIndex += 1; else listBox1.SelectedIndex = 0; } private void button3_Click(object sender, EventArgs e) { if (listBox1.Items.Count > 0) { if (timer1.Enabled == false) { timer1.Enabled = true; button3.Text = "Dừng"; } else { timer1.Enabled = false; button3.Text = "Chạy\r\ntự động"; }

135

Page 136: Tổng hợp Bài Tập MTLTTQ

} } private void trackBar1_Scroll(object sender, EventArgs e) { timer1.Interval = trackBar1.Value; } private void button4_Click(object sender, EventArgs e) { if (button4.Text == "Full screen\r\n(Escape)") { this.FormBorderStyle = FormBorderStyle.None; this.TopMost = true; this.WindowState = FormWindowState.Maximized; pictureBox1.Dock = DockStyle.Fill; button4.Text = "Normal view\r\n(Escape)"; } else { this.FormBorderStyle = FormBorderStyle.Sizable; this.TopMost = false; this.WindowState = FormWindowState.Normal; pictureBox1.Dock = DockStyle.None; button4.Text = "Full screen\r\n(Escape)"; } } private void pictureBox1_DoubleClick(object sender, EventArgs e) { button4.PerformClick(); }

Vẽ Tổng Hợp Elip – Chữ nhật

public partial class FrmTongHop : Form {

136

Page 137: Tổng hợp Bài Tập MTLTTQ

private int X, Y; public FrmTongHop() { InitializeComponent(); }

private void pnlPaint_MouseClick(object sender, MouseEventArgs e) { }

private void pnlPaint_MouseUp(object sender, MouseEventArgs e) { lblToado2.Text = e.X.ToString() + "," + e.Y.ToString(); Graphics grp = pnlPaint.CreateGraphics(); Brush brs=new SolidBrush(txtColor.BackColor); if (radElip.Checked) { if (chkVedac.Checked) { grp.FillEllipse(brs, X, Y ,e.X-X, e.Y-Y); } else { grp.DrawEllipse(new Pen(txtColor.BackColor), X, Y,e.X-X, e.Y-Y); } } else if (radRectangle.Checked) { if (chkVedac.Checked) { grp.FillRectangle(brs, X, Y, e.X-X, e.Y-Y); } else { grp.DrawRectangle(new Pen(txtColor.BackColor), X, Y, e.X-X, e.Y-Y); } } grp.Dispose(); }

private void pnlPaint_MouseDown(object sender, MouseEventArgs e) { lblToado1.Text = e.X.ToString() + "," + e.Y.ToString(); X = e.X; Y = e.Y; }

private void btnSelectColor_Click(object sender, EventArgs e)

137

Page 138: Tổng hợp Bài Tập MTLTTQ

{ ColorDialog cdg = new ColorDialog(); if (cdg.ShowDialog() == DialogResult.OK) { txtColor.BackColor = cdg.Color; } }

private void btnXoa_Click(object sender, EventArgs e) { Graphics grp = pnlPaint.CreateGraphics(); grp.Clear(DefaultBackColor); } }

Vẽ chọn tọa độ

public partial class frmBai1T6 : Form { public frmBai1T6() { InitializeComponent(); }

private void frmBai1T6_Load(object sender, EventArgs e) {

}

private void btnLine_Click(object sender, EventArgs e) { if (txtX1.Text.ToString() == "" || txtX2.Text.ToString() == "" || txtY1.Text.ToString() == "" || txtY2.Text.ToString() == "") return; System.Drawing.Graphics g = this.CreateGraphics(); Pen p=new Pen(Color.Black);

138

Page 139: Tổng hợp Bài Tập MTLTTQ

g.DrawLine(p, int.Parse(txtX1.Text.ToString()), int.Parse(txtY1.Text.ToString()), int.Parse(txtX2.Text.ToString()), int.Parse(txtY2.Text.ToString())); g.Dispose(); p.Dispose(); }

private void btnRecgrand_Click(object sender, EventArgs e) { if (txtX1.Text.ToString() == "" || txtX2.Text.ToString() == "" || txtY1.Text.ToString() == "" || txtY2.Text.ToString() == "") return; System.Drawing.Graphics grp = CreateGraphics(); Brush sbr = new SolidBrush(Color.Red); grp.FillRectangle(sbr, int.Parse(txtX1.Text.ToString()), int.Parse(txtY1.Text.ToString()), int.Parse(txtX2.Text.ToString()), int.Parse(txtY2.Text.ToString())); grp.Dispose(); }

private void btnRecgrandRong_Click(object sender, EventArgs e) { if (txtX1.Text.ToString() == "" || txtX2.Text.ToString() == "" || txtY1.Text.ToString() == "" || txtY2.Text.ToString() == "") return; System.Drawing.Graphics grp = CreateGraphics(); grp.DrawRectangle(new Pen(Color.Black), int.Parse(txtX1.Text.ToString()), int.Parse(txtY1.Text.ToString()), int.Parse(txtX2.Text.ToString()), int.Parse(txtY2.Text.ToString())); grp.Dispose(); }

private void btnXoa_Click(object sender, EventArgs e) { System.Drawing.Graphics grp = CreateGraphics(); grp.Clear(DefaultBackColor); } }

139

Page 140: Tổng hợp Bài Tập MTLTTQ

KHoãng cách các điểm

public partial class FrmKhoangCach : Form

{

private string[,] DiaDiem ={ { "100 Km", "500 Km","600 Km","150 Km","..."},{"Hà Nội","Vũng Tàu","Nha Trang","Đồng Nai","..."}};

public FrmKhoangCach()

{

InitializeComponent();

}

private void FrmKhoangCach_Load(object sender, EventArgs e)

{

LoadCboTP();

}

private void LoadCboTP()

{

DataTable dtemp=new DataTable();

dtemp.Columns.Add("ID",typeof( string));

dtemp.Columns.Add("Name", typeof(string));

for (int i = 0; i < (DiaDiem.Length)/2; i++)

{

140

Page 141: Tổng hợp Bài Tập MTLTTQ

dtemp.Rows.Add(DiaDiem[0,i].ToString(),DiaDiem[1,i].ToString());

}

cboThanhPho.DisplayMember = "Name";

cboThanhPho.ValueMember = "ID";

cboThanhPho.DataSource = dtemp;

}

private void cboThanhPho_SelectedIndexChanged(object sender, EventArgs e)

{

lblKhoangCach.Text = "Khoảng cách từ " + lblTpHCM.Text + " đến " + cboThanhPho.Text.ToString() + " là " + cboThanhPho.SelectedValue.ToString();

}

}

}

Ví dụ khác về khoảng cách

public partial class frmKhoangCach : Form

{

string[] arrLocation = new string[] { "Cần Thơ", "Sài Gòn", "Đà Nẵng", "Huế", "Hà Nội", "Hải Phòng", "Cà Mau" };

int[] arrDistant = new int[] { 0, 160, 1000, 1500, 1800, 1700, 200 };

public frmKhoangCach()

{

InitializeComponent();

}

private void frmKhoangCach_Load(object sender, EventArgs e)

{

for (int i = 0; i < arrLocation.Length; i++)

141

Page 142: Tổng hợp Bài Tập MTLTTQ

{

cboTu.Items.Add(arrLocation[i]);

cboDen.Items.Add(arrLocation[i]);

}

cboTu.SelectedIndex = 0;

cboDen.SelectedIndex = 0;

lblKQ.Text = "Khoảng cách từ " + cboTu.Text + " đến " + cboDen.Text + " là : 0 km";

}

//private int Tinh() //Hàm tính khoảng cách

//{

// //int tu = cboTu.SelectedInde

// //int den = cboDen.SelectedIndex + 1; //cộng 1 thì kq ko đúng, else thì lỗi chỗ này

// //int kc = 0;

// //kc = Math.Abs(arrDistant[tu] - arrDistant[den]);

// //return kc;

//}

private void btnTinh_Click(object sender, EventArgs e)

{

int tu = cboTu.SelectedIndex;

int den = cboDen.SelectedIndex;

int kc = 0;

kc = Math.Abs(arrDistant[tu] - arrDistant[den]);

lblKQ.Text = "Khoảng cách từ " + cboTu.Text + " đến " + cboDen.Text + " là : " + kc + " km";

}

}

142

Page 143: Tổng hợp Bài Tập MTLTTQ

Chọn Combobox ra list

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void Form1_Load(object sender, EventArgs e) { cobSV.Items.Add("Chiến"); cobSV.Items.Add("Hiếu"); cobSV.Items.Add("Minh"); cobSV.Items.Add("Linh"); }

private void btnthoat_Click(object sender, EventArgs e) { this.Close(); }

private void btnchon_Click(object sender, EventArgs e) { lstsv.Items.Add(cobSV.SelectedItem); cobSV.Items.Remove(cobSV.SelectedItem); } }

143

Page 144: Tổng hợp Bài Tập MTLTTQ

Quay số đơn giản

public partial class Form1 : Form { int dem = 0; public Form1() { InitializeComponent(); }

private void btn_quay_Click(object sender, EventArgs e) { Random rnd = new Random(); txt_so1.Text = rnd.Next(0,9).ToString(); txt_so2.Text = rnd.Next(0,9).ToString(); txt_so3.Text = rnd.Next(0,9).ToString(); dem++; lbl_solan.Text = dem.ToString()+" LẦN"; } }

Chon trong list144

Page 145: Tổng hợp Bài Tập MTLTTQ

public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void btnthoat_Click(object sender, EventArgs e) { this.Close(); }

private void lstds_SelectedIndexChanged(object sender, EventArgs e) { lblchon.Text = lstds.Text; } }

Mãng và giá tri nhập

public partial class Form1 : Form { public Form1() {

145

Page 146: Tổng hợp Bài Tập MTLTTQ

InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { string s=""; s = textBox_nhapso.Text.ToString();

{ { //textBox_nhapso.Text.Replace("\r\n "," "); listBox1.Items.Add(textBox_nhapso.Text); textBox_nhapso.Clear(); } } }

private void button_themnhieupt_Click(object sender, EventArgs e) { string s = ""; listBox1.Items.Clear(); s = textBox_nhapso.Text.ToString();

{ s = textBox_nhapso.Text.ToString(); string tmp = ""; int begin = 0; int dem = 0; for (int i = 0; i < s.Length; i++ ) if (s[i].ToString() == " ") { tmp = s.Substring(begin, dem); listBox1.Items.Add(tmp); dem = 0; begin = i+1; } else { dem++; } tmp = s.Substring(begin, dem); listBox1.Items.Add(tmp); } } private void button_xoalist_Click(object sender, EventArgs e) {

146

Page 147: Tổng hợp Bài Tập MTLTTQ

listBox1.Items.Clear(); }

private void button_chenpt_Click(object sender, EventArgs e) { string s = ""; s = textBox_nhapso.Text.ToString(); { listBox1.Items.Add(textBox_nhapso.Text); textBox_nhapso.Clear(); { for(int i=0;i<listBox1.Items.Count;i++) for (int j = i + 1; j < listBox1.Items.Count; j++) { int tmpi = int.Parse(listBox1.Items[i].ToString()); int tmpj = int.Parse(listBox1.Items[j].ToString()); if (tmpi > tmpj) { listBox1.Items[i] = tmpj; listBox1.Items[j] = tmpi; }

}

} } }

private void button_tangdan_Click(object sender, EventArgs e) { string s = ""; s = textBox_nhapso.Text.ToString(); { for(int i=0;i<listBox1.Items.Count;i++) for (int j = i + 1; j < listBox1.Items.Count; j++) { int tmpi = int.Parse(listBox1.Items[i].ToString()); int tmpj = int.Parse(listBox1.Items[j].ToString()); if (tmpi > tmpj) { listBox1.Items[i] = tmpj; listBox1.Items[j] = tmpi; } }

}

}

147

Page 148: Tổng hợp Bài Tập MTLTTQ

private void button_giamdan_Click(object sender, EventArgs e) { string s = ""; s = textBox_nhapso.Text.ToString(); { for(int i=0;i<listBox1.Items.Count;i++) for (int j = i + 1; j < listBox1.Items.Count; j++) { int tmpi = int.Parse(listBox1.Items[i].ToString()); int tmpj = int.Parse(listBox1.Items[j].ToString()); if (tmpi < tmpj) listBox1.Items[i] = tmpj; listBox1.Items[j] = tmpi;

} } } }

Mãng

public partial class frmArray_1 : Form { public frmArray_1() { InitializeComponent(); }

private void btnKQ_Click(object sender, EventArgs e) { int a = int.Parse(txtSoPtu.Text.Trim()); string b = mang(a); txtKQ.Text = b.Substring(0, b.Length - 1); } private string mang(int sopt)

148

Page 149: Tổng hợp Bài Tập MTLTTQ

{ string kq = ""; int[] mang = new int[sopt]; for (int i = 0; i < mang.Length; i++) { kq += Convert.ToString(i) + ";"; } return kq; } }

Cộng 3 phần từ trong mảng

public partial class frmArray_2 : Form { int[] mang; int so_nguyen = 0; object[] obj = new object[] { "Quy", 123, 1 }; public frmArray_2() { InitializeComponent(); }

private void frmArray_2_Load(object sender, EventArgs e) { //mang = new int[3] { int.Parse(txtPtu1.Text), int.Parse(txtPtu2.Text), int.Parse(txtPtu3.Text) }; //txtPtu1.Text = mang[0].ToString(); //txtPtu2.Text = mang[1].ToString(); //txtPtu3.Text = mang[2].ToString(); }

private void btnClose_Click(object sender, EventArgs e) { this.Close(); }

149

Page 150: Tổng hợp Bài Tập MTLTTQ

private void btnCong_Click(object sender, EventArgs e) { //int so1, so2, so3 = 0; //so1 = int.Parse(txtPtu1.Text.Trim()); //so2 = int.Parse(txtPtu2.Text.Trim()); //so3 = int.Parse(txtPtu3.Text.Trim()); if (txtPtu1.Text.Trim() != "" && txtPtu2.Text.Trim() != "" && txtPtu3.Text.Trim() != "") { mang = new int[3] { int.Parse(txtPtu1.Text), int.Parse(txtPtu2.Text), int.Parse(txtPtu3.Text) }; //mang = new int[3] { so1, so2, so3 }; txtKQ.Text = Convert.ToString(mang[0] + mang[1] + mang[2]); } else { if (txtPtu1.Text.Trim() == "") { MessageBox.Show("Chưa nhập số phần tử thứ 1", "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); txtPtu1.Focus(); } else if (txtPtu2.Text.Trim() == "") { MessageBox.Show("Chưa nhập số phần tử thứ 2", "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); txtPtu2.Focus(); } else if (txtPtu3.Text.Trim() == "") { MessageBox.Show("Chưa nhập số phần tử thứ 3", "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); txtPtu3.Focus(); } } } }

Vidu ve Select

150

Page 151: Tổng hợp Bài Tập MTLTTQ

public partial class frmComboBox : Form { public frmComboBox() { InitializeComponent(); }

private void btnTiep_Click(object sender, EventArgs e) { txtKetqua.Clear(); cboTinhThanh.Focus(); }

private void frmComboBox_Load(object sender, EventArgs e) { cboTinhThanh.SelectedIndex = 0; txtKetqua.Text = cboTinhThanh.Text; }

private void btnThoat_Click(object sender, EventArgs e) { this.Close(); }

private void cboTinhThanh_SelectedIndexChanged(object sender, EventArgs e) { txtKetqua.Text = cboTinhThanh.Text; }

private void btnSum_Click(object sender, EventArgs e)151

Page 152: Tổng hợp Bài Tập MTLTTQ

{ //Khai báo & khởi tạo đối tượng lớp SUM Classes.clsSum cls = new CONTROLS.Classes.clsSum(); //Gán giá trị cho Filed cls.i = 15; cls.j = 20; //Lấy giá trị của Field MessageBox.Show("Tổng của " + cls.i.ToString() + " và " + cls.j.ToString() + " là " + cls.SUM().ToString()); }

private void btnTyLe_Click(object sender, EventArgs e) { Classes.clsTong cls = new CONTROLS.Classes.clsTong(); cls.qty = 20; cls.price = 300;

MessageBox.Show("Tổng giá trị là " + Convert.ToString(cls.Tong()) + ". Và tỷ lệ là " + cls.rate.ToString()); }

private void btnTongProperty_Click(object sender, EventArgs e) { Classes.clsProperty clsP = new CONTROLS.Classes.clsProperty(); clsP.i = 15; clsP.j = 45; MessageBox.Show("Tổng của " + clsP.i.ToString() + " + " + clsP.j.ToString() + " = " + clsP.tong().ToString()); }

private void btnShowListView_Click(object sender, EventArgs e) { Classes.clsPropertyReadOnly clsPO = new CONTROLS.Classes.clsPropertyReadOnly(); Classes.clsWriteOnly clsWO = new CONTROLS.Classes.clsWriteOnly(); clsWO.PathValue = @"E:\DH_OPEN\C_SHARP"; clsPO.Path = @"E:\DH_OPEN\C_SHARP\Tai_Lieu_C#"; this.lv.View = View.Details; this.lv.Columns.Add("No.", 40); this.lv.Columns.Add("File Name", 400); //clsPO.Show(this.lv); clsWO.Show(this.lv); }

private void btnOk_Click(object sender, EventArgs e) { //Classes.clsInfomation clsIF = new CONTROLS.Classes.clsInfomation(); //clsIF.Name = txtName.Text.Trim(); //clsIF.Address = txtAddress.Text.Trim(); //clsIF.Age = Convert.ToInt32(txtAge.Text.Trim());

152

Page 153: Tổng hợp Bài Tập MTLTTQ

//MessageBox.Show("Tên: " + clsIF.Name + ", " + clsIF.Age.ToString() + " tuổi. Địa chỉ: " + clsIF.Address); Classes.clsInfomation1.Name = txtName.Text.Trim(); Classes.clsInfomation1.Address = txtAddress.Text.Trim(); Classes.clsInfomation1.Age = Convert.ToInt32(txtAge.Text.Trim()); MessageBox.Show("Tên: " + Classes.clsInfomation1.Name + ", " + Classes.clsInfomation1.Age.ToString() + " tuổi. Địa chỉ: " + Classes.clsInfomation1.Address); } }

Di chuyen xuc xac

public partial class frmDkControl : Form { public frmDkControl() { InitializeComponent(); }

private void frmDkControl_Load(object sender, EventArgs e) {

}

private void btnTren_Click(object sender, EventArgs e) { khung.Top = khung.Location.Y - 5; }

private void btnDuoi_Click(object sender, EventArgs e) { khung.Top = khung.Location.Y + 5; }

153

Page 154: Tổng hợp Bài Tập MTLTTQ

private void btnTrai_Click(object sender, EventArgs e) { khung.Left = khung.Location.X - 5; }

private void btnPhai_Click(object sender, EventArgs e) { khung.Left = khung.Location.X + 5; } }

Đọc 2 số

public partial class frmDoc_2_So : Form { public frmDoc_2_So() { InitializeComponent(); }

private void frmDoc_2_So_Load(object sender, EventArgs e) {

}

private void btnDoc_Click(object sender, EventArgs e) { int n = int.Parse(txtSo.Text.Trim()); //lblKQ.Text = Doc_2_So(n); MessageBox.Show(Doc_2_So(n)); }

private string Doc_1_So(int n) { string kq = ""; switch (n)

154

Page 155: Tổng hợp Bài Tập MTLTTQ

{ case 0: kq = "Không"; break; case 1: kq = "Một"; break; case 2: kq = "Hai"; break; case 3: kq = "Ba"; break; case 4: kq = "Bốn"; break; case 5: kq = "Năm"; break; case 6: kq = "Sáu"; break; case 7: kq = "Bảy"; break; case 8: kq = "Tám"; break; case 9: kq = "Chín"; break; } return kq; } private string Doc_2_So(int so) { string kq = ""; int Hang_don_vi = Convert.ToInt16(so % 10); int Hang_chuc = Convert.ToInt16(so / 10);

//switch (so) //{ // case 0: kq = "Không"; break; // case 1: kq = "Một"; break; // case 2: kq = "Hai"; break; // case 3: kq = "Ba"; break; // case 4: kq = "Bốn"; break; // case 5: kq = "Năm"; break; // case 6: kq = "Sáu"; break; // case 7: kq = "Bảy"; break; // case 8: kq = "Tám"; break; // case 9: kq = "Chín"; break; //}

if (so >= 0 && so <= 9) kq = Doc_1_So(so); else if (so == 10) kq = "Mười"; else if (so == 15) kq = "Mười lăm"; else if (so >= 11 && so <= 19) kq = "Mười " + Doc_1_So(Hang_don_vi); else if (so == 20 || so == 30 || so == 40 || so == 50 || so == 60 || so == 70 || so == 80 || so == 90)

155

Page 156: Tổng hợp Bài Tập MTLTTQ

kq = Doc_1_So(Hang_chuc) + " mươi"; else if (so == 21 || so == 31 || so == 41 || so == 51 || so == 61 || so == 71 || so == 81 || so == 91) kq = Doc_1_So(Hang_chuc) + " mươi mốt"; else if (so == 25 || so == 35 || so == 45 || so == 55 || so == 65 || so == 75 || so == 85 || so == 95) kq = Doc_1_So(Hang_chuc) + " mươi lăm"; else kq = Doc_1_So(Hang_chuc) + " Mươi " + Doc_1_So(Hang_don_vi);

return kq; } }

Kéo Thả Mau tin

public partial class frmDragItem : Form { public frmDragItem() { InitializeComponent(); //this.lstItem1.MouseDown += new MouseEventHandler(lstItem1_MouseDown); //this.lstItem1.DragOver += new DragEventHandler(lstItem1_DragOver); //this.txt1.DragDrop += new DragEventHandler(txt1_DragDrop); ////this.txt2.DragDrop += new DragEventHandler(txt2_DragDrop); //this.txt1.DragEnter += new DragEventHandler(txt1_DragEnter); ////this.txt2.DragEnter += new DragEventHandler(txt2_DragEnter); txt1.AllowDrop = true; //cho phéo thả vào Textbox }

private void btnClose_Click(object sender, EventArgs e) { this.Close();

156

Page 157: Tổng hợp Bài Tập MTLTTQ

}

#region Kéo thả mẩu tin trong ListBox sang TextBox

private void lstItem1_DragOver(object sender, DragEventArgs e) { e.Effect = DragDropEffects.Move; }

private void lstItem1_MouseDown(object sender, MouseEventArgs e) { this.lstItem1.DoDragDrop(this.lstItem1.SelectedItem, DragDropEffects.Move); }

private void txt1_DragEnter(object sender, DragEventArgs e) { e.Effect = DragDropEffects.Move; }

private void txt1_DragDrop(object sender, DragEventArgs e) { object data = e.Data.GetData(typeof(string)); if (data == null) { return; } txt1.Text = data.ToString(); }

private void txt2_DragEnter(object sender, DragEventArgs e) { e.Effect = DragDropEffects.Move; }

private void txt2_DragDrop(object sender, DragEventArgs e) { object data = e.Data.GetData(typeof(string)); if (data == null) { return; } txt2.Text = data.ToString(); }

private void txt3_DragEnter(object sender, DragEventArgs e) { e.Effect = DragDropEffects.Move; }

private void txt3_DragDrop(object sender, DragEventArgs e)

157

Page 158: Tổng hợp Bài Tập MTLTTQ

{ object data = e.Data.GetData(typeof(string)); if (data == null) { return; } txt3.Text = data.ToString(); }

private void lstItem2_DragEnter(object sender, DragEventArgs e) { e.Effect = DragDropEffects.Move; }

private void lstItem2_DragDrop(object sender, DragEventArgs e) { object obj = e.Data.GetData(typeof(string)); if (obj == null) { return; } //lstItem2.Text += obj.ToString(); <== sai lstItem2.Items.Add(obj.ToString()); lstItem2.Sorted = true; }

#endregion }

Đồ họa cho panerl

public partial class frmDrawOnPanel : Form { Graphics g; bool dragging; Pen pen = new Pen(Color.Red,4); //4: Size của nét vẽ

158

Page 159: Tổng hợp Bài Tập MTLTTQ

Point p1, p2;

public frmDrawOnPanel() { InitializeComponent(); }

private void frmDrawOnPanel_Load(object sender, EventArgs e) { g = panel1.CreateGraphics(); dragging = false; //cboKieuNetVe.SelectedIndex = 4; //cboNetVe.SelectedIndex = 0; }

private void panel1_MouseDown(object sender, MouseEventArgs e) { p1 = new Point(e.X, e.Y); dragging = true; }

private void panel1_MouseMove(object sender, MouseEventArgs e) { p2 = new Point(e.X, e.Y); if (dragging == true) { //g.DrawLine(pen, p1, p2); g.DrawRectangle(pen, p1.X, p1.Y, p2.X - p1.X, p2.Y - p1.Y); } }

private void panel1_MouseUp(object sender, MouseEventArgs e) { dragging = false; }

private void panel1_DoubleClick(object sender, EventArgs e) { g.Clear(panel1.BackColor); //btnChonMau.BackColor = this.BackColor; }

private void cboKieuNetVe_SelectedIndexChanged(object sender, EventArgs e) { switch (cboKieuNetVe.SelectedIndex) { case 0: pen.DashStyle = DashStyle.Dash; break; case 1: pen.DashStyle = DashStyle.DashDot; break; case 2: pen.DashStyle = DashStyle.DashDotDot; break; case 3: pen.DashStyle = DashStyle.Dot; break;

159

Page 160: Tổng hợp Bài Tập MTLTTQ

case 4: pen.DashStyle = DashStyle.Solid; break; } }

private void cboNetVe_SelectedIndexChanged(object sender, EventArgs e) { switch (cboNetVe.SelectedIndex) { case 0: pen.Width = 1; break; case 1: pen.Width = 2; break; case 2: pen.Width = 3; break; case 3: pen.Width = 4; break; case 4: pen.Width = 5; break; case 5: pen.Width = 6; break; case 6: pen.Width = 7; break; case 7: pen.Width = 8; break; case 8: pen.Width = 9; break; case 9: pen.Width = 10; break; } }

private void btnClose_Click(object sender, EventArgs e) { this.Close(); }

private void btnChonMau_Click(object sender, EventArgs e) { if (hop_mau.ShowDialog() == DialogResult.OK) { pen = new Pen(hop_mau.Color); //pen = new Pen( btnChonMau.BackColor = hop_mau.Color; } }

private void btnClose_MouseEnter(object sender, EventArgs e) { //MessageBox.Show("Nếu bạn nhấn nút này thì Form sẽ bị đóng", "Example: MouseEnter Event", MessageBoxButtons.OK, MessageBoxIcon.Information); label3.Text = "Nếu bạn nhấn nút này thì Form sẽ bị đóng"; }

private void btnClose_MouseLeave(object sender, EventArgs e) { label3.Text = ""; } }

Mo cac hop thoai

160

Page 161: Tổng hợp Bài Tập MTLTTQ

public partial class frmHopThoai : Form { public frmHopThoai() { InitializeComponent(); }

private void btnThoat_Click(object sender, EventArgs e) { this.Close(); }

private void btnChonMotFile_Click(object sender, EventArgs e) { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Title = "Mo Tap Tin"; openFileDialog.Filter = "Rich text |*.rtf|All file (*.*)|*.*"; openFileDialog.InitialDirectory = "C:\\Program Files\\"; if (openFileDialog.CheckFileExists == true) { if (openFileDialog.ShowDialog() == DialogResult.OK) //richTextBox.Text = openFileDialog.FileName; //Lấy đường dẫn của tên file richTextBox.LoadFile(openFileDialog.FileName); //Chỉ mở File WordPad } }

private void btnChonNhieuFile_Click(object sender, EventArgs e) { //string[] mang; //string s = ""; //OpenFileDialog openFileDialog = new OpenFileDialog(); //openFileDialog.Multiselect = true; //if (openFileDialog.ShowDialog() == DialogResult.OK) //{

161

Page 162: Tổng hợp Bài Tập MTLTTQ

// mang = openFileDialog.FileNames; // foreach (string c in mang) // { // s += c + "\n"; // } // richTextBox.Text = s; //}

//Cách 2: OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Multiselect = true; if (openFileDialog.ShowDialog() == DialogResult.OK) { foreach (string c in openFileDialog.FileNames) richTextBox.AppendText(c + "\r\n"); } }

private void btnChonMotFolder_Click(object sender, EventArgs e) { FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog(); if (folderBrowserDialog.ShowDialog() == DialogResult.OK) richTextBox.Text = folderBrowserDialog.SelectedPath; }

private void btnChonMauNen_Click(object sender, EventArgs e) { ColorDialog colorDialog = new ColorDialog(); if (colorDialog.ShowDialog() == DialogResult.OK) richTextBox.BackColor = colorDialog.Color; }

private void btnChonMauChu_Click(object sender, EventArgs e) { ColorDialog colorDialog = new ColorDialog(); if (colorDialog.ShowDialog() == DialogResult.OK) //richTextBox.ForeColor = colorDialog.Color; //Chọn màu chữ cho tất cả nội dung richTextBox.SelectionColor = colorDialog.Color; //Chỉ tô màu chữ cho nội dung được quét chọn }

private void btnChonFont_Click(object sender, EventArgs e) { FontDialog fontDialog = new FontDialog(); if (fontDialog.ShowDialog() == DialogResult.OK) //richTextBox.Font = fontDialog.Font; richTextBox.SelectionFont = fontDialog.Font; }

private void frmHopThoai_Load(object sender, EventArgs e)

162

Page 163: Tổng hợp Bài Tập MTLTTQ

{ richTextBox.Text = "Đây là chương trình ví dụ về các hộp thoại chuẩn trong Visual C# 2005, những chương trình khác tương tự."; }

private void frmHopThoai_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Escape) this.Close(); }

private void btnSaveFile_Click(object sender, EventArgs e) { SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Title = "Luu tap tin"; saveFileDialog.DefaultExt = "rtf"; saveFileDialog.OverwritePrompt = true; //if (saveFileDialog.CheckFileExists() == true) //{ if (saveFileDialog.ShowDialog() == DialogResult.OK) { richTextBox.SaveFile(saveFileDialog.FileName); } //} }

private void btnPrint_Click(object sender, EventArgs e) { PrintDialog printDialog = new PrintDialog(); printDialog.AllowCurrentPage = true; printDialog.AllowPrintToFile = true; printDialog.PrinterSettings.Copies = 2; printDialog.PrinterSettings.Collate = true; //printDialog.PrinterSettings.PaperSizes. //printDialog.PrinterSettings.PrinterName = "TPVECR1_PC_SRP"; printDialog.PrinterSettings.PrintToFile = true; printDialog.ShowDialog(); }

}

LisstArrayBox

163

Page 164: Tổng hợp Bài Tập MTLTTQ

public partial class frmListBoxArray : Form { public frmListBoxArray() { InitializeComponent(); }

private void btnXoaListBox_Click(object sender, EventArgs e) { lstKQ.Items.Clear(); }

private void btnThem_1_ptu_Click(object sender, EventArgs e) { lstKQ.Items.Add(txtGia_tri.Text.Trim()); txtGia_tri.Clear(); txtGia_tri.Focus(); }

private void btnThem_nhieu_ptu_Click(object sender, EventArgs e) { //string a = txtGia_tri.Text.Trim(); //for (int i = 0; a.Length; i++) //{

//} } }

LISTBOXMUTI

164

Page 165: Tổng hợp Bài Tập MTLTTQ

public partial class frmListBoxMultiSelect : Form { public frmListBoxMultiSelect() { InitializeComponent(); }

private void frmListBoxMultiSelect_Load(object sender, EventArgs e) { for (int i = 1; i <= 100; i++) { lstLeft.Items.Add(i); } lblCountList1.Text = "Total: " + lstLeft.Items.Count + " Items"; lblCountList2.Text = "Total: " + lstRight.Items.Count + " Items"; }

private void btnSelectAllItem_Click(object sender, EventArgs e) { for (int i = 0; i < lstLeft.Items.Count; i++) { lstLeft.SetSelected(i, true); } }

private void btnUnSelect_Click(object sender, EventArgs e)165

Page 166: Tổng hợp Bài Tập MTLTTQ

{ for (int i = 0; i < lstLeft.Items.Count; i++) { lstLeft.SetSelected(i, false); } }

private void btnSelectIndex_Click(object sender, EventArgs e) { for (int i = 0; i < lstLeft.Items.Count; i++) { lstLeft.SetSelected(int.Parse(txtSelectIndex.Text.Trim())-1, true); } }

private void btnUnSelectIndex_Click(object sender, EventArgs e) { for (int i = 0; i < lstLeft.Items.Count; i++) { lstLeft.SetSelected(int.Parse(txtUnSelectIndex.Text.Trim()) - 1, false); } }

private void btnFillItems_Click(object sender, EventArgs e) { lstLeft.Items.Clear(); frmListBoxMultiSelect_Load(sender, e); }

private void btnDeleteSelectedItem_Click(object sender, EventArgs e) { int n = lstLeft.SelectedItems.Count; while (lstLeft.SelectedItems.Count > 0) { for (int i = 0; i < n; i++) { lstLeft.Items.RemoveAt(lstLeft.SelectedIndex); } } lblCountList1.Text = "Total: " + lstLeft.Items.Count + " Items"; }

private void btnDeleteIndex_Click(object sender, EventArgs e) { int vitri = int.Parse(txtDeleteIndex.Text.Trim()); lstLeft.Items.RemoveAt(vitri - 1); lblCountList1.Text = "Total: " + lstLeft.Items.Count + " Items"; }

private void btnCopy_Click(object sender, EventArgs e)

166

Page 167: Tổng hợp Bài Tập MTLTTQ

{ foreach (object obj in lstLeft.SelectedItems) { lstRight.Items.Add(obj.ToString()); }

lblCountList2.Text = "Total: " + lstRight.Items.Count + " Items"; }

private void btnMove_Click(object sender, EventArgs e) { while (lstLeft.SelectedItems.Count > 0) { lstRight.Items.Add(lstLeft.SelectedItem); lstLeft.Items.Remove(lstLeft.SelectedItem); } lblCountList1.Text = "Total: " + lstLeft.Items.Count + " Items"; lblCountList2.Text = "Total: " + lstRight.Items.Count + " Items"; }

private void btnClear_Click(object sender, EventArgs e) { lstRight.Items.Clear(); lblCountList2.Text = "Total: " + lstRight.Items.Count + " Items"; }

private void btnReset_Click(object sender, EventArgs e) { lstLeft.Items.Clear(); frmListBoxMultiSelect_Load(sender, e); }

private void chkSortDesc_CheckedChanged(object sender, EventArgs e) { lstRight.Sorted = true; }

private void btnAddEnd_Click(object sender, EventArgs e) { lstRight.Items.Add(txtAddText.Text.Trim()); lblCountList2.Text = "Total: " + lstRight.Items.Count + " Items"; }

private void btnAddIndex_Click(object sender, EventArgs e) { int vitri = int.Parse(txtAddIndex.Text.Trim()); if (vitri < lstRight.Items.Count) { lstRight.Items.Insert(vitri - 1, txtAddText.Text.Trim()); }

167

Page 168: Tổng hợp Bài Tập MTLTTQ

lblCountList2.Text = "Total: " + lstRight.Items.Count + " Items"; } }

Mang so nguyen

public partial class frmMangSoNguyenTo : Form { int []a; int i; public frmMangSoNguyenTo() { InitializeComponent(); }

private void frmMangSoNguyenTo_Load(object sender, EventArgs e) {

}

private void Tao_Mang(int []m, int so) {

}

//private bool KiemTra_SNT(int so) //{ // bool snt = true; // i = 2; // if (so <= 1) snt = false; // else // { // for (i=2; Convert.ToInt32(System.Math.Floor(so / 2)); i++) // { // snt = true; // break; // }

168

Page 169: Tổng hợp Bài Tập MTLTTQ

// } // return snt; //} //private bool KiemTra_TrungPhanTu(int so, int []m) //{ // for(i = 0; m.Length - 1; i++) // { // if (m[i] == so) return false; // else return true; // } //} }

Khunggiaodienchinh

public partial class frmMDI : Form { bool icon1 = true;

public frmMDI() { InitializeComponent(); }

private void mnuF_Exit_Click(object sender, EventArgs e) { if (MessageBox.Show("Bạn muốn thoát khỏi chương trình?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { this.Close(); } }

private void openFormFrmDialogBoxToolStripMenuItem_Click(object sender, EventArgs e) { frmComboBox f = new frmComboBox(); f.MdiParent = this;

169

Page 170: Tổng hợp Bài Tập MTLTTQ

f.Show();

}

private void mnuHopThoai_Click(object sender, EventArgs e) { frmHopThoai f = new frmHopThoai(); f.MdiParent = this; f.Show(); }

private void mnuChuChay_Click(object sender, EventArgs e) { frmChuChay f = new frmChuChay(); f.MdiParent = this; f.Show(); }

private void frmMDI_Load(object sender, EventArgs e) { //MenuStrip mnuStrip = new MenuStrip();

}

private void mnuStatusBar_Click(object sender, EventArgs e) { frmStatusBar f = new frmStatusBar(); f.MdiParent = this; f.Show(); }

private void frmMDI_SizeChanged(object sender, EventArgs e) { if (this.WindowState == FormWindowState.Minimized) { ntfIcon.Visible = true; } else { ntfIcon.Visible = false; } }

private void ntfIcon_DoubleClick(object sender, EventArgs e) { this.WindowState = FormWindowState.Maximized; }

private void ntfIcon_Click(object sender, EventArgs e) {

170

Page 171: Tổng hợp Bài Tập MTLTTQ

System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmMDI)); if (icon1 == true) { this.ntfIcon.Icon = ((System.Drawing.Icon)(resources.GetObject("Circil"))); } else { this.ntfIcon.Icon = ((System.Drawing.Icon)(resources.GetObject("ntfIcon.Icon"))); } icon1 = !icon1; }

private void mnuChuotPhai_HienThi_Click(object sender, EventArgs e) { this.WindowState = FormWindowState.Maximized; }

private void mnuChuotPhai_Thoat_Click(object sender, EventArgs e) { //this.mnuF_Exit(sender, e); this.Close(); }

private void mnuTabControl_Click(object sender, EventArgs e) { frmTabControl f = new frmTabControl(); f.MdiParent = this; f.Show(); }

private void frmMDI_FormClosing(object sender, FormClosingEventArgs e) { //DialogResult kq = MessageBox.Show("Bạn có muốn thoát không?", "Thoát", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); //if (kq == DialogResult.No) //{ // e.Cancel = true; //} }

private void mnuPictureBox_Click(object sender, EventArgs e) { frmPictureBox f = new frmPictureBox(); f.MdiParent = this; f.Show(); }

private void mnuTinhToan_Click(object sender, EventArgs e) {

171

Page 172: Tổng hợp Bài Tập MTLTTQ

frmTinhToan f = new frmTinhToan(); f.MdiParent = this; f.Show(); }

private void mnuCalculator_Click(object sender, EventArgs e) { frmCalculator f = new frmCalculator(); f.MdiParent = this; f.Show(); }

private void mnuDocSo_Click(object sender, EventArgs e) { frmDocSo f = new frmDocSo(); f.MdiParent = this; f.Show(); }

private void mnuDocHaiSo_Click(object sender, EventArgs e) { frmDoc_2_So f = new frmDoc_2_So(); f.MdiParent = this; f.Show(); }

private void mnuTongson_Click(object sender, EventArgs e) { frmTong_N_So f = new frmTong_N_So(); f.MdiParent = this; f.Show(); }

private void mnuToaDo_Click(object sender, EventArgs e) { frmToaDo f = new frmToaDo(); f.MdiParent = this; f.Show(); }

private void mnuDkControl_Click(object sender, EventArgs e) { frmDkControl f = new frmDkControl(); f.MdiParent = this; f.Show(); }

private void mnuQuaySo_Click(object sender, EventArgs e) { frmQuaySo f = new frmQuaySo();

172

Page 173: Tổng hợp Bài Tập MTLTTQ

f.MdiParent = this; f.Show(); }

private void mnuChonSinhVien_Click(object sender, EventArgs e) { frmChonSinhVien f = new frmChonSinhVien(); f.MdiParent = this; f.Show(); }

private void mnuChonNhieu_Click(object sender, EventArgs e) { frmChonNhieu f = new frmChonNhieu(); f.MdiParent = this; f.Show(); }

private void mnuTraiCay_Click(object sender, EventArgs e) { frmChonTraiCay f = new frmChonTraiCay(); f.MdiParent = this; f.Show(); }

private void mnuHelp_Click(object sender, EventArgs e) { MessageBox.Show("Sữa mẹ là tốt nhất cho sức khỏe & sự phát triển của trẻ sơ sinh và trẻ nhỏ", "Sữa", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); }

private void mnuXuLyChuoi_Click(object sender, EventArgs e) { frmXuLyChuoi f = new frmXuLyChuoi(); f.MdiParent = this; f.Show(); }

private void mnuMangNguyenTo_Click(object sender, EventArgs e) { frmMangSoNguyenTo f = new frmMangSoNguyenTo(); f.MdiParent = this; f.Show(); }

private void mnuXuLyHoTen_Click(object sender, EventArgs e) { frmXuLyHoTen f = new frmXuLyHoTen(); f.MdiParent = this; f.Show();

173

Page 174: Tổng hợp Bài Tập MTLTTQ

}

private void mnuDragItem_Click(object sender, EventArgs e) { frmDragItem f = new frmDragItem(); f.MdiParent = this; f.Show(); }

private void mnuMang1_Click(object sender, EventArgs e) { frmArray_1 f = new frmArray_1(); f.MdiParent = this; f.Show(); }

private void mnuMang2_Click(object sender, EventArgs e) { frmArray_2 f = new frmArray_2(); f.MdiParent = this; f.Show(); }

private void mnuCascade_Click(object sender, EventArgs e) { frmArray_2 f = new frmArray_2(); f.MdiParent = this; //f.Show(); f.LayoutMdi(MdiLayout.Cascade); }

private void mnuHorizontal_Click(object sender, EventArgs e) { //LayoutMdi(MdiLayout.TileHorizontal); }

private void verticalWindowsToolStripMenuItem_Click(object sender, EventArgs e) { //f.LayoutMdi(MdiLayout.TileVertical); }

private void mnuDrawing_Click(object sender, EventArgs e) { frmDrawOnForm f = new frmDrawOnForm(); f.MdiParent = this; f.Show(); }

private void mnuDrawOnPanel_Click(object sender, EventArgs e) {

174

Page 175: Tổng hợp Bài Tập MTLTTQ

frmDrawOnPanel f = new frmDrawOnPanel(); f.MdiParent = this; f.Show(); }

private void mnuThucHanh_MouseMove(object sender, MouseEventArgs e) { mnuThucHanh.ShowDropDown(); }

private void mnuMyTitle_Click(object sender, EventArgs e) { frmUnTitle f = new frmUnTitle(); f.MdiParent = this; f.Show(); }

private void mnuCongTime_Click(object sender, EventArgs e) { frmCongTru_Time f = new frmCongTru_Time(); f.MdiParent = this; f.Show(); }

private void mnuPhaMau_Click(object sender, EventArgs e) { frmPhaMau f = new frmPhaMau(); f.MdiParent = this; f.Show(); }

private void mnuBangSoXe_Click(object sender, EventArgs e) { frmBangSoXe f = new frmBangSoXe(); f.MdiParent = this; f.Show(); }

private void mnuListBoxArray_Click(object sender, EventArgs e) { frmListBoxArray f = new frmListBoxArray(); f.MdiParent = this; f.Show(); }

private void mnuAmLich_Click(object sender, EventArgs e) { frmConvertToAmLich f = new frmConvertToAmLich(); f.MdiParent = this; f.Show();

175

Page 176: Tổng hợp Bài Tập MTLTTQ

}

private void mnuNotepad_Click(object sender, EventArgs e) { frmNotepad f = new frmNotepad(); f.MdiParent = this; f.Show(); }

private void mnuMultiSelect_Click(object sender, EventArgs e) { frmListBoxMultiSelect f = new frmListBoxMultiSelect(); f.MdiParent = this; f.Show(); } }

Ví du ve picture

public partial class frmPictureBox : Form { public frmPictureBox() { InitializeComponent(); }

private void btnTaoBorder_Click(object sender, EventArgs e) { ptbKhungHinh.BorderStyle = BorderStyle.Fixed3D; }

176

Page 177: Tổng hợp Bài Tập MTLTTQ

private void btnTaoHinhNen_Click(object sender, EventArgs e) { ptbKhungHinh.BackgroundImage = Properties.Resources.Duy; }

private void btnLoadHinh_Click(object sender, EventArgs e) { ptbKhungHinh.SizeMode = PictureBoxSizeMode.StretchImage; ptbKhungHinh.Image = Properties.Resources.QUY; }

private void btnLoadHinh2_Click(object sender, EventArgs e) { //ptbKhungHinh.ImageLocation = "//..//..//Dan.bmp"; //ptbKhungHinh.ImageLocation = "Dan.bmp"; ptbKhungHinh.Image = Properties.Resources.Dan; }

private void frmPictureBox_Load(object sender, EventArgs e) { string[] foods = { "Gà","Heo","Cá","Sữa","Trứng" }; //or string[] fds = new string[] { "1", "2", "4" }; int[] so = new int[] { 1,2,5,6,4,3,8 }; } }

Trang thái

public partial class frmStatusBar : Form { public frmStatusBar() { InitializeComponent();

177

Page 178: Tổng hợp Bài Tập MTLTTQ

}

private void frmStatusBar_Load(object sender, EventArgs e) { sttPrgPhanTram.Minimum = 0; sttPrgPhanTram.Maximum = 50; sttLblSoKyTu.Text = "Số ký tự : 0"; sttDrdMin_Max.Text = "50"; }

private void rtbNoiDung_TextChanged(object sender, EventArgs e) { if (rtbNoiDung.TextLength > int.Parse(sttDrdMin_Max.Text)) { MessageBox.Show("Bạn đã gõ quá " + sttDrdMin_Max.Text + " ký tự cho phép", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); rtbNoiDung.Text = rtbNoiDung.Text.Remove(rtbNoiDung.TextLength - 1); rtbNoiDung.Focus(); return; } else { sttLblSoKyTu.Text = "Số ký tự: " + rtbNoiDung.TextLength; sttPrgPhanTram.Value = rtbNoiDung.TextLength; } }

private void sttDrdMin_Max_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e) { int max = int.Parse(e.ClickedItem.Text); sttDrdMin_Max.Text = e.ClickedItem.Text; sttPrgPhanTram.Maximum = max; } }

TabCtrol

178

Page 179: Tổng hợp Bài Tập MTLTTQ

public partial class frmTabControl : Form { public frmTabControl() { InitializeComponent(); }

private void btnChuyen_Click(object sender, EventArgs e) { //tabBanHang.Controls.Clear(); //tabBanHang.Controls.Add(new Label(){Text = txtNoidung.Text}); Label1.Text = txtNoidung.Text; MessageBox.Show("Hello everyone !"); }

private void frmTabControl_FormClosing(object sender, FormClosingEventArgs e) { DialogResult kq = MessageBox.Show("Bạn có muốn thoát không?", "Thoát", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (kq == DialogResult.No) { e.Cancel = true; } }

private void txtNoidung_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { btnChuyen.PerformClick();

179

Page 180: Tổng hợp Bài Tập MTLTTQ

} } }

Tinhtoande

public partial class frmTinhToan : Form { float a, b = 0; float kq = 0; public frmTinhToan() { InitializeComponent(); }

private void btnThoat_Click(object sender, EventArgs e) { this.Close(); }

private void btnCong_Click(object sender, EventArgs e) { a = float.Parse(txtSo1.Text.Trim()); b = float.Parse(txtSo2.Text.Trim()); kq = a + b; txtKQ.Text = kq.ToString(); }

private void btnTru_Click(object sender, EventArgs e) { a = float.Parse(txtSo1.Text.Trim()); b = float.Parse(txtSo2.Text.Trim()); kq = a - b; txtKQ.Text = kq.ToString();

180

Page 181: Tổng hợp Bài Tập MTLTTQ

}

private void btnNhan_Click(object sender, EventArgs e) { a = float.Parse(txtSo1.Text.Trim()); b = float.Parse(txtSo2.Text.Trim()); kq = a * b; txtKQ.Text = kq.ToString(); }

private void btnChia_Click(object sender, EventArgs e) { if (float.Parse(txtSo2.Text.Trim()) != 0) { a = float.Parse(txtSo1.Text.Trim()); b = float.Parse(txtSo2.Text.Trim()); kq = a / b; txtKQ.Text = kq.ToString(); } else MessageBox.Show("Không thể chia cho 0", "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop); }

private void btnAnd_Click(object sender, EventArgs e) { int a = int.Parse(txtSo1.Text.Trim()); int b = int.Parse(txtSo2.Text.Trim()); txtKQ.Text = Convert.ToString(a & b); }

private void btnOr_Click(object sender, EventArgs e) { int a = int.Parse(txtSo1.Text.Trim()); int b = int.Parse(txtSo2.Text.Trim()); txtKQ.Text = Convert.ToString(a | b); }

private void btnDichTrai_Click(object sender, EventArgs e) { int a = int.Parse(txtSo1.Text.Trim()); int b = int.Parse(txtSo2.Text.Trim()); txtKQ.Text = Convert.ToString(a << b); }

private void btnDichPhai_Click(object sender, EventArgs e) { int a = int.Parse(txtSo1.Text.Trim()); int b = int.Parse(txtSo2.Text.Trim()); txtKQ.Text = Convert.ToString(a >> b);

181

Page 182: Tổng hợp Bài Tập MTLTTQ

} }

Toado

public partial class frmToaDo : Form { public frmToaDo() { InitializeComponent(); }

private void frmToaDo_MouseMove(object sender, MouseEventArgs e) { lblX.Text = "Tọa độ X : " + e.X.ToString(); lblY.Text = "Tọa độ Y : " + e.Y.ToString(); }

private void frmToaDo_MouseDown(object sender, MouseEventArgs e) { label1.Text = "Tọa độ (" + e.X.ToString() + "," + e.Y.ToString() + ")"; }

private void frmToaDo_MouseClick(object sender, MouseEventArgs e) { int x = e.X; int y = e.Y; string buttonStr = "";

switch (e.Button) { case MouseButtons.Right: buttonStr = "Right"; break; case MouseButtons.Left: buttonStr = "Left"; break; case MouseButtons.Middle:

182

Page 183: Tổng hợp Bài Tập MTLTTQ

buttonStr = "Middle"; break; } label2.Text = buttonStr + " Mouse Clicked at Point (" + x + "," + y + ")"; } }

TongN

public partial class frmTong_N_So : Form { public frmTong_N_So() { InitializeComponent(); }

private void btnThoat_Click(object sender, EventArgs e) { this.Close(); }

private void btnTinh_Click(object sender, EventArgs e) { if (txtSo.Text.Trim() != "") { lblKQ.Visible = true; lblKQ.Text = "Tổng các số từ 1 --> " + txtSo.Text.Trim() + " là : " + tinh(int.Parse(txtSo.Text.Trim())); } else lblKQ.Visible = false; } private string tinh(int s) { int kq = 0; for (int i = 1; i <= s; i++) {

183

Page 184: Tổng hợp Bài Tập MTLTTQ

kq += i; } return kq.ToString(); ; }

private void txtSo_TextChanged(object sender, EventArgs e) { btnTinh_Click(sender, e); } }

DichuyenForm

public partial class frmUnTitle : Form { bool dragging; Point poinClicked;

public frmUnTitle() { InitializeComponent(); }

private void btnClose_Click(object sender, EventArgs e) { this.Close(); }

private void frmUnTitle_KeyPress(object sender, KeyPressEventArgs e) { //Xử lý khi nhấn phím bất kỳ lblChar.Text = "Bạn vừa nhấn phím : " + e.KeyChar; }

private void frmUnTitle_KeyDown(object sender, KeyEventArgs e)

184

Page 185: Tổng hợp Bài Tập MTLTTQ

{ //Xử lý khi nhấn phím xuống keyInfoLabel.Text = "Alt: " + (e.Alt ? "Yes" : "No") + '\n' + "Shift: " + (e.Shift ? "Yes" : "No") + '\n' + "Ctrl: " + (e.Control ? "Yes" : "No") + '\n' + "KeyCode: " + e.KeyCode + '\n' + "KeyData: " + e.KeyData + '\n' + "KeyValue: " + e.KeyValue; }

private void frmUnTitle_KeyUp(object sender, KeyEventArgs e) { //Xử lý khi thả phím ra lblChar.Text = ""; keyInfoLabel.Text = ""; }

private void lblMyTitle_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { dragging = true; poinClicked = new Point(e.X, e.Y); } else dragging = false; }

private void lblMyTitle_MouseMove(object sender, MouseEventArgs e) { if (dragging == true) { Point pointMoveTo; pointMoveTo = this.PointToScreen(new Point(e.X, e.Y)); pointMoveTo.Offset(-poinClicked.X, -poinClicked.Y); this.Location = pointMoveTo; //di chuyển Form } //Cursor.Position.Y = Cursor.Position.Y + 20; }

private void lblMyTitle_MouseUp(object sender, MouseEventArgs e) { dragging = false; } }

Xulychuoi

185

Page 186: Tổng hợp Bài Tập MTLTTQ

//Lớp trừu tượng (abstract) public abstract class clsAbstract { //Khai báo thuộc tính trừu tượng public abstract int Age { get; set; } public abstract string Name { get; //set; } public abstract string Address { //get; set; } }

public abstract class clsTruuTuong { public abstract string Path { get; set; } public abstract int NumberOfFiles { get; } //Khai báo phương thức trừu tượng

186

Page 187: Tổng hợp Bài Tập MTLTTQ

public abstract void Show(ListView lv); //Khai báo phương thức thường public void Show(ListView lsv, ComboBox cbo) { // } }

//Xây dựng lớp kế thừa từ lớp trừu tượng clsAbstract public class clsKeThua : clsAbstract { //Khai báo các biến thành viên private int mAge; public override int Age { get { return mAge; } set { mAge = value; } }

private string mName=""; public override string Name { get { return mName; } //set { mName = value; } }

private string mAddress; public override string Address { //get { return mAddress; } set { mAddress = value; } } }

//Xây dựng lớp kế thừa từ lớp trừu tượng clsTruuTuong public class clsPathFile : clsTruuTuong { //Khai báo các biến thành viên private string mPath; public override string Path { get { return mPath; } set { mPath = value; } }

private int mNumberOfFiles; public override int NumberOfFiles { get { return mNumberOfFiles; }

187

Page 188: Tổng hợp Bài Tập MTLTTQ

}

// public override void Show(ListView lv) { lv.Clear(); mNumberOfFiles = 0; ListViewItem lvi; foreach (string s in Directory.GetFiles(mPath)) { mNumberOfFiles += 1; lvi = new ListViewItem(mNumberOfFiles.ToString()); lvi.SubItems.Add(s); lv.Items.Add(lvi); } } }

class clsExample { void Use_clsCommon() { clsCommon exec = new clsCommon(); Console.WriteLine("Sum of i + j : {0}", exec.Sum()); Console.WriteLine("Multiple of i + j : {0}", exec.Multiple()); } //Khai báo 2 biến kiểu int int i = 10; int j = 20; //Method Sum public int sum() { return (i + j); } //Khai báo lớp lồng public class clsExampleOther1 { //Khai báo 2 biến kiểu int int a = 10; int b = 20; //Method Sum public int sum() { return (a + b); } } //Khai báo biến static static int k = 10; static int l = 20; //Khai báo lớp lồng public class clsExampleOther2

188

Page 189: Tổng hợp Bài Tập MTLTTQ

{ //Method Sum public int sum() { int ij = 0; //Khai báo & sử dụng lớp clsExample clsExample cls = new clsExample(); ij = cls.i + cls.j; return ij + k + l; } } }

partial class clsCommon { int i = 10; int j = 20; public int Sum() { return i + j; } }

partial class clsCommon { public int Multiple() { return i + j; } }

static class clsExampleStatic { internal static string Username = "sa"; internal static string Password = "123456"; internal static string LoginType = "SQL"; internal static string Server = "(local)"; internal static string Database = "QLBH"; //Method static internal static string ConnectionString() { string c = ""; c = "Server=" + Server + ";Database=" + Database + ";" + (LoginType.Equals("SQL") ? "UID=" + Username + ";PWD=" + Password + "Integrated Security=SSPI;" : " "); return c; } }

class clsInternal { static void main(String[] args)

189

Page 190: Tổng hợp Bài Tập MTLTTQ

{ Console.WriteLine("Public class "); clsExample clsExam = new clsExample(); Console.WriteLine("class example : {0}", clsExam.sum());

Console.WriteLine("Internal class"); clsInternal1 clsIn = new clsInternal1(); Console.WriteLine("class internal : {0}",clsIn.sum()); Console.ReadLine(); } }

internal class clsInternal1 { int i = 1; int j = 2; internal int sum() { return (i + j); } }

public class clsProperty { //Khai báo biến cục bộ private int iValue; private int jValue; //Khai báo thuộc tính i, j public int i { get { return iValue;} set {iValue = value;} } //j public int j { get { return jValue; } set { jValue = value; } } //Khai báo method tính tổng 2 giá trị từ 2 thuộc tính i & j public int tong() { return (iValue + jValue); } }

public class clsPropertyReadOnly { //Khai báo thuộc tính cục bộ private string strPathValue; private int iNumberOfFiles;

190

Page 191: Tổng hợp Bài Tập MTLTTQ

private string sFileName=""; //Khai báo thuộc tính Path public string Path { get { return strPathValue; } set { strPathValue = value; } } //Thuộc tính chỉ đọc public int NumberOfFiles { get { return iNumberOfFiles; } } public string FileName { get { return sFileName; } } //Thuộc tính chỉ ghi (gán/Set) private string mPropertyName; public string PropertyName { //get { return mPropertyName; } set { mPropertyName = value; } } private int mValue; public int Value { //get { return mValue; } set { mValue = value; } } //Method public void Show(ListView lv) { iNumberOfFiles = 0; ListViewItem lvi; foreach (string s in Directory.GetFiles(strPathValue)) { iNumberOfFiles += 1; lvi = new ListViewItem(iNumberOfFiles.ToString()); lvi.SubItems.Add(s); lv.Items.Add(lvi); } } }

public class clsWriteOnly { //Khai báo biến cục bộ & thuộc tính chỉ đọc & gán private string mPathValue; public string PathValue {

191

Page 192: Tổng hợp Bài Tập MTLTTQ

//get { return mPathValue; } set { mPathValue = value; } } private int mNumberOfFiles; public int NumberOfFiles { get { return mNumberOfFiles; } //set { mNumberOfFiles = value; } }

//Method Show public void Show(ListView lv) { mNumberOfFiles = 0; ListViewItem lvi; foreach (string s in Directory.GetFiles(mPathValue)) { mNumberOfFiles += 1; lvi = new ListViewItem(mNumberOfFiles.ToString()); lvi.SubItems.Add(s); lv.Items.Add(lvi); } } } public class clsInfomation { private string mName; public string Name { get { return mName; } set { mName = value; } }

private string mAddress; public string Address { get { return mAddress; } set { mAddress = value; } }

private int mAge; public int Age { get { return mAge; } set { if (value > 100) mAge = 100; else if (value <= 0) mAge = 20; else

192

Page 193: Tổng hợp Bài Tập MTLTTQ

mAge = value; } } }

public static class clsInfomation1 { private static string mName; public static string Name { get { return mName; } set { mName = value; } }

private static string mAddress; public static string Address { get { return mAddress; } set { mAddress = value; } }

private static int mAge; public static int Age { get { return mAge; } set { if (value > 100) mAge = 100; else if (value <= 0) mAge = 20; else mAge = value; } } }

class clsParas { //Static public static short SInsOfCompany = 25; public static short MInsOfCompany = 3; public static short SInsOfEmployee = 5; public static short MInsOfEmployee = 2; //Non Static public float OT1 = 1.5F; public float OT2 = 1.8F; public float OT3 = 2.0F; public float OT4 = 2.5F; } class Chuong_trinh

193

Page 194: Tổng hợp Bài Tập MTLTTQ

{ public static void main(String[] args) { //truy cập các thuộc tính Static (ko cần khởi tạo lớp clsParas trước khi sử dụng) Console.WriteLine("Use Static Property :"); Console.WriteLine(clsParas.SInsOfCompany); Console.WriteLine(clsParas.SInsOfEmployee); Console.WriteLine(clsParas.MInsOfCompany); Console.WriteLine(clsParas.MInsOfEmployee); //truy cập các thuộc tính Non Static (ta cần khởi tạo lớp clsParas trước khi dùng) clsParas cls = new clsParas(); Console.WriteLine(cls.OT1); Console.WriteLine(cls.OT2); Console.WriteLine(cls.OT3); Console.WriteLine(cls.OT4); } }

public class clsSum { //Khai báo 2 Field public int i; public int j; //Khai báo phương thức public int SUM() { return (i + j); } } class clsTong { public int qty = 0; public int price = 0; //biến chỉ đọc public readonly float rate = 0.1F;

//Method public float Tong() { return (qty * price * rate); } }

public class clsVidu { public clsVidu() { } int i = 10; void abc() {

194

Page 195: Tổng hợp Bài Tập MTLTTQ

i++; } } public class ket_noi { int i = 10; void abc() { i++; } }

Chiec noi ky dieu

public partial class Form1 : Form { Pen p = new Pen(Color.Blue); Point p1 = new Point(); Random rd = new Random(); bool tiep; int lanlap;

Graphics g; int n; int dem; string txt;

public Form1() { InitializeComponent(); g = this.CreateGraphics(); lanlap = 1;

195

Page 196: Tổng hợp Bài Tập MTLTTQ

tiep = false; }

private void Form1_Load(object sender, EventArgs e) { p1.X = 405; p1.Y = 224; n = 0; dem = 0; txt = ""; }

private void button_quay_Click(object sender, EventArgs e) { timer1.Enabled = true; tiep = false; dem = 0; timer1.Interval = 100; }

private void timer1_Tick(object sender, EventArgs e) { if (tiep==false) { lanlap=rd.Next(0,36); tiep=true; }

switch (n) { case 0: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 405, 121); txt = label_100.Text; n++; break; case 1: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 476, 125); txt = label_200.Text; n++; break; case 2: g.Clear(this.BackColor);

196

Page 197: Tổng hợp Bài Tập MTLTTQ

g.DrawLine(p, p1.X, p1.Y, 503, 171); txt = label_300.Text; n++; break; case 3: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 508, 224); txt = label_md1.Text; n++; break; case 4: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 503, 274); txt = label_900.Text; n++; break; case 5: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 456, 305); txt = label_800.Text; n++; break; case 6: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 405, 327); txt = label_700.Text; n++; break; case 7: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 352, 308); txt = label_md2.Text; n++; break; case 8: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 315, 275); txt = label_400.Text; n++; break; case 9: g.Clear(this.BackColor); g.DrawLine(p, p1.X, p1.Y, 302, 224); txt = label_500.Text; n++; break; case 10: g.Clear(this.BackColor);

txt = label_md3.Text;

197

Page 198: Tổng hợp Bài Tập MTLTTQ

g.DrawLine(p, p1.X, p1.Y, 315, 175); n++; break; case 11: g.Clear(this.BackColor); txt = label_600.Text; g.DrawLine(p, p1.X, p1.Y, 353, 139); n=0; break;

} dem++;

if ( dem>11) { if (lanlap == 0) { timer1.Enabled = false; listBox1.Items.Add(txt); textBox1.Text = txt; } else { lanlap--; timer1.Interval = timer1.Interval+10; }

} }

private void button_thoat_Click(object sender, EventArgs e) { Dispose(); }

}

LOP

198

Page 199: Tổng hợp Bài Tập MTLTTQ

(Dung listview)

public partial class Form1 : Form { SINHVIEN sv = new SINHVIEN();

public Form1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { ThemSV(); } #region private void ThemSV() { sv.Masv = textBox_masv.Text; sv.Holot = textBox_holot.Text; sv.Ten = textBox_ten.Text; sv.Ngaysinh = dateTimePicker_ngaysinh.Value; sv.Phai = checkBox_phainam.Checked; sv.Diemtoan =float.Parse(textBox_toan.Text); sv.Diemly = float.Parse(textBox_ly.Text); sv.Diemhoa = float.Parse(textBox_hoa.Text); string[] mang=new string[4]; mang[0]=sv.Masv.ToString(); mang[1]=sv.Hoten();

199

Page 200: Tổng hợp Bài Tập MTLTTQ

mang[2]=sv.Tinhtuoi().ToString(); mang[3]=Convert.ToString(Math.Round(sv.TinhDTB(),1)); ListViewItem lstItem = new ListViewItem(mang);

listView1.Items.Add(lstItem);

} #endregion }

GOI CAC FORM QUA LAI

public partial class Form_main : Form // du`ng menu { public Form_main() { InitializeComponent(); }

private void form1ToolStripMenuItem_Click(object sender, EventArgs e) { Form1 frm = new Form1(); frm.MdiParent = this; frm.Show();

}

private void form2ToolStripMenuItem_Click(object sender, EventArgs e) { Form2 frm = new Form2(); frm.MdiParent = this; frm.Show();

}

private void form3ToolStripMenuItem_Click(object sender, EventArgs e) { Form3 frm = new Form3(); frm.MdiParent = this; frm.Show();

} }

\\\\\\\\\\\\\\\\\\

public partial class Form1 : Form { public Form1()

200

Page 201: Tổng hợp Bài Tập MTLTTQ

{ InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { Form_main1 frm = new Form_main1(); this.Hide(); frm.Show(); } }

\\\\\\\\\\\\

public partial class Form_main1 : Form // ko dung menu – dung button { public Form_main1() { InitializeComponent(); }

private void button1_Click(object sender, EventArgs e) { Form1 frm = new Form1(); this.Hide(); frm.Show(); }

private void button4_Click(object sender, EventArgs e) { Form2 frm = new Form2(); this.Hide(); frm.Show(); }

private void button2_Click(object sender, EventArgs e) { Form3 frm = new Form3(); this.Hide(); frm.Show(); } }

201