Yêu cầu mọi thông tin sao chép từ blog này phải được ghi rõ đầy đủ: Thông tin được sao chép từ "http://www.dangngochoangthanh.blogspot.com".

Cool wallpaper http://www.fancymessage.com

EMOJI KEYBOARD PRO http://emojiselector.com

THƯ VIỆN HÌNH ĐỘNG FLASH ANIMATION: http://flashanimationlibrary.blogspot.ru/

Hệ thống học trực tuyến đang được phát triển và sẽ đưa vào sử dụng vào cuối năm nay. Hãy xem qua một số demo của Học Trực Tuyến.


HỌC TRỰC TUYẾN ĐÃ CUNG CẤP PHIÊN BẢN TRUY CẬP QUA MOBILE http://dangngochoangthanh.blogspot.com/?m=1

XEM KÊNH HỌC TRỰC TUYẾN TRÊN YOUTUBE


Đặc biệt khi học trực tuyến ở webiste chúng tôi, bạn sẽ được giải đáp các vấn đền thắc mắc đến môn học trong vòng 3 tháng kể từ khi kết thúc khóa học !

THÔNG TIN VỀ CÁC KHÓA HỌC TRỰC TUYẾN - ÁP DỤNG CHO NHỮNG NGƯỜI ĐĂNG KÍ SAU 01/06/2012
1. Học Flash cơ bản Thời lượng: 30 tiết. Cách học: học cơ bản theo giáo trình, có sự hướng dẫn trực tuyến (truy cập máy tính từ xa, chat Yahoo, mail, video), làm lab dưới sự hỗ trợ và quan sát từ xa (remote máy tính). Giá: 1000.000 VNĐ. Bonus: bạn được tặng giáo trình Flash phiên bản mới nhất.

2. Học cách lập trình game HOẶC làm hoạt hình trên Flash (Yêu cầu: đã qua khóa học Flash cơ bản). Thời lượng: 30 tiết. Cách học: như trên. Giá: 1.750.000 VNĐ.

3. Thiết kế web Thời lượng: 5 tiết Photoshop (học các kĩ thuật cơ bản), 5 tiết html, 5 tiết CSS, 5 tiết JavaScript, Làm Lab trên Dreamweaver 9 tiết, W3C Validator 1 tiết. Mỗi tiết = 45 phút. Cách học: như trên. Giá: 1000.000 VNĐ.

4. Lập trình căn bản C/C++ Thời lượng: 30 tiết. Cách học: như trên. Giá: 1000.000 VNĐ

5. Lập trình hướng đối tượng C++ Thời lượng: 30 tiết. Cách học: như trên. Giá: 1000.000 VNĐ.

6. Lập trình Java căn bản Thời lượng: 30 tiết. Cách học: như trên. Giá: 1000.000 VNĐ.

7. Lập trình C# Thời lượng: 30 tiết. Cách học: như trên. Giá: 1000.000 VNĐ.

8. Lập trình JSP (Yêu cầu: Học Java căn bản HOẶC hoàn tất một bài test của chúng tôi đạt 60%) Thời lượng: 30 tiết. Cách học: như trên. Giá: 1.000.000 VNĐ.

9. Lập trình ASP.NET (Yêu cầu: Học C# căn bản HOẶC hoàn tất một bài test của chúng tôi đạt 60%) Thời lượng: 30 tiết. Cách học: như trên. Giá: 1.000.000 VNĐ.

10. Hướng dẫn học lập trình nâng cao - Học theo yêu cầu. Dành cho những người muốn phát triển kĩ năng lập trình theo hướng giải thuật trong các kì thi Tin học quốc gia; Học theo những phần yêu cầu của người học. Giá: 1.500.000 (lập trình nâng cao); 2.500.000 (học theo yêu cầu) VNĐ (Hướng dẫn, giải đáp trong vòng 45 tiết, liên hệ và được giải đáp nhanh mọi lúc).

11. Luyện thi Đại học, dạy kèm TOÁN - LÝ - HÓA. Dành cho những người muốn bổ túc kiến thức các học phần Toán, Lý, Hóa cũng như luyện thi Đại Học. Đăng kí học Hóa (liên hệ qua imphanvantien@yahoo.com ESPECIALLY, YOU CAN REGISTER TO LEARN BY ENGLISH LANGUAGE.); Đăng kí học Lý (liên hệ qua hoviet@hueic.edu.vn); Đăng kí học Toán (liên hệ qua myhoangthanh@yahoo.com) Giá: liên hệ (1 tuần học 3 buổi, mỗi buổi học 2 tiết).

12. Thiết kế web nâng cao Nội dung/Thời lượng: 30 tiết; học các công nghệ nâng cao phục vụ cho thiết kế web: html5, css3, jquery. Thiết kế web cho các thiết bị di động: smartphone (iPhone, Android, WinPhone,...); tablet (iPad, Android, Windows 8...). Cách học: như trên. Giá: 1.500.000 VNĐ.

13. Lập trình ứng dụng cho smartphone, tablet Android, iOS, Blackberry, WinPhone bằng Adobe AIR Yêu cầu: đã qua khóa học Flash căn bản Thời lượng: 15 tiết Giá: 1.000.000 VNĐ.

14. Lập trình PHP căn bản Thời lượng: 5 tiết MySQL, 20 tiết PHP, 5 tiết làm website thương mại Giá: 1.000.000 VNĐ.

15. Lập trình Javascript Thời lượng/Nội dung: 30 tiết. Học về javascript căn bản, DOM, AJAX, JQUERY. Giá: 1000.000 VNĐ.

16. Lập trình Java toàn tập (Căn bản, nâng cao, winform, webform,...) Thời lượng/Nội dung: 90 tiết. Học về java căn bản, java nâng cao, swing, awt, sql, jsp, html, css, javascript căn bản, DOM, AJAX, JQUERY. Giá: 3.600.000 VNĐ.

17. Lập trình C# toàn tập (Căn bản, nâng cao, winform, webform,...) Thời lượng/Nội dung: 90 tiết. Học về C# căn bản, C# nâng cao, winform, sql, asp.net, html, css, javascript căn bản, DOM, AJAX, JQUERY. Giá: 3.600.000 VNĐ.

18. Lập trình PHP toàn tập (Căn bản, nâng cao, webform,...) Thời lượng/Nội dung: 90 tiết. Học về PHP căn bản, PHP nâng cao, drupal, joomla, html, css, javascript căn bản, DOM, AJAX, JQUERY. Giá: 3.600.000 VNĐ.
=== Ghi chú: + Mỗi lần học liên tục 3 tiết. + Số lượng buổi học trong tuần không hạn chế (tùy theo yêu cầu).
+ Bạn được giảm giá ưu đãi khi học theo nhóm hoặc học nhiều khóa học. + ĐẶC BIỆT: Chúng tôi nhận dạy kèm tại nhà tại các thành phố Huế, Hải Phòng, Đà Nẵng, Hồ Chí Minh). Giá cả thương lượng. + Thanh toán qua chuyển khoản ATM ĐôngÁ, ATM VietinBank, ATM ACB, PayPal.


Gửi đến cho bạn bè qua email:

Search on This Blog

Saturday, September 11, 2010

Struct

Kiểu dữ liệu mảng mà chúng ta đã thảo luận ở trên chỉ giúp chúng ta lưu một tập dữ liệu cùng loại. Nếu chúng ta không đơn thuần lưu trữ cùng loại dữ liệu, mà có thể là nhiều kiểu dữ liệu khác nhau. Khi đó, mảng không thể giải quyết được vấn đề. Trong C++ (thậm chí cả C) cung cấp cho chúng ta một kiểu dữ liệu giúp ta giải quyết vấn đề này, đó là struct.

Struct

Một dữ liệu struct là một nhóm các phần tử có thể có kiểu dữ liệu khác nhau được đặt cùng một tên. Các phần tử dữ liệu này được gọi là các thành viên của struct. Cấu trúc khai báo struct trong C++ như sau
struct tên_struct{ type    thành_viên_1;
type    thành_viên_2;

} tên_đối_tượng_struct;
Trong đó:
struct là một từ khóa.
tên_struct là tên kiểu dữ liệu struct mà ta định nghĩa.
thành_viên_1, … là các phân tử thành viên của struct.
tên_đối_tượng_struct: là tên biến thuộc kiểu tên_struct.
Hai cách khai báo sau đây là tương đương.

Ví dụ 1 Ví dụ 2
struct product{ int weight;
float price;
}
product apple;
product banana, melon;
struct product{ int weight;
float price;
}apple, banana, melon;
Giải thích: trong hai ví dụ trên product là kiểu dữ liệu struct mà ta tạo ra. Nó gồm có hai thành viên là weight và price. Tương ứng với kiểu dữ liệu này, ta có các biến apple, banana, melon. Để khai báo nó, ta có thể sử dụng một trong hai cách theo như hai ví dụ này. Bạn cần lưu ý rằng, các biến apple, banana, melon là các biến thuộc kiểu dữ liệu product.
Để truy cập đến các thành viên của biến struct, ta sử dụng dấu chấm (.).
apple.weight = 200; apple.price = 2;
banana.weight = 150;
banana.price = 1;
Chúng ta có thể hiểu apple.weight là khối lượng của táo, apple.price là giá tiền của táo… Bạn có thể xem mỗi thành viên của một biến struct như là một biến độc lập mà bạn có thể truy cập bằng cách tên_biến.phần_tử_thành_viên. Bạn hoàn toàn có thể thực hiện các phép toán tương ứng với mỗi dữ liệu thành viên này (nghĩa là các phép toán đó tương ứng với các phép toán trên kiểu dữ liệu của các phần tử thành viên đó: nếu phần tử thành viên là kiểu nguyên thì bạn có thể thực hiện các phép toán số nguyên với thành viên này, nếu phần tử thành viên là kiểu xâu thì bạn có thể thực thi các phép toán với xâu cho biến thành viên này,…).
Ví dụ, tôi mua 400gam táo, và 300g chuối. Giá của mỗi 100g táo là 1$, và 100g chuối là 0.7$. Tôi cần tính toán số tiền mà tôi cần trả
Ví dụ
apple.weight = 400; apple.price = (float)apple.weight*1/100;
banana.weight = 300;
banana.price = banana.weight*0.7/100;
float money = apple.price+banana.price;
Như bạn thấy, tôi có thể thực hiện các phép toán số học với các phần tử thành viên là kiểu số như các biến số bình thường.
Struct là một kiểu dữ liệu do người dùng định nghĩa (nhờ vào từ khóa struct – từ khóa struct viết thường). Ta cũng có thể khai báo một mảng các phần tử thuộc kiểu struct. Ví dụ sau đây minh họa cho việc mua bán của bạn khi bạn đi siêu thị.
Bài toán: Trong siêu thị, giá táo và chuối được ấn định trên từng sản phẩm tùy thuộc chất lượng của sản phẩm,không phụ thuộc vào khối lượng của nó.
  1. a. Tính khối lượng hàng hóa (kg) mà người tiêu dùng mua.
  2. b. Nếu khách hàng mua hàng trị giá trên 10$, thì người tiêu dùng sẽ được khuyến mãi. Hãy kiểm tra xem người tiêu dùng có được khuyến mãi hay không.
Biết rằng số lượng táo và chuối do người tiêu dùng lựa chọn.
Chương trình Kết quả
#include using namespace std;
#define MAX 10
struct product{
int weight;
float price;
}apples[MAX], bananas[MAX];
/*
Khai báo hàm
*/
void buyProducts(product pd, string name, int &weight, float &price)
{
int i = 0;
cout<<”Buy “<<
while (true){
cout<<”weight and price: <
cin>>pd[i].weight;
cin>>pd[i].price;
weight += pd[i].weight;
price += pd[i].price;
cout<<”Continue to buy “<<<” (y/n) ?”;
char yn;
cin>>yn;
if((yn==’n’)||(yn==’N’)) break;
else i++;
}
}
int main()
{
int weight = 0;
float price = 0;
buyProducts(apples, “apples”, weight, price);
buyProducts(bananas, “bananas”, weight, price);
cout<<”Total weight: “<<(float)weight/1000<
if(price>10)
cout<<”Promotion”;
else
cout<<”No Promotion”;
return 0;
}
Buy apples weight and price
100
2
Continue to buy apples (y/n) ?y
weight and price
200
3
Continue to buy apples (y/n) ?n
Buy bananas
weight and price
150
1
Continue to buy bananas (y/n) ?y
weight and price
250
3
Continue to buy bananas (y/n) ?n
Total weight: 0.7
No Promotion
Giải thích:
Mảng apples và bananas thuộc kiểu dữ liệu product. Hàm buyProducts dùng để tính toán khối lượng và tổng giá  hàng hóa mỗi loại mua được. Nếu tham số products trong hàm là apples, thì nó sẽ tính tương ứng với khối lượng tổng cộng và tổng đơn giá của apples. Tương tự cho bananas. Ta sử dụng vòng lặp while vì ta không biết chính xác số lượng hàng hóa mà người dùng lựa chọn. Tuy nhiên, con số tổng không thể vượt hằng số MAX mà ta đã định nghĩa. Biến weight và price được truyền theo tham biến, do đó, trước phép cộng dồn (toán tử cộng đồng nhất +=), ta không cần khởi tạo giá trị 0 cho chúng, ta có thể khởi tạo cho chúng ngay đầu hàm main. Nếu bạn khởi tạo đầu hàm buyProducts, thì bạn chỉ có thể tính được khối lượng và giá của từng loại một mà thôi (khi đó, nếu muốn tính toán cho cả hai sản phẩm, bạn bổ sung thêm biến để lưu lại các giá trị này). Sau khi gọi hàm này hai lần, tương ứng với apples và bananas, thì biến weight lưu lại tổng khối lượng của cả hai sản phẩm, biến price lưu lại giá của cả hai sản phẩm. Khối lượng được quy đổi sang kg, nên ta sẽ chia cho 1000. Nếu bạn nhập vào là đ.v. kg, thì không cần thiết.
Trong phần thực thi chương trình, người tiêu dùng đã mua hai quả táo và hai quả chuối. Quả táo thứ nhất có khối lượng 100g và giá 2$, quả táo thứ hai – 200g và 3$. Quả chuối thứ nhất có khối lượng 150g và giá 1$, quả chuối thứ hai – 250g và 3$.

No comments:

Post a Comment