Module: (C ++) الروتينات الفرعية: الإجراءات والوظائف - 1


Problem

7/12

اختصر كود البرنامج

Problem

يواصل Rabbit Clover تعلم البرمجة. لقد درس الخطوط بالفعل. في الآونة الأخيرة ، انتقل إلى دراسة الإجراءات الفرعية ، وهي الإجراءات. لكنه لا يفهم كيفية استخدامها. في الآونة الأخيرة ، أراد كلوفر أن يكتب برنامجًا يطبع أطول كلمة من جملتين في عمود (إذا كان هناك عدة كلمات من هذا القبيل ، فسيأخذ أول ما يصادفه). لقد نسي الإجراءات تمامًا وكتب برنامجًا معقدًا للغاية.
ها هي: # تضمين & lt؛ iostream & gt؛ استخدام اسم للمحطة؛ رئيسي() { int ماكس ، ن ؛ السلسلة s1 ، s2 ، wordMax ؛ Getline (cin، s1) ؛ Getline (cin، s2) ؛ ماكس = 0 ؛ s1 = s1 + & quot؛ & quot ؛؛ بينما (s1.size () & GT ؛ 0) { n = s1.find (& quot؛ & quot؛)؛ string = s1.substr (0، n) ؛ إذا (word.size () & GT؛ max) { max = word.size () ؛ wordMax = كلمة ؛ } s1.erase (0 ، ن + 1) ؛ } كوت & lt؛ & lt؛ wordMax & lt؛ & lt؛ نهاية. ماكس = 0 ؛ s2 = s2 + & quot؛ & quot ؛؛ بينما (s2.size () & GT ؛ 0) { n = s2.find (& quot؛ & quot؛)؛ string = s2.substr (0، n) ؛ إذا (word.size () & GT؛ max) { max = word.size () ؛ wordMax = كلمة ؛ } s2.erase (0 ، ن + 1) ؛ } كوت & lt؛ & lt؛ wordMax & lt؛ & lt؛ نهاية. } موافق ، هذا برنامج يصعب فهمه. & nbsp؛
ساعد Clover the Rabbit على تحسين البرنامج عن طريق تحديد نفس الإجراءات في الإجراء.