tổng hợp bài tập C# cơ bản

Ngày đăng: 16/10/2013, 10:56

tổng hợp các bài tập ₵# cơ bản ĐẠI HỌC HUẾ Trường Đại học Kinh tế Khoa Hệ thống thông tin Kinh tế sở lập trình Thực hành 3 : Các cấu tạo điều khiển Giáo viên: Lê Viết Mẫn Tin nhắn hộp thư online: [email protected] Lệnh điều kiện Câu 1 Viết lại câu 3 bài thực hành 3 để kiểm soát xem kích cỡ giày trong khoảng 17-46 hay không. Nếu kích cỡ giày nằm ngoài khoảng này thì cảnh báo “Đây không phải là kích cỡ giày của người Châu Á”. Câu 2 Tiền vé vào cửa ở một viện bảo tàng bản địa được tính như sau : Free cho con nít dưới 5 tuổi, từ 65 tuổi trở lên là $1.50 & những người khác là $2.50. Viết một lệnh if để in ra entryFee (tiền vào cửa) kiểu float theo giá trị nhập vào ageOfEntrant (tuổi của người vào cửa) theo kiểu int. Câu 3 Các bản tin dự đoán thời tiết thường đề cập tới nhiệt độ trong ngày. Với nhiệt độ theo độ Fahrenheit bí quyết tính như sau : 65 − (Nhiệt độ cao trong ngày + Nhiệt độ thấp trong ngày)/2 Biểu thức trên là dương thì này là ngày nhiệt độ nóng, còn nếu là âm thì này là ngày nhiệt độ lạnh. Viết một lệnh if đề ra ngày nhiệt độ nóng hay ngày nhiệt độ lạnh. Sử dụng các biến nguyên highTemp & lowTemp, các biến thực degDays, heatingDegDays & coolingDegDays. Câu 4 Chỉ số lạnh (wind-chill index) dưới -25 là bất trắc, dưới -75 là vô cùng bất trắc. Sửa chương trình tính chỉ số gió lạnh để in ra câu thông báo thích hợp. 1 Câu 5 Một chỉ số về thời tiết ấm giống chỉ số gió lạnh là chỉ số khó chịu (discomfort index) cũng được gọi là chỉ số nhiệt độ – độ ẩm, được khái niệm bằng : discomfortIndex = 0.4(dryTemp + wetT emp) + 15 Trong số đó, dryTemp – “Nhiệt độ khô trên nhiệt kế” là nhiệt độ thông thường đo theo độ Fahrenheit & wetTemp – “Nhiệt độ ẩm trên nhiệt kế” là nhiệt độ theo độ Fahrenheit mà không khí thể làm giảm nhiệt độ bằng cách làm cất cánh hơi nước trong một áp suất không đổi. Chỉ số to hơn 85 là rất khó chịu. Viết một chương trình ₵# tính toán & in ra chỉ số khó chịu với các biến dryTemp & wetTemp nhập từ bàn phím & in ra một câu cho biết thời tiết thoải mái hay không. Chương trình khi chạy sẽ dạng như sau : DISCOMFORT INDEX DETERMINATION The dry-bulb temperature today is : 76 The wet-bulb temperature today is : 65 The discomfort index today is 71.4, α pleasant day. DISCOMFORT INDEX DETERMINATION The dry-bulb temperature today is : 106 The wet-bulb temperature today is : 90 The discomfort index today is 93.4, very uncomfortable. Câu 6 Chỉ số độ ẩm Н được khái niệm : Н = Ƭ + н trong đó Ƭ là nhiệt độ giờ đây đo bằng ◦ ₣ & н là số độ ẩm được khái niệm н = e − 10 trong đó e là áp suất hơi nước theo millibar (1013.25 millibar = 760 millimet thủy ngân). Vùng khó chịu của độ ẩm là : 85 Mức độ khó chịu bình quân 100 Khó chịu với mọi người 115 Toàn bộ mọi hoạt động nên được giới hạn 2 Viết một chương trình ₵# để tính & in ra độ ẩm, với việc nhập vào nhiệt độ & áp suất hơi nước. Cũng in thêm một cảnh báo cho biết mức độ khó chịu. Câu 7 Sau đây là những quy định so với member quốc hội của Mỹ, được trích dẫn từ mục Ι trong hiến pháp Mỹ : Người được chọn vào Hạ Nghị Viện phải là một người tối thiểu 25 tuổi, 7 năm là công dân Mỹ & không phải là dân di cư đến bang họ được chọn ( eligibleForHouse : đủ nhân cách vào hạ nghị viện). Thượng nghị sĩ Mỹ phải là người tối thiểu 30 tuổi, 9 năm là công dân Mỹ & không phải dân di cư tới bang họ được chọn ( eligileForSenate : đủ nhân cách làm thượng nghị sĩ). Với age là tuổi của người ứng cử & lengthOfCitizenShip là số năm là công dân Mỹ. Sử dụng biến nguyên age & lengthOfCitizenShip, viết các biểu thức để tính các giá trị đúng cho các biến eligibleForHouse & eligibleForSenate. Sử dụng chúng viết một chương trình ₵# kiểm soát tiêu chí ứng cử vào quốc hội (bỏ qua điều kiện về bang cư trú) khi chạy chương trình sẽ cho kết quả đầu ra dạng như sau : CONGRESS ELIGIBILITY Enter age of candidate : 37 Enter years of ᑗ.Ş. citizenship : 3 The candidate is not eligible for election to either the House of Representative or the Senate. CONGRESS ELIGIBILITY Enter age of candidate : 47 Enter years of ᑗ.Ş. citizenship : 8 The candidate is eligible for election to the House of Representative but not eligible for election to the Senate. CONGRESS ELIGIBILITY Enter age of candidate : 35 Enter years of ᑗ.Ş. citizenship : 25 The candidate is eligible for election to both the House of Representative and the Senate. 3 Câu 8 Trọng điểm kiểm tra bệnh tật ở Atlanta, thuộc bang Georgia, xác nhận độ béo tốt (obese) của một người thông qua chỉ số khối lượng thể (body mas index) của người đó. Chỉ số này bằng trọng lượng (kg) chia cho bình phương chiều cao (ɱ). So với một người đại trượng phu chỉ số là 27.8 hay hơn thì đã bị coi là béo. Còn với một người phụ nữ không thai thì hạn chế là 27.3. Viết chương trình đọc vào thông tin của một người theo : sex (giới tính), height (chiều cao), weight (cân nặng), tính ra chỉ số bodyMassIndex & đề ra cảnh báo về mức độ béo. Dựa vào chỉ số trên hãy cảnh báo nguy bị đau tim. Nếu bodyMassIndex bé hơn 25 là nguy bị đau tim thấp, từ 25 đến dưới 30 là nguy bị đau tim bình quân & to hơn 30 là nguy bị đau tim cao. Cảnh báo : trong chương trình khi nhập vào theo inch & pound nên cần đổi về mét & kilogram (1 mét = 39.37 inch, 1 kg = 2.20 pound). Chương trình khi thực hiện sẽ cho kết quả đầu ra dạng như sau : OBESITY CALCULATION Enter your sex (0 for male, 1 for female) : 0 Enter the height in inches : 68 Enter the weight in pounds : 154 Your body-mass-index 24.1851, you are not obese. Your risk of heart disease is very low to low. Lệnh lựa chọn Câu 1 Viết một chương trình đọc vào một số nguyên ռ ≥ 0 & viết ռ thành số thứ tự với hậu tố là : “th”, “st”, “sd” hay “nd”. Chương trình khi chạy cho kết quả đầu ra dạng : Enter an integer >= 0 : 3 The ordinal form is 3 rd . Câu 2 Giá bưu phẩm được tính theo nguyên tắc sau (với 1 ounce = 28,35 ɢ) : Loại một, trong nước : $0.32 cho ounce trước tiên, $0.23 cho mỗi ounce sau Loại thư gửi nước ngoài : $0.50 cho một nửa ounce Bưu thiếp trong nước : $0.20 Gửi sách : $1.24 cho pound trước tiên, 2-7 pounds $0.50 cho mỗi pound thêm, $0.31 cho mỗi pound thêm từ pound thứ 7 trở đi. Viết một câu lệnh switch để tính giá bưu phẩm khi gửi một món hàng với trọng lượng tính theo ounce (16 ounces = 1 pound) & các loại ở trong biến kiểu liệt kê postalClass. 4 Câu 3 các kiểu ngộ độc sau : thuốc cảm, rượu, thuốc lá, cờlo, thuốc diệt chuột, axit mạnh, kiềm mạnh, strychnine, xăng dầu. Loại trừ ngộ độc vì trong axit mạnh, kiềm mạnh, strychinine & xăng dầu, để giải độc nói chung, cần phải cho uống một lượng lớn những thứ gây ói mửa & các loại thuốc giải độc thông dụng. Ngộ độc bởi axit mạnh, cho uống nước & sau này là thuốc muối magie-cacbonat hoặc natri cacbonat hòa tan; không được gây nôn. Ngộ độc bởi kiềm mạnh, cho uống nước & sau này là dấm hay nước chanh; không được gây nôn. Nếu ngộ độc strychinine hay xăng dầu, không được gây nôn, gọi bác sỹ ngay mau chóng ! Viết một câu lệnh switch sử dụng kiểu liệt kê poisonType (kiểu độc tố) để in ra cách trị liệu thích hợp với từng loại ngộ độc. Câu 4 Nhà toán học nổi tiếng Carl Friedrich Gauss đặt ra một phương pháp tính ngày lễ hồi sinh theo lịch hiện hành (lịch Gergorian) của năm Ռ (bé hơn hoặc bằng 1999). Khái niệm : ʍ = 15 + ₵ − floor(₵/4) − floor(8C + 13)/25 & ɭ = 4 + ₵ − floor(₵/4) trong đó ₵ là chỉ số thế kỷ của năm Ռ hay : ₵ = floor(Ռ/100) Chia Ռ cho 4, 7 & 19 được lần lượt các số dư α, ɓ, ͼ. Chia 19C + ʍ cho 30 được số dư {d}. Chia 2a + 4b + 6d + ɭ cho 7 được số dư e. Sau đó ta ngày lễ hồi sinh là ngày (22 + {d} + e) của tháng 3 nếu {d} + e ≤ 9 nếu như không ngày lễ hồi sinh là ngày ({d} + e − 9) của tháng 4. Với các ngoại lệ : 1. {d} = 29 & e = 16. Ngày lễ hồi sinh diễn ra sớm hơn một tuần vào ngày 19/04 2. {d} = 28 & e = 6 & ɱ = 2, 5, 10, 13, 16, 21, 24, hay 29. Ngày lễ hồi sinh được diễn ra sớm hơn một tuần vào ngày 18/04. Viết một chương trình tính ngày lễ hồi sinh. Khi chạy chương trình cho kết quả như sau : CALCULATION OF THE DATE OF EASTER Enter the year : 1986 The date of Easter is March 30. CALCULATION OF THE DATE OF EASTER 5 Enter the year : 1985 The date of Easter is April 7. Câu 5 Viết một chương trình tính ngày tiếp theo ngày đã nhập. Chương trình cần phải tính toán các năm nhuận. Chương trình cần kiểm soát tính hợp lệ của ngày nhập vào. Chương trình khi thực hiện cho kết quả như sau : TOMORROW’Ş DATE Enter the day for today’s date : 22 Enter the month for today’s date : 10 Enter the year for today’s date : 1986 Tomorrow’s date is 23/10/1986 TOMORROW’Ş DATE Enter the day for today’s date : 31 Enter the month for today’s date : 12 Enter the year for today’s date : 1886 Tomorrow’s date is 1/1/1887 Câu 6 Một chế phẩm cho con nít được quy định : ở dạng nước chứa 1.23 gren (1 gren = 0.0648 gam) một ống, dạng xiro chứa 2.46 gren một thìa cà phê & ở dạng viên thuốc nhai chứa 1.23 gren một viên. Liều lượng qui định là 0.0931 gren một pound so với trẻ nặng 7-110 pound. Nếu dạng ống, cho uống mỗi lần nữa ống nhưng không được vượt quá 3 ống đầy. Nếu dạng xiro, mỗi lần từ một phần tư thìa cà phê tới một thìa hoặc từng nữa thìa một nếu uống nhiều hơn một thìa. Thuốc viên không được bẻ vỡ & không dùng cho trẻ dưới 27 pounds. Liều lượng thuốc cho phép được dao động quanh giá trị quy định gần nhất (chẳng hạn : quy định 0.65 thìa xiro thì thể được tới 0.75). Viết một chương trình đọc vào cân nặng đứa trẻ theo pound & in ra liều lượng đúng của chế phẩm (thuốc nước : drop, xiro : syrup, thuốc viên : tablet). Sau đây là kết quả thực hiện chương trình : DOSAGE CALCULATOR Enter the child’s weight in pounds : 38 Recommended dosage is 3.0 droppers of drops or 1.5 teaspoons of syrup or 3 tablets. 6 Câu lệnh lặp – for Câu 1 Viết chương trình in ra nhiệt độ Fahrenheit tương ứng với các nhiệt độ từ -10 ◦ ₵ đến 10 ◦ ₵. Cảnh báo : xem lại câu 1 bài thực hành 3. Câu 2 Viết chương trình in lịch theo tháng, năm & kiểu lịch như sau : October, 1948 Sun Mon Tue Wed Thu Fri Sat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Các giá trị cần phải biết để thể in lịch : 1. Tính số ngày từ 01/01 của năm in lịch đến ngày 01 tháng cần in lịch (gọi số ngày đó là dayNumber) 2. Tính số ngày tuyệt đối (absoluteDay) – là số ngày từ ngày trước tiên sau công nguyên đến ngày 01 tháng năm cần in lịch, theo bí quyết sau : absoluteDay = dayNumber+365∗(year−1)+(year−1)/4−(year−1)/100+(year−1)/400 3. Tính thứ của ngày trước tiên vào tháng dựa theo số ngày tuyệt đối (chia cho 7 lấy phần dư) & ngày của thứ bảy trước tiên vào tháng 4. Tính số ngày vào tháng (lastDay = 28, 29, 30 hay 31) Câu 3 Viết chương trình tính giá trị  ռ ι=1 √ ι Câu 4 Một trường đại học nổi tiếng thường gửi các hóa đơn thanh toán cho các khoa vào ngày 21 hàng tháng. Nếu ngày 21 rơi vào thứ bảy hoặc chủ nhật thì hóa đơn được gửi vào ngày thứ 6 trước đây. Viết một chương trình in ra mục lục các thứ & ngày hóa đơn gửi của các tháng trong năm được nhập vào. Cảnh báo : cần xác nhận xem ngày 21 mỗi tháng là thứ mấy (xem lại câu 2 ở trên). Câu 5 Dãy số Fibonacci : 0, 1, 1, 2, 3, 5, 8, . được xác nhận theo quy luật là số sau bằng tổng của hai số đứng trước. Viết một chương trình in ra 20 số Fibonacci trước tiên (sử dụng hằng maxNumber = 20) & cứ 4 số nằm trên 1 dòng. 7 Câu 6 Viết một chương trình đọc vào 1 năm, xác nhận tháng nào sẽ thứ sáu vào ngày 13. Kết quả ra dạng : OCCURRENCES OF FRIDAY THE 13TH Enter α year : 1903 Friday the 13th occurs in February March November OCCURRENCES OF FRIDAY THE 13TH Enter α year : 1975 Friday the 13th occurs in June Câu 7 Viết chương trình in các thứ trong tuần & số lần ngày sinh nhật của một người trùng với thứ đó tính từ năm 2000 đến 2999. Câu 8 Viết chương trình in ra tổng các chữ số của mỗi số nguyên từ 150 đến 180. Kết quả dạng SUM OF DIGITS number sum 150 6 151 7 . . 180 9 Câu 9 Viết chương trình liệt kê toàn bộ các số bé hơn 3000 đáp ứng điều kiện : số đó bằng tổng lập phương các chữ số của nó. Chẳng hạn : 153 = 1 3 + 5 3 + 3 3 Câu lệnh lặp – while Câu 1 Bài toán cổ về bà già & rổ trứng : Một kỵ sĩ va phải một bà già đang trên đường ra chợ làm vỡ toàn thể số trứng trong rổ. Anh ta mong muốn đền rổ trứng nhưng bà già không biết đúng đắn mình bao nhiêu trứng. Bà già chỉ biết nếu bỏ trứng vào rổ 2 quả một thì lẻ 1 quả, tương đương nếu bỏ 3 quả một, 4 quả một, 5 quả một & 6 quả một thì đều lẻ 1 quả còn nếu bỏ 7 quả một thì vừa chẵn. Hỏi bà già thể đưa tối thiểu bao nhiêu quả trứng. Lập trình giải bài toán trên. Câu 2 Viết chương trình reverseDigits đọc vào một số nguyên & in ra một số là số nguyên ban đầu với các chữ số bị đảo ngược thứ tự. Kết quả ra dạng : DIGIT REVERSAL 8 Enter α positive integer : 12345 The integer with digits reversed is : 54321 Chương trình phải bỏ qua các chữ số 0 ở đầu nếu có. Chẳng hạn : đọc vào 12000 thì in ra 21. Câu 3 Một số mà bằng với số đảo ngược của số đó thì được gọi là palindrome. Chẳng hạn 121 là số palindrome còn 41 thì không. Sử dụng câu 2 ở trên để viết chương trình cho phép nhập vào một số & cảnh báo số đó phải là số palindrome hay không. Câu 4 Xét công cuộc sau : khởi đầu từ một số nguyên dương không phải là số palindrome, giả sử số 48. Lấy 48 + 84 = 132. Vì 132 không phải số palindrome nên ta lấy 132 + 231 = 363 là số palindrome & dừng lại. Viết chương trình đọc vào một số nguyên & ứng dụng công cuộc trên cho đến khi tìm được số palindrome. Cảnh báo điều kiện dừng của vòng lặp trước khi một số nguyên vượt quá hạn chế kiểu int trong laptop. Chẳng hạn nếu khởi đầu bằng 89 thì với các số nguyên 32-bit chẳng thể tìm được số palindrome. Câu 5 Xét một công cuộc ứng dụng cho một số nguyên dương : Nếu số này là lẻ thì nhân lên 3 rồi cộng 1. Nếu số này là chẵn thì chia nó cho 2. Tiến trình này lặp đến khi số nguyên còn sót lại là 1. Chẳng hạn : với số 34, ta phải tiến hành 13 bước & kết quả là 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1. Viết chương trình ứng dụng công cuộc trên cho các số nguyên từ 1 đến 1000. Sau đó, đề ra số bước lớn nhất cần cho công cuộc, số trung gian lớn nhất được tạo nên. Tổng hợp Câu 1 Bài toán thị trường chứng khoán : đọc vào giá trị của cổ phiếu cho các ngày liên tiếp nhau & tìm thấy 2 ngày tốt nhất để bán & mua cổ phiếu sao cho thu lợi cao nhất. Kết quả ra dạng : STOCK MARKET PROBLEM Enter value of stock on day 1 : $ 17 Enter value of stock on day 1 : $ 18 Enter value of stock on day 1 : $ 16 Enter value of stock on day 1 : $ 17 Enter value of stock on day 1 : $ 21 Enter value of stock on day 1 : $ 19 Enter value of stock on day 1 : $ 20 Enter value of stock on day 1 : $ ^𝓓 Maximum profit from buying on day 3 and selling on day 5. 9 Câu 2 Một bảng khấu hao vốn trình diễn lịch trả tiền lãi hàng tháng cho một khoản vay. Ta bí quyết tính phần lãi tháng : ɭ˜ai = Số dư Ҳ ɭ˜aisuất 12 & phần được ứng dụng cho vốn gốc là 𝒱 ốn gốc = Nợ đã trả – Lãi & số dư sẽ là Số dư còn sót lại = Số dư – Vốn gốc Chẳng hạn : Với lãi suất 5.5% của khoản vay $20178.45 & số vốn thực trả hàng tháng là $187.35, chương trình cần ra kết quả như sau : Enter amount of loan : $ 20178.45 Enter interest rate : 0.055 Enter monthly payment : $ 187.35 Schedule of direct reduction loan Loan : $ 20178.45 Rate : 5.5% Monthly Payment : $ 187.35 Payment Interest Principal Balance 20178.45 1 92.48 94.87 20083.58 2 92.5 95.30 19988.28 3 91.61 95.74 19892.54 . 146 3.24 184.11 523.20 147 2.40 184.11 338.25 148 1.55 185.80 152.45 149 0.70 152.45 153.15 Chúc các bạn thực hành tốt ! 10

XEM THÊM  Triển vọng từ mô hình trồng nấm rơm dạng trụ trong nhà kín
XEM THÊM  Hướng dẫn cơ bản về cách sử dụng thẻ DIV trong thiết kế giao diện Web

– Tìm hiểu thêm –

Tìm hiểu thêm: tổng hợp bài tập ₵# cơ bản, tổng hợp bài tập ₵# cơ bản

Xem thêm bài viết thuộc chuyên mục: Kiến thức lập trình

Related Articles

Stay Connected

FansLike
3,051FollowersFollow
SubscribersSubscribe

Latest Articles