C++ cho nguoi moi hoc bai 05

10 226 0
C++ cho nguoi moi hoc bai 05

Đang tải... (xem toàn văn)

Thông tin tài liệu

LẬP TRÌNH C CHO NGƯỜI MỚI HỌC Giảng viên: Thạc sĩ Trần Thanh Sơn BÀI TẬP TỔNG HỢP CUỐI KHÓA (tt) Bài 1: Tính tiền lương ngày cho công nhân, cho biết trước vào ca, ca Giả sử tiền trả cho trước 12 6.000đ sau 12 trưa 7.500đ Giờ vào ca sớm sáng ca trễ 18 Bảng ví dụ vài trường hợp Giờ vào ca Giờ ca 16 11,5 13 Số làm sáng Số làm chiều Tiền lương 16 - 12 = * 6.000 + * 7.500 = 60.000 11,5 - = 5,5 5,5 * 6.000 = 33.000 17 17 – 13 = 4 * 7.500 = 30.000 19 x x Dữ liệu không hợp lệ 12 -7=5 Giải pháp: BÀI TẬP TỔNG HỢP CUỐI KHÓA (tt)  B1: Kiểm tra đk: Vào ca ≤ vào ca ≤ ca ≤ Ra ca max ? Đúng => B2, sai => liệu không hợp lệ  B2: Tính số sáng, số chiều, tiền lương  Nếu ca ≤ chuyển ca (12h) thì:  Số chiều = 0;  Số sáng = ca – vào ca;  Nếu vào ca ≥ chuyển ca thì:  Số sáng = 0;  Số chiều = ca – vào ca;  (giờ vào ca ≤ chuyển ca) && (giờ ca ≥ chuyển ca) thì:  Số sáng = chuyển ca – vào ca;  Số chiều = Giờ ca – chuyển ca;  Tiền lương = sáng * đơn giá sáng + chiều * đơn giá chiều BÀI TẬP TỔNG HỢP CUỐI KHÓA (tt) Bài 2: Tính số tiền lời thu bán m kg hàng hóa (0< m ≤ 100), biết rằng: • • • • < m ≤ 10 : Tiền lời 5.000đ/kg 10 < m ≤ 20 : Tiền lời 7.000đ/kg 20 < m ≤ 50 : Tiền lời 9.000đ/kg thêm 2% tổng số tiền lời 50 < m Tiền lời 10.000đ/kg thêm 4% tổng số tiền lời không : 1.000.000 đ BÀI TẬP TỔNG HỢP CUỐI KHÓA (tt) Giải pháp: • B1: Cho người dùng nhập vào m • B2: Xét trường hợp m để tính tiền lời: < m ≤ 10: Tiền lời = 5.000 * m 10 < m ≤ 20: Tiền lời = 7.000 * m 20 < m ≤ 50: Tiền lời = 9.000 * m Tiền lời = Tiền lợi + Tiền lời * 0,02 50 < m ≤ 100: Tiền lời = 10.000 * m Tiền lời = Tiền lợi + Tiền lời * 0,04 Tiền lời > 1.000.000 Tiền lời = 1.000.000 Trường hợp khác Tiền lời = -1 • B3: Nếu Tiền lời = -1 in lỗi khối lượng không Ngược lại in giá trị Tiền lời BÀI TẬP TỔNG HỢP CUỐI KHÓA (tt) Bài 3: Nhập vào số nguyên, đếm in tất ước số Giải pháp: Định nghĩa: Ước số số n số mà n chia hết B1: Khởi tạo biến Đếm = 0; B2: Lặp lại: Duyệt số từ đến n, số i mà n % i =0 • In i hình; • Đếm ++; B3: In biến đếm hình BÀI TẬP TỔNG HỢP CUỐI KHÓA (tt) Bài 4: Nhập vào số nguyên n, kiểm tra có phải số hoàn chỉnh không? Giải pháp: Định nghĩa: số hoàn chỉnh n số có tổng ước số = tích ước số (không kể số n) B1: Khởi tạo biến Tổng_ước_số = 0; Tích_ước_số = B2: Lặp lại: Duyệt số từ đến n-1, số i mà n % i =0 • Tổng_ước_số = Tổng_ước_số + i; • Tích_ước_số = Tích_ước_số * i; B3:Kiểm tra Tổng_ước_số = Tích_ước_số ? Nếu in số hoàn chỉnh, ngược lại in số hoàn chỉnh BÀI TẬP TỔNG HỢP CUỐI KHÓA (tt) Bài 5: Nhập vào mảng số nguyên n phần tử Đếm số phần tử âm, dương, Cải tiến xem mảng có thứ tự tăng / giảm không? Giải pháp: B1:Nhập n phần tử làm trước B2: Khởi tạo dem_am = 0; dem_duong = 0, dem_0= 0; B3:Lặp lại: Duyệt phần tử a[0] đến a[n-1] • dem_duong ++; a[i]>0; • dem_am ++; a[i] Mảng tăng • Chỉ cần phép so sánh ≤ sai mảng không tăng Sử dụng biến dem_tang, kiểm tra dem_tang = n-1 không? Tương tự cho mảng giảm BÀI TẬP TỔNG HỢP CUỐI KHÓA (tt) Giải pháp: B1: Khởi tạo dem_tang = 0; dem_giam = 0; B2: Lặp lại: Duyệt phần tử a[0] đến a[n-2] (n-1 lần) • dem_tang ++ a[i] ≤ a[i + 1]; • dem_giảm++ a[i] ≥ a[i + 1]; B3: Kiểm tra biến : dem_tang, dem_giam • Nếu dem_tang = n-1 in mảng tăng • Nếu dem_giam = n -1 in mảng giảm • Trường hợp lại in mảng không tăng/ không giảm 10

Ngày đăng: 16/07/2016, 09:15

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan