You are on page 1of 17

BÀI TẬP

1. In ra mà hình chữ “Hello”

Console.WriteLine("Hello");
Console.ReadKey();

2. In ra màn hình “Hello, everyone”, “How are you?”, “See you Soon”
Console.Write("Hello,\t everyone\n"); // \n là xuống hàng
Console.WriteLine("How are you?");
Console.WriteLine("\tSee\tYou\tSoon"); // \t là ký tự tab
return;
3. Nhập tên và in ra màn hình “Hello, tên của bạn”
Console.ForegroundColor = ConsoleColor.Yellow;
Console.Write("What is your name ");
string name = Console.ReadLine();
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("Hello, " + name);

4. Nhập tên, nhập nhày tháng năm sinh và cho biết năm 2022 bao nhiêu
tuổi?

Console.Write("Ban ten gi? ");


string HoTen = Console.ReadLine();
Console.Write("Bạn Sinh năm nào," + HoTen + " : ");
string NamSinh = Console.ReadLine();
int ns =int.Parse(NamSinh);
int Tuoi = 2022 - ns;
Console.WriteLine(HoTen + ",Nam 2022 ban duoc " + Tuoi + " tuoi ");
5. Viết chương trình tính điểm trung bình của thí sinh sau khi nhập vào điểm ba môn Toán, Lý,
Hóa theo thuận toán sau:
- Nhập điểm thi từng môn Toan, Ly và Hoa.
- DiemTongCong = Toan + Ly + Hoa
- DTB = DiemTongCong/3
- In ra màn hình DiemTongCong và DTB.
Chú ý: kiểu dữ liệu của các biến là float (số thực)
// Nhập điểm từng môn Toán, Lý, Hóa
Console.Write("Nhap diem mon toan = ");
float Toan = float.Parse(Console.ReadLine());
Console.Write("Nhap diem mon Ly = ");
float Ly = float.Parse(Console.ReadLine());
Console.Write("Nhap diem mon Hoa = ");
float Hoa = float.Parse(Console.ReadLine());

// Tính điểm trung bình


float DiemTongCong = Toan + Ly + Hoa;
float DiemTrungBinh = DiemTongCong / 3;

// In kết quả
Console.WriteLine("Diem tong cong la: " + DiemTongCong);
Console.WriteLine("Diem trung binh là: " + DiemTrungBinh);
Console.ReadKey();

6. Viết chương trình nhập vào bánh kính 1 hình tròn, sau đó in ra chu vi
và diện tích hình tròn.

// Nhập vào bán kính hình tròn


Console.Write("Ban kinh hinh tron = ");
int r = int.Parse(Console.ReadLine());

// Tính chu vi hình tròn


float Chuvi = (float)(r * 2 * Math.PI);

// Tính diện tích hình tròn


float DienTich = (float)(r * r * Math.PI);

// In kết quả
Console.WriteLine("Chu vi hinh tron = " + Chuvi);
Console.WriteLine("Dien tich hinh tron = " + DienTich);
Console.ReadKey();
7. Viết chương trình tính tiền lương tháng và in ra chi tiết tiền lương
tháng của 1 công nhân biết tiền lương tính theo công thức sau
Tiền lương ngày công = 100.000 x Số ngày công
Phụ cấp gia đình = 150.000 x Số con
Đóng BHXH = 15% Tiền lương ngày công
Tiền lãnh = Tiên lương ngày công + Phụ cấp GĐ – Tiền BHXH

8. Viết chương trình nhập 2 cố a và b sau đó in ra tổng, hiệu, tích, thương của 2 số đó

// Tạo ra các biến


int A, B;
int Tong, Hieu, Tich;
double Thuong;
string strA, strB;

// Viết ghi chú


Console.WriteLine(" **********************************************");
Console.WriteLine(" * *");
Console.WriteLine(" * Chuong trinh tinh tong, hieu, tich, thuong*");
Console.WriteLine(" **********************************************");

// Nhập số A,B
Console.Write("Nhap so A = ");
strA = Console.ReadLine();
Console.Write("Nhap so B = ");
strB = Console.ReadLine();

// Ép Kiểu giá trị


A = int.Parse(strA);
B = int.Parse(strB);

// Tính tổng, hiệu, tích, thương


Tong = A + B;
Hieu = A - B;
Tich = A * B;
Thuong = (double)A / B;
// In kết quả
Console.WriteLine(" Tong = " + Tong);
Console.WriteLine(" Hieu = " + Hieu);
Console.WriteLine(" Tich = " + Tich);
Console.WriteLine(" Thuong =" + Thuong);

Console.ReadKey();

VD1:
// So sánh các giá trị “<”
int a = 10, b = 15, c = 20, d = 20;
string KiemTra = (a < b) ? "a nho hon b" : "a lon hon b";
bool KTra = (a < b); // => True

Console.WriteLine("a=" +a);
Console.WriteLine("b=" +b);
Console.WriteLine(KiemTra);
Console.WriteLine(KTra);
Console.ReadKey();
VD2:
// So sánh các giá trị
int a = 10, b = 15, c = 20, d = 20;
string KiemTra = (a < b) ? "a nho hon b" : "a lon hon b";
bool KTra = ((a < b) || (c == d)); // => True

Console.WriteLine("a=" +a);
Console.WriteLine("b=" +b);
Console.WriteLine("c=" + c);
Console.WriteLine("d=" + d);
Console.WriteLine(KiemTra);
Console.WriteLine(!KTra);
Console.ReadKey();
// ký hiệu “hoặc ||”
// Ký hiệu “Và &&”

VD3:
// Kiem tra bang lenh “if”
int a = 15, b = 10, c = 20, d = 20;

string KiemTra = "";


if (a < b)
{
KiemTra = "a nho hon b";
a++;
}

if (a > b)
{
KiemTra = "a lon hon b";
}
Console.WriteLine("a=" +a);
Console.WriteLine("b=" +b);
Console.WriteLine("c=" + c);
Console.WriteLine("d=" + d);
Console.WriteLine(KiemTra);
Console.ReadKey();
VD4:
// Kiem tra bang lenh “if else”
int a = 10, b = 15, c = 20, d = 20;
//string kiemtra = (a < b) ? "a nho hon b" : "a lon hon b";
//bool ktra = ((a < b) || (c == d)); // => true

string KiemTra = "";


if (a < b)
{
// Lenh 1: xay ra khi a < b
KiemTra = "a nho hon b";
a++;
}

else
{
// Xay ra khi a khong nho hon b
KiemTra = "a lon hon b";
}
Console.WriteLine("a=" + a);
Console.WriteLine("b=" + b);
Console.WriteLine("c=" + c);
Console.WriteLine("d=" + d);
Console.WriteLine(KiemTra);
Console.ReadKey();

VD5: bai tap slide 13 : kiem tra so “n” co phai so chan hay khong?
// Nhap vao 1 so
Console.Write("Nhap vao 1 so: ");
int n = int.Parse(Console.ReadLine());

//Kiem tra xem n co chia het cho 2 khong?

if (n % 2 == 0)
{
// n chia het cho 2
Console.WriteLine("So n la so chan");
}

else
{
//n khong chia het cho 2
Console.WriteLine("So n la so le");
}

Console.ReadKey();

VD6: bai tap slide 13 : kiem tra so “n” co phai so chan hay khong va n > 0?
// Nhap vao 1 so
Console.Write("Nhap vao 1 so: ");
int n = int.Parse(Console.ReadLine());

//Kiem tra xem n co chia het cho 2 khong?

if ((n % 2 == 0) && (n > 0))


{
// n chia het cho 2
Console.WriteLine("So n la so chan");
}

else
{
//n khong chia het cho 2
Console.WriteLine("So n la so le");
}

Console.ReadKey();
VD7: kiem tra so “n” co phai so chan hay khong va n >10 ?
// Nhap vao 1 so
Console.Write("Nhap vao 1 so: ");
int n = int.Parse(Console.ReadLine());

//Kiem tra xem n co chia het cho 2 khong?

if ((n % 2 == 0) && (n > 0))


{
// n chia het cho 2
Console.WriteLine("So n la so chan");
}

else
{
//n khong chia het cho 2
Console.WriteLine("So n la so le");
}

// Kiem tra n co lon hon 10 hay khoong


if (n > 10)
{
// n la so le va n > 10
Console.WriteLine("n lon hon 10");
}
else
{
// n la so le va n <= 10
Console.WriteLine("n nho hon 10");
}
Console.ReadKey();

VD8: Giai Phuong trinh ax + b = 0

// Nhap vao 2 so a,b


Console.Write("Nhap so a = ");
float a = float.Parse(Console.ReadLine());
Console.Write("Nhap so b = ");
float b = float.Parse(Console.ReadLine());

//Xet a = 0
if (a == 0)
{
// Xet a = 0 & b = 0 => Vo so nghiem
if (b == 0)
{
Console.WriteLine("Phuong trinh vo so nghiem");
}
//Xet a = 0 & b != 0 ==> Vo nghiem
else
{
Console.WriteLine("Phuong trinh vo nghiem");
}
}
// Xet a != 0 => x = (-b/a)

else
{
float x = -b / a;
Console.WriteLine("nghiem phuong trinh x = " + x);
}

Console.ReadKey();

Cách 2: // Tạo ra các biến


string strA, strB;
int A, B;
double Nghiem;

// Viết ghi chú trình bày


Console.WriteLine(" ***************************************************");
Console.WriteLine(" * *");
Console.WriteLine(" * Chuong trinh giai phuong trinh Ax + B = 0 *");
Console.WriteLine(" * *");
Console.WriteLine(" ***************************************************");
// Nhập số A, B
Console.Write(" Moi nhap so A: ");
strA = Console.ReadLine();
Console.Write(" Moi nhap so B: ");
strB = Console.ReadLine();

// Kiểm tra ép kiểu


if (int.TryParse(strA, out A) == false || int.TryParse(strB, out B) == false) // kiểm tra người dùng có thực sự nhập số
nguyên vào hay không. Nếu ép kiểu thành công sẽ trả về true, ngược lại trả về false
{
Console.WriteLine(" Du lieu nhap sai !");
return; // Lệnh này tạm hiểu là dừng và thoát chương trình mà không thực hiện những câu lệnh sau nó nữa
}
else
{
Console.WriteLine("\n Phuong trinh cua ban vua nhap la: {0}x + {1} = 0", A, B);

// Xet A == 0 & B==0 => Phuong trinh vo so nghiem, A == 0 & B != 0 => Phuong trinh vo nghiem
if (A == 0)
{
if (B == 0)
{
Console.WriteLine("\n Phuong trinh vo so nghiem !");
}
else
{
Console.WriteLine("\n Phuong trinh vo nghiem !");
}

}
// Xét A != 0 => x= -B/A
else
{
Nghiem = (double)-B / A; // Ép kiểu để cho ra kết quả chính xác
Console.WriteLine("\n Phuong trinh co nghiem x = {0}", Nghiem);
}
Console.ReadKey();

VD9: Giai Phuong trinh a(x^2) + bx + c = 0


// Giai phuong trinh a(x^2) + bx + c =0
// Nhap vao 3 so a,b,c
Console.Write("Nhap so a = ");
float a = float.Parse(Console.ReadLine());
Console.Write("Nhap so b = ");
float b = float.Parse(Console.ReadLine());
Console.Write("Nhap so c = ");
float c = float.Parse(Console.ReadLine());

//Xet a = 0
if (a == 0)
{
// Xet a = 0, b = 0. c = 0 => Vo so nghiem
if (b == 0)
{
//Xet c = 0
if (c == 0)
{
Console.WriteLine("Phuong trinh vo so nghiem");
}
else // Xet a = 0, b = 0, c != 0
{
Console.WriteLine("Phuong trinh vo nghiem");
}
}
else //Xet a = 0 & b != 0
{
Console.WriteLine("Ngiem x = " + -c / b);
}
}
else // Xet a != 0
{
double delta = (b * b) - (4 * a * c);
// Xet a != 0, delta < 0
if (delta < 0)
{
Console.WriteLine("Phuong trinh vo nghiem");
}
else
{
// Xet a != 0, delta = 0
if (delta == 0)
{
Console.WriteLine("Phuong trinh co nghiem kep x1 =
x2 = {0)", -b/(2*a));
}
else // Xet a != 0, delta > 0
{
double x1 = (-b + Math.Sqrt(delta)) / (2 * a);
double x2 = (-b - Math.Sqrt(delta)) / (2 * a);
Console.WriteLine("X1 = " + x1);
Console.WriteLine("X2 = " + x2);
}
}
}

Console.ReadKey();

VD10: SU DUNG SWITCH CASE IN CAC THU TRONG TUAN


// in cac thu trong tuan
Console.WriteLine("Nhap so (tu 1 - 7): ");
int thu = int.Parse(Console.ReadLine());

switch (thu)
{
case 2: Console.WriteLine("Monday"); break;
case 3: Console.WriteLine("Tuesday"); break;
case 4: Console.WriteLine("Wednesday"); break;
case 5: Console.WriteLine("Thursday"); break;
case 6: Console.WriteLine("Friday"); break;
case 7: Console.WriteLine("Saturday"); break;
case 1: Console.WriteLine("Sunday"); break;
default: Console.WriteLine("Nhap sai."); break;
}

Console.ReadKey();

VD11: CHO BIET THANG DO BAO NHIEU NGAY


// in cac thang
Console.WriteLine("Nhap thang: ");
int thang = int.Parse(Console.ReadLine());

switch (thang)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: Console.WriteLine("Thang co 31 ngay");
break;
case 4:
case 6:
case 9:
case 11: Console.WriteLine("Thang co 30 ngay");
break;
case 2: Console.WriteLine("Thang co 28/29 ngay");
break;
default: Console.WriteLine("Nhap sai."); break;
}

Console.ReadKey();

VD12: DAO GIA TRI 2 SO X1 X2


// Bai tap: Dao gia tri 2 so X1 X2
// Nhap x1 & x2
Console.Write("nhap so X1= ");
int x1 = int.Parse(Console.ReadLine());
Console.Write("nhap so X2= ");
int x2 = int.Parse(Console.ReadLine());
// Kiem tra X1 > X2
if (x1 > x2)
{
// tao 1 bien tam mang gia tri x1
int tmp = x1;

// gan gia tri cua x2 cho x1


x1 = x2;

// gan gia tri cua tmp cho x2


x2 = tmp;
}

// In ket qua
Console.WriteLine("X1 = {0}; X2 = {1}", x1, x2);
Console.ReadKey();

VD13: KIỂM TRA DẤU CỦA TÍCH 3 SỐ THỰC


// Bai tap: kiem tra dau cua tich 3 so thuc
// Nhap 3 so a, b, c
Console.Write("nhap so a= ");
float a = float.Parse(Console.ReadLine());
Console.Write("nhap so b= ");
float b = float.Parse(Console.ReadLine());
Console.Write("nhap so c= ");
float c = float.Parse(Console.ReadLine());

string Dau = "";

// Xet a < 0, b < 0, c < 0

if (a < 0)
{
// a<0 & b<0
if (b < 0)
// a<0 & b<0 & c<0
if (c < 0)
{
Dau = "Am";
}
else // a<0 & b<0 & c>0
{
Dau = "Duong";
}
else // a<0 & b>0
{
// a<0 & b>0 & c<0
if (c < 0) ;
{
Dau = "Duong";
}

VD14: TIM SO LON NHAT


// Bai tap: Tim so lon nhat cua ba so nguyen

// Nhap 3 so a, b, c
Console.Write("nhap so a= ");
int a = int.Parse(Console.ReadLine());
Console.Write("nhap so b= ");
int b = int.Parse(Console.ReadLine());
Console.Write("nhap so c= ");
int c = int.Parse(Console.ReadLine());

int Max = a;

// a < b => Max = b


if (a < b)
{
Max = b;
if (b < c)
{
Max = c;
}
}

// In ket qua
Console.WriteLine("So lon nhat la:" + Max);
Console.ReadKey();

Bài 15: Viết chương trình tính năm âm lịch từ năm dương lịch đã nhập.

Thuật toán tính năm âm lịch:

 Năm âm lịch = Can + Chi. Vì thế cần tính được Can và Chi sau đó ghép lại là xong.
 Tính Can bằng cách:
o Tìm phần dư của phép chia năm dương lịch cho 10.
o Tra bảng sau để tìm ra Can tương ứng
Năm dương % 0 1 2 3 4 5 6 7 8 9
10

Can Canh Tân Nhâm Quý Giáp Ất Bính Đinh Mậu Kỷ

 Tìm Chi bằng cách:


o Tìm phần dư của phép chia năm dương lịch cho 12.
o Tra bảng sau để tìm ra Chi tương ứng:

Năm dương % 0 1 2 3 4 5 6 7 8 9 10 11
12

Can Thân Dậu Tuất Hợi Tý Sửu Dần Mẹo Thìn Tỵ Ngọ Mùi

Nối Can và Chi lại để được kết quả.


{ // Nhap nam sinh
Console.Write("Nhap nam sinh duong lich: ");
int Year = int.Parse(Console.ReadLine());

// Tạo biến can, chi


string Can = "";
string Chi = "";

// tính can = Nam duong lich % 10


switch (Year % 10)
{
case 0: Can = "Canh"; break;
case 1: Can = "Tan"; break;
case 2: Can = "Nham"; break;
case 3: Can = "Quy"; break;
case 4: Can = "Giap"; break;
case 5: Can = "At"; break;
case 6: Can = "Binh"; break;
case 7: Can = "Dinh"; break;
case 8: Can = "Mau"; break;
case 9: Can = "Ky"; break;
}

// tính chi = Nam duong lich % 12


switch (Year % 12)
{
case 0: Chi = "Than";break;
case 1: Chi = "Dau"; break;
case 2: Chi = "Tuat"; break;
case 3: Chi = "Hoi"; break;
case 4: Chi = "Ty"; break;
case 5: Chi = "Suu"; break;
case 6: Chi = "Dan"; break;
case 7: Chi = "Meo"; break;
case 8: Chi = "Thin"; break;
case 9: Chi = "Ty"; break;
case 10: Chi = "Ngo"; break;
case 11: Chi = "Mui"; break;
}
// In ket qua
Console.WriteLine("Nam {0} co nam am lich la: {1} {2}", Year, Can, Chi);
Console.ReadKey();
Bài 7: Vòng Lặp

VD1: int n = 0;

do

// Các lệnh muốn thực hiện

Console.Write("Nhap vao so n > 0: ");

n = int.Parse(Console.ReadLine());

if (n <= 0)

Console.WriteLine("Nhap sai. Vui long nhap lai");

// lặp lại các câu lệnh trong đó đến khi n>0

while (n <= 0);

Console.ReadKey();

VD2: double gt = 1;

do

gt = gt * n;

Console.WriteLine("Giai thua = " + gt);

n--;

Console.WriteLine("n= " + n);

while (n > 0);

//Console.WriteLine("Giai thua cuoi cung +" n);


Console.ReadKey();

Bài tập 5: lặp lại việc cho chữ rơi từ đỉnh xuống đáy màn hình. Khi nào nhấn phím Esc thì
dừng

// Nhập chuỗi cần rớt

Console.Write("nhap chuoi: ");

string ChuoiRoi = Console.ReadLine();

// Tạo phím

ConsoleKeyInfo PhimBam;

// Vòng lặp tăng vị trí dòng của con trỏ chuột

for (int i = 0; i <= Console.WindowHeight; i++)

// Kiểm tra xem có nhấn phím hay không?

if (Console.KeyAvailable)

// Gám phím nhấn vào biến PhimBam

PhimBam = Console.ReadKey(true);

// Kiểm tra PhimBam có phải là phím Escape hay không?

if (PhimBam.Key == ConsoleKey.Escape) break;

// xác định vị trí ban đầu

Console.SetCursorPosition((Console.WindowWidth/2), i);

// in chuỗi

Console.Write(ChuoiRoi);
// Thiết lập thời gian xuất hiện

System.Threading.Thread.Sleep(1000);

//xóa màn hình

Console.Clear();

Bài tập 6: cho máy tạo số ngẫu nhiên từ 0 --> 99. Lặp lại việc đoán số cho đến khi đoán đúng,
đoán tối đa 6 lần

// Tạo ngẫu nhiên 1 số từ 0 -> 99

Random rnd = new Random();

int SoNN = rnd.Next(0, 100);

Console.WriteLine(SoNN);

int SoBK = 0;

// cho user đoán số

Console.Write("Đoán số của bạn (0-99): ");

SoBK = int.Parse(Console.ReadLine());

// Lặp lại đoán số trong 6 lần

int sai = 0;

if (SoBK == SoNN) { }

else

do
{

sai++;

Console.WriteLine("Doan sai, moi ban doan lai: ");

SoBK = int.Parse(Console.ReadLine());

if (SoBK == SoNN) break;

} while (sai < 5);

Console.ReadKey();

Bài tập 4: chuyển số thập phân sang nhị phân

// Nhập vào số n

Console.Write("Nhập vào số n: ");

int n = int.Parse(Console.ReadLine());

int k = n;

// Tạo biến chứa giá trị nhị phân

string NhiPhan = "";

do

NhiPhan = (n % 2).ToString() + NhiPhan;

n = n / 2;

} while (n > 0);

Console.WriteLine("chuoi nhi phan cua {0} la {1}: ", k, NhiPhan);

Console.ReadKey();

Bài tập 10:

// Bài tập 10: Viết chương trình cho phép 1 ký tự ngẫu nhiên
// Tạo số ngẫu nhiên từ 65 --> 91

Random rnd = new Random();

int SoNN = int.Parse(Console.ReadLine());

char ranchar = Convert.ToChar(SoNN);

Console.WriteLine(ranchar);

Console.ReadKey();

// Rơi ra mà hình

// Phím bấm tương ứng

// chạm đáy màn hình

You might also like