Cách Sử Dụng Google Meet Trên Máy Tính

Google Meet hiện nay là một trong những phần mềm dạy học online hiệu quả được nhiều nhà trường sử dụng do cách dạy và tham gia rất đơn giản, khi chúng ta chỉ cần tạo tài khoản Google để tham gia Google Meet. Dưới đây là toàn bộ hướng dẫn sử dụng Google Meet trên máy tính.

1. Cách Thiết Lập Lớp Học Online Trong Google Meet

Bước 1:

Để tạo lớp học online trên Google Meet thì thầy cô giáo truy cập ngay vào link dưới đây.

Sau đó chúng ta đăng nhập tài khoản Google để có thể sử dụng được Google Meet.

Bước 2:

Sau đó tại giao diện của Google Meet chúng ta nhấn vào Cuộc họp mới rồi nhấn tiếp vào Bắt đầu một cuộc họp tức thì.

Bước 3:

Sau đó bạn sẽ được yêu cầu cho phép sử dụng micro và máy ảnh trên trình duyệt, bạn nhấn vào Cho phép.

Bước 4:

Ngay sau đó chúng ta đã truy cập vào lớp học trên Google Meet để giảng dạy trực tuyến.

2. Cách mời người khác tham gia Google Meet

Bước 1:

Tại giao diện trên Google Meet ngay sau khi vừa mới tạo xong lớp học trực tuyến bạn sẽ nhìn thấy một khung để thêm người khác vào Google Meet. Nhấn Thêm người khác để thêm học sinh.

Bước 2:

Lúc này hiển thị giao diện để nhập địa chỉ email những người muốn tham gia vào lớp học online này. Bạn nhập địa chỉ email rồi chọn Gửi email.

Ngoài việc thêm địa chỉ email thì chúng ta cũng có thể sao chép URL lớp học rồi gửi vào trong nhóm, chẳng hạn như nhóm trên Zalo để học sinh truy cập nhanh chóng hơn.

3. Cách Bật, Tắt Camera Và Micro Google Meet

Bước 1:

Trong quá trình dạy học online thì thầy cô giáo có thể bật tắt mic và camera thông qua biểu tượng micro và camera dưới màn hình.

Bước 2:

Ngoài ra người dùng cũng có thể nhấn vào biểu tượng 3 dấu chấm rồi chọn Cài đặt.

Bước 3:

Khi đó bạn sẽ thấy phần chỉnh Âm thanh với Tùy chọn micro và loa. Chúng ta có thể nhấn Kiểm tra để test loa.

Bước 4:

Tiếp tục nhấn vào Video để chỉnh webcam trên Google Meet.

4. Gửi Tin Nhắn Trong Google Meet

Bước 1:

Tại giao diện Google Meet bạn nhìn sang bên phải sẽ thấy biểu tượng tin nhắn như hình dưới đây.

Bước 2:

Hiển thị giao diện để nhắn tin, nếu thầy cô giáo muốn tất cả học sinh trong lớp có thể nhắn tin thì kích hoạt vào Cho phép mọi người nhắn tin. Nếu không bật tùy chọn này thì chỉ có thầy cô giáo mới được phép nhắn tin cho học sinh mà thôi.

Tin nhắn sẽ chỉ hiển thị với các học sinh trong lớp học và sẽ xóa ngay sau khi cuộc gọi kết thúc

5. Cách Ghim Học Sinh Trong Google Meet

Bước 1:

Tại giao diện trên Google Meet bạn nhấn vào biểu tượng số lượng người tham gia ở góc dưới cùng bên phải màn hình

Bước 2:

Lúc này hiển thị giao diện Mọi người. Tại đây bạn có thể nhấn vào biểu tượng 3 chấm tại người tham gia bất kỳ rồi chọn Ghim vào màn hình.

Bước 3:

Ngoài ra cũng tại giao diện này bạn có thể nhấn Tắt tiếng của tất cả để không ai được phép sử dụng micro, trừ các thầy cô giáo người tổ chức lớp học trực tuyến.

Bước 4:

Tiếp tục nhấn vào Bộ điều khiển của người tổ chức. Tại đây bạn sẽ nhìn thấy tùy chọn chia sẻ màn hình và gửi tin nhắn trò chuyện. Nếu tắt hai tùy chọn này thì học sinh trong lớp sẽ không được phép thực hiện hành động này.

6. Cách Xóa Học Sinh Khỏi Lớp Học Google Meet

Để xóa học sinh, bạn bạn nhấn vào biểu tượng Mọi người tại giao diện này. Tại học sinh muốn xóa khỏi lớp học, nhấn vào biểu tượng 3 chấm rồi chọn Xóa khỏi cuộc họp.

7. Cách Đổi Background Google Meet

Nếu bạn muốn thay đổi background trong Google Meet thì nhấn vào biểu tượng ba chấm rồi chọn Thay đổi nền. Sau đó bạn có thể lựa chọn hình nền muốn sử dụng hoặc làm mờ background

8. Cách Thay Đổi Bố Cục Trong Google Meet

Bước 1:

Bạn cũng nhấn vào biểu tượng ba chấm dọc rồi chọn Thay đổi bố cục

Bước 2:

Lúc này hiển thị giao diện để bạn lựa chọn cách sắp xếp màn hình video khi dạy trực tuyến.

9. Đôi Điều Về Google Meet

Google Meet (trước đây được gọi là Google Hangouts Meet hay GG Meet) là công cụ họp trực tuyến của Google. Bạn có thể tìm thấy nó được liệt kê trong các ứng dụng Google sau khi đăng nhập vào tài khoản Google của mình hoặc tải xuống từ kho ứng dụng trên thiết bị di động.

Google Meet là phiên bản dành cho doanh nghiệp cho nền tảng Hangouts của Google và phù hợp với các doanh nghiệp thuộc mọi quy mô. Giải pháp này cho phép người dùng thực hiện cuộc gọi điện video với tối đa 30 người dùng cho mỗi cuộc họp video độ nét cao.

Ứng dụng cho phép người dùng tham gia các cuộc họp được lên lịch trước từ các sự kiện lịch, chọn liên kết, nhập mã cuộc họp và thậm chí quay số từ điện thoại của họ nếu lời mời bao gồm số điện thoại. Google Meet tích hợp với các phiên bản G-Suite của Google Calendar và Gmail, đồng thời hiển thị danh sách đầy đủ những người tham gia và các cuộc họp đã lên lịch. Nó hiển thị nút “Join” để người dùng kết nối với cuộc họp và cung cấp các tùy chọn để tắt tiếng và video trong cuộc họp.

Google Meet cho phép người dùng quay số điện thoại để truy cập cuộc họp, do đó, cho phép người dùng có kết nối Internet chậm hoặc không có kết nối Internet gọi đến. Tuy nhiên, tính năng này chỉ khả dụng cho khách hàng phiên bản G-Suite dành cho doanh nghiệp.

Trong một tweet vào tháng 3 năm 2021, Google tuyên bố sẽ không giới hạn thời lượng cuộc gọi ở mức 60 phút cho người dùng Google Meet miễn phí nữa. Giới hạn này sẽ bắt đầu lại vào ngày 30 tháng 6 năm 2021. Cho đến lúc đó, bất kỳ ai sử dụng phiên bản miễn phí của dịch vụ sẽ có thể tổ chức các cuộc gọi có thời lượng lên đến 24 giờ (Google gọi đây là “không giới hạn”).

Đây là lần thứ hai Google đẩy lùi việc giới hạn cuộc gọi kể từ khi mở dịch vụ cho người dùng miễn phí vào tháng 4 năm ngoái. Giới hạn 60 phút ban đầu dự kiến ​​có hiệu lực vào cuối tháng 9 năm 2020, nhưng thời hạn đó sau đó đã được lùi lại sang tháng 3 năm sau khi tình hình dịch bệnh vẫn chưa thể kiểm soát.

10. Những Tính Năng Mới Nhất Của Google Meet

Google lưu ý rằng các bản cập nhật mới nhất cho Google Meet sẽ giúp đào sâu và nâng cao trải nghiệm trực tuyến hơn nữa, bất kể mọi người muốn giao tiếp bằng cách nào và ở đâu. Cụ thể, công ty đã công bố sự xuất hiện của các tính năng và giao diện người dùng mới được cung cấp bởi các dịch vụ AI mới nhất của Google.

Tạo trải nghiệm cuộc họp phong phú hơn

Tiếp tục lộ trình đổi mới liên tục trong năm qua, từ tự động tạo phụ đề trực tiếp đến kiểm soát mức độ tương tác mới dành cho sinh viên và các nhà giáo dục, Google hiện đang triển khai giao diện người dùng mới. Bắt đầu từ tháng 5 năm 2021, người dùng laptop và máy tính để bàn sẽ được tận hưởng giao diện người dùng mới với nhiều tính năng dễ truy cập.

Cung cấp Meet for Web mới bao gồm cập nhật nguồn cấp dữ liệu video, các tính năng xem và thuyết trình cũng như những giải pháp để giảm bớt sự mệt mỏi trong cuộc họp. Ví dụ, bạn có thể chọn cách xem chính mình trong cuộc họp video hoặc xóa hoàn toàn luồng video của bạn khỏi màn hình. Cũng sẽ có một cài đặt để cho phép xóa nguồn cấp dữ liệu của riêng mình trên tất cả các cuộc trò chuyện Google Meet.

Để cải thiện sự tự tin của người thuyết trình trong các cuộc họp, Google đã thêm tính năng ghim và bỏ ghim được cải tiến. Khi một tile dành cho việc thuyết trình được bỏ ghim, tile này sẽ giảm xuống cùng kích thước với các tile khác, cho phép xem cuộc hội thoại tốt hơn.

Trong những tháng gần đây, Google cũng đã tung ra một loạt bản cập nhật cho các thiết bị Android và iOS, chẳng hạn như khả năng thay thế nền và tạo cuộc thăm dò ý kiến ​​cho Meet. Trong tương lai, công ty sẽ thêm tính năng thay thế nền video để giúp bạn kiểm soát nhiều hơn những gì đang diễn ra sau lưng trong một cuộc họp.

Hỗ trợ các cuộc họp với Google AI

Theo Google, ưu tiên của trải nghiệm Meet là tạo ra các cuộc họp chất lượng cao, bất kể người dùng đang ở đâu hay sử dụng thiết bị nào. Để cải thiện cuộc gọi video cho những nhân viên phải thường xuyên di chuyển, nhóm phát triển hiện đang khởi động việc áp dụng Data Saver. Đây là một tính năng làm giảm mức sử dụng dữ liệu trên mạng di động, giúp hạn chế chi phí dữ liệu cho những người làm việc trong môi trường di động.

Vào năm 2020, Google đã giới thiệu chế độ ánh sáng thấp cho Meet trên thiết bị di động, sử dụng AI để tự động điều chỉnh trải nghiệm video nhằm giúp người dùng dễ nhìn hơn trong môi trường tối. Giải pháp web của Google Meet hiện tự động phát hiện khi bạn có vẻ như đang ở trong môi trường tối và tăng cường độ sáng để tăng khả năng hiển thị. Tính năng Light Adjustment này sẽ được tung ra cho tất cả người dùng trong vài tuần tới.

Ngoài ra, chức năng Autozoom sẽ hỗ trợ người khác nhìn thấy bạn rõ ràng hơn trong các cuộc họp bằng cách sử dụng AI để phóng to và cải thiện vị trí của bạn trước camera. Nếu bạn di chuyển trong cuộc họp, hệ thống thông minh sẽ tự động điều chỉnh để giữ cho mọi người tập trung vào khuôn mặt của bạn.

Google cho biết họ sẽ tiếp tục phát hành những cải tiến mới trong Google Meet để mang mọi người đến gần nhau hơn.

11. Google Meet Có Filter Không

Tương tự như Facebook, Google Meet cũng được trang bị tính năng filter giúp người dùng có thể sử dụng được những hiệu ứng khuôn mặt bắt mắt thay cho khuôn mặt của mình, thay đổi giao diện ở trên màn hình gọi giúp cuộc gọi trở nên thu hút, hấp dẫn hơn.

Hiện tại, filter trên Google Meet chỉ áp dụng trên phiên bản điện thoại Android, iOS, mà chưa áp dụng trên máy tính. Nếu muốn thì bạn cần cài đặt tính năng này. Cùng tham khảo chi tiết hướng dẫn sử cách dùng filter trên Google Meet dưới đây.

Hướng Dẫn Dùng Filter Trên Google Meet Trên Máy Tính

Điều kiện: Cài tiện ích Filter và Sticker cho Google Meet TẠI ĐÂY

Bước 1: Bạn truy cập vào đường link tải filter ở trên. Bạn nhìn vào góc trên bên phải, click vào “Thêm vào Chrome”

Lúc này, bạn click “Thêm tiện ích” rồi chờ quá trình cài đặt công cụ filter này hoàn tất.

Bước 2: Mở Google Meet trên trình duyệt rồi tham gia vào lớp học, họp online. Tiếp đó, ở góc trên bên trái, bạn nhấn vào biểu tượng dấu cộng như hình ở thanh công cụ Filter for Meet.

Bước 3: Một loạt filter hiện ra, bạn chọn và click vào filter mà bạn muốn thay.

Còn nếu muốn sử dụng sticker thì bạn nhấn biểu tượng ở bên cạnh filter như hình dưới.

Lúc này, bạn cũng làm như chọn filer để thay, bạn click vào sticker bạn thích rồi chờ sticker hiển thị là được.

Hy vọng với chia sẻ trên đây về hướng dẫn dùng filter trên Google Meet trên máy tính, trên điện thoại, các bạn có thể thay filter, sticker dễ dàng hơn. Nếu bạn còn thắc mắc gì về Google Meet thì cùng để lại bình luận ở bài viết phía dưới, chúng tôi sẽ giải đáp cho bạn.

12. Google Meet Có Record Không

Khi dịch Covid-19 bùng phát, cả thế giới thực sự phải tìm cách thích nghi và chuyển đổi sang cách làm việc, học tập mới. Đó là online từ xa.

Google Meet là phần mềm họp, học online chất lượng không kém Zoom. Tuy nhiên, so với Zoom, Meet an toàn hơn về độ bảo mật và “thân thiện” với người dùng Google hơn.

Google Meet cung cấp cho người dùng gần như đủ mọi tính năng của Zoom. Bạn có thể mở một phiên làm việc học online trên Meet ngay tại trình duyệt web hoặc cài app riêng cho Windows, iOS, Android. Google Meet cũng cho phép người dùng chia sẻ màn hình, ghi âm, thậm chí quay video cuộc họp. Bạn có thể dùng mọi tính năng cơ bản của Meet miễn phí, bao gồm cả mã hóa end-to-end.

Như đã nói ở trên, Google Meet cho phép người dùng quay cả video màn hình. Đây là tính năng thực sự tuyệt vời, giúp cả chủ cuộc họp/học online lẫn người tham gia có thể xem lại nội dung sau đó. Cách record trên Google Meet không quá khó. Nếu chưa biết cách, mời bạn tham khảo hướng dẫn ghi màn hình Google Meet dưới đây.

Yêu cầu

  • Tài khoản G Suite
  • Dung lượng trống trong tài khoản Google Drive
  • Là người tổ chức cuộc họp/học online/hội thảo

Bắt đầu quay video trên Google Meet

Bắt đầu ghi hình trong Google Meet khá đơn giản, bạn chỉ cần làm như sau:

Bước 1: Tham gia một cuộc họp/học/hội thảo online trên Google Meet qua link mời, sự kiện trên lịch hoặc mã liên quan. Sau đó, click icon menu 3 dấu chấm ở góc phải dưới màn hình và chọn Record Meeting.

Bước 2: Xác nhận lựa chọn bằng cách click Accept trong Ask for consent. Sau đó, một thông báo sẽ được gửi tới toàn bộ thành viên rằng bạn đang bắt đầu quay video buổi họp online.

Bạn có thể quay lại toàn bộ sự kiện xảy ra trong cuộc họp online để xem lại bất cứ khi nào muốn

Cách dừng ghi hình trên Google Meet

Bước 1: Click menu 3 dấu chấm ở góc phải phía dưới màn hình và chọn Stop Recording.

Bước 2: Xác nhận lựa chọn bằng cách click Stop Recording trong hộp thoại xác nhận hiện ra.

Hoạt động ghi hình sẽ dừng lại và một email kèm link tới file đã lưu sẽ được gửi tới người tổ chức họp và cả bạn. Nếu đó là một sự kiện được đánh dấu trên lịch thì bạn cũng sẽ thấy link này trên đó.

Vị trí lưu bản ghi

Bản ghi cuộc họp/hội thảo/học online qua video trên Google Meet sẽ được lưu vào thư mục Meet Recordings trong Google Drive của người tổ chức.

Nội dung có thể quay lại trên Google Meet
Chỉ người nói chính và bài thuyết trình được ghi lại. Tất cả thành viên khác nằm ngoài phạm vi ghi hình, dù họ có được ghim tại vị trí đầu. Ngoài ra, cửa sổ hay thông báo mà bạn nhận hoặc mở trong khi diễn ra cuộc họp cũng không được ghi lại. Hiện tại, Google Meet chưa hỗ trợ tính năng ghi hình trên mobile.

Người dùng miễn phí có thể quay màn hình Google Meet?

Điều đó tùy thuộc vào loại phiên bản người dùng miễn phí:

  • Nếu đang dùng tài khoản Google miễn phí, bạn không có sẵn chức năng ghi hình.
  • Nếu dùng tài khoản G-Suite, bạn có thể ghi màn hình Google Meet.

Toàn bộ bản ghi sẽ được lưu trong Google Drive và bạn sẽ nhận được liên kết dẫn tới nó qua email. Nếu cuộc họp được bắt đầu bằng sự kiện trên Google Calendar, link đó cũng sẽ được đính kèm vào lịch của bạn. Nhờ đó, mọi thành viên trong cuộc họp đều có thể truy cập file ghi hình đó dễ dàng.

File quay màn hình trên Google Meet có được mã hóa?

Google Meet được quảng cáo là một trong số phần mềm làm việc từ xa hữu ích nhất hiện nay. Google tuyên bố nó bảo mật và an toàn hơn Zoom. Thực tế, đúng như vậy.

Tuy nhiên, hiện hãng chưa cung cấp chuẩn mã hóa end-to-end trong các phiên làm việc hay bản ghi hình hoạt động trên Meet. Video được bảo mật bằng TLS hay Transport Layer Security. Cấp độ mã hóa này đảm bảo không ai có quyền truy cập dữ liệu chưa được bảo vệ. Bằng cách này, các bản ghi hình trên Meet được chuyển sang hình thức mã hóa mà chỉ có thể được giải mã nếu dùng đúng key.

Cách xem, chia sẻ và tải bản ghi hình trên Google Meet

Đầu tiên, bạn cần truy cập file ghi hình cuộc họp trong Meet Recordings, rồi mở nó hoặc tải về máy.

  • Để phát file ghi hình, click vào nó, rồi nhấn nút Play ở trên cùng. Nếu dung lượng video quá lớn, thời gian tải sẽ lâu hơn.
  • Để chia sẻ file với đồng nghiệp, bạn cần chọn tập tin, rồi nhấn nút Share và thêm người muốn chia sẻ hoặc tạo một link chia sẻ bằng cách click Link.
  • Cuối cùng, nếu muốn tải file video, tới More và nhấn Download.

13. Google Meet Có Bị Giới Hạn Thời Gian Không

Hiện tại, không có giới hạn trên nền tảng. Tuy nhiên, các cuộc họp dành cho người dùng miễn phí có thể sẽ ngắn hơn trong tương lai gần.

Năm ngoái, Google đã phát triển nền tảng họp video, Google Meet, miễn phí cho tất cả mọi người. Trước đây, chỉ người dùng G-Suite (bây giờ, Workspace) mới có quyền truy cập vào nền tảng này. Trong bối cảnh của đại dịch, bước đi của Google được chứng minh là rất quan trọng. Người dùng từ khắp mọi nơi có thể tiếp tục cuộc sống của họ bằng Google Meet.

Cho dù bạn đang họp vì cơ quan, trường học hay gặp gỡ xã hội, Google Meet đã trở thành lựa chọn hàng đầu của nhiều người. Bạn không cần một ứng dụng riêng và trong hầu hết các trường hợp, bạn thậm chí không cần tạo tài khoản. Rốt cuộc, hầu hết mọi người đều có tài khoản Google.

Khi Google cung cấp dịch vụ miễn phí cho tất cả mọi người, Google cũng không đặt bất kỳ giới hạn thời gian nào đối với các cuộc gọi. Ngay cả những người dùng có tài khoản miễn phí cũng có thể gặp gỡ liên tục trong tối đa 24 giờ (thực tế là một cuộc gọi không giới hạn).

Ban đầu, Google thông báo rằng họ sẽ chấm dứt cuộc gọi không giới hạn cho người dùng miễn phí. Khi Meet miễn phí ra mắt, Google đã lên kế hoạch áp dụng giới hạn thời gian 60 phút vào cuối tháng 9 năm 2020.

Nhưng công ty đã lùi thời hạn đến tháng 3 năm 2021, một lần nữa do đại dịch. Bây giờ, nhiều người dùng đang tự hỏi liệu thay đổi mới này đã có hiệu lực hay chưa. Cuối cùng thì có giới hạn thời gian cho các cuộc gọi trên Google Meet không? Chà, vẫn chưa. Nhưng sẽ sớm có thôi.

Google đã lùi thời hạn từ tháng 3 đến tháng 6 năm 2021 một lần nữa. Vì vậy, người dùng miễn phí vẫn có thể gặp gỡ liên tục trên Google Meet với các cuộc gọi không giới hạn (tối đa 24 giờ) cho đến cuối tháng này.

Google đã thông báo về việc lùi thời hạn này trên Twitter.

Sau khi hết khoảng thời gian này, nếu công ty không đẩy lùi thời hạn nữa – điều mà bây giờ có vẻ khó xảy ra-người dùng miễn phí sẽ có giới hạn thời gian là 60 phút cho các cuộc gọi trên Google Meet.

Người dùng Google Workspace sẽ vẫn có thể tận hưởng các cuộc gọi điện video không giới hạn trên nền tảng này.

Giới hạn thời gian hoạt động như thế nào trong Google Meet?

Giới hạn thời gian là 60 phút không có nghĩa là người dùng miễn phí sẽ chỉ có thể gặp gỡ trên Google Meet tối đa 60 phút mỗi ngày. Có nghĩa là họ chỉ có thể gặp nhau không bị gián đoạn trong 60 phút. Sau khi hết thời gian, cuộc gọi sẽ tự động ngắt kết nối và bạn sẽ phải bắt đầu một cuộc họp mới và thực hiện lại tất cả các vòng một lần nữa (mời người khác và thừa nhận họ tham gia cuộc gọi).

Giới hạn thời gian dành cho tài khoản miễn phí chỉ áp dụng trong các cuộc họp do chủ sở hữu tài khoản miễn phí tổ chức. Khi người dùng rảnh tham gia các cuộc họp do người dùng Google Workspace tổ chức, họ sẽ không bị ngắt kết nối khỏi cuộc gọi sau một giờ.

Google Meet là một nền tảng tuyệt vời để kết nối với những người khác, bất kể bạn đang sử dụng loại tài khoản nào. Google cũng đã không ngừng bổ sung các tính năng mới để làm cho trải nghiệm thậm chí còn siêu thực hơn.

Cho dù bạn đang bắt đầu cuộc họp cho các buổi làm việc, lớp học hay buổi xem phim, hãy tận hưởng các cuộc gọi không giới hạn với tất cả các tính năng mà nó cung cấp trong khi chúng kéo dài. Sau đó, bạn phải làm quen với nhiều phiên ngắn hơn hoặc bạn có thể trở thành người dùng trả phí.

14. Google Meet Có Quay Màn Hình Được Không

Để hỗ trợ tốt hơn cho việc giảng dạy online trong mùa vi-rút COVID-19. Mới đây phần mềm Google Meet đã cập nhật thêm 1 số tính năng bao gồm:

  • Tăng giới hạn số lượng người tham gia lên 250 người/cuộc gọi video
  • Ghi lại cuộc gọi video

Trong bài viết này Phòng CNTT xin hướng dẫn Thầy/Cô dùng chức năng ghi lại cuộc gọi video để ghi lại buổi học.

Trước khi bắt đầu buổi học Thầy/Cô bật chức năng ghi lại buổi học bằng cách vào mục tùy chọn sau đó click chọn ghi lại cuộc họp

sau khi click vào ghi lại cuộc họp hệ thống hiện thông báo yêu cầu đồng ý thầy cô vui lòng click vào chấp nhận

Thầy/Cô chờ tầm 5s sẽ xuất hiện biểu tượng ghi hình nằm phía trên cùng bên trái báo hiệu hệ thống bắt đầu ghi.

Sau khi kết thúc buổi học Thầy/Cô tắt chức năng ghi bằng cách vào mục tùy chọn và click vào Dừng ghi

Một bảng thông báo xác nhận dừng ghi lại buổi học này thầy cô vui lòng click vào Dừng ghi

Sau khi kết thúc việc ghi hệ thống sẽ biên tập lại thành file video. Và khi đã hoàn thành Google sẽ lưu file video này vào 1 thư mục Google tự tạo trên Google Drive của tài khoản Thầy/Cô dùng để tạo buổi học. Đồng thời Google cũng gửi 1 email thông báo đến Thầy/Cô

15. Google Meet Có Background Không

Google Meet có tùy chọn đổi background để thay đổi phông nền video với những phông nền có sẵn hoặc lựa chọn hình ảnh từ trên máy tính, điện thoại để làm phông nền Google Meet. Ngoài tùy chọn đổi background Google Meet thì người dùng cũng có lựa chọn làm mờ nền Google Meet nếu không muốn dùng phông nền đằng sau.

Việc dùng phông nền Google Meet sẽ giúp chúng ta che được cảnh thật ở đằng sau, hạn chế để lộ những cảnh vật bạn không muốn hiển thị trên màn hình khi tham gia Google Meet ngoài việc dùng filter trên Google Meet.

Bước 1:

Tại giao diện trên Google Meet điện thoại bạn tạo cuộc họp như bình thường.

Bước 2:

Trong giao diện họp tại video nhỏ dưới góc màn hình bạn sẽ nhìn thấy biểu tượng hình nền như dưới đây. Nhấn vào biểu tượng này để chọn background khi học online trên Google Meet.

Lúc này chúng ta sẽ nhìn thấy các tùy chọn hình nền cho Google Meet để sử dụng. Bạn nhấn vào hình nền muốn sử dụng để học online Google Meet.

Bước 3:

Hình nền sẽ che đi cảnh vật thật và thay thế bằng hình nền mà chúng ta đã chọn. Hình ảnh của bạn sẽ hiển thị đè lên hình nền. Có rất nhiều chủ đề hình nền để chúng ta lựa chọn. Nếu không muốn dùng hình nền thì nhấn vào biểu tượng hình tròn gạch chéo ở đầu danh sách là được.

Bước 4: Để lấy ảnh trong điện thoại làm background, chúng ta nhấn vào dấu cộng và chọn ảnh muốn làm background cho Google Meet.

16. Google Meet Có Ghi Âm Không

Sau thời kỳ bùng nổ mạnh mẽ trong lĩnh vực làm việc từ xa, việc sử dụng các cuộc gọi điện video để đưa ra các quyết định về công việc và cộng tác trong một nhóm đã phát triển rất nhiều. Trong trường hợp này, một trong những nền tảng được sử dụng nhiều nhất là Google Meet, được nhiều công ty trên thế giới sử dụng cho cả công việc lẫn lớp học và các nhiệm vụ tương tự.

Một ý tưởng thú vị đi qua khả năng ghi âm cuộc gọi. Bằng cách này, có thể tham khảo nội dung của họ sau này, và do đó không bỏ sót bất cứ thứ gì, ngoài ra có thể sử dụng cho bất kỳ mục đích nào. Theo nghĩa này, ngoài các lựa chọn thay thế, chẳng hạn như tùy chọn ghi lại màn hình máy tính, có thể là một ý kiến ​​hay khi sử dụng chức năng mà Google bao gồm, vì vậy chúng tôi chỉ cho bạn cách bạn có thể dễ dàng lấy được nó.

Google Meet: để bạn có thể dễ dàng ghi lại cuộc họp

Như chúng tôi đã đề cập, khi sử dụng công cụ Google Meet để gặp gỡ, có một tùy chọn mà bạn có thể nhận được bản sao hoàn chỉnh của cuộc trò chuyện để sử dụng sau này. Tuy nhiên, điều quan trọng cần lưu ý là Bạn phải là quản trị viên cuộc họp để bắt đầu ghi hoặc là giáo viên trong trường hợp có giấy phép giáo dục.

Một trong những yêu cầu cơ bản khác khi bắt đầu ghi lại Google Meet là dựa trên giấy phép Google Workspace. Để ghi âm cuộc gọi, công ty hoặc trung tâm giáo dục của bạn phải có một trong các giấy phép sau: Thông tin cơ bản, Tiêu chuẩn dành cho doanh nghiệp, Tiêu chuẩn dành cho doanh nghiệp, Thông tin cơ bản về doanh nghiệp, Tiêu chuẩn dành cho doanh nghiệp, Enterprise Plus, Cơ bản về giáo dục hoặc Education Plus.

Bằng cách này, nếu cả hai yêu cầu được đáp ứng, có thể bắt đầu ghi âm cuộc gọi. Để làm được điều này, bạn phải nhấn một lần trong cuộc họp vào 3 điểm xuất hiện ở phần dưới bên trái, sau đó trong menu thả xuống, hãy chọn chức năng “ghi lại cuộc họp”. Khi làm như vậy, bạn phải lưu ý rằng những người tham gia sẽ nhận được thông báo và bạn có thể kết thúc quá trình ghi bất kỳ lúc nào từ chính trang web này. Sau đó, tập tin sẽ được xử lý và bạn có thể sử dụng nó bất cứ lúc nào.

16. Google Meet Có Share Màn Hình Được Không

Những lợi ích khi chia sẻ màn hình Google Meet trong lúc học tập và làm việc:

  • Tất cả thành viên tham gia Google Meet đều có thể nhìn thấy tài liệu bạn chia sẻ.
  • Chia sẻ màn hình trên Google Meet trên máy tính, điện thoại trong lúc học và làm việc giúp cho thầy, cô giáo chia sẻ bài giảng đến học sinh
  • Ngược lại, học sinh cũng có thể chia sẻ bài tập của mình đến với bạn bè và thầy cô.

Hướng dẫn chia sẻ màn hình Google Meet

Bước 1: Đầu tiên, thầy cô giáo tạo lớp học trên Google Meet và yêu cầu học sinh tham gia lớp học trên Google Meet.

Sau khi đầy đủ học, để chia sẻ màn hình, chỉ cần nhấn biểu tượng Trình bày ngay.

Bước 2: Màn hình sẽ hiển thị 3 tùy chọn sau:

  • Toàn bộ màn hình của bản: Bạn có thể chia sẻ toàn bộ nội dung hiển thị trên màn hình máy tính của mình.
  • Một cửa sổ: Bạn có thể tùy chọn 1 cửa sổ trình duyệt đang mở trên máy tính để chia sẻ.
  • Một thẻ: Bạn chọn 1 tab đang mở trên máy tính để chọn chia sẻ video hoặc hình ảnh động.

Bước 3: Bạn có thể chọn 1 trong 3 tùy chọn trên và chọn nội dung chia sẻ, nhấn vào nội dung muốn chia sẻ và chọn Chia sẻ bên dưới.

Bước 4: Khi đó, nội dung bạn muốn chia sẻ được truyền đến người tham gia trên Google Meet.

Nếu bạn muốn dùng chia sẻ màn hình, nhấn chọn Dừng chia sẻ màn hình

17. Google Meet Có An Toàn Không

Việc đảm bảo an toàn cho bạn trong môi trường mạng có nghĩa là bảo vệ thông tin và tôn trọng quyền riêng tư của bạn. Đó là lý do tại sao trong mỗi sản phẩm Google tạo ra, chúng tôi luôn chú tâm đến việc bảo mật thông tin của bạn, xử lý thông tin một cách có trách nhiệm và giúp bạn nắm quyền kiểm soát. Đội ngũ của chúng tôi nỗ lực từng ngày để đảm bảo các sản phẩm của Google an toàn bất kể bạn đang làm gì — duyệt web, quản lý hộp thư đến của bạn hay nhận thông tin chỉ đường.

Chúng tôi sử dụng các biện pháp bảo mật đẳng cấp thế giới để bảo vệ thông tin của bạn. Bạn luôn có thể kiểm soát các chế độ cài đặt quyền riêng tư trong Tài khoản Google của mình.

Một trải nghiệm hữu ích và phù hợp hơn với bạn

Khi bạn sử dụng Google Meet, chúng tôi sẽ xử lý một số dữ liệu để mang lại cho bạn trải nghiệm tốt hơn về sản phẩm. Thông tin của bạn vẫn được bảo mật. Bạn luôn có thể kiểm soát các chế độ cài đặt quyền riêng tư trong Tài khoản Google của mình.

Nội dung của bạn được lưu trữ an toàn

Khi bạn thay đổi phông nền của cuộc họp trong Google Meet, thực hiện cuộc thăm dò ý kiến hoặc ghi lại cuộc họp, dữ liệu này được lưu trữ an toàn trong các trung tâm dữ liệu đẳng cấp thế giới của chúng tôi. Dữ liệu được mã hóa trong khi truyền cũng như khi lưu trữ.

Meet sử dụng hàng loạt biện pháp an toàn nhằm đảm bảo an toàn cho các cuộc họp video của bạn. Trong đó có các biện pháp kiểm soát chống xâm nhập dành cho cả cuộc họp video trên web lẫn cuộc họp quay số qua điện thoại.

Tài khoản Google của bạn tích hợp sẵn tính năng bảo mật được thiết kế để phát hiện và ngăn chặn các mối đe dọa như tin nhắn rác, lừa đảo và phần mềm độc hại. Hoạt động của bạn được lưu trữ theo các phương thức và tiêu chuẩn ngành nghiêm ngặt.

Tên, địa chỉ email và số điện thoại của bạn sẽ giúp đồng bộ hóa dữ liệu

Để lưu trữ các lựa chọn ưu tiên của bạn và giúp bạn đăng nhập, chúng tôi lưu tên và địa chỉ email của bạn.

Để giúp bạn biết ai đang tham gia cuộc họp, chúng tôi lưu số điện thoại của những người dùng khác gọi qua điện thoại và hiển thị số trong cuộc họp.

Thông tin của bạn giúp bạn tạo và quản lý Tài khoản Google của mình

Để giúp bạn tạo một Tài khoản Google hoàn toàn mới, chúng tôi sẽ thu thập tên và số điện thoại của bạn. Khi quản lý Tài khoản Google của mình, bạn có thể chọn cung cấp địa chỉ thực, tải danh bạ lên hoặc thêm ảnh hồ sơ.

Meet sử dụng dữ liệu để mang đến cho bạn trải nghiệm tốt hơn
Để cung cấp các dịch vụ như phụ đề trực tiếp và lọc lời mời không mong muốn, chúng tôi xử lý nội dung của bạn. Đối với phụ đề trực tiếp, dữ liệu âm thanh tạm thời được gửi đến máy chủ chép lời của Google, nhưng không liên kết với bất kỳ thông tin nhận dạng người dùng nào và cũng không được lưu trữ vĩnh viễn.

Để cải thiện hiệu suất và độ tin cậy của Meet, đồng thời giúp khắc phục sự cố có thể xảy ra khi bạn sử dụng Meet, chúng tôi thu thập dữ liệu về hiệu suất cũng như số liệu phân tích sự cố. Chúng tôi cũng lưu thông tin này để giúp ngăn chặn hành vi lạm dụng dịch vụ của chúng tôi và để phân tích.

Google Meet không sử dụng nội dung của bạn cho hoạt động quảng cáo

Chúng tôi không sử dụng thông tin trong các ứng dụng mà bạn chủ yếu lưu trữ nội dung cá nhân, bao gồm cả Meet, cho mục đích quảng cáo.

Nắm quyền kiểm soát nội dung bằng các chế độ cài đặt dễ sử dụng

Bạn có quyền quyết định nội dung được chia sẻ và người được bạn chia sẻ nội dung đó

Nội dung bạn chia sẻ trên Meet, chẳng hạn như tệp đính kèm và bảng trắng, cũng như mọi bản ghi cuộc họp đều ở chế độ riêng tư đối với bạn và những người tham gia cuộc họp của bạn. Tìm hiểu thêm về cách thức hoạt động của tính năng chia sẻ và cộng tác trong Meet

Google tôn trọng quyền riêng tư của bạn. Chúng tôi chỉ truy cập nội dung riêng tư của bạn khi bạn cho phép hoặc theo yêu cầu của luật pháp. Thông qua Báo cáo minh bạch của Google, chúng tôi chia sẻ dữ liệu về tác động của những chính sách và hành động của các chính phủ và tập đoàn đối với quyền riêng tư, tính bảo mật và quyền truy cập thông tin.

Nếu bạn có tài khoản công việc hoặc tài khoản trường học thì tổ chức của bạn có thể xem lại nhật ký ghi lại những việc mà Google làm khi truy cập nội dung. Tìm hiểu cách xem nhật ký thông qua tính năng Thông tin minh bạch về việc truy cập. Tìm hiểu cách Google bảo vệ quyền riêng tư và sự bảo mật cho tổ chức của bạn.

Kiểm soát nhật ký tìm kiếm của bạn

Nhằm giúp bạn tiết kiệm thời gian khi tìm kiếm sự trợ giúp trong Google Meet, chúng tôi lưu trữ một số cụm từ tìm kiếm trong Trung tâm trợ giúp.

Để xem lại hoặc quản lý nhật ký tìm kiếm trên Google Meet, hãy sử dụng trang Hoạt động của tôi.

Đồng bộ hóa các dịch vụ bạn sử dụng với vị trí của bạn

Để tìm hiểu mức độ liên quan giữa vị trí địa lý với việc bạn trải nghiệm sản phẩm, như khi bạn gửi ý kiến phản hồi cho Google và để giữ an toàn cho tài khoản của bạn, như khi chúng tôi nhận thấy bạn đăng nhập ở một vị trí mới, chúng tôi sẽ lưu một số thông tin vị trí.

18. Google Meet Có Bị Lật Camera Không

Google Meet không phản chiếu hoặc lật video cho khán giả, ngay cả khi nó hiển thị cho bạn hình ảnh phản chiếu trong bản xem trước. Vì vậy, không cần phải lật nó mỗi lần xem để điều chỉnh chế độ xem. Tuy nhiên, nếu bạn thực sự cần lật hoặc phản chiếu video của mình trên Google Meet vì lý do nào đó, hướng dẫn này sẽ giúp bạn.

Google Meet có camera lật không?

Có và không. Google Meet thực hiện lật nguồn cấp dữ liệu Camera nhưng có một điểm khó khăn – nó chỉ phản chiếu video trong bản xem trước được hiển thị cho bạn, khán giả sẽ nhìn thấy chế độ xem không chỉnh sửa. Google Meet thực hiện điều này để mọi người có thể xem bản xem trước video khi họ nhìn thấy trong gương mà không quá chói tai đối với họ.

Tuy nhiên, Google Meet không lật video cho người dùng cuối. Điều này có nghĩa là ngay cả khi văn bản và các mục trong bản xem trước video có thể được lật cho bạn, chúng vẫn được hiển thị theo hướng chính xác cho những người tham gia cuộc họp.

Đây là một lợi ích tuyệt vời cho các giáo viên và giảng viên sử dụng Google Meet để truyền đạt các khái niệm quan trọng cho những người tham gia cuộc họp của họ. Điều này thường liên quan đến việc sử dụng Bảng trắng và biểu đồ có thể mất ý nghĩa nếu chúng được lật trong video.

Tại sao tôi nhìn thấy một Camera được phản chiếu?

Giống như hầu hết các smartphone và webcam, Google tự động lật bản xem trước video cho bạn. Đây là một xu hướng đang diễn ra trong thập kỷ gần đây liên quan nhiều đến sự phổ biến của ảnh tự chụp và sự ra đời của camera selfie chuyên dụng trên smartphone.

Con người đã quen với việc nhìn thấy hình ảnh bị lật của họ do việc sử dụng gương thật trong cuộc sống của chúng ta hàng ngày. Hầu hết chúng ta thường nhìn vào hình ảnh được lật của mình, vì vậy việc nhìn thấy một hình ảnh không được chỉnh sửa của chính mình thường có thể gây khó chịu cho nhiều người dùng.

Để chống lại trải nghiệm chói tai này và để cung cấp một môi trường thân thiện với ảnh tự chụp và thẩm mỹ hơn, các công ty bắt đầu phản chiếu các bản xem trước video trên smartphone để chúng giống như một tấm gương hàng ngày. Xu hướng này đã sớm bắt đầu và hiện hầu như có sẵn trong mọi dịch vụ quay video từ bất kỳ thiết bị điện tử nào, có thể là smartphone, máy tính bảng, laptop hoặc Camera chuyên dụng.

19. Google Meet Có Chia Nhóm Được Không

Tháng 11/2020 Google đã ra mắt tính năng Breakout rooms trong Google Meet cho khách hàng Google Workspace for Education. Tính năng này nó giúp các lớp học online hoặc cuộc họp của bạn hiệu quả hơn, cho phép người kiểm duyệt chia những người tham gia cuộc họp thành các nhóm nhỏ hơn.

Tính năng Breakout Rooms ( chia nhóm ) trong Google Meet giúp tạo 1 hoặc nhiều video call riêng biệt trong video chính, nơi mỗi nhóm không thể nhìn thấy hoặc nghe thấy các nhóm khác.Tạo điều kiện cho việc dạy và học từ xa thông qua các ứng dụng công nghệ trở nên thuận lợi và hiệu quả hơn.

Tạo breakout rooms trong Google meet chỉ mất một phút và có thể thay đổi cách bạn nghĩ về các cuộc meeting trực tuyến. Dưới đây Adtimin sẽ hướng dẫn cụ thể cùng theo dõi nhé.

Cách tạo breakout rooms trong Google Meet (với tư cách là người kiểm duyệt)

Bạn có thể tạo tối đa 100 breakout rooms trong Google Meet.

1. Bắt đầu video call trong Google Meet.

2. Nhấp vào biểu tượng “Activities” (biểu tượng hình tròn, hình vuông và hình tam giác) ở góc trên cùng bên phải.

3. Nhấp “Breakout rooms.”

4. Nhấp vào biểu tượng bút chì “Edit” và chọn số lượng breakout rooms bạn muốn tạo.

5. Những người tham gia sau đó được phân bổ khắp các phòng. Người kiểm duyệt có thể di chuyển mọi người đến các phòng khác nhau bằng cách nhập tên của ai đó vào phòng hoặc nhấp và kéo vào đó. Nút trộn sẽ trộn các nhóm một cách ngẫu nhiên.

6. Nhấp vào “Open Rooms” ở dưới cùng bên phải để kích hoạt các phòng.

Bạn cũng có thể đặt hẹn giờ cho breakout rooms bằng cách truy cập đầu bảng điều khiển và nhấp vào biểu tượng đồng hồ cát. Bạn có thể thay đổi hoặc loại bỏ bộ hẹn giờ bất kỳ lúc nào.

20. Google Meet Có Cần Gmail Không

Google Meet có sẵn cho người dùng G Suite (trong giáo dục, kinh doanh…). Nếu bạn là người dùng G Suite, bạn có thể tạo lớp học để người khác tham gia. Nếu chỉ có tài khoản Gmail cá nhân, bạn chỉ có thể tham gia cuộc họp mà người khác tạo.

Tuy nhiên, hiện Google đang miễn phí truy cập tính năng cao cấp của Google Meet mùa dịch Covid-19. Bạn có thể tham khảo: Kích hoạt Google Hangouts Meeting miễn phí trên G Suite

1. Mở Gmail bằng cách vào Gmail.

2. Trong thanh bên, chọn Start a meeting.

Lưu ý: Nếu bạn không thấy tùy chọn này thì hãy liên hệ với quản trị viên G Suite của mình.

3. Trong cửa sổ Meet, chọn tùy chọn tham gia cuộc họp.

  • Nếu tham gia bằng máy tính, bạn có thể tùy chọn bật / tắt webcam, audio và ấn Join now.
  • Nếu tham gia sử dụng điện thoại để nghe âm thanh, click vào Join and use a phone for audio và sau đó làm theo lời nhắc trên màn hình. Khi sử dụng lựa chọn này, bạn vẫn có thể dùng máy tính để quay video.

4. Khi bạn đang ở trong cuộc họp, có thể thêm người khác vào cuộc họp của mình:

  • Để chia sẻ mã cuộc họp với ai đó, nhấp vào Copy joining info sau đó gửi cho người khác.
  • Nếu muốn mời ai đó bằng cách gửi email cho họ, nhấp vào Add people, nhập tên hoặc địa chỉ email của họ, nhấp vào Send invite.
  • Nếu muốn mời ai đó tham gia cuộc họp bằng điện thoại, click Add people sau đó click Call và nhập số điện thoại.

21. Google Meet Có Đổi Tên Được Không

Google Meet cho phép bạn tùy ý đổi tên hiển thị và ảnh đại diện, tuy vậy, Meet được liên kết thẳng với tài khoản Google của bạn, do đó bạn phải đổi tên và ảnh đại diện trực tiếp trên tài khoản Google. Thay đổi này cũng sẽ áp dụng lên các dịch vụ khác của Google như Drive, Photo và Gmail.

Cách thay đổi tên trên Google Meet từ trình duyệt web

Cách nhanh nhất và dễ nhất để thay đổi tên trên Google Meet là từ trình duyệt web và bạn có thể thực hiện việc này trong bất kỳ trình duyệt web nào bạn sử dụng.

1. Truy cập tài khoản Google (Thường là Gmail) và đăng nhập vào tài khoản (nếu cần).

2. Chọn Personal Info

3. Trong Name, hãy chọn mũi tên hướng sang phải.

4. Nhập họ và/hoặc tên mới của bạn vào các trường được cung cấp.

22. Google Meet Có Kết Nối Tivi Được Không

Dưới đây sẽ là cách kết nối Google Meet với tivi để học và họp online trên màn hình lớn được thuận tiện nhất.

Cách kết nối Google Meet với tivi để học và họp online trên màn hình lớn như thế nào?

Bạn có thể đưa màn hình máy tính lên tivi hay các máy chiếu màn hình lớn với Google Chromecast. Các bước tiến hành như sau:

Bước 1: Bạn cài đặt Google Chromecast hoặc sử dụng TV có tích hợp sẵn Chromecast.

Bước 2: Trên máy tính, bạn sử dụng trình duyệt Chrome để truy cập vào cuộc họp.

Bước 3: Click chuột vào biểu tượng dấu ba chấm ở góc dưới bên phải màn hình, và chọn Truyền cuộc họp này .

Bước 4: Chọn Chromecast để chuyển toàn bộ màn hình cuộc gọi lên TV.

The post Cách Sử Dụng Google Meet Trên Máy Tính first appeared on Techacademy.

source https://techacademy.edu.vn/cach-su-dung-google-meet-tren-may-tinh/

Các Toán Tử Trong Java

Một chương trình thực tế bao hàm việc tạo ra các biến. Các toán tử kết hợp các giá trị đơn giản hoặc các biểu thức con thành những biểu thức mới, phức tạp hơn và có thể trả về các giá trị. Điều này có hàm ý tạo ra các toán tử luận lý, số học, quan hệ và so sánh trên các biểu thức.

Toán tử trong java là 1 ký hiệu được dùng để thực hiện 1 phép tính/chức năng nào đấy. Techacademy sẽ giới thiệu đến bạn các toán tử cơ bản (Basic Operators) trong Java

I. Toán Tử New Trong Java

1. Từ khóa new trong Java là gì?

Đầu tiên, phải khẳng định luôn “new” trong Java là 1 … từ khóa (keyword). Vâng, chính vì vậy, chúng ta không được đặt tên hàm, phương thức, biến hay bất cứ thứ gì trùng với từ khóa new. Từ khóa new được dùng để cấp phát bộ nhớ cho đối tượng.

Nói rõ hơn đó là:

Lúc ta định nghĩa ra 1 đối tượng, chúng ta chỉ mới tạo ra nó trong “kế hoạch”, trong “tưởng tượng”. Đối tượng chưa thực sự tồn tại vì chưa được cấp phát vùng nhớ trên máy tính.

Tiếp đó, chúng ta dùng new để chính thức cấp phát vùng nhớ cho đối tượng. Đến lúc này thì đối tượng mới thực sự tồn tại trong chương trình của chúng ta.

Lưu ý: Trong Java có 1 số lớp đặc trưng không cần dùng từ khóa “new” để tạo đối tượng cho nó, do đó cách dùng của nó khá giống với 1 kiểu dữ liệu, điển hình trong trường hợp này là String.

2. Những cách dùng từ khóa new trong Java?

Từ khóa new được dùng chủ yếu trong việc tạo ra đối tượng, giúp ta có thể thao tác với đối tượng đó.

Cú pháp đơn giản của nó:

ViDuNew obj = new ViDuNew();

Nó thường được dùng bằng 1 số cách sau đây:

Cách 1: Các dùng từ khóa new để tạo đối tượng đơn giản

public class ViDuTuKhoaNew1 {
    void hienThiThongTin()
    {
        System.out.println("Gọi phương thức hienThiThongTin");  
    }
    public static void main(String[] args) {
        // Tạo đối tượng mới
        ViDuTuKhoaNew1 obj = new ViDuTuKhoaNew1();
        // Truy cập phương thức của đối tượng
        obj.hienThiThongTin();
    }  
}

Như các bạn thấy, sau khi tạo 1 class và định nghĩa phương thức hienThiThongTin() thì chúng ta chưa truy cập được phương thức đó ngay.

Mà phải tạo 1 đối tượng (thể hiện) của class đó thì mới truy cập được:

ViDuTuKhoaNew1 obj = new ViDuTuKhoaNew1();

Sau đó, các bạn có thể dùng đối tượng (thể hiện) vừa tạo để truy cập các phương thức, biến đối tượng của nó.

obj.hienThiThongTin();

Kết quả nhận được là:

Gọi đến phương thức hienThiThongTin

Cách 2: dùng từ khóa new và tham chiếu đến constructor tương ứng.

Như các bạn đã biết, khi tạo đối tượng, chương trình sẽ tự động gọi đến constructor tương ứng (nếu có định nghĩa rõ ràng constructor) hoặc nếu không có thì tự tạo và gọi đến constructor mặc định.

public class ViDuTuKhoaNew2 {

    ViDuTuKhoaNew2() {
        System.out.println("Gọi đến constructor tương ứng");
    }

    public static void main(String[] args) {
        // Tạo đối tượng mới
        ViDuTuKhoaNew2 obj = new ViDuTuKhoaNew2();
    }
}

Khi chạy chương trình, chúng ta nhận được kết quả là:

Gọi đến constructor tương ứng

Cách 3: Gọi từ khóa new để khởi tạo đối tượng mới có đối số.

Ví dụ, ở đây mình định nghĩa 1 class là Student và thực hiện get / set cho class này.

class Student {
    private String MSSV;
    private String ten;

    // Hàm (constructor) khởi tạo đối tượng
    public Student(String MSSV, String ten) {
        this.MSSV = MSSV;
        this.ten = ten;
    }

    // Các hàm get, set thuộc tính của đối tượng
    public String LayMSSV() {
        return this.MSSV;
    }

    public String LayTen() {
        return this.ten;
    }

    public void DatMSSV(String MSSV) {
        this.MSSV = MSSV;
    }

    public void DatTen(String ten) {
        this.ten = ten;
    }
}

Tiếp đó mình tạo 1 class Main (trong cùng file Main.java) để thực hiện 1 số hành động dùng class Student.

class Main {
    public static void main(String[] args) {
        // Khai báo 1 đối tượng Student và khởi tạo nó luôn, cùng 1 dòng lệnh
        Student student = new Student("B1714757", "Tran Thanh Tam");
        // Thao tác với đối tượng vừa được khởi tạo
        System.out.println("Trước khi chỉnh sửa:");
        System.out.println("Mã số sinh viên: " + student.LayMSSV());
        System.out.println("Tên sinh viên: " + student.LayTen());

        student.DatMSSV("B1704948");
        student.DatTen("Nguyen Viet Tu");

        System.out.println("Sau khi chỉnh sửa:");
        System.out.println("Mã số sinh viên: " + student.LayMSSV());
        System.out.println("Tên sinh viên: " + student.LayTen());
    }
}

Khi định nghĩa xong class Student thì bạn chưa dùng được chúng, chưa gọi đến được các phương thức của nó.

Bởi vì bạn mới chỉ lập 1 bản kế hoạch thôi.

Sau khi dùng từ khóa new, ví dụ như thế này:

Student student = new Student("B1714757", "Tran Thanh Tam");

Thì 1 sinh viên thực thụ mới được tạo ra (được cấp phát bộ nhớ)

Ở đây, mình truyền đối số trong khi new đối tượng để tận dụng constructor tạo ra các thông tin ban đầu của sinh viên luôn.

Kết quả có được như thế này:

Trước khi chỉnh sửa:
Mã số sinh viên: B1714757
Tên sinh viên: Tran Thanh Tam
Sau khi chỉnh sửa:
Mã số inh viên: B1704948
Tên sinh viên: Nguyen Viet Tu

Nếu bạn không tạo đối tượng, thì bạn không thể truy cập, chỉnh sửa như thế này được đâu:

student.DatMSSV("B1704948");
student.DatTen("Nguyen Viet Tu");

Cách 4: dùng từ khóa new để tạo mảng

Đúng vậy, bạn có thể tạo 1 mảng bằng cách dùng từ khóa new:

public class ViDuTuKhoaNew4 {  

    // Tạo 1 đối tượng mảng
    static int arr[]=new int[5];
    
    public static void main(String[] args) {  
        System.out.println("Độ dài của mảng là: "+ arr.length);  
    }
}

Lưu ý, ta dùng từ khóa static khi tạo mảng đối tượng để truy cập mà không cần tạo đối tượng mới.

Kết quả nhận được là:

Độ dài của mảng là: 5

Hoặc nếu bạn tạo đối tượng mảng mới trong phương thưc main thì không cần static, ví dụ:

public class ViDuTuKhoaNew4 {  

    public static void main(String[] args) {
        // Tạo 1 đối tượng mảng
        int arr[]=new int[5];
        System.out.println("Độ dài của mảng là: "+ arr.length);  
    }
}

Khi chạy chương trình, chúng ta cũng nhận được kết quả tương tự:

Độ dài của mảng là: 5

II. Toán Tử Bit Trong Java

Các toán tử dạng bit cho phép mọi người thao tác trên từng bit riêng biệt trong các kiểu dữ liệu nguyên thuỷ. Toán tử Bit có thể áp dụng cho kiểu số nguyên integer, long, short, char, byte.

Giả sử A = 60, B = 13

Chuyển qua dạng nhị phân

A = 0011 1100

B = 0000 1101

Toán tử Mô tả Ví dụ
& Bitwise and A & B = 0000 1100
| Bitwise or A || B = 0011 1101
^ Bitwise xor A ^ B = 0011 0001
~ Bitwise đảo bit ~A = 1100 0011
<< Left shift A << 2 = 1111 0000
>> Right shift A >> 2 = 1111
>>> Righ shift fill zero A >> 2 = 0000 1111

dùng hàm Integer.toBinaryString() để chuyển 1 số nguyên sang số dạng bit.

public class Main {
    public static void main(String[] args) {
        int a = 60, b = 13;
        int c;
        System.out.println("bit a: " + Integer.toBinaryString(a));
        System.out.println("bit b: " + Integer.toBinaryString(b));
        c = a & b;
        System.out.println("Ket qua phep (&): " + Integer.toBinaryString(c));
        c = a | b;
        System.out.println("Ket qua phep (|): " + Integer.toBinaryString(c));
        c = a ^ b;
        System.out.println("Ket qua phep (^): " + Integer.toBinaryString(c));
        c = ~a;
        System.out.println("Ket qua phep (~): " + Integer.toBinaryString(c));
        c = a << 2;
        System.out.println("Ket qua phep (<<): " + Integer.toBinaryString(c));
        c = a >>2;
        System.out.println("Ket qua phep (>>): " + Integer.toBinaryString(c));
        c = a >>>2;
        System.out.println("Ket qua phep (>>>): " + Integer.toBinaryString(c));
    }
}

III. Toán Tử Instanceof Trong Java

Toán tử instanceof trong Java là 1 toán tử được dùng để kiểm tra xem đối tượng này có phải là instance của 1 class hay interface nào đấy hay không? Kết quả trả về của toán tử này sẽ là true nếu đối tượng đấy là thể hiện của class mà bạn đang check, ngược lại thì false.

Ví dụ, mình có 1 class Application dưới đây:

package com.huongdanjava.java;

public class Application {

public static void main(String[] args) {
Application application = new Application();
System.out.println(application instanceof Application);
}

Trong hàm main() của class này, mình initialize 1 đối tượng của class Application và dùng toán tử instanceof để kiểm tra xem đối tượng này có phải là instance của class Application này hay không? bạn sẽ thấy kết quả sẽ dưới đây:

Nếu bạn viết code dưới đây:

package com.huongdanjava.java;

public class Application {

public static void main(String[] args) {
Application application = new Application();
System.out.println(application instanceof String);
}

}

thì IDE sẽ báo lỗi ngay:

Đây là trong trường hợp quá tường minh, quá rõ ràng, IDE có thể báo lỗi cho bạn biết ngay.

Nhưng nếu bạn có 1 interface với 2 implementation dưới đây:

package com.huongdanjava.java;

public interface Shape {

}
package com.huongdanjava.java;

public class Triangle implements Shape {

}
package com.huongdanjava.java;

public class Rectangle {

}

thì lúc này nếu bạn initialize đối tượng của class Triangle nhưng lại đi kiểm tra đối tượng này có phải là thể hiện của class Rectangle,

package com.huongdanjava.java;

public class Application {

public static void main(String[] args) {
Shape shape = new Triangle();

System.out.println(shape instanceof Rectangle);
}

}

IDE sẽ không thể detect lỗi lúc compile time nhưng khi chạy bạn sẽ thấy kết quả dưới đây:

Chúng ta sẽ thường dùng toán tử instanceof trong trường hợp kiểm tra xem tham số truyền vào của 1 phương thức có phải là instance của 1 class nào đấy hay không? Ví dụ như:

private void check(Shape shape) {
    if (shape instanceof Triangle) {
        Triangle triangle = (Triangle) shape;

        System.out.println("This is triangle: " + triangle.toString());
    }
}

Trong phương thức trên, tham số interface Shape có nhiều implementation khác nhau, trong phần body của phương thức, chúng ta sẽ check xem là instance được truyền vào phương thức này có phải là Triangle hay không? Nếu đúng thì xử lý code tiếp.
Kết quả:

package com.huongdanjava.java;

public class Application {

private void check(Shape shape) {
if (shape instanceof Triangle) {
Triangle triangle = (Triangle) shape;

System.out.println("This is triangle: " + triangle.toString());
}
}

public static void main(String[] args) {
Application application = new Application();
application.check(new Triangle());
}

}

Từ Java 14, bạn có thể viết lại phương thức check() dùng pattern matching instanceof, đơn giản dưới đây:

private void check(Shape shape) {
    if (shape instanceof Triangle triangle) {
        System.out.println("This is triangle: " + triangle.toString());
    }
}

Với cách viết mới, chúng ta không cần viết thêm 1 dòng code để cast instance về đối tượng mà chúng ta muốn nữa. Tất cả sẽ được thực hiện trong dòng lệnh if.

Kết quả vẫn như vậy:

IV. Toán Tử Gán Trong Java

Chương trình ví dụ đơn giản như sau minh họa những toán tử gán trong Java. Copy và paste chương trình Java này trong Test.java file và sau đó biên dịch và thực thi chương trình này:

TOÁN TỬ MIÊU TẢ VÍ DỤ: B = 20, A = 10
= Toán tử gán đơn giản. Gán giá trị toán hạng bên phải cho toán hạng trái. C = A + B sẽ gán giá trị của A + B vào cho C
+= Thêm giá trị toán hạng phải tới toán hạng trái và gán giá trị đó cho toán hạng trái. C += A là tương đương với C = C + A
-= Trừ đi giá trị toán hạng phải từ toán hạng trái và gán giá trị này cho toán hạng trái. C -= A là tương đương với C = C – A
*= Nhân giá trị toán hạng phải với toán hạng trái và gán giá trị này cho toán hạng trái. C *= A là tương đương với C = C * A
/= Chia toán hạng trái cho toán hạng phải và gán giá trị này cho toán hạng trái. C /= A là tương đương với C = C / A
%= Lấy phần dư của phép chia toán hạng trái cho toán hạng phải và gán cho toán hạng trái. C %= A là tương đương với C = C % A
<<= Dịch trái toán hạng trái sang số vị trí là giá trị toán hạng phải. C <<= 2 là giống như C = C << 2
>>= Dịch phải toán hạng trái sang số vị trí là giá trị toán hạng phải. C >>= 2 là giống như C = C >> 2
&= Phép AND bit C &= 2 là giống như C = C & 2
^= Phép OR loại trừ bit C ^= 2 là giống như C = C ^ 2
|= Phép OR bit. C |= 2 là giống như C = C | 2
public class Test {

  public static void main(String args[]) {
     int a = 10;	
     int b = 20;
     int c = 0;

     c = a + b;
     System.out.println("c = a + b = " + c );

     c += a ;
     System.out.println("c += a  = " + c );

     c -= a ;
     System.out.println("c -= a = " + c );

     c *= a ;
     System.out.println("c *= a = " + c );

     a = 10;
     c = 15;
     c /= a ;
     System.out.println("c /= a = " + c );

     a = 10;
     c = 15;
     c %= a ;
     System.out.println("c %= a  = " + c );

     c <<= 2 ;
     System.out.println("c <<= 2 = " + c );

     c >>= 2 ;
     System.out.println("c >>= 2 = " + c );

     c >>= 2 ;
     System.out.println("c >>= a = " + c );

     c &= a ;
     System.out.println("c &= 2  = " + c );
  
     c ^= a ;
     System.out.println("c ^= a   = " + c );

     c |= a ;
     System.out.println("c |= a   = " + c );
  }
}

Nó sẽ cho kết quả như sau:

c = a + b = 30
c += a  = 40
c -= a = 30
c *= a = 300
c /= a = 1
c %= a  = 5
c <<= 2 = 20
c >>= 2 = 5
c >>= 2 = 1
c &= a  = 0
c ^= a   = 10
c |= a   = 10

Các bạn không được dùng toán tử gán này để gán giá trị boolean cho 1 biến có kiểu dữ liệu là char, byte, short, int, long hay float, hay double và ngược lại. Nếu cố gắng làm điều đó thì sẽ bị lỗi compile ngay.

Bạn không thể gán 1 biến mà kiểu dữ liệu của nó có khoảng giá trị lớn hơn sang 1 biến có kiểu giá trị có khoảng giá trị nhỏ hơn.

Ví dụ, chúng ta không thể gán 1 biến có kiểu long sang biến có kiểu int như sau:

đó là bởi vì khoảng giá trị của kiểu long lớn hơn int rất nhiều.

– Các toán tử còn lại bao gồm “+=“, “-=“, “*=“, “/=” là dạng viết tắt của của phép tính cộng trừ nhân chia với toán tử gán.

“+=”: đầu tiên là cộng sau đó là gán.

“-=”: đầu tiên là trừ sau đó là gán.

“*=”: đầu tiên là nhân sau đó là gán.

“/=”: đầu tiền là chia sau đó là gán.

Ví dụ chúng ta có phép tính như sau:

   
a += b;

có nghĩa là

1
a = a + b;

Hay

Java
a -= b;
1
a -= b;

có nghĩa là

Toán Tử Xor

Phép toán thao tác bit XOR lấy hai dãy bit có cùng độ dài và thực hiện phép toán logic bao hàm XOR trên mỗi cặp bit tương ứng. Kết quả ở mỗi vị trí là 1 chỉ khi bit đầu tiên là 1 hoặc nếu chỉ khi bit thứ hai là 1, nhưng sẽ là 0 nếu cả hai là 0 hoặc cả hai là 1. Ở đây ta thực hiện phép so sánh hai bit, kết quả là 1 nếu hai bit khác nhau và là 0 nếu hai bit giống nhau. Ví dụ:

0101 (số thập phân 5)

XOR 0011 (số thập phân 3)

0110 (số thập phân 6)

(cách nhớ dễ nhất là: 2 bit giống nhau trả về 0, 2 bit khác nhau trả về 1)

Bảng chân trị cho XOR:

Phép toán thao tác bit XOR có thể được dùng để đảo ngược các bit được lựa chọn trong thanh ghi (còn được gọi là bật (set) hoặc lật (flip)). Bất kỳ bit nào được bật bằng cách thực hiện phép toán thao tác bit XOR nó với 1. Ví dụ: cho dãy bit 0010 (số 2 thập phân), bit thứ hai và thứ tư có thể được kích hoạt bằng cách dùng phép toán thao tác bit XOR với 1 dãy bit có chứa 1 ở vị trí thứ hai và thứ tư:

0010 (số thập phân 2) XOR 1010 (số thập phân 10) = 1000 (số thập phân 8)

Kỹ thuật này có thể được dùng để điều khiển dãy bit biểu hiện các bộ chứa phép toán logic đúng sai (boolean).

Trong C, C++, Java, C#, toán tử thao tác bit XOR được biểu diễn bằng ký hiệu “^” (dấu mũ). Trong Pascal, toán tử này là “xor”. Ví dụ:

x = y ^ z; // C

Hay:

x:= y xor z;

Câu lệnh trên sẽ gáp trình thienmaonline.vnên hợp ngữ (Assembly) thường dùng toán tử XOR để gán giá trị của 1 thanh ghi (register) về 0. Khi thực hiện phép toán XOR cho 1 mẫu bit với chính bản thân nó, mẫu nhị phân nhận được sẽ toàn bit 0. Trên nhiều kiến trúc máy tính, dùng XOR để gán 0 cho 1 thanh ghi sẽ được CPU xử lý nhanh hơn so với chuỗi thao tác tương ứng để nạp và lưu giá trị 0 vào thanh ghi.

Toán Tử Or

Phép toán trên thao tác bit OR lấy hai dãy bit có độ dài bằng nhau và thực hiện phép toán lý luận bao hàm OR trên mỗi cặp bit tương ứng. Kết quả ở mỗi vị trí sẽ là 0 nếu cả hai bit là 0, ngược lại thì kết quả là 1. Ví dụ:

0101 (số thập phân 5)

OR 0011 (số thập phân 3)

= 0111 (số thập phân 7)

Bảng chân trị cho OR:

Phép toán thao tác bit XOR có thể được dùng để đảo ngược các bit được lựa chọn trong thanh ghi (còn được gọi là bật (set) hoặc lật (flip)). Bất kỳ bit nào được bật bằng cách thực hiện phép toán thao tác bit XOR nó với 1. Ví dụ: cho dãy bit 0010 (số 2 thập phân), bit thứ 2 và thứ tư có thể được kích hoạt bằng cách dùng phép toán thao tác bit XOR với 1 dãy bit có chứa 1 ở vị trí thứ hai và thứ tư:

0010 (số thập phân 2)

XOR 1010 (số thập phân 10)

= 1000 (số thập phân 8)

Kỹ thuật này có thể được dùng để điều khiển dãy bit biểu hiện các bộ chứa phép toán logic đúng sai (boolean).

Trong C, C++, Java, C#, toán tử thao tác bit XOR được biểu diễn bằng ký hiệu “^” (dấu mũ). Trong Pascal, toán tử này là “xor”. Ví dụ:

x = y ^ z; // C

Hay:

x:= y xor z; { Pascal }

Câu lệnh trên sẽ gáp trình viên hợp ngữ (Assembly) thường dùng toán tử XOR để gán giá trị của 1 thanh ghi (register) về 0. Khi thực hiện phép toán XOR cho 1 mẫu bit với chính bản thân nó, mẫu nhị phân nhận được sẽ toàn bit 0. Trên nhiều kiến trúc máy tính, dùng XOR để gán 0 cho 1 thanh ghi sẽ được CPU xử lý nhanh hơn so với chuỗi thao tác tương ứng để nạp và lưu giá trị 0 vào thanh ghi.

XIV. Toán Tử Logic Trong Java

Toán tử logic được sử dụng để kiểm tra tính đúng đắn của một hoặc nhiều biểu thức. Giá trị trả về của các biểu thức này là 1 giá trị kiểu boolean, true hoặc false. Trong Java, ta có các toán tử logic như sau:

AND (&&)

OR (||)

NOT (!)

Toán tử AND

Toán tử AND được sử dụng trong trường hợp chúng ta có hai hay nhiều biểu thức và chúng ta cần tất cả các biểu thức đó đều đúng, có nghĩa là kết quả trả về của chúng đều là true.

Ví dụ:

int a = 10;
int b = 15;
int c = 200;
System.out.println(c > a && c > b);

Ở đây ta có hai biểu thức là c > a và c > b và toán tử AND được sử dụng để chắc chắn rằng giá trị của c đều lớn hơn hai giá trị của hai biến còn lại là a và b.

Toán tử OR

Toán tử OR cũng được sử dụng trong trường hợp chúng ta có hai hay nhiều biểu thức và chúng ta chỉ cần 1 trong các biểu thức đó là đúng, nghĩa là giá trị của nó là true. Các biểu thức còn lại true hay false đều được nhưng ít nhất phải có 1 cái là true.

Ví dụ:

int a = 10;
int b = 15;
int c = 200;
System.out.println(c > a || b > c);

Trong ví dụ này, ta chỉ cần c lớn a là được rồi, b có lớn hơn c hay không cũng ko sao. 😀

Toán tử NOT

Toán tử NOT dùng để đảo ngược kết quả của một hay nhiều biểu thức trả về giá trị boolean. Có nghĩa nếu 1 biểu thức bất kỳ trả về giá trị true, sử dụng toán tử NOT thì kết quả cuối cùng sẽ là ngược lại với true, là false.

Ví dụ:

int a = 10;
int b = 15;
System.out.println(!(a > b));

Kết quả của ví dụ này là true bởi vì a không lớn hơn b, false, đảo ngược lại sẽ là true.

Để bạn hiểu rõ hơn về kết quả của các biểu thức sử dụng với toán tử logic, mình đưa ra bảng dưới đây, ta thường gọi nó là bảng chân trị:

Toán tử AND (&&) Toán tử OR (||)  Toán tử NOT (!) 
true && true => true true || true => true !true => false
true && false => false true || false => true !false => true
false && true => false false || true => true
false && false => false false || false => false
true && true && false => false false || false || true => true

Nhìn vào bảng trên ta có thể thấy

Toán tử AND chỉ có thể trả về true nếu tất cả các kết quả của biểu thức đều là true, nếu một trong số chúng là false thì kết quả sẽ là false.

Toán tử OR chỉ trả về false nếu tất cả các kết quả của biểu thức là false, ngược lại, chỉ cần một biểu thức là true thì kết quả sẽ là true.

Toán tử NOT thì đảo ngược kết quả có giá trị boolean.

XV. Thứ Tự Ưu Tiên Toán Tử Trong Java

Toán tử trong lập trình cũng có những thứ tự ưu tiên giống như các phép toán của chúng ta ngoài đời thực (vd: nhân chia trước cộng trừ sau). Trong Java độ ưu tiên các toán tử sẽ được sắp xếp như sau (Toán tử nào có độ ưu tiên cao hơn sẽ được thực thi trước).

Bảng dưới đây liệt kê thứ tự ưu tiên của các toán tử. Những toán tử với quyền ưu tiên cao nhất xuất hiện trên cùng của bảng, và các toán tử có quyền ưu tiên thấp nhất thì ở bên dưới cùng của bảng. Trong 1 biểu thức, các toán tử có quyền ưu tiên cao nhất được tính toán đầu tiên.

Cùng xem ảnh sau để biết thứ tự ưu tiên của các loại toán tử trong Java:

Thứ Tự Ưu Tiên Toán Tử Trong Java
Thứ Tự Ưu Tiên Toán Tử Trong Java

The post Các Toán Tử Trong Java first appeared on Techacademy.

source https://techacademy.edu.vn/cac-toan-tu-trong-java/

Extends Trong Java

Khi chúng ta nói về tính kế thừa, từ khóa thường xuyên nhất được sử dụng là extends trong java và implements trong java. Những từ khóa này có thể định nghĩa 1 kiểu là loại IS-A của loại khác. Sử dụng những từ khóa, chúng ta có thể tạo 1 đối tượng sử dụng thuộc tính của đối tượng khác.

Chúng ta sử dụng từ khóa extends của lớp con để có thể kế thừa những thuộc tính của lớp cha trừ những thuộc tính private của lớp cha. Bài viết này mình sẽ giới thiệu cho các bạn hiểu về tính kế thừa trong java. Qua đây hi vọng các bạn có thể tự viết được 1 class kế thừa từ class khác để giải quyết 1 bài toán.

I. Extends Trong Java Là Gì

Tính kế thừa trong Java là 1 kỹ thuật mà trong đó 1 đối tượng thu được tất cả thuộc tính và hành vi của đối tượng cha. Ý tưởng đằng sau tính kế thừa trong Java là bạn có thể tạo những lớp mới mà được xây dựng dựa trên những lớp đang tồn tại.

Khi các bạn kế thừa từ 1 lớp đang tồn tại, bạn có thể tái sử dụng những phương thức và những trường của lớp cha, và các bạn cũng có thể bổ sung thêm những phương thức và những trường khác. Tính kế thừa biểu diễn mối quan hệ IS-A, còn được gọi là mối quan hệ cha-con.

Như vậy, để hiểu 1 cách thực tế, giả sử đầu tiên chúng ta có 1 lớp nào đó, lớp này có thể là do chúng ta viết ra, hay “lượm lặt” ở đâu đó, mình tạm gọi tên lớp sẵn có này là A. Sau đó, để tận dụng lại những hàm hay những thuộc tính của A mà không cần phải viết lại (hoặc copy lại, có thể vi phạm bản quyền), thì chúng ta xây dựng 1 lớp mới kế thừa từ A, mình gọi lớp mới này là B.

Khi đó B của chúng ta sẽ có sẵn những phương thức và thuộc tính mà A có. Cũng có lúc không vì mục đích dùng lại những giá trị của A, mà là vì 1 vài giá trị của A không phù hợp với nhu cầu của B, thế là việc kế thừa từ A còn giúp cho B có cơ hội được hoàn thiện lại (hay còn gọi là mở rộng) những giá trị chưa phù hợp đó của A mà không làm thay đổi bản chất của A.

Vì sao sử dụng tính kế thừa trong Java?

  • Để ghi đè phương thức (Method Overriding), do đó có thể thu được tính đa hình tại runtime.
  • Để làm tăng tính tái sử dụng của code.

II. Cách Sử Dụng Extends?

Cú pháp của kế thừa trong Java

Sử dụng từ khóa extends để kế thừa.

class Subclass-name extends Superclass-name {  
   //methods and fields
}

Từ khóa extends có ý nghĩa rằng các bạn đang tạo 1 lớp mới và kế thừa từ 1 lớp đang tồn tại. Trong Java, 1 lớp mà được kế thừa được gọi là lớp cha, lớp kế thừa là lớp con.

Cách sử dụng Extends

Hãy cùng Techacademy xem qua 1 ví dụ sau:

Tạo 1 tập tin là: myClass.java

public class myClass {
        
        public myClass() {
            // Construct
        }
        
        int number = 200;
    }

Tiếp theo tạo file TwoClass.java

public class TwoClass extends myClass {
    public TwoClass() {
        // Constructor
    }
    public static void main(String[] args) {
        
        TwoClass obj = new TwoClass();
        System.out.println(obj.number);
    }
}

Ví dụ chúng ta có các class A,B.Class A có 1 phương thức để hiển thị là show(). Class B gồm hai phương thức display() và show() nhưng Class B kế thừa từ class A. Sau đó chúng ta sẽ tạo ra đối tượng dựa vào class B rồi gọi phương thức show, kết quả trả về sẽ là “better show” chứ không phải là “show”. Lý do vì class B đã extends từ class A thì nếu có 2 phương thức của lớp cha trùng tên thì sẽ ghì đè lên phương thức trùng tên của lớp con.

Dưới đây là 1 ví dụ của extends trong Java:

class A {
  public void show() {
    System.out.println("show");
  }
}

class B extends A {
  public void display() {
    System.out.println("display");
  }

  public void show() {
    System.out.println("better show");
  }
}

public class Main {

  public static void main(String[] args) {

    A a = new B(); // possible because B extends A
    a.show(); // this will now call to show() method of class B
  }
}

Output
better show

III. Ví Dụ Extends Trong Java

Có 3 kiểu kế thừa trong java là đơn kế thừa, kế thừa nhiều cấp, kế thừa thứ bậc.

Khi 1 class được kế thừa từ nhiều class đươc gọi là đa kế thừa. Trong java, đa kế thừa chỉ được support thông qua interface, như đã được nói đến trong bài interface trong java

Ví dụ về đơn kế thừa

File: TestInheritance1.java

class Animal {
    void eat() {
        System.out.println("eating...");
    }
}
 
class Dog extends Animal {
    void bark() {
        System.out.println("barking...");
    }
}
 
public class TestInheritance1 {
    public static void main(String args[]) {
        Dog d = new Dog();
        d.bark();
        d.eat();
    }
}

Output:

barking...
eating...

Ví dụ về kế thừa nhiều cấp

File: TestInheritance2.java

class Animal {
    void eat() {
        System.out.println("eating...");
    }
}
 
class Dog extends Animal {
    void bark() {
        System.out.println("barking...");
    }
}
 
class BabyDog extends Dog {
    void weep() {
        System.out.println("weeping...");
    }
}
 
public class TestInheritance2 {
    public static void main(String args[]) {
        BabyDog d = new BabyDog();
        d.weep();
        d.bark();
        d.eat();
    }
}

Kết quả là:

weeping...
barking...
eating...

Ví dụ về kế thừa thứ bậc

File: TestInheritance3.java

class Animal {
    void eat() {
        System.out.println("eating...");
    }
}
 
class Dog extends Animal {
    void bark() {
        System.out.println("barking...");
    }
}
 
class Cat extends Animal {
    void meow() {
        System.out.println("meowing...");
    }
}
 
public class TestInheritance3 {
    public static void main(String args[]) {
        Cat c = new Cat();
        c.meow();
        c.eat();
        // c.bark(); // compile error
    }
}

Kết quả là:

meowing...
eating...

III. Phân Biệt Extends Và Implements Trong Java

Phân biệt Extends và Implements trong Java là một trong những câu hỏi trong phỏng vấn thường xuyên gặp. Extends và Implements là 2 từ khóa được sử dụng rất nhiều trong Java. Tuy nhiên 1 số lập trình viên mới học chưa nắm được sự khác biệt thì ở bài viết này sẽ cụ thể hóa vấn đề này.

Extends: kế thừa các class

Implements: kế thừa các interface

Mặc dù cả 2 Extends và Implements trong Java được sử dụng để thực hiện kế thừa nhưng có các sự khác biệt giữa chúng. Extends được sử dụng để kế thứ từ 1 class khác trong khi đó Implements cũng được sử dụng để kế từ các Interface

Cách sử dụng Extends ?

Ví dụ chúng ta có các class A,B.Class A có một phương thức để hiển thị là show(). Class B gồm hai phương thức display() và show() nhưng Class B kế thừa từ class A. Sau đó chúng ta sẽ tạo ra đối tượng dựa vào class B rồi gọi phương thức show, kết quả trả về sẽ là “better show” chứ không phải là “show”. Lý do vì class B đã extends từ class A thì nếu có hai phương thức của lớp cha trùng tên thì sẽ ghì đè lên phương thức trùng tên của lớp con.

Dưới đây là một ví dụ của Extends trong Java:

class A {
  public void show() {
    System.out.println("show");
  }
}

class B extends A {
  public void display() {
    System.out.println("display");
  }

  public void show() {
    System.out.println("better show");
  }
}

public class Main {

  public static void main(String[] args) {

    A a = new B(); // possible because B extends A
    a.show(); // this will now call to show() method of class B
  }
}

Output
better show

Cách sử dụng Implements ?

Ở ví dụ dưới chúng ta có 1 class R và implements từ interface Runnable thì bắt buộc rằng class R phải orver @Override tất cả các phương thức trừu tượng của interface Runnable.Ở đây là method run().

class R implements Runnable{
public void run(){
   System.out.println("do nothing");
  }
}

Điểm khác biệt quan trọng :

Dưới đây là 1 số điểm khác biệt quan trọng của Extends và Implements trong Java :

1) Một class có thể kế thừa từ 1 class khác, không thể Extends từ 1 Interface.

interface I{

}

class A{
}

class B extends A{

}

class C extends I{

}

Khi bạn chương trình chạy và biên dịch thì sẽ xuất hiện lỗi sau:

$ javac Main.java
Main.java:27: no interface expected here
class C extends I{
^
1 error

2) Khi sử dụng Extends, 1 class chỉ có thể kế thừa từ một class khác, dưới đây là code thông báo lỗi khi cố gắng Extends từ nhiều class:

class C extends A, B{

}

$ javac Main.java
Main.java:27: '{' expected
class C extends A, B{
^
1 error

3) Một Interface có thể Extends từ một Interface khác.

interface J extends I{

}

4) Một class có thể kế thừa từ nhiều Interface khác bằng cách sử dụng Implements, đoạn code dưới đây thể hiện :

class D implements I, J, K{

}

5) Strong một lớp có thể sử dụng Extends và Implements.

class E extends A implements I, J{

}

6) Một Interface không thể Implements từ một  Interface, nó không thể xảy ra cho nên lúc này khi chạy chương trình, nó sẽ xảy ra ngoại lệ :

interface L implements J{

}

javac Main.java
Main.java:49: '{' expected
interface L implements J{
^
1 error

Đó là tất cả về sự khác biệt giữa Extends và Implements trong Java. Bài viết nói lên những sự khác biết là kinh nghiệm trong lập trình của Techacademy có được, hy vọng bạn đọc xem và áp dụng được ở thực tế.

Phân Biệt Extends Và Implements Trong Java
Phân Biệt Extends Và Implements Trong Java

The post Extends Trong Java first appeared on Techacademy.

source https://techacademy.edu.vn/extends-trong-java/

If Else Trong PHP

Xin chào các bạn độc giả của khóa học lập trình PHP, bài học Câu lệnh if else trong PHP này là bài đầu tiên trong chương Cấu trúc điều khiển và rẽ nhánh. Cấu trúc if else là thành phần được sử dụng gần như trong mọi chương trình phần mềm. Do đó, bạn cần nắm chắc kiến thức về lệnh if else để có thể học tốt các bài tập tiếp theo. Bắt đầu từ bài này thì các bạn sẽ được thực hành nhiều để luyện tập kỹ năng lập trình.

I. If Else Trong PHP Dùng Làm Gì

Mệnh đề if-else trong PHP được sử dụng để kiểm tra một biểu thức điều kiện nào đó có đúng hay không, nếu đúng thì thực thi những câu lệnh bên trong khối lệnh if và ngược lại nếu sai thì nó sẽ bỏ qua những câu lệnh đó. Có ba dạng của câu lệnh if trong PHP.

+ Mệnh đề if.

+ Mệnh đề if-else.

+ Mệnh đề if-elseif-else.

Trong đó:

– Câu lệnh if ( không có else ): Khối lệnh sau if được thực thi nếu giá trị của điều kiện là True

– Câu lệnh if … else: Mệnh đề if được sử dụng để kiểm tra giá trị dạng boolean của điều kiện. Khối lệnh sau if được thực thi nếu giá trị của điều kiện là True, nếu là False thì chỉ có khối lệnh sau else được thực hiện

– Câu lệnh if … elseif … else: Mệnh đề if-elseif-else cũng kiểm tra giá trị dạng boolean của điều kiện. Nếu giá trị điều kiện if là True thì chỉ có khối lệnh sau if sẽ được thực hiện. Nếu giá trị điều kiện else if nào là True thì chỉ có khối lệnh sau if else đó sẽ được thực hiện… Nếu tất cả điều kiện của if và if else là False thì chỉ có khối lệnh sau else sẽ được thực hiện

II. Câu lệnh IF

– Sử dụng câu lệnh if khi thực hiện một số mã khi và chỉ khi điều kiện qui định của nó đúng với mã được qui định

Cú pháp câu if :

If ( điều kiện ) sẽ được thực hiện nếu điều kiện đúng . 

Ví dụ sau đây sẽ đưa ra “Have a nice weekend!” nếu ngày hiện nay là thứ Sáu:

<html>
<body>
<?php
$d=date("D");
if ($d=="Fri") echo "Have a nice weekend!";
?>
</body>
</html>

Chú ý rằng đoạn mã trên không có else . vì vậy mã này được thực thi khi nó chỉ đúng với điều kiện .

III. Câu lệnh IF ELSE

Sử dụng câu lệnh if … else để thực hiện đoạn mã nếu điều kiện nó là đúng hoặc sai .
Cú pháp :

if (điều kiện)
 {
 Mã lệnh sẽ được thực hiện nếu điều kiện đúng;
 }
else
 {
 Mã lệnh sẽ được thực hiện nếu điều kiện sai;
 }

Ví dụ sau đây sẽ đưa ra “Have a nice weekend!” nếu ngày hiện nay là thứ Sáu, nếu không phải nó sẽ trả kết quả khác là “Have a nice day!”

<html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
 {
 echo "Have a nice weekend!";
 }
else
 {
 echo "Have a nice day!";
 }
?>
</body>
</html> 

IV. Câu lệnh IF ELSEIF ELSE

Sử dụng câu lệnh if …. elseif … else để lựa chọn một trong nhiều khối mã sẽ được thực hiện.

Cú pháp

if (Điều kiện 1)
 {
 code sẽ được thực hiện nếu điều kiện 1 đúng;
 }
elseif (Điều kiện 2)
 {
 code sẽ được thực hiện nếu điều kiên 2 đúng;
 }
else
 {
 code sẽ được thực hiện nếu mấy cái điều kiện trên sai;
 }

Ví dụ sau đây sẽ đưa ra “Have a nice weekend!”nếu ngày hiện nay là thứ Sáu, và “Have a nice Sunday!” nếu ngày hiện nay là chủ nhật. Nếu không, nó sẽ ra “Have a nice day!”

<html>
<body>
<?php
$d=date("D");
if ($d=="Fri")
 {
 echo "Have a nice weekend!";
 }
elseif ($d=="Sun")
 {
 echo "Have a nice Sunday!";
 }
else
 {
 echo "Have a nice day!";
 }
?>
</body>
</html> 

V. Biểu thức điều kiện if else rút gọn trong Php

Biểu thức điều kiện if else rút gọn giúp chúng ta viết câu lệnh điều kiện trong Php một cách ngắn gọn dễ hiểu.

Cú pháp viết if else rút gọn

$var = BTĐK?Giá trị 1: Giá trị 2

Trong đó

+ $var: biến nhận giá trị biểu thức

+ BTKĐ: biểu thức điều kiện

Hoạt động

+ Nếu BTĐK trả về TRUE thì $var = Giá trị 1

+ Ngược lại $var = Giá trị 2

$n = 26;
$check_even = $n%2==0?true:false;
echo $check_even;

Khi chạy chương trình trên kết quả nhận được là true. Thay vì viết if else dài dòng thì mọi thứ giờ đây ngắn gọn hơn nhiều.

VI. Bài tập IF Else trong PHP

Bài 1: Viết chương trình C++ để nhập tuổi và in ra kết quả nếu tuổi học sinh đó không đủ điều kiện vào học lớp 10. Biết tuổi vào lớp 10 của học sinh là 16.

Bài 2: Viết chương trình C++ để nhập một số nguyên bất kỳ từ bàn phím và in kết quả ra màn hình để thông báo cho người dùng biết số đó lớn hay nhỏ hơn 100.

Bài 3: 

Viết một chương trình C++ để nhập lương nhân viên, tính thuế thu nhập và lương ròng (số tiền lương thực sự mà nhân viên đó nhận được). Với các thông số giả sử như sau (không theo luật lương, chỉ là con số giả sử để dễ tính toán):

+ 30% thuế thu nhập nếu lương là 15 triệu.
+ 20% thuế thu nhập nếu lương từ 7 đến 15 triệu.
+ 10% thuế thu nhập nếu lương dưới 7 triệu.

 

The post If Else Trong PHP first appeared on Techacademy.

source https://techacademy.edu.vn/if-else-trong-php/

Chuỗi Trong PHP

I. String trong php là gì

Chuỗi biến được sử dụng sử dụng cho các giá trị có chứa ký tự . Trong chương trình này, chúng ta sẽ nhìn vào chức năng phổ biến nhất được sử dụng để thao tác các chuỗi trong PHP.

Sau khi chúng tôi tạo ra một chuỗi, chúng ta có thể thao tác nó . Một chuỗi có thể được sử dụng trực tiếp trong một hàm hoặc nó có thể được lưu trữ trong một biến .

Dưới đây, các tập lệnh PHP gán văn bản “Hello World” vào một chuỗi biến gọi là $ txt:

<?php
$txt="Hello World";
echo $txt;
?> 

Khi thực thi code trên thì sẽ ra kết quả trả về là “Hello World”
Nào , bây giờ chúng ta thử 1 số chức năng và các chức năng khác nhau để xử lý 1 chuỗi

<?php
$txt1="Hello World!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>

Kết quả trả về sẽ là

Hello World ! What a nice day!

Nếu chúng ta nhìn vào đoạn mã trên, bạn thấy rằng chúng ta sử dụng toán tử nối hai lần. Điều này là bởi vì chúng tôi đã để chèn một chuỗi thứ ba, để phân cách hai chuỗi.

II. Xử lý chuỗi trong php

Việc xử lý chuỗi trong PHP rất là quan trọng vì dữ liệu hiển thị trên trang web luôn luôn ở dạng chuỗi, vì thế nếu bạn nắm vững và xử lý nhuần nhuyễn thì sẽ giúp bạn ít tốn công sức và thời gian hơn mà web chạy lại nhanh nữa.

Bên dưới đây Techacademy sẽ liệt kê các hàm xử lý chuỗi trong php thông dụng hay sử dụng nhất, tuy nhiên chúng ta cần hiểu một số quy tắc trong chuỗi trước đã.

2.1 Độ dài chuỗi trong PHP

Hàm strlen () được sử dụng để trả lại chiều dài của một chuỗi.
Hãy tìm chiều dài của một chuỗi:

<?php
echo strlen("Hello world!");
?>

Kết quả trả về là

12

Chiều dài của một chuỗi thường được sử dụng trong vòng lặp hoặc các chức năng khác, điều quan trọng là để biết khi nào kết thúc chuỗi. (tức là trong một vòng lặp, chúng tôi muốn ngừng vòng lặp sau khi ký tự cuối cùng trong chuỗi).

2.2 Tìm kiếm vị trí đầu tiên của kí tự hoặc chuỗi con xuất hiện trong chuỗi nguôn

Hàm strpos () được sử dụng để tìm kiếm một nhân vật / văn bản trong một chuỗi.

Nếu kết hợp được tìm thấy, chức năng này sẽ trở lại với vị trí nhân vật của trận đấu đầu tiên. Nếu không phù hợp được tìm thấy, nó sẽ trả về FALSE

Hãy xem nếu chúng ta có thể tìm thấy chuỗi “thế giới” trong chuỗi ký tự của chúng tôi:

<?php
echo strpos("Hello world!","world");
?> 

Kết quả trả về là

6

Vị trí từ “world” trong ví dụ trên là 6. Lý do mà nó là 6 (và không phải 7), là vị trí của ký tự đầu tiên trong chuỗi là 0, và không phải 1.
Thông tin về 1 số chức năng của các hàm khác ( có thể là không đầy đủ nhưng cũng nên đọc qua cho biết )

2.3 Nối chuỗi trong PHP

Để nối 2 chuỗi chúng ta sử dụng toán tử (.)

<?php
    $string_1 = "Hello";
    $string_2 = "world!";
    echo $string_1. " " .$string_2."<br>";
?>

2.4 Cắt chuỗi trong PHP

substr – Cắt chuỗi, trả về một phần của chuỗi

string substr ( string $string , int $start [, int $length ] )

Trả về một phần của chuỗi được cắt bởi 2 tham số: $start và $length

string

Chuỗi ký tự đầu vào. Cần phải có ít nhất 1 ký tự.

start

Nếu $start là một số không âm, chuỗi trả về sẽ bắt đầu từ vị trí thứ $start trong chuỗi, ký tự đầu tiên được tính là vị trí số 0. Ví dụ, trong chuỗi ‘abcdef’, ký tự ở vị trí số 0 là ‘a’, ký tự ở vị trí số 2 là ‘c’.

Nếu $start là một số âm, chuỗi trả về sẽ bắt đầu từ vị trí thứ $start nhưng tính từ cuối chuỗi trở lại.

Nếu độ dài của chuỗi nhỏ hơn giá trị $start, giá trị trả về sẽ là FALSE.

length

Nếu tham số $length được sử dụng và là một số dương, chuỗi trả về sẽ bao gồm $length ký tự, tính từ vị trí thứ $start (tùy thuộc vào độ dài của chuỗi).

Nếu tham số $length được sử dụng và là một số âm, chuỗi trả về được tính từ vị trí $start đến vị trí $length (trong đó vị trí $length được tính từ cuối chuỗi trở lại). Nếu vị trí $start nằm giữa vị trí $length đến cuối chuỗi, giá trị trả về sẽ là FALSE.

Nếu tham số $length được sử dụng và là có giá trị là 0, FALSE hoặc NULL, giá trị trả về sẽ là một chuỗi rỗng.

Nếu tham số $length không được sử dụng, chuỗi trả về sẽ bắt đầu từ vị trí $start cho đến hết chuỗi.

Ví dụ:

<!DOCTYPE html>
<html>
<body>

<?php
// Positive numbers:
echo substr("Hello world",10)."<br>";
echo substr("Hello world",1)."<br>";
echo substr("Hello world",3)."<br>";
echo substr("Hello world",7)."<br>";
echo "<br>";

// Negative numbers:
echo substr("Hello world",-1)."<br>";
echo substr("Hello world",-10)."<br>";
echo substr("Hello world",-8)."<br>";
echo substr("Hello world",-4)."<br>";
?>

</body>
</html>

Kết quả:

d
ello world
lo world
orld

d
ello world
lo world
orld

2.5 Tách chuỗi trong PHP

– Hàm explode() dùng để tách chuỗi ra thành một mảng.

Để sử dụng hàm explode() thì ta dùng cú pháp như sau:

explode(separator, string, limit)

Trong Đó:

separator (bắt buộc)

– Chỉ định nơi dùng để tách chuỗi.

– Lưu ý: Giá trị của tham số separator không được là một chuỗi rỗng.

string (băt buộc)

– Chuỗi được dùng để xử lý.

limit (Không bắt buộc)

– Chỉ định số lượng phần tử mảng được trả về.

– Dưới đây là các giá trị có thể dùng cho tham số limit:

0 : Trả về mảng chỉ có một phần tử duy nhất.

Lớn hơn 0 : Trả về mảng có số lượng phần tử không vượt quá giá trị của tham số limit.

Nhỏ hơn 0 : Trả về mảng có số lượng phần tử bằng với số lượng phần tử có thể tách được từ chuỗi trừ đi giá trị của tham số limit.

Lưu ý: Nếu bỏ qua tham số này thì hàm sẽ trả về một mảng có số lượng phần tử bằng với số lượng phần tử có thể tách được từ chuỗi.

Ví Dụ:

<!DOCTYPE html>
<html>
<body>

<?php
$str = "Hello world. It's a beautiful day.";
print_r (explode(" ",$str));
?> 

</body>
</html>

Kết Quả:

Array ( [0] => Hello [1] => world. [2] => It's [3] => a [4] => beautiful [5] => day. )

2.6 So sánh chuỗi trong PHP

Hàm strcmp() sẽ so sánh hai chuỗi phân biệt chữ hoa chữ thường, hàm trả về số âm nếu chuỗi thứ nhất nhỏ hơn chuỗi thứ 2, trả về 0 nếu hai chuỗi bằng nhau và trả về số dương nếu chuỗi thứ nhất lớn hơn chuỗi thứ 2.

Cú pháp:

strcmp( $str1, $str2);

Trong đó:

$str1, $str2 là hai chuỗi cần so sánh.

Ví dụ:

<!DOCTYPE html>
<html>
<body>

<?php
echo strcmp("Hello world!","Hello world!");
?>

<p>If this function returns 0, the two strings are equal.</p>

</body>
</html>

Kết quả:

0
If this function returns 0, the two strings are equal.

2.7 Thay thế chuỗi trong PHP

Cú pháp:

str_replace($search, $replace, $subject);

$search là kí tự, chuỗi kí tự hoặc mảng các chuỗi ký tự cần tìm kiếm để thay thế.

$replace là kí tự, chuỗi kí tự hoặc mảng các chuỗi ký để thay thế cho kí tự, chuỗi kí tự hoặc mảng các chuỗi ký $sreach.

$subject là chuỗi ký tự hoặc mảng các chuỗi ký tự gốc cần được chỉnh sửa.

Hàm str_replace() sẽ thay thế tất cả các ký tự $strSearch nằm trong $subject bằng ký tự $strReplace.

Ví Dụ:

<!DOCTYPE html>
<html>
<body>

<p>Search the string "Hello World!", find the value "world" and replace it with "Peter":</p>

<?php
echo str_replace("world","Peter","Hello world!");
?>

</body>
</html>

Kết quả:

Search the string "Hello World!", find the value "world" and replace it with "Peter":

Hello Peter!

 

 

The post Chuỗi Trong PHP first appeared on Techacademy.

source https://techacademy.edu.vn/chuoi-trong-php/

Biến Trong PHP

Khái niệm về biến trong PHP là kiến thức nền tảng trong lập trình PHP mà hầu như lập trình viên nào cũng phải học đầu tiên. Trong bài này chúng ta sẽ đi tìm hiểu khái niệm thế nào là biến.

I. Biến trong php để làm gì

Bạn còn nhớ môn Đại Số ở Trường Không ?

Dạng như , x = 1 , y = 2 , z =3
Bạn còn nhớ với mỗi từ ta có thể gán 1 giá trị (vd : x = 2 , y = 123 , z = 52 v.v ) và bạn sẽ dùng mấy thông tin đó để tính 1 giá trị nào đó của d chẳng hạn .

Tất cả những cái trên được gọi là Biến PHP , và biến được dùng để giữ 1 giá trị nhất định (x=2) hoặc là các bài toán như ( d = a+b+c ) trong đó a,b,c là các hằng số có giá trị bất kỳ ( vd : a = 1 , b = 2 , c = 3 thì d = a + b + c = 6 )

Ví dụ:

<!DOCTYPE html>
<html>
<body>
<?php
//Đây là chú thích 1 dòng
/*
Đây là chú thích
Nhiều
Dòng
*/
?>
</body>
</html>

Biến PHP

Với đại số, các biến PHP được sử dụng để giữ các giá trị hoặc biểu thức.

Một biến có thể có một tên ngắn, như x, hoặc một cái tên dài hơn, như họ và tên chúng ta vậy.

Quy tắc cho tên biến PHP :

  • Các biến trong PHP bắt đầu với một kí hiệu $, tiếp theo là tên của biến
  • Tên biến phải bắt đầu với một ký tự hoặc ký tự gạch dưới
  • Một tên biến chỉ có thể chứa các ký tự chữ-số và gạch dưới (A-z, 0-9, và _)
  • Một tên biến không nên chứa không gian ( gọi là khoảng cách ý vd : $a b biến này là sai , $ba thế này mới đúng )
  • Tên biến là trường hợp nhạy cảm và quan trọng nên nó phân biệt cả hoa và thường (y và Y là hai biến khác nhau)
Phạm vi biến PHP
Phạm vi biến PHP

Creating (Declaring) PHP Variables

PHP không có lệnh để khai báo một biến.

Một biến được tạo ra thời điểm lần đầu tiên bạn chỉ định một giá trị cho nó: ( lúc mới bắt đầu file php )

Ví dụ về 1 biến:

$siverdragon12=”Hacker”;

Sau khi thực hiện biến trên thì biến siverdragon12 sẽ giữ giá trị là “Hacker”

Mẹo : Nếu bạn tạo một biến mà không để bất kỳ giá trị nào thì bạn nên để đặt giá trị đó là “null”

Ví Dụ :

$siverdragon12=null; 

Nào , bây giờ ta sẽ tạo ra 1 biến có chứa ký tự ( chữ từ a -> z ) và 1 biến có chứa số ( 0 -> 9 )

<?php
$txt="Hello World!";
$x=16;
?>

Chú ý : đối với chữ ( ký tự ) thì bạn phải để dấu ngoặc kép như trên , còn đối với số thì không cần .

PHP là một ngôn ngữ lỏng lẻo

Trong PHP, một biến không cần phải được khai báo trước khi thêm một giá trị cho nó.

Trong ví dụ trên, nhận thấy rằng chúng tôi không phải nói với PHP kiểu dữ liệu biến.

PHP sẽ tự động chuyển biến cho đúng kiểu dữ liệu, tùy thuộc vào giá trị của nó.

Trong một ngôn ngữ lập trình mạnh mẽ, bạn phải khai báo (xác định) các loại và tên của
biến trước khi sử dụng nó

II. Phạm Vi Biến Trong PHP

Phạm vi của một biến là một phần của kịch bản, trong đó biến có thể được tham chiếu.

PHP có bốn phạm vi biến khác nhau:

  • local
  • global
  • static
  • parameter

2.1 Biến Local

Một biến khai báo trong một hàm PHP là địa phương và chỉ có thể được truy cập trong phạm vi chức năng đó. (Biến có phạm vi local): Ví dụ .

<?php
$a = 5; // phạm vi local
function myTest()
{
    echo $a; // phạm vi local
    
}
myTest();
?>

Các kịch bản trên sẽ không sản xuất bất kỳ sản lượng vì echo tuyên bố đề cập đến biến phạm vi địa phương biến $a, mà đã không được chỉ định một giá trị trong phạm vi này.

Bạn có thể có các biến địa phương có cùng tên trong các chức năng khác nhau, bởi vì các biến địa phương chỉ được công nhận bởi các chức năng mà chúng được khai báo.

Các biến địa phương sẽ bị xóa ngay sau khi chức năng, nhiệm vụ được hoàn thành.

2.2 Biến Global

Phạm vi toàn cầu đề cập đến bất kỳ biến được định nghĩa bên ngoài của bất kỳ chức năng.

Biến toàn cầu có thể được truy cập từ bất kỳ một phần của kịch bản đó không phải là bên trong một hàm.

Để truy cập vào một biến toàn cầu từ bên trong một chức năng, sử dụng global từ khóa:

Ví dụ :

<?php
$a = 5;
$b = 10;
function myTest()
{
    global $a, $b;
    $b = $a + $b;
}
myTest();
echo $b;
?>

PHP cũng lưu trữ tất cả các biến toàn cầu trong một mảng gọi là $ GLOBALS [ index ]. Chỉ số của nó là tên của biến. Mảng này cũng có thể truy cập từ bên trong chức năng và có thể được sử dụng để cập nhật các biến toàn cầu trực tiếp.

Ví dụ trên có thể được viết lại như thế này:

<?php
$a = 5;
$b = 10;
function myTest()
{
    $GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];
}
myTest();
echo $b;
?>

2.3 Biến Static

Khi một hàm được hoàn thành, tất cả các biến của nó thường bị xóa. Tuy nhiên, đôi khi bạn muốn biến địa phương để không bị xóa.

Để làm điều này, sử dụng các từ khóa tĩnh khi lần đầu tiên bạn khai báo các biến:

static $rememberMe; 

Sau đó, mỗi khi hàm được gọi, biến đó vẫn sẽ có những thông tin nó có từ thời gian qua các chức năng được gọi.

Lưu ý: biến vẫn là local đến chức năng.

2.4 Parameters

Một tham số là một biến địa phương có giá trị được truyền cho hàm mã gọi.

Các thông số được khai báo trong danh sách tham số như là một phần của việc kê khai hàm functions:

Function myTest($para1,$para2,...)
{
// function code
} 

Các thông số còn được gọi là đối số. Chúng tôi sẽ thảo luận chi tiết hơn khi chúng ta nói về các chức năng.

The post Biến Trong PHP first appeared on Techacademy.

source https://techacademy.edu.vn/bien-php/

Vòng Lặp Trong C

Khi tiến hành lập trình có thể bạn sẽ gặp phải tình huống đó là một khối mã cần được thực thi nhiều lần, khi đó các câu lệnh được thực thi tuần tự: Câu lệnh đầu tiên trong một hàm được thực hiện trước tiên, tiếp theo là câu lệnh thứ hai và tiếp tục như vậy. Vòng lặp trong C nhằm cung cấp các loại vòng lặp sau đây để xử lý các yêu cầu lặp:

vòng lặp trong c
vòng lặp trong c
  • Vòng lập while trong C
  • Vòng lặp for
  • Vòng lặp do…while
  • Vòng lặp nested

Một câu lệnh vòng lặp cho phép chúng ta thực hiện một câu lệnh hoặc một nhóm các câu lệnh nhiều lần. Dưới đây là hình thức chung của một vòng lặp trong hầu hết các ngôn ngữ lập trình:

vòng lặp trong c (2)
vòng lặp trong c (2)

1. Vòng Lặp While Trong C

Vòng lặp while thường được sử dụng để lặp đi lặp lại một khối lệnh không biết trước số lần lặp. Dưới đây là cú pháp của vòng lặp while:

while(condition) {

statement(s);

}

Ở đây, (các) câu lệnh có thể là một câu lệnh đơn hoặc một khối câu lệnh. Điều kiện có thể là bất kỳ biểu thức nào và là bất kỳ giá trị nào khác. Vòng lặp lại khi điều kiện là đúng. Khi điều kiện sai, chương trình sẽ thoát khỏi vòng lặp và chuyển đến dòng ngay sau vòng lặp.

Bài tập thực hành:

In ra các số lẻ <= 10

Lời Giải:

#include <stdio.h>
 
int main(){
    /*
        In ra các số lẻ <= 10.
     */
 
    int number = 1;
    while (number <= 10){
        if(number % 2 == 1){
            printf("%d\t", number);
        }
        number++;
    }
}

Kết Quả:

PS G:\c_cources\day_19> g++ .\WhileLoop.cpp -o .\WhileLoop
PS G:\c_cources\day_19> .\WhileLoop.exe
1       3       5       7       9

 

2. Vòng Lặp For Trong C

Vòng lặp For là một cấu trúc điều khiển lặp lại cho phép bạn viết một cách hiệu quả một vòng lặp mà cần phải thực hiện một số cụ thể.

Cú pháp của vòng lặp for trong ngôn ngữ lập trình C là:

for ( init; condition; increment ) {

statement(s);

}
  • Bước init được thực thi đầu tiên, và chỉ một lần. Bước này cho phép bạn khai báo và khởi tạo bất kỳ biến điều khiển vòng lặp nào.
  • Tiếp theo, điều kiện được đánh giá. Nếu nó là đúng, phần thân của vòng lặp được thực thi. Nếu nó sai, phần thân của vòng lặp không thực thi và luồng điều khiển nhảy đến câu lệnh kế tiếp ngay sau vòng lặp for.
  • Sau khi vòng lặp for thực hiện, luồng điều khiển nhảy ngược lại câu lệnh tăng dần. Câu lệnh này cho phép bạn cập nhật bất kỳ biến điều khiển vòng lặp nào. Câu lệnh này có thể để trống, miễn là dấu chấm phẩy xuất hiện sau điều kiện.
  • Điều kiện hiện được đánh giá lại. Nếu nó là true, vòng lặp thực hiện và quá trình lặp lại chính nó và nếu điều kiện sai, vòng lặp for chấm dứt.

Vòng lặp For là thường được sử dụng trong khóa học lập trình C

Bài Tập:

In ra 3 dòng chữ “Hoc C ba dao tai Lap trinh khong kho!”

Lời Giải:

/*
    In ra 3 dòng chữ "Hoc C ba dao tai Lap trinh khong kho!"
 */
 
 
#include <stdio.h>
 
int main(){
    for(int i = 0; i < 3; i++){
        printf("Hoc C ba dao tai Lap trinh khong kho!\n");
    }
    // Continue ...
    printf("Ket thuc vong lap!\n");
}
 
/*
    Giải thích:
    B1. Gán biến lặp i = 0
    B2. Kiểm tra điều kiện (i = 0) < 3 => Đúng
    B3. Do kiểm tra điều kiện đúng => Thực hiện thân vòng lặp for
    B4. Gọi tới (i++) => tăng i lên 1 đơn vị => i = 1
    B5. Kiểm tra điều kiện (i = 1) < 3 => Đúng
    B6. Do kiểm tra điều kiện đúng => Thực hiện thân vòng lặp for
    B7. Gọi tới (i++) => tăng i lên 1 đơn vị => i = 2
    B8. Kiểm tra điều kiện (i = 2) < 3 => Đúng
    B9. Do kiểm tra điều kiện đúng => Thực hiện thân vòng lặp for
    B10. Gọi tới (i++) => tăng i lên 1 đơn vị => i = 3
    B11. Kiểm tra điều kiện (i = 3) < 3 => Sai => Kết thúc vòng lặp
 */

Kết Quả:

Hoc C ba dao tai Lap trinh khong kho!
Hoc C ba dao tai Lap trinh khong kho!
Hoc C ba dao tai Lap trinh khong kho!
Ket thuc vong lap!

3. Vòng Lặp Do While

Không giống như vòng lặp for và while tiến hành kiểm tra điều kiện lặp ở đầu vòng lặp, do … while trong lập trình C kiểm tra điều kiện ở dưới cùng của vòng lặp.

Vòng lặp do … while tương tự như một vòng lặp while, tuy nhiên do … while luôn được thực hiện ít nhất một lần.

Cú pháp của vòng lặp do … while trong ngôn ngữ lập trình C là:

do {

statement(s);

} while( condition );

 

Lưu ý rằng biểu thức điều kiện xuất hiện ở cuối vòng lặp, do đó (các) câu lệnh trong vòng lặp thực hiện một lần trước khi điều kiện được kiểm tra.

Nếu điều kiện là đúng, luồng điều khiển nhảy trở lại để làm, và (các) câu lệnh trong vòng lặp thực hiện lại. Quá trình này lặp lại cho đến khi điều kiện đã cho trở thành sai.

Ví Dụ:

#include <stdio.h>
  
int main () {
    int a = 10;
 
    do {
        printf("Gia tri cua a: %d\n", a);
        a++;
    } while( a < 20 );
  
    return 0;
}

Kết Quả:

Gia tri cua a: 10
Gia tri cua a: 11
Gia tri cua a: 12
Gia tri cua a: 13
Gia tri cua a: 14
Gia tri cua a: 15
Gia tri cua a: 16
Gia tri cua a: 17
Gia tri cua a: 18
Gia tri cua a: 19

 

4. Vòng lặp nested

Lập trình C cho phép sử dụng vòng lặp nested (vòng lặp bên trong vòng lặp khác). Phần sau đây cho thấy một vài ví dụ để minh họa:

  • Cú pháp cho câu lệnh vòng lặp nested với vòng lặp for trong C như sau:

f

or ( init; condition; increment ) {

for ( init; condition; increment ) {

statement(s);

}

statement(s);

}

 

  • Cú pháp cho câu lệnh vòng lặp nested với vòng lặp while trong ngôn ngữ lập trình C như sau:
while(condition) {

while(condition) {

statement(s);

}

statement(s);

}

 

  • Cú pháp cho câu lệnh lồng nhau do … while trong ngôn ngữ lập trình C như sau:
do {

statement(s);

do {

statement(s);

}while( condition );

}while( condition );

 

Lưu ý cuối cùng về việc lồng vòng lặp là bạn có thể đặt bất kỳ loại vòng lặp nào bên trong loại vòng lặp khác.

5. Câu lệnh điều khiển vòng lặp

C hỗ trợ các câu lệnh điều khiển sau:

  • Chấm dứt vòng lặp hoặc switch tuyên bố và chuyển thực hiện để báo cáo kết quả ngay sau khi vòng lặp hoặc switch.
  • Làm cho vòng lặp bỏ qua phần còn lại của chương trình và ngay lập tức kiểm tra lại tình trạng của nó trước khi lặp lại.
  • Chuyển quyền kiểm soát vào câu lệnh được dán nhãn.

6. Vòng lặp vô hạn

Một vòng lặp trở thành một vòng lặp vô hạn nếu một điều kiện không bao giờ trở thành sai. Các vòng lặp theo truyền thống được sử dụng cho mục đích này, vì không có biểu thức nào trong số ba biểu thức tạo thành vòng lặp for là bắt buộc, bạn có thể tạo vòng lặp vô tận bằng cách để trống biểu thức điều kiện.

#include

int main () {

for( ; ; ) {

printf("This loop will run forever.\n");

}

return 0;

}

Khi biểu thức điều kiện để trống, nó được giả định là đúng. Bạn có thể có một biểu thức khởi tạo và gia tăng, nhưng các lập trình viên C thường sử dụng cấu trúc for (;;) để biểu thị một vòng lặp vô hạn. Bạn có thể chấm dứt vòng lặp vô hạn bằng cách nhấn các phím Ctrl + C.

7. Một số bài tập về vòng lặp trong C

Bài 1:

Viết chương trình nhập số nguyên dương n. Tính S(n)= 1 + (1+2)/2! + (1+2+3)/3! + … + (1+2+3+…+n)/n! (n>0)

Lời giải:

// Tính S(n)= 1 + (1+2)/2! + (1+2+3)/3! + ... + (1+2+3+..+n)/n! (n>0)

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


#include <iostream>
using namespace std;

int Nhap()
{
   int x;
   do
   {
      cin >> x;
      if (x < 0)
         cout << "Nhap sai, yeu cau nhap lai!";
   } while (x < 0);
   return x;
}

double Tinh(int n)
{
   float s = 0, t = 0;
   long p = 1;
   for (int i = 1; i <= n; i++)
   {
      t = t + i;
      p = p * i;
      s = s + (double)t / p;
   }
   return s;
}

int main()
{
   int n; 

   cout << "Nhap so nguyen n: ";
   n = Nhap();
   cout << "Ket qua la: "<< Tinh(n) << endl;

   return 0;
}

Bài 2:

Viết chương trình nhập số nguyên dương n. Tính S(n) = 1-2+3-4+5+…+((-1)^(n+1))*n (n>0)

Ví dụ:

Input: 5

Output: 3

Lời Giải:

// Tinh P(n) = 1-2+3-4+5+...+((-1)^(n+1))*n (n>0)

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


#include <iostream>
using namespace std;

int Nhap()
{
   int x;
   do
   {
      cin >> x;
      if (x < 0)
         cout << "Nhap sai, yeu cau nhap lai!";
   } while (x < 0);
   return x;
}

long Tinh(int n)
{
   long p = 0;
long tmp = 1;
   for (int i = 1; i <= n; i++)
{
      p += tmp*i;
      tmp *= -1;
}
   return p;
}

int main()
{
   int n; 

   cout << "Nhap so nguyen n: ";
   n = Nhap();
   cout << "Ket qua la: "<< Tinh(n) << endl;

   return 0;
}

 

The post Vòng Lặp Trong C first appeared on Techacademy.

source https://techacademy.edu.vn/vong-lap-trong-c/

Mảng Trong PHP

Mảng là một cấu trúc dữ liệu lưu trữ một hoặc nhiều loại giá trị tương tự trong một giá trị duy nhất. Ví dụ: nếu bạn muốn lưu trữ 100 số thì thay vì xác định 100 biến dễ dàng để xác định một mảng có độ dài 100. Tìm hiểu về Mảng (Array) trong PHP được sử dụng để tạo một mảng. Mảng là một trong những nội dung cơ bản rất quan trọng trong khóa học lập trình PHP, vì thế học viên nên nắm bắt thật chắc về mảng.

mảng php
mảng php

Trong PHP, có ba loại mảng:

  • Mảng được lập chỉ mục – Mảng có chỉ mục số
  • Mảng kết hợp – Mảng với các phím được đặt tên
  • Mảng đa chiều – Mảng chứa một hoặc nhiều mảng

1. Mảng được lập chỉ mục – Mảng có chỉ mục số

Các mảng này có thể lưu trữ số, chuỗi và bất kỳ đối tượng nào nhưng chỉ mục của chúng sẽ được biểu diễn bằng số. Theo chỉ mục mảng mặc định bắt đầu từ số không.

Thí dụ

Sau đây là ví dụ cho thấy cách tạo và truy cập mảng số.

Ở đây chúng ta đã sử dụng hàm array () để tạo mảng. Hàm này được giải thích trong tham chiếu hàm.

 

/* First method to create array. */

$numbers = array( 1, 2, 3, 4, 5);

foreach( $numbers as $value ) {

echo "Value is $value
";

}

/* Second method to create array. */

$numbers[0] = "one";

$numbers[1] = "two";

$numbers[2] = "three";

$numbers[3] = "four";

$numbers[4] = "five";

foreach( $numbers as $value ) {

echo "Value is $value
";

}

?>

 

Điều này sẽ tạo ra kết quả sau:

Mảng được lập chỉ mục - Mảng có chỉ mục số
Mảng được lập chỉ mục – Mảng có chỉ mục số

2. Mảng kết hợp – Mảng với các khóa được đặt tên

Các mảng kết hợp rất giống với mảng số về mặt chức năng nhưng chúng khác nhau về chỉ mục của chúng. Mảng kết hợp sẽ có chỉ mục của chúng dưới dạng chuỗi để bạn có thể thiết lập mối liên kết chặt chẽ giữa khóa và giá trị.

Để lưu trữ tiền lương của nhân viên trong một mảng, một mảng được lập chỉ mục bằng số sẽ không phải là lựa chọn tốt nhất. Thay vào đó, chúng tôi có thể sử dụng tên nhân viên làm khóa trong mảng kết hợp của chúng tôi và giá trị sẽ là mức lương tương ứng của họ.

LƯU Ý – Không giữ mảng kết hợp bên trong báo giá kép trong khi in nếu không nó sẽ không trả về bất kỳ giá trị nào.

Thí dụ:

 

/* First method to associate create array. */

$salaries = array("mohammad" => 2000, "qadir" => 1000, "zara" => 500);

echo "Salary of mohammad is ". $salaries['mohammad'] . "
";

echo "Salary of qadir is ". $salaries['qadir']. "
";

echo "Salary of zara is ". $salaries['zara']. "
";

/* Second method to create array. */

$salaries['mohammad'] = "high";

$salaries['qadir'] = "medium";

$salaries['zara'] = "low";

echo "Salary of mohammad is ". $salaries['mohammad'] . "
";

echo "Salary of qadir is ". $salaries['qadir']. "
";

echo "Salary of zara is ". $salaries['zara']. "
";

?>

 

Điều này sẽ tạo ra kết quả sau:

Mảng kết hợp - Mảng với các phím được đặt tên
Mảng kết hợp – Mảng với các phím được đặt tên

3. Mảng đa chiều – Mảng chứa một hoặc nhiều mảng

Mảng đa chiều - Mảng chứa một hoặc nhiều mảng
Mảng đa chiều – Mảng chứa một hoặc nhiều mảng

Mảng đa chiều mỗi phần tử trong mảng chính cũng có thể là một mảng. Và mỗi phần tử trong mảng phụ có thể là một mảng, v.v. Giá trị trong mảng đa chiều được truy cập bằng nhiều chỉ mục.

Thí dụ:

Trong ví dụ này, chúng ta tạo một mảng hai chiều để lưu trữ các dấu hiệu của ba học sinh trong ba môn học.

Ví dụ này là một mảng kết hợp, bạn có thể tạo mảng số theo cùng một kiểu.

 

$marks = array(

"mohammad" => array (

"physics" => 35,

"maths" => 30,

"chemistry" => 39

),

"qadir" => array (

"physics" => 30,

"maths" => 32,

"chemistry" => 29

),

"zara" => array (

"physics" => 31,

"maths" => 22,

"chemistry" => 39

)

);

/* Accessing multi-dimensional array values */

echo "Marks for mohammad in physics : " ;

echo $marks['mohammad']['physics'] . "
";

echo "Marks for qadir in maths : ";

echo $marks['qadir']['maths'] . "
";

echo "Marks for zara in chemistry : " ;

echo $marks['zara']['chemistry'] . "
";

?>

 

Điều này sẽ tạo ra kết quả sau:

Mảng đa chiều - Mảng chứa một hoặc nhiều mảng (2)
Mảng đa chiều – Mảng chứa một hoặc nhiều mảng (2)

4. Danh sách hàm dùng để xử lý Mảng (Array) trong PHP

Cột PHP chỉ phiên bản PHP sớm nhất mà hỗ trợ hàm đó.

Hàm Miêu tả PHP
Hàm array() Tạo một mảng 3
Hàm array_change_key_case() Trả về một mảng với tất cả key trong dạng chữ hoa hoặc chữ thường 4
Hàm array_chunk() Chia một mảng thành một mảng các mảng 4
Hàm array_combine() Tạo một mảng bởi sử dụng một mảng cho key và mảng khác cho value 5
Hàm array_count_values() Trả về một mảng với số lần xuất hiện mỗi value 4
Hàm array_diff() So sánh các value của mảng, và trả về các sự khác nhau 4
Hàm array_diff_assoc() So sánh key và value của mảng, và trả về sự khác nhau 4
Hàm array_diff_key() So sánh các key của mảng, và trả về các sự khác nhau 5
Hàm array_diff_uassoc() So sánh key và value của mảng, với một hàm kiểm tra bổ sung do người dùng tạo, và trả về các sự khác nhau 5
Hàm array_diff_ukey() So sánh key của mảng, với một hàm kiểm tra bổ sung do người dùng tạo, và trả về các sự khác nhau 5
Hàm array_fill() Điền value vào một mảng 4
Hàm array_fill_keys() Điền value vào một mảng, chỉ rõ các key 5
Hàm array_filter() Lọc các phần tử của một mảng bởi sử dụng một hàm do người dùng tạo 4
Hàm array_flip() Trao đổi tất cả key với value được liên hợp với chúng trong một mảng 4
Hàm array_intersect() So sánh các value trong mảng và trả về các so khớp 4
Hàm array_intersect_assoc() So sánh các key và value trong mảng và trả về các so khớp 4
Hàm array_intersect_key() So sánh các key trong mảng và trả về các so khớp 5
Hàm array_intersect_uassoc() So sánh các key và value trong mảng, với một hàm kiểm tra bổ sung do người dùng tạo và trả về các so khớp 5
Hàm array_intersect_ukey() So sánh các key trong mảng, với một hàm kiểm tra bổ sung do người dùng tạo và trả về các so khớp 5
Hàm array_key_exists() Kiểm tra xem key đã cho có tồn tại trong mảng không 4
Hàm array_keys() Trả về tất cả key của một mảng 4
Hàm array_map() Gửi mỗi value của một mảng tới một hàm do người dùng tạo, mà trả về các value mới 4
Hàm array_merge() Sáp nhập một hoặc nhiều mảng thành một mảng 4
Hàm array_merge_recursive() Sáp nhập một hoặc nhiều mảng thành một mảng 4
Hàm array_multisort() Sắp xếp các mảng đa chiều 4
Hàm array_pad() Chèn số lượng item đã xác định với một value đã xác định vào một mảng 4
Hàm array_pop() Xóa phần tử cuối cùng của một mảng 4
Hàm array_product() Tính toán tích các value trong một mảng 5
Hàm array_push() Chèn một hoặc nhiều phần tử vào phần cuối của một mảng 4
Hàm array_rand() Trả về một hoặc nhiều key ngẫu nhiên từ một mảng 4
Hàm array_reduce() Trả về một mảng ở dạng string, sử dụng hàm do người dùng tạo 4
Hàm array_reverse() Trả về một mảng với thứ tự bị đảo ngược 4
Hàm array_search() Tìm kiếm một mảng cho một value đã cho và trả về key 4
Hàm array_shift() Gỡ bỏ phần tử đầu tiên từ một mảng, và trả về value của phần tử bị gỡ bỏ 4
Hàm array_slice() Trả về các phần đã chọn của một mảng 4
Hàm array_splice() Gỡ bỏ và thay thế các phần tử đã xác định của một mảng 4
Hàm array_sum() Trả về tổng các value trong một mảng 4
Hàm array_udiff() So sánh các value của mảng trong một hàm do người dùng tạo và trả về một mảng 5
Hàm array_udiff_assoc() So sánh các key của mảng, và so sánh các value của mảng trong một hàm do người dùng tạo, và trả về một mảng 5
Hàm array_udiff_uassoc() So sánh các key và value của mảng trong một hàm do người dùng tạo, và trả về một mảng 5
Hàm array_uintersect() So sánh các value của mảng trong một hàm do người dùng tạo, và trả về một mảng 5
Hàm array_uintersect_assoc() So sánh các key của mảng, và so sánh các value của mảng trong một hàm do người dùng tạo, và trả về một mảng 5
Hàm array_uintersect_uassoc() So sánh các value của mảng trong một hàm do người dùng tạo, và trả về một mảng 5
Hàm array_unique() Gỡ bỏ bản sao các value từ một mảng 4
Hàm array_unshift() Thêm một hoặc nhiều phần tử tới phần đầu của mảng 4
Hàm array_values() Trả về tất cả value của một mảng 4
Hàm array_walk() Áp dụng một hàm do người dùng tạo tới mỗi thành viên của một mảng 3
Hàm array_walk_recursive() Áp dụng một hàm một cách đệ qui do người dùng tạo tới mỗi thành viên của một mảng 5
Hàm arsort() Sắp xếp một mảng với thứ tự đảo ngược và duy trì liên kết chỉ mục 3
Hàm asort() Sắp xếp một mảng và duy trì liên kết chỉ mục 3
Hàm compact() Tạo một mảng chứa các biến và các value của chúng 4
Hàm count() Đếm các phần tử trong một mảng, hoặc các thuộc tính trong một đối tượng 3
Hàm current() Trả về phần tử hiện tại trong một mảng 3
Hàm each() Trả về cặp key và value hiện tại từ một mảng 3
Hàm end() Thiết lập con trỏ nội bộ của một mảng tới phần tử cuối cùng của nó 3
Hàm extract() Nhập các biến vào trong bảng biểu tượng hiện tại từ một mảng 3
Hàm in_array() Kiểm tra nếu một value đã xác định là tồn tại trong một mảng 4
Hàm key() Lấy một key từ một mảng 3
Hàm krsort() Sắp xếp một mảng bằng các key theo thứ tự đảo ngược 3
Hàm ksort() Sắp xếp một mảng bằng các key 3
Hàm list() Gán các biến như nếu chúng là một mảng 3
Hàm natcasesort() Sắp xếp một mảng bởi sử dụng một thuật toán “natural order” không phân biệt kiểu chữ 4
Hàm natsort() Sắp xếp một mảng bởi sử dụng một thuật toán “natural order” 4
Hàm next() Tăng con trỏ mảng nội bộ hay trỏ tới phần tử kế tiếp của một mảng 3
Hàm pos() Alias của hàm current() 3
Hàm prev() Giảm con trỏ mảng nội bộ hay trỏ tới phần tử ở trước của một mảng 3
Hàm range() Tạo một mảng chứa một phạm vi phần tử 3
Hàm reset() Thiết lập con trỏ nội bộ của mảng về phần tử đầu tiên của nó 3
Hàm rsort() Sắp xếp một mảng theo thứ tự đảo ngược 3
Hàm shuffle() Xáo trộn một mảng 3
Hàm sizeof() Alias của hàm count() 3
Hàm sort() Sắp xếp một mảng 3
Hàm uasort() Sắp xếp một mảng với một hàm do người dùng tạo và duy trì liên kết chỉ mục 3
Hàm uksort() Sắp xếp một mảng bằng các key bởi sử dụng một hàm do người dùng tạo 3
Hàm usort() Sắp xếp một mảng bằng các value bởi sử dụng một hàm do người dùng tạo 3

5. Thêm Phần Tử Vào Mảng

Thêm phần tử vào cuối mảng

<?php
$list_odd = array(1,3,5,7);
// Thêm phần tử giá trị 9 vào mảng có chỉ số key là số nguyên cao nhất.
$list_odd[] = 9;
?>

Khi thực hiện cấu trúc dấu ngoặc vuông rỗng [] để thêm phần từ thì phần tử được thêm vào mảng có chỉ số lớn nhất cộng thêm một giá trị.

Thêm phần tử bởi một key(chỉ mục) xác định trước

<?php
$student = array(
    '08T1016' => "Phan Văn Cương",
    '08T1013' => "Nguyễn Văn Hoàng",
    '08T1015' => "Bùi Việt Đức",
);
// Thêm phần tử có key xác định vào mảng $student
$student['08T1019']= "Trần Thị Hằng";
?>

6. Cập Nhật Giá Trị Phần Tử Của Mảng

Để cập nhật giá trị của mảng chúng ta cần xác định key của phần tử cần cập nhật và thực hiện thao tác gán lại giá trị.

<?php
$list_color = array('Green', 'Red', 'Blue');
// Cập nhật giá trị Green bằng Back
$list_color[0] = Black;
?>

7. Xóa Một Phần Tử Trong Mảng

Để xóa phần tử của mảng ta sử dụng hàm unset()

<?php
$student = array(
    '08T1016' => "Phan Văn Cương",
    '08T1013' => "Nguyễn Văn Hoàng",
    '08T1015' => "Bùi Việt Đức",
);
// Xóa Bùi Việt Đức ra khỏi mảng $student
unset($student['08T1015']);
print_r($student);
?>

Xóa tất cả các phần tử của mảng

<?php
unset($student);
?>

 

The post Mảng Trong PHP first appeared on Techacademy.

source https://techacademy.edu.vn/mang-trong-php/

Typedef Trong C

Ngôn ngữ lập trình C cung cấp một từ khóa được gọi là typedef, bạn có thể sử dụng để cung cấp kiểu cho một loại tên mới.

Typedef trong c
Typedef trong c

Dưới đây là ví dụ để xác định BYTE cho kiểu dữ liệu unsigned char

typedef unsigned char BYTE;

Sau định nghĩa này, định danh BYTE có thể được sử dụng như một từ viết tắt cho loại unsigned char, ví dụ:

BYTE b1, b2;

Theo quy ước, chữ hoa được sử dụng cho các định nghĩa để nhắc nhở người dùng rằng tên thực sự là một từ viết tắt tượng trưng, ​​nhưng bạn có thể sử dụng chữ thường, như sau:

typedef unsigned char byte;

Bạn có thể sử dụng typedef để đặt tên cho kiểu dữ liệu do người dùng xác định.

Ví dụ, bạn có thể sử dụng typedef với cấu trúc để định nghĩa một kiểu dữ liệu mới và sau đó sử dụng kiểu dữ liệu đó để định nghĩa các biến cấu trúc trực tiếp như sau:

#include

#include

typedef struct Books {

char title[50];

char author[50];

char subject[100];

int book_id;

} Book;

int main( ) {

Book book;

strcpy( book.title, "C Programming");

strcpy( book.author, "Nuha Ali");

strcpy( book.subject, "C Programming Tutorial");

book.book_id = 6495407;

printf( "Book title : %s\n", book.title);

printf( "Book author : %s\n", book.author);

printf( "Book subject : %s\n", book.subject);

printf( "Book book_id : %d\n", book.book_id);

return 0;

}

Khi mã trên được biên dịch và thực hiện, nó tạo ra kết quả sau:

Book title : C Programming

Book author : Nuha Ali

Book subject : C Programming Tutorial

Book book_id : 6495407

1. Typedef và  #define trong C

#define là chỉ thị C cũng được sử dụng để xác định bí danh cho các loại dữ liệu khác nhau tương tự typedef nhưng với những khác biệt sau đây:

typedef được giới hạn chỉ cung cấp các tên viết tắt cho các kiểu, trong khi đó #define có thể được sử dụng để định nghĩa tên hiệu cho cả các giá trị, như bạn có thể định nghĩa 1 là ONE, ….

Typedef được thực hiện bởi trình biên dịch trong khi các câu lệnh #define được xử lý bởi bộ xử lý trước.

Ví dụ sau cho thấy cách sử dụng #define trong một chương trình:

#include

#define TRUE 1

#define FALSE 0

int main( ) {

printf( "Value of TRUE : %d\n", TRUE);

printf( "Value of FALSE : %d\n", FALSE);

return 0;

}

Khi mã trên được biên dịch và thực hiện, nó tạo ra kết quả sau:

Value of TRUE : 1

Value of FALSE : 0

The post Typedef Trong C first appeared on Techacademy.

source https://techacademy.edu.vn/typedef-trong-c/

Kiểm Tra Số Nguyên Tố Trong C

Trong chương trình sau, chúng tôi đang kiểm tra xem số nguyên đầu vào là dương hay âm nó được gọi là kiểm tra số nguyên tố trong C. Nếu số đầu vào lớn hơn không thì số dương của nó sẽ là số âm. Nếu con số bằng không thì nó không phải là số dương hay âm. Cùng một logic chúng ta xét trong chương trình C dưới đây.

1.Chương trình C để tìm kiểm tra số đã nhập có phải là số nguyên tố

#include <iostream>
using namespace std;

int main() {
    int i, n;
    bool isPrime = true;

    cout << "Enter a positive integer: ";
    cin >> n;

    // 0 and 1 are not prime numbers
    if (n == 0 || n == 1) {
        isPrime = false;
    }
    else {
        for (i = 2; i <= n / 2; ++i) {
            if (n % i == 0) {
                isPrime = false;
                break;
            }
        }
    }
    if (isPrime)
        cout << n << " is a prime number";
    else
        cout << n << " is not a prime number";

    return 0;
}

Biên dịch và chạy chương trình C trên sẽ cho kết quả:

Enter a positive integer: 29
29 is a prime number.

2. Chương Trình Đếm Số Chữ Số Trong Một Số Nguyên

#include

int main()

{

long long n;

int count = 0;

printf("Enter an integer: ");

scanf("%lld", &n);

while(n != 0)

{

// n = n/10

n /= 10;

++count;

}

printf("Number of digits: %d", count);

}

 

Đầu ra

Nhập số nguyên: 3452

Số chữ số: 4

Số nguyên được nhập bởi người dùng được lưu trữ trong biến n . Sau đó vòng lặp while được lặp lại cho đến khi biểu thức kiểm tra n != 0được đánh giá là 0 (false).

Sau lần lặp đầu tiên, giá trị của n sẽ là 345 và số đếm được tăng lên 1.

Sau lần lặp thứ hai, giá trị của n sẽ là 34 và số đếm được tăng lên 2.

Sau lần lặp thứ ba, giá trị của n sẽ là 3 và số đếm được tăng lên 3.

Sau lần lặp thứ tư, giá trị của n sẽ là 0 và số đếm được tăng lên đến 4.

Sau đó, biểu thức kiểm tra được đánh giá là false và vòng lặp kết thúc.

3. Chương Trình C Kiểm Tra Số Nguyên Dương Hay Âm

Trong chương trình sau, chúng tôi đang kiểm tra xem số nguyên đầu vào là dương hay âm. Nếu số đầu vào lớn hơn 0 thì số dương của nó sẽ là số âm. Nếu con số bằng không thì nó không phải là số dương hay âm.

* / #include

void main () { int num ;

printf ( "Nhập số: \ n" );

scanf ( "% d" , & num ); if ( num > 0 )

printf ( "% d là số dương \ n" , num ); else if ( num < 0 )

printf ( "% d là số âm \ n" , num ); else

printf ( "0 không dương và âm" ); }

Đầu ra 1:

Nhập một số : 0 là không âm và dương

Đầu ra 2:

Nhập một số : – 3 là số âm

Đầu ra 3:

Nhập một số : 100 là số dương

The post Kiểm Tra Số Nguyên Tố Trong C first appeared on Techacademy.

source https://techacademy.edu.vn/kiem-tra-so-nguyen-to-trong-c/