Diễn Đàn Sinh Viên Mạng Máy Tính VT08
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.
Diễn Đàn Sinh Viên Mạng Máy Tính VT08

Kiến Thức Không Của Riêng Ai. Hãy Cùng Nhau Chia Sẻ Để Được Sẻ Chia.
 
Trang ChínhGợi ý thuật toán giải bài tập tuần 4 !! Icon_mini_portal_enLatest imagesTìm kiếmĐăng kýĐăng Nhập

 

 Gợi ý thuật toán giải bài tập tuần 4 !!

Go down 
2 posters
Tác giảThông điệp
Kaisuka
Trung Sĩ
Trung Sĩ
Kaisuka


Tổng số bài gửi : 42
Age : 34
Đến từ : Somewhere I Belong...
Registration date : 15/11/2008

Gợi ý thuật toán giải bài tập tuần 4 !! Empty
Bài gửiTiêu đề: Gợi ý thuật toán giải bài tập tuần 4 !!   Gợi ý thuật toán giải bài tập tuần 4 !! Icon_minitimeSat Nov 15, 2008 7:23 pm

Sau đây là một số gợi ý của mình để giải quyết bài tập tuần 4:

  1. Bài này dùng 1 hàm Switch là ok hết
  2. Bài này các bạn phải sử dụng 1 vòng lập while,mình lấy số cần đếm chia lần lượt cho 10 mũ x,hàm dừng khi phép chia không thực hiện được và mỗi lần sau khi chia thì ta đặt 1 biến đếm là N++(gán N =1 vì luôn có giá trị hàng đơn vị).Ví dụ: số 1234 thì sẽ chia lần lượt cho 10 100 1000 thì phép chia 10000 không thực hiện được thì hàm dừng.Các bạn thêm 1 hàm IF phía dưới cho trường hợp nhập số 0.( có thể dùng hàm abs() để lấy trị tuyệt đối của số cần nhập,như vậy khi nhập số âm thì nó vẫn đếm tốt).Đây là code ví dụ:
    Code:
    while(abs(p)>=1)
     {
      p=n/pow(10,i);
      N++;
    }
  3. Bài này thì áp dụng cách đếm của bài trên,kết hợp với 1 chút tư duy các bạn sẽ làm ra thôi ^^
  4. Bài này mình có 1 đọan code cho các bạn luôn vì mình cũng chẳng biết giải thích sao cho các bạn hiểu nữa ( thông cảm dốt Văn ToT):
    Code:
     while (n != 0 && m != 0)
      if (n>m)
      n -= m;
      else
      m -= n;
      if (n == 0)
      uscln= m;
      else
      uscln= n;
    Đó là đoạn tính USCLN.Còn tính BSCLN thì các bạn lấy 2 số nhập nhân với nhau rồi chia cho USCLN là ok.
  5. Bài này mình đang nghiên cứu sẽ update sau cho các bạn cách giải tối ưu nhất.
  6. Bài này thì quá dễ rồi các bạn tự làm nhé.
  7. Số chính phương là số lấy được căn bậc chẵn.(ở đây đề muốn hỏi là căn bậc 2).dùng 1 hàm while thì có thể tìm ra số chính phương nhỏ hơn hoặc lớn hơn n.
  8. Viết hàm tính giai thừa trước giai thừa của một số các bạn tính bằng hàm for,với N=N(N-1)( hoặc cách viết khác là N*=N).
    viết hàm lập cho nó chạy các giá trị N.Cái độ chính xác là điều kiện để chặn N.
  9. Tương tự bài số 8.

Mọi thắc mắc các bạn cứ post bài hỏi sẽ có người trả lời,còn không ai trả lời thì tự đi hỏi thầy nhá lol! !!!
Về Đầu Trang Go down
Thinh_xuan
Binh Nhì
Binh Nhì



Tổng số bài gửi : 1
Registration date : 15/11/2008

Gợi ý thuật toán giải bài tập tuần 4 !! Empty
Bài gửiTiêu đề: Re: Gợi ý thuật toán giải bài tập tuần 4 !!   Gợi ý thuật toán giải bài tập tuần 4 !! Icon_minitimeSat Nov 15, 2008 7:52 pm

Đây là cách để chương trình hỏi bạn có muốn làm tiếp không dùng hàm +if
VD bài số 1 nhập 1 số n xem số đó có bao nhiêu chữ số
Code:

{
    do
    {
 
        printf("\nBan co muon tiep tuc khong?-C\K\n");
        ch=getch();
        if(ch=='c'||ch=='C');\\*Nếu bấm chữ 'c' hoặc 'C' thì chương trình tiếp tục chạy*\\
        else break;
    }
    while(1);
}
Bạn nào có ý kiến thì cứ pm nha
Kai:Bạn không nên để cả đoạn code ra như vậy,như vậy sẽ làm bà con ỷ lại mà chép không tốt cho việc học.Mong bạn rút kinh nghiệm.Thân !!(mình chỉ để lại đoạn code nhập lại)
Về Đầu Trang Go down
 
Gợi ý thuật toán giải bài tập tuần 4 !!
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» thơ tình lưu đồ thuật toán
» Bài Tập Tuần 4.5.6 cho lớp VT081!!
» Cá cưọc-thư jãn cuối tuàn ~_~!
» Thủ Thuật Yahoo!M !!
» Nghệ Thuật đỉnh cao !!

Permissions in this forum:Bạn không có quyền trả lời bài viết
Diễn Đàn Sinh Viên Mạng Máy Tính VT08 :: Góc Học Tập :: Kiến Thức Giáo Dục Chuyên Nghiệp :: Kiến Thức Cơ Sở :: Nhập Môn Lập Trình-
Chuyển đến