Đề: Cho $\triangle{DEF}$ nhọn, ba đường cao DM, EN, FP cắt nhau tại I.
a) Chứng minh $\triangle{DEN} \sim \triangle{DFP}$
b) Chứng minh $EI.MF = MI.FD$
c) Cho PE = 7cm, PD = 18cm, PF=24cm. Tính PN
Giải:
Đề: Cho $\triangle{DEF}$ nhọn, ba đường cao DM, EN, FP cắt nhau tại I.
a) Chứng minh $\triangle{DEN} \sim \triangle{DFP}$
b) Chứng minh $EI.MF = MI.FD$
c) Cho PE = 7cm, PD = 18cm, PF=24cm. Tính PN
Giải:
Đề:
Cho
a) Chứng minh $\triangle{AEC} \sim \triangle{BFC}$
b) Chứng minh $\widehat{BAC} = \widehat{FEC}$
c) Gọi M là trung điểm BC, qua H vẽ đường thẳng a vuông góc với HM, qua C kẻ đường thẳng b song song với đường thẳng a, b cắt AH và AB lần lượt tại N và D. Chứng minh: $NC=ND$
Bài giải:
Đề:
Cho $\triangle{ABC}$ nhọn (AB < AC) có các đường cao AD, BE cắt nhau tại H
a) Chứng minh $\triangle{HAE} \sim \triangle{HBD}$
b) Kẻ $EK \perp BC$ tại K. Chứng minh $KE^2 = KB.KC$
c) Gọi M là trung điểm của AB. Kẻ $DI \perp AC$ tại I. Gọi N là giao điểm của IK và MC. Chứng minh: N là trung điểm của IK
Bài giải:
Đề:
Cho $\triangle{ABC}$ vuông tại A (AB < AC) có đường cao AE
a) Chứng minh: $\triangle{ABC} \sim \triangle{EAC}$ và $AE^2=BE.EC$
b) Trên tia đối BA lấy điểm O sao cho $BA = BO$. Kẻ $AD \perp OC$ tại D. Chứng minh $\widehat{EAD} = \widehat{BCO}$
c) Qua A kẻ đường thẳng vuông góc với OE cắt BC tại S. Chứng minh S là trung điểm của EC
Bài giải:
Đề:
Cho $\triangle{ABC}$ nhọn (AB < AC) có ba đường cao AD, BE, CK cắt nhau tại H
a) Chứng minh: $\triangle{HEA}$ đồng dạng $\triangle{HDB}$
b) Chứng minh:$CA.CE=CB.CD$ và $\widehat{AEK} = \widehat{ABC}$
c) Gọi G là giao điểm của KE và BC, S là trung điểm BC. Chứng minh:$DS.DG=DB.DC$
Bài giải:
Đề bài:
Cho $\triangle{ABC}$ vuông tại A (AB < AC) có đường cao AH. Vẽ BD là đường phân giác trong của $\triangle{ABC}$, BD cắt AH tại I.
a) Chứng minh: $\triangle{ABC}$ đồng dạng $\triangle{HBA}$
b) Cho HB = 9cm, HC = 16cm. Tính AB, AH và chứng minh: $BI.BA = BH.BD$
c) Trên tia đối AH lấy điểm M, vẽ tia $Cx \perp MB$ tại K. Lấy E trên tia Cx sao cho $BE=BA$. Chứng minh: $\triangle{BEM}$ vuông
Bài giải:
Trong một vài trường hợp mình cần sinh chuỗi ngẫu nhiên dài 8 kí tự, 16 kí tự chẳng hạn. Nếu như ta chấp nhận tất cả các byte trong các kí tự này thì ta sử dụng lớp UUID. Tuy nhiên nếu bài toán của chúng ta chỉ chấp nhận các kí tự alphanumeric (kí số và kí tự trong bảng chữ cái Tiếng Anh) thì chúng ta sử dụng đoạn mã sau đây (Swift 4.2+):
func randomString(length: Int) -> String {
let letterList = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
return String((0..<length).map{ _ in letterList.randomElement()! })
}
Có bao giờ bạn bị tình trạng như ảnh chưa?
observable.retry { errors in
return errors.enumerated().flatMap{ (index, error) -> Observable<Int64> in
if error is AppError {
let appError = error as! AppError
if appError.code == AppError.retryError.code {
return index < maxRetry ? Observable<Int64>.timer(retryDelay,
scheduler: MainScheduler.instance) : Observable.error(error)
}
}
return Observable.error(error)
}
}
}
}
Trên đoạn code trên nếu muốn retry lại thì observable cứ quăng error là AppError.retryError thì observable được lặp lại.
<key>UIStatusBarHidden</key>
<true/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
Dễ không các bạn? Chúc các bạn thành công.
func printName() {
let name:String?="Folami"
if let name {
print(name)
}
}
Mà code đúng phải là:
func printName() {
let name:String?="Folami"
if let name = name {
print(name)
}
}
Trong Swift 5.7 thì các bác cứ thoải mái dùng cú pháp như trong đoạn code đầu tiên nha. Cách ghi này gọi là dạng viết tắt của Optional Binding
Tuy nhiên có một giới hạn là chúng ta không thể truy xuất đến property của một đối tượng. Điều này có nghĩa là cách viết tắt của Optional Binding không hỗ trợ Optional Chaining. Như vậy đoạn code sau sẽ báo lỗi khi biên dịch:
class Person {
var name:String?
init(name:String){
self.name = name
}
}
func printName() {
let name:String?="Folami"
if let name {
print(name)
}
}
let author = Person(name:"Folami")
if let name = author.name {
print(name)
}
if let author.name {
//Se bao loi dong phia tren
print(author.name)
}