Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 12 kết quả

Đề tài: [C] Dãy số

  1. #1
    Ngày gia nhập
    11 2006
    Bài viết
    8

    Mặc định [C] Dãy số

    Anh admin và mọi người giúp em bài này nhé!Em mới học Lập trình C.
    Viết chương trình nhập vào từ bàn phím một dãy số nguyên x1,x2,...xn(n<=500),hãy thực hiện yêu cầu sau:
    Tìm và in ra màn hình các số chỉ xuất hiện đúng 1 lần.
    Em đã làm được một nửa như sau:

    #include<stdio.h>
    #include<math.h>
    #include<conio.h>
    void main()
    {
    float x[500],f=0,f1;
    int i,j,n,dem=0,dem1=0;
    do
    {
    printf("\nNhap vao so luong phan tu N = ");
    scanf("%d",&n);
    }
    while((n<1)||(n>500));

    for(i=1;i<=n;i++)
    {
    printf("\nx[%d]=",i);
    scanf("%f",&x[i]);
    }
    puts("\nday ban dau: ");
    for(i=1;i<=n;i++)
    printf("%6.0f",x[i]);
    }

    Mọi người giúp em phần còn lại nhé!

  2. #2
    Ngày gia nhập
    12 2006
    Bài viết
    72

    Trích dẫn Nguyên bản được gửi bởi basduy
    do
    {
    printf("\nNhap vao so luong phan tu N = ");
    scanf("%d",&n);
    }
    while((n<1)||(n>500));
    chỗ này là láp đi lặp lại nhập số phần tử nè
    còn về thuật toán thì mình gợi ý thế này nhe, bạn chỉ cần sử dụng 2 vòng lặp while hoặc for đều được,trong vòng lặp trong đó bạn có 1 biến chạy từ phần tử thứ i_ptu cần xét đến phần tử thứ n,1 biến đếm j để tăng j mỗi khi gặp 1 phần tử giống với phần tử đã cho(dùng câu lệnh if),vòng lặp ngoài bạn cần có 1 biến chạy từ 1==>n, một câu lệnh để in số lần xuất hiện của phần tử.
    Chúc bạn thành công!

  3. #3
    Ngày gia nhập
    11 2006
    Bài viết
    633

    Cách làm đơn giản hơn: sắp xếp dãy, kiểm tra xem phần tử i+1 hoặc phần tử i-1 có bằng phần tử i đang xét hay ko, nếu có thì bỏ qua còn nếu ko thì xuất ra

  4. #4
    No Avatar
    Nhuan_Trang_Only_Love Khách

    Trích dẫn Nguyên bản được gửi bởi huynguyen
    Cách làm đơn giản hơn: sắp xếp dãy, kiểm tra xem phần tử i+1 hoặc phần tử i-1 có bằng phần tử i đang xét hay ko, nếu có thì bỏ qua còn nếu ko thì xuất ra
    Hôm trước thầy giao bài này em cũng làm như vậy đó
    Tuy nhiên khi chạy em cho thêm biến nhớ vị trí tại số đang sét.kết hợp với while để chạy hết các phần tử giống nhau trong khoảng đã được sắp xếp lại mảng.Và lần sau thì chỉ việc chạy tiếp từ vị trí biến nhớ thì đỡ so sánh nhiều.
    Theo bác huynguyen thì *

  5. #5
    Ngày gia nhập
    11 2006
    Bài viết
    633

    Tuy nhiên khi chạy em cho thêm biến nhớ vị trí tại số đang sét.kết hợp với while để chạy hết các phần tử giống nhau trong khoảng đã được sắp xếp lại mảng.Và lần sau thì chỉ việc chạy tiếp từ vị trí biến nhớ thì đỡ so sánh nhiều.
    Theo bác huynguyen thì *
    Ặc, cần gì biến nhớ nhỉ? Chỉ cần 1 vòng for, kiểm tra xem có giống với a[i+1] hay a[i-1] ko, nếu ko thì xuất ra luôn. Dãy đã sắp xếp thì làm rất dễ, ko cho sắp xếp thì làm vất vả hơn.

  6. #6
    Ngày gia nhập
    11 2006
    Bài viết
    8

    Mặc định [C] Dãy số

    Cảm ơn mọi người nhé!Mình đang làm lại!

  7. #7
    No Avatar
    Nhuan_Trang_Only_Love Khách

    Trích dẫn Nguyên bản được gửi bởi huynguyen Xem bài viết
    Ặc, cần gì biến nhớ nhỉ? Chỉ cần 1 vòng for, kiểm tra xem có giống với a[i+1] hay a[i-1] ko, nếu ko thì xuất ra luôn. Dãy đã sắp xếp thì làm rất dễ, ko cho sắp xếp thì làm vất vả hơn.
    Ầy , em có nói là phải chạy nhiều vòng for đâu. Tất nhiên là một vòng rồi.
    Em chỉ muốn kết hợp với while trong đó và chỉ so sánh với số kế tiếp thôi mờ
    Cách này hơi zắc zối thôi, về nguyên lý là như nhau.
    THANKS________>>>

  8. #8
    No Avatar
    Nhuan_Trang_Only_Love Khách

    Trích dẫn Nguyên bản được gửi bởi huynguyen Xem bài viết
    Ặc, cần gì biến nhớ nhỉ? Chỉ cần 1 vòng for, kiểm tra xem có giống với a[i+1] hay a[i-1] ko, nếu ko thì xuất ra luôn. Dãy đã sắp xếp thì làm rất dễ, ko cho sắp xếp thì làm vất vả hơn.
    Ầy , em có nói là phải chạy nhiều vòng for đâu. Tất nhiên là một vòng rồi.
    Em chỉ muốn kết hợp với while trong đó và chỉ so sánh với số kế tiếp thôi mờ
    Cách này hơi zắc zối thôi, về nguyên lý là như nhau.
    THANKS________>>>

  9. #9
    No Avatar
    Nhuan_Trang_Only_Love Khách

    sorry do mạng , nên viết nhầm
    sorry sorry sorry sorry sorry sorry sorry sorry sorry

  10. #10
    Ngày gia nhập
    11 2006
    Bài viết
    633

    Em chỉ muốn kết hợp với while trong đó và chỉ so sánh với số kế tiếp thôi mờ
    Thêm 1 vòng while chi cho rắc rối rứa. Bên trong chỉ cần dùng if so sánh là ok rồi, cho thêm cái vòng while vào thấy nặng nề quá.

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn