الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تصحيح كود طباعة الاعداد الزوجية بحلقه while

بدأه شخصه في 29 أبريل 2012 · 5 رد · 6,616 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمه الله

الطلب: by using while statement write c++ program that print the even numbers between 0 and n, where n is a value enterd by the user

وهذا هو الكود الذي كتبته

#include<iostream.h>
#include<conio.h>

void main()
{

int n;

cout<<"enter the number ";
cin>>n;

   while(n!=0)

   {

      cout<<"the even numbers between 0 and n are :"<<"\t";
     cout<<(n+=2);

      getch();
   }

}

المشكلة : بأنه يجب ضغط رز enter حتى يظهر الرقم الزوجي التالي والكود المطلوب اصلا اظهار الاعداد الزوجيه بين الصفر والرقم المدخل

اتمنى منكم مساعدتي وشكرا مقدما :)

#2

فى الكود السابق ماذا لو كانت n فردية ....

الكود بعد التعديل:

/* 
 * File:   main.cpp
 * Author: Mohammed Abu Zayed
 * * Created on April 29, 2012, 6:40 AM
 */
#include<iostream>
using namespace std;

int main()
{
    int n=0, y=0;
    cout << "enter the number ";
    cin >> n;
    cout << "The even numbers between 0 and " << n << "are : "  ;

    while (y < n-1)
    {
        y+=2;
        cout << y << " "; 
    }
    std::cin.get();
}

المخرجات:

enter the number 21
The even numbers between 0 and 21are : 2 4 6 8 10 12 14 16 18 20 
RUN SUCCESSFUL (total time: 4s)

تقبل مرورى والله ولى التوفيق

post-15367-027053900%201340345097.gifpost-15367-087183200%201340344597.gif
post-247365-0-10080400-1379403554_thumb.

#3

أخي AudaNix حبذا لو نبهت الأخ السائل إلى خطأ كوده المكتوب

فالحلقة المستخدمة لا تؤدي المطلوب فضلاً عن كونها غير منتهية ...

فالأخ استعمل n+=2 بدلا من n-=2

وبما أنك أخي Audanix تتصدى لكثير من السائلين .. فأرجو منك الانتباه لذلك ...فالهدف هو أن يتعلم السائل الصيد لا أن نعطيه السمك

والله من وراء القصد ..

أعتذر على تطفلي والسلام عليكم ورحمة الله وبركاته

تم تعديل هذه المشاركة بواسطة مصطفى 36a2 في 29 أبريل 2012 في 09:55

1
#4
مصطفى 36a2 كتب:

أخي AudaNix حبذا لو نبهت الأخ السائل إلى خطأ كوده المكتوب

فالحلقة المستخدمة لا تؤدي المطلوب فضلاً عن كونها غير منتهية ...

فالأخ استعمل n+=2 بدلا من n-=2

وبما أنك أخي Audanix تتصدى لكثير من السائلين .. فأرجو منك الانتباه لذلك ...فالهدف هو أن يتعلم السائل الصيد لا أن نعطيه السمك

والله من وراء القصد ..

أعتذر على تطفلي والسلام عليكم ورحمة الله وبركاته

أحترم وجهة نظرك وأقدر لك ذلك

ولكن تذكر أن بعض اﻻخطاء البسيطة يستطيع القارئ ان يستنتجها بالمقارنة بكل يسر وسهولة

واﻻكواد التى تتطلب التلميح نذكرة و بعضها يتطلب تصريح بشكل مباشر نذكرة . ﻻ تقلق ....

وموضوع المشاركة والمساهمة متفاوت بمعنى:

واذا كنت انا قدمت جزء من المشاركة فى صورة كود فأكيد الشرح هو مساهمتك التى ننتظرها

تم تعديل هذه المشاركة بواسطة AudaNix في 29 أبريل 2012 في 10:33

2

post-15367-027053900%201340345097.gifpost-15367-087183200%201340344597.gif
post-247365-0-10080400-1379403554_thumb.

#5

السلام عليكم

أولاً : كل الشكر والتقدير لعزيزى محمد , لإقتطاعة من وقته الثمين فى مساعدة إخوانه فجزاه الله عنا خير الجزاء .

وفعلاً يجب أن يبحث السائل عن وجه الإختلاف بين البرنامجين ويصل إلى سبب الخطأ الذى إرتكبه فى برنامجه الذى أدى لخروج النتائج فى شكل غير المرجو منه , حتى يترسخ عنده مبدأ إكتشاف الأخطاء الذاتى .

اقتباس

أخي AudaNix حبذا لو نبهت الأخ السائل إلى خطأ كوده المكتوب

فالحلقة المستخدمة لا تؤدي المطلوب فضلاً عن كونها غير منتهية ...

فالأخ استعمل n+=2 بدلا من n-=2

وبما أنك أخي Audanix تتصدى لكثير من السائلين .. فأرجو منك الانتباه لذلك ...فالهدف هو أن يتعلم السائل الصيد لا أن نعطيه السمك

والله من وراء القصد ..

أعتذر على تطفلي والسلام عليكم ورحمة الله وبركاته

فعلاً عزيزى مصطفى هذا التنويه مهم جداً ولكن فى هذه الحالة لا يجب كتابة البرنامج , فإما كتابة البرنامج وتجعل السائل يبحث فى الكود ويكتشف خطأه وإما أن تبين له موضع الخطأ فى الكود وتتركة يحاول حل الطريقة , وهناك حالات طبعاً تحتاج الإثنين معاً لتكتمل الصورة .

وبما أنك نوهت عن الأخطاء التى وقعت بها الأخت فى البرنامج يجب عليك ذكر جميع الأخطاء على حسب السؤال الذى من خلاله تتم معالجة الأخطاء فكان نص السؤال هو :

اقتباس
المشكلة : بأنه يجب ضغط رز enter حتى يظهر الرقم الزوجي التالي والكود المطلوب اصلا اظهار الاعداد الزوجيه بين الصفر والرقم المدخل
فلهذا يجب عليك ذكر ما سبب جعل المستخدم يضغط ذر enter فى كل مرة وهو دالة getch

فيجب إخراجها من الدوران وإخراج جملة الطباعة الأولى خارج نطاق الدوران حتى لا يتم طباعتها فى كل مرة بالإضافة لشرط الخروج من الحلقة بالنقصان كما ذكرت أو تغيير شرط الحلقة كما ذكر أخى محمد .

دمتم بخير

1

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#6

عرفت الخطأ وعدلت اشياء بسيطه في الكود المعطى حتى يعمل في برنامجي borland

شكرا جزيلا لكم :blush:

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…