Học Tiếng Anh 99-Giỏi Tiếng Anh 99%

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.

Học Tiếng Anh 99-Giỏi Tiếng Anh 99%

WelCome To Học Tiếng Anh 99-Học Tiếng Anh Online-Tiếng Anh trẻ em-Tiếng Anh quốc tế-Tiếng Anh phổ thông...

Tìm Kiếm Trên 10,000+ Tài Liệu

41 Điểm Ngữ Pháp Căn Bản

học tiếng anh trực tuyến-học tiếng anh giao tiếp-tieng anh online mien phi-phương pháp học tiếng anh-học tiếng anh miễn phí-học tiếng anh cơ bản-học tiếng anh online-tài liệu học tiếng anh Unit01. Từ loại
Unit02. Nouns and Ariticles (Danh từ,mạo từ)
Unit03. Verbs and sentences (Động từ và câu)
Unit04. Pronouns ( Đại từ)
Unit05. Simple present(Thì hiện tại đơn)
Unit06. Adjectives (Tính từ)
Unit07. Numbers (Số)
Unit08. Possessive Case ( Sở hữu cách)
Unit09. Possessive Adjectives (Tính từ sở hữu)
Unit10. Possessive pronouns (Đại từ sở hữu)
Unit11. There is, there are, how many, how much, to have
Unit12. Infinitive (Dạng nguyên thể)
Unit13. Object (Túc từ)
Unit14. Adverbs (Trạng từ)
Unit15. Can, May, Be able to
Unit16. Present continuous(Hiện tại tiếp diễn)

Unit17. Questions (Câu hỏi)
Unit18. Imperative mood (Mệnh lệnh cách)
Unit19. Future Tense (Thì tương lai)
Unit20. Date and time (Ngày tháng và thời gian)
Unit21. Past simple (Thì quá khứ đơn)
Unit22. My own (Của riêng tôi)
Unit23. Prepositions (Giới từ)
Unit24. So sánh của tính từ và trạng từ
Unit25. Perfect Tenses (Thì hoàn thành)
Unit26. Question tags (Câu hỏi đuôi)
Unit27. Passive Voice ( Thể bị động)
Unit28. Relative Clauses (Mệnh đề quan hệ)
Unit29. -ing and -ed + Clauses
Unit30. Gerunds (Danh động từ)
Unit31. Continuous Tenses (Thể tiếp diễn)
Unit32. Reported Speech (Câu tường thuật)
Unit33. Also, too
Unit34. Nouns (Danh từ)
Unit35. Personal Pronouns (Đại từ nhân xưng)
Unit36. Relative pronouns ( Đại từ quan hệ )
Unit37. Indefinite and demonstrative pronouns
Unit38. Subjunctive mood (Thể bàng cách)
Unit39. Auxiliary Verbs (Trợ động từ)
Unit40. Model Verbs (Động từ khuyết thiếu)
Unit41. Prefixes and Suffixes (Tiền tố và hậu tố)

Thử Thách: Đọc hiểu Web tiếng Anh của bạn ?%

50 Điểm Ngữ Pháp Thông Dụng

học tiếng anh trực tuyến-học tiếng anh giao tiếp-tieng anh online mien phi-phương pháp học tiếng anh-học tiếng anh miễn phí-học tiếng anh cơ bản-học tiếng anh online-tài liệu học tiếng anh Unit 1. Present continuous
Unit 2: Present simple
Unit 3. Present continuous,present simple (1)
Unit 4. Present continuous, present simple (2)
Unit 5. Past simple
Unit 6. Past continuous
Unit 7. Present perfect (1)
Unit 8. Present perfect (2)
Unit 9. Present perfect continuous
Unit 10. Present perfect continuous and simple
Unit 11. How long have you been ?
Unit 12 When? How long? For and Since
Unit 13. Present perfect and past (1)
Unit 14. Present perfect and past (2)
Unit 15. Past perfect
Unit 16. Past Perfect continous
Unit 17. Have and have got
Unit 18. Use to (do)
Unit 19. Present tenses for the future
Unit 20. I am going to do
Unit 21. Will/shall (1)
Unit 22. Will/shall (2)
Unit 23. I will and I am going to do
Unit 24. Will be doing and will have done
Unit 25.When I have done. When and If

Unit 26. Can, could and be able to
Unit 27. Could do and could have done
Unit 28. Must and can’t
Unit 29. May and might (1)
Unit 30. May and might (2)
Unit 31. Must and have to
Unit 32. Must, musn’t, needn’t
Unit 33. Should (1)
Unit 34. Should (2)
Unit 35. Had better. It’s time …
Unit 36. Can/Could/Would you …?
Unit 37. If I do … and If I did…
Unit 38. If I knew… I wish I new
Unit 39. If I had known… I wish I had known
Unit 40. Would. I wish … would
Unit 41. Passive (1)
Unit 42. Passive (2)
Unit 43. Passive (3)
Unit 44.He is said ..(be) supposed to
Unit 45. Have something done
Unit 46. Report Speech (1)
Unit 47. Reported Speech (2)
Unit 48. Question (1)
Unit 49. Question (2)
Unit 50. Auxiliary Verbs

Top posters

viethack911 (1150)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
Lonely_star (1092)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
dangthaison (956)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
admin (767)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
Son Iglesias (577)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
bach hai duong (548)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
tdat00 (484)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
dunguyen_th2 (439)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
gacon (408)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 
bebomb0708 (392)
Cấu trúc lặp 46,47,48,50,51 Bar_leftCấu trúc lặp 46,47,48,50,51 BarCấu trúc lặp 46,47,48,50,51 Bar_right 

Latest topics

» Ngày: 23-12
by admin Fri Nov 30, 2012 11:53 am

» CÁC BỐ, CÁC MẸ GIÚP MÌNH VỚI
by gatrantruong01 Thu Nov 15, 2012 12:22 am

» lớp 6 Đề cương ôn tập lớp 6
by admin Wed Nov 07, 2012 6:13 pm

» 3 ứng dụng học tiếng Anh cực hay trên "dế yêu"
by admin Sat Nov 03, 2012 10:30 am

» Từ vụng cơ bản tiếng anh, 3000 từ vựng nhà xuất bản giáo dục
by admin Sat Nov 03, 2012 10:22 am

» Những cụm từ thông dụng trong tiếng Anh giao tiếp
by admin Sat Nov 03, 2012 9:15 am

» Giao tiếp Choosing a movie- chọn 1 bộ hphim
by admin Wed Oct 31, 2012 4:45 pm

» Giao tiếp căn bản At the restaurant-tại khách sạn
by admin Wed Oct 31, 2012 4:42 pm

» Giao tiếp What a coincidence=trùng hợp làm sao
by admin Wed Oct 31, 2012 4:40 pm

» Học tiếng anh giao tiếp Making a date -Đặt cuộc hẹn
by admin Wed Oct 31, 2012 4:38 pm

Forum Statitics


5 posters

    Cấu trúc lặp 46,47,48,50,51

    catcherblock
    catcherblock
    thành viên cấp 2
    thành viên cấp 2


    Tổng số bài gửi : 135
    Điểm bài viết : 210
    Registration date : 03/04/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Cấu trúc lặp 46,47,48,50,51

    Bài gửi by catcherblock Tue Apr 07, 2009 9:10 pm

    Làm mấy bài cơ sở lập trình post lên đây có gì mọi người góp ý nghen
    P/s: đã chạy thử roài Evil or Very Mad


    Bài 46 nè

    Code:
     Console.WriteLine("Nhap so");
                int N = Int32.Parse(Console.ReadLine());
                string S = N.ToString();
                string K = "";
                if (S.Length % 2 == 1)
                {
                    for (int i = (S.Length - 1)/ 2 ; i >=1  ; i--)
                    {
                        K = K + S.Substring(i , 1);
                    }
                    if ( K == S.Substring((S.Length - 1)/2,(S.Length - 1)/2 )) Console.WriteLine("La day Palidrom");
                    else Console.WriteLine("khong la day Palidrom");
                }
                else
                {
                    for (int j = S.Length/2 ; j>=1 ; j-- )
                    {
                        K = K + S.Substring(j-1,1);
                    }
                    if ( K == S.Substring(S.Length/2,S.Length/2)) Console.WriteLine("la day Palidrom");
                    else Console.WriteLine("khong la day Palidrom");
                }
    Bài 47 :
    Code:
    Console.WriteLine("Nhap N");
                int N = Int32.Parse(Console.ReadLine());
                int A = N;
                string S = N.ToString();
                Console.WriteLine("Nhap M");
                int M = Int32.Parse(Console.ReadLine());
       
               
                  string  K = S.Substring(S.Length - M, M);
               
                Console.WriteLine(K);

    Bài 48:
    Code:
    Console.WriteLine("Nhap S");
                int S = Int32.Parse(Console.ReadLine());
                for (int i = 1; i <= S; i++)
                {
                    for (int j = 1; j <= S / 5; j++)
                    {
                        for (int k = 1; k <= S / 10; k++)
                        {
                            for (int l = 1; l <= S / 20; l++)
                            {
                                for (int m = 1; m <= S / 50; m++)
                                {
                                    if ((i + 5 * j + 10 * k + 20 * l + 50 * m) == S)
                                    {
                                        Console.WriteLine("So to 1 dong" + i);
                                        Console.WriteLine("So to 5 dong" + j);
                                        Console.WriteLine("So to 10 dong" + k);
                                        Console.WriteLine("So to 20 dong" + l);
                                        Console.WriteLine("So to 50 dong " + m);
                                    }
                                }
                            }
                        }
                    }
                }
    Bài 50:

    Code:
    Console.WriteLine("Nhap N");
                int N = Int32.Parse(Console.ReadLine());
                string S = N.ToString();
                string K = "";
                for (int i = S.Length; i >= 1; i--)
                {
                    K = K + S.Substring(i-1, 1);
                }
                Console.WriteLine(K);
    Bài 51:
    Code:
    Console.WriteLine("Nhap chuoi");
                string a = Console.ReadLine();
                    for (int i = 1; i <= a.Length/2; i++)
                {
                    if (a.Substring(0, 1) == a.Substring(i, 1))
                    {
                        if (a.Substring(1, i - 1) == a.Substring(i + 1, i - 1)) Console.WriteLine("tuan hoan");
                    }
                }
    The end.


    Được sửa bởi tdat00 ngày Tue Apr 07, 2009 10:30 pm; sửa lần 1. (Reason for editing : add code tag)
    zero
    zero
    Mod
    Mod


    Nam Tổng số bài gửi : 247
    Age : 34
    Location : wisky549@yahoo.com
    Điểm bài viết : 32
    Registration date : 14/03/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by zero Tue Apr 07, 2009 10:26 pm

    Bài 46 nè

    Console.WriteLine("Nhap so");
    int N = Int32.Parse(Console.ReadLine());
    Theo em thì đoạn đó nên thay int bằng long:
    Code:
    long N = Int64.Parse(Console.ReadLine());
    Vì anh em khi nhập cái dãy số ni là thuận tay chơi số dài dài vào là die lun.
    avatar
    tdat00
    Mod
    Mod


    Nam Tổng số bài gửi : 484
    Age : 35
    Location : %systemroot%
    Điểm bài viết : 41
    Registration date : 12/03/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by tdat00 Tue Apr 07, 2009 10:30 pm

    lần sau nhớ chèn thẻ CODE vào nhé bác, và cũng nên ghi đề ra để ai ko có máy ở nhà, ra net cũng dễ tìm hiểu.
    Hay để làm biếng như em cũng khỏi mất công lục đống sách vở ra Sad(
    zero
    zero
    Mod
    Mod


    Nam Tổng số bài gửi : 247
    Age : 34
    Location : wisky549@yahoo.com
    Điểm bài viết : 32
    Registration date : 14/03/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by zero Tue Apr 07, 2009 10:35 pm

    Bài 47 :
    Console.WriteLine("Nhap N");
    int N = Int32.Parse(Console.ReadLine());
    int A = N;
    string S = N.ToString();
    Console.WriteLine("Nhap M");
    int M = Int32.Parse(Console.ReadLine());


    string K = S.Substring(S.Length - M, M);

    Console.WriteLine(K);

    Bác ơi, bài này bác xem lại tý. Nếu em nhập số N có ký tự ít hơn M thì không có chạy bác ạ, bác thử xem lại nhé.
    VD: N=123456
    M=9
    zero
    zero
    Mod
    Mod


    Nam Tổng số bài gửi : 247
    Age : 34
    Location : wisky549@yahoo.com
    Điểm bài viết : 32
    Registration date : 14/03/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by zero Tue Apr 07, 2009 11:09 pm

    Với bài 48
    Bác cũng xem lại một tẹo
    Nếu bác nhập các số từ 86 trở đi thì nó chạy tuyệt vời. Nhưg nếu nhập từ số 85 trở xuống thì nó không chạy, bị lỗi.
    Bác xem lại bác nhé!
    catcherblock
    catcherblock
    thành viên cấp 2
    thành viên cấp 2


    Tổng số bài gửi : 135
    Điểm bài viết : 210
    Registration date : 03/04/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by catcherblock Wed Apr 08, 2009 1:54 pm

    Sửa lại bài 47 nhé: đề :Nhập 2 số nguyên dương N và M.In ra tổng M ký số cuối cùng của số N.
    Code:

      Console.WriteLine("Nhap N");
                int N = Int32.Parse(Console.ReadLine());
                string S = N.ToString();
                Console.WriteLine("Nhap M");
                int M = Int32.Parse(Console.ReadLine());
                int A = 0;
                if (S.Length < M)
                {
                    for (int i = 1; ; i++)
                    {
                        Console.WriteLine("Nhap lai");
                        int T = Int32.Parse(Console.ReadLine());
                        if (S.Length >= T)
                        {
                            string K = S.Substring(S.Length - T, T);
                            Console.WriteLine(K);
                            for (int j = 0 ; j <= K.Length-1 ; j++)
                            {
                                int L = Int32.Parse(K.Substring(j, 1));
                                A = A + L;
                                if (j == (K.Length - 1))
                                {
                                    Console.WriteLine("Tong M so cuoi cua N la {0}",A);
                                }
                            }
                                break;
                        }
                    }
                }
                else
                {
                    string K = S.Substring(S.Length - M, M);
                    Console.WriteLine(K);
                    for (int j = 0; j <= K.Length - 1; j++)
                    {
                        int L = Int32.Parse(K.Substring(j, 1));
                        A = A + L;
                        if (j == (K.Length - 1))
                        {
                            Console.WriteLine("Tong M so cuoi cua N la {0}", A);
                        }
                    }
                }
    dunguyen_th2
    dunguyen_th2
    thành viên cấp 4
    thành viên cấp 4


    Nam Tổng số bài gửi : 439
    Age : 35
    Location : Bình Định
    Điểm bài viết : 35
    Registration date : 13/03/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by dunguyen_th2 Wed Apr 08, 2009 3:18 pm

    Ở bài 48, Khi nhập các số từ 0-85 nó không chạy được vì bài gán biến bị nhầm một tí.
    Thay vì ở các vòng lặp for, gán biến int i=1, ta gán lại int i=0 (tương tự với j,k,l,m)thì bài toán sẽ chạy được tất cả các số mà bạn nhập vào.
    Bài hoàn chỉnh:
    Code:

    using System;
    using System.Collections.Generic;
    using System.Text;

    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {

                Console.WriteLine("Nhap S");
                int S = Int32.Parse(Console.ReadLine());
                for (int i = 0; i <= S; i++)
                {
                    for (int j = 0; j <= S / 5; j++)
                    {
                        for (int k = 0; k <= S / 10; k++)
                        {
                            for (int l = 0; l <= S / 20; l++)
                            {
                                for (int m = 0; m <= S / 50; m++)
                                {
                                    if ((i + 5 * j + 10 * k + 20 * l + 50 * m) == S)
                                    {
                                        Console.WriteLine("So to 1 dong la {0}, 5 dong la {1}, 10 dong la {2}, 20 dong la {3}, 50 dong la {4}", i, j, k, l, m);
                                     
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    dunguyen_th2
    dunguyen_th2
    thành viên cấp 4
    thành viên cấp 4


    Nam Tổng số bài gửi : 439
    Age : 35
    Location : Bình Định
    Điểm bài viết : 35
    Registration date : 13/03/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by dunguyen_th2 Thu Apr 09, 2009 11:31 pm

    Bài 50 mình nghĩ là nên dùng hàm double vì đề bài chỉ nói nhập số N mà không nói rõ. Nếu dùng hàm double thì nhập số thực nó cũng đúng.
    Nếu ai có ý kiến gì thì phản ánh nhá.
    Bài hoàn chỉnh:
    Code:

    using System;
    using System.Collections.Generic;
    using System.Text;

    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Nhap N");
                double N = double.Parse(Console.ReadLine());
                string S = N.ToString();
                string K = "";
                for (int i = S.Length; i >= 1; i--)
                {
                    K = K + S.Substring(i-1, 1);
                }
                Console.WriteLine(K);
            }
        }
    }

    avatar
    hoatv1008
    thành viên mới
    thành viên mới


    Tổng số bài gửi : 3
    Điểm bài viết : 6
    Registration date : 15/04/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by hoatv1008 Wed Apr 15, 2009 1:27 am

    Hi Catcherblock, mình thấy bài 51 của bạn sai rồi. Nó không đơn giản như vậy đâu. Nếu bạn nhập vào chuỗi này: 1231234 thì chương trình của bạn trả về là "tuan hoan" => SAI

    Mình có viết lại bài tập này theo giải thuật của mình như sau, mọi người cho ý kiến nhé:

    Code:

            Console.WriteLine("Nhap chuoi");
            string s = Console.ReadLine();

            int n = 0, m = 2, len = s.Length;
            bool cont = true;
            while (cont && m <= len / 2)
            {
                if (s.Substring(0, m) != s.Substring(m, m) || len % m != 0)
                    m++;
                else
                {
                    int i = 1;
                    for (; i < len / m; i++)
                    {
                        if (s.Substring(0, m) != s.Substring(m * i, m))
                            break;
                    }
                    if (i < len / m)
                        m++;
                    else
                        cont = false;
                }


            }
            if (m > len / 2)
                Console.WriteLine("Khong tuan hoan");
            else
                Console.WriteLine("Tuan hoan");
    avatar
    tdat00
    Mod
    Mod


    Nam Tổng số bài gửi : 484
    Age : 35
    Location : %systemroot%
    Điểm bài viết : 41
    Registration date : 12/03/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by tdat00 Wed Apr 15, 2009 1:01 pm

    đọc bài của bác hoatv em thấy mụ cả đầu Mad nào là m, n, i, j... loạn lên cả. Bác nên đặt tên biến rõ ràng một tí, không thì bài của bác chỉ có mình bác hiểu mất.

    Cách của em:
    Code:
    using System;
    class bt51
    {   
       static void Main()
       {
          Console.WriteLine("Nhap chuoi");
          string chuoi = Console.ReadLine();
          
          int iFirst;
          string chuoicon;
          bool tuanhoan = true;
          
          iFirst = chuoi.IndexOf(chuoi.Substring(0,1),1);
          
          if (iFirst == -1)
             Console.WriteLine("Khong tuan hoan");
          else
          {
             chuoicon = chuoi.Substring(0,iFirst);
             
             while (chuoi.Length >= chuoicon.Length && tuanhoan)
             {
                if (chuoicon != chuoi.Substring(0, chuoicon.Length))            
                   tuanhoan = false;
                else
                {
                   chuoi = chuoi.Substring(chuoicon.Length , chuoi.Length - chuoicon.Length);
                }
             }
             
             if (tuanhoan && chuoi.Length == 0)
                Console.WriteLine("Chuoi tuan hoan");
             else
                Console.WriteLine("Khong tuan hoan");
          }
       }
    }

    Giải thích nhé:

    bước 1: tìm kí tự tiếp theo của kí tự đầu tiên bằng hàm IndexOf (chi tiết về hàm này các bác tham khảo trên http://dotnetperls.com/Content/IndexOf.aspx)
    iFirst = chuoi.IndexOf(chuoi.Substring(0,1),1);

    ex: ví dụ có chuoi = "abcabcad" thì iFirst sẽ bằng 3 (chữ a đầu tiên có số thứ tự là 0, các bác chú ý nhé).

    Bước 2: nếu không có kí tự đó (ví dụ chuoi = "abcef") thì iFirst sẽ nhận giá trị là -1 ==> kết luận luôn là không tuần hoàn. Ngược lại, ta xác định chuỗi tuần hoàn bằng lệnh
    chuoicon = chuoi.Substring(0,iFirst);

    nếu trong ví dụ trên thì chuoicon sẽ bằng "abc"

    Bước 3: cho vòng lặp while, xét xem chuoicon có giống với các kí tự bên trái của chuoi hay không. Nếu giống thì xoá bớt phần giống đó đi. Nếu không giống hoặc chuoi có ít số kí tự hơn chuoicon thì kết luận là không tuần hoàn.

    PS: em làm code này áp dụng cho chuỗi. Nếu làm cho số thì thêm 1 đoạn int.Parse để chuyển qua số rồi lại chuyển sang chuỗi để làm như trên...
    avatar
    hoatv1008
    thành viên mới
    thành viên mới


    Tổng số bài gửi : 3
    Điểm bài viết : 6
    Registration date : 15/04/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by hoatv1008 Wed Apr 15, 2009 8:34 pm

    Cam on bac tdat00 da gop y va chinh sua. Nhung em thay bai giai cua bac cung chua dung het. Bac thu nhap vao chuoi nay xem no chay co ra "Tuan hoan" khong nhe: 123123456123123456 (day la chuoi tuan hoan vi no lap lai chuoi 123123456).
    avatar
    hoatv1008
    thành viên mới
    thành viên mới


    Tổng số bài gửi : 3
    Điểm bài viết : 6
    Registration date : 15/04/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by hoatv1008 Wed Apr 15, 2009 8:35 pm

    Code:

    using System;

    class baitap51
    {
        static void Main()
        {
            Console.WriteLine("Nhap chuoi");
            string ChuoiNhapVao = Console.ReadLine();

            int ChieuDaiChuoiLap = 2;
            bool TuanHoan = true;
            while (TuanHoan && ChieuDaiChuoiLap <= ChuoiNhapVao.Length / 2)
            {
                // xac dinh chieu dai chuoi lap theo nguyen tac:
                // - tong so cac ky tu trong ChuoiNhapVao vao phai chia het cho chieu dai chuoi lap
                // - phai co it nhat 2 chuoi giong nhau 0->N va N->2N
                if (ChuoiNhapVao.Substring(0, ChieuDaiChuoiLap) != ChuoiNhapVao.Substring(ChieuDaiChuoiLap, ChieuDaiChuoiLap) || ChuoiNhapVao.Length % ChieuDaiChuoiLap != 0)
                    ChieuDaiChuoiLap++;
                else
                {
                    //kiem tra cac chuoi phia sau co lap lai nhu chuoi dau tien hay khong, neu khong thi tang chieu dai chuoi lap de tim tiep
                    //vd: chuoi dau tien la 'abc', can phai kiem tra cac chuoi phai sau co lap lai theo dung 'abc' hay khong: 'abc abc cbd' => khong lap dung
                    int ChuoiLapThu_i = 1;
                    for (; ChuoiLapThu_i < ChuoiNhapVao.Length / ChieuDaiChuoiLap; ChuoiLapThu_i++)
                    {
                        if (ChuoiNhapVao.Substring(0, ChieuDaiChuoiLap) != ChuoiNhapVao.Substring(ChieuDaiChuoiLap * ChuoiLapThu_i, ChieuDaiChuoiLap))
                            break;
                    }

                    // neu so luong chuoi lap nho hon so luong chuoi con thi tang chieu dai chuoi lap len 1 de kiem tra tiep
                    if (ChuoiLapThu_i < ChuoiNhapVao.Length / ChieuDaiChuoiLap)
                        ChieuDaiChuoiLap++;
                    else  //neu da duyet qua het tat ca cac chuoi con thi ket luan la chuoi tuan hoan
                        TuanHoan = false;
                }
            }

            if (ChieuDaiChuoiLap > ChuoiNhapVao.Length / 2)
                Console.WriteLine("Khong tuan hoan");
            else
                Console.WriteLine("Tuan hoan");

            Console.ReadKey();

        }
    }

    HAPPY CODING!
    avatar
    tdat00
    Mod
    Mod


    Nam Tổng số bài gửi : 484
    Age : 35
    Location : %systemroot%
    Điểm bài viết : 41
    Registration date : 12/03/2009

    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by tdat00 Thu Apr 16, 2009 9:14 am

    hoatv1008 đã viết:Cam on bac tdat00 da gop y va chinh sua. Nhung em thay bai giai cua bac cung chua dung het. Bac thu nhap vao chuoi nay xem no chay co ra "Tuan hoan" khong nhe: 123123456123123456 (day la chuoi tuan hoan vi no lap lai chuoi 123123456).

    à, em hiểu chuỗi tuần hoàn là chuỗi gồm nhiều chuỗi con không có kí tự trùng nhau chứ. Chắc phải yêu cầu cô sửa lại đề cho rõ ràng ra cho K34, 35... khắc phục hén.

    Thanks bác nhé.

    Sponsored content


    Cấu trúc lặp 46,47,48,50,51 Empty Re: Cấu trúc lặp 46,47,48,50,51

    Bài gửi by Sponsored content


      Hôm nay: Sun Sep 22, 2024 12:14 am