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

أستفسار عن عمل مجموعات بلغة سي بلس بلس

بدأه يارب عونك في 9 مايو 2012 · 5 رد · 716 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته ,,

حابة استفسر منكم يااهل الخبره والمشورة

كيف ممكن بلغة سي بلس بلس

اجبر المستخدم على ادخال رقم هذا الرقم يكون عدد المجموعات {يعني الرقم المدخل يكون عدد المجموعات المتاحة لدى المستخدم وكل مجموعة تنتهي بصفر}

وفي كل مجموعة رقم حاصلة ضربة في 2 يساوي مجموع القيم في المجموعة بإستثناء الرقم نفسه ؟

وجزاكم الله خيرا

1 −1
#2

المجموعات ,,أقصد فيها أذا ادخل المستخدم رقم صحيح ولنفرض 2

يجبر المستخدم على ان يدخل قيم في مجموعتين وكل مجموعة تنتهي بالصفر

#3
يارب عونك كتب:

السلام عليكم ورحمة الله وبركاته ,,

حابة استفسر منكم يااهل الخبره والمشورة

كيف ممكن بلغة سي بلس بلس

اجبر المستخدم على ادخال رقم هذا الرقم يكون عدد المجموعات {يعني الرقم المدخل يكون عدد المجموعات المتاحة لدى المستخدم وكل مجموعة تنتهي بصفر}

وفي كل مجموعة رقم حاصلة ضربة في 2 يساوي مجموع القيم في المجموعة بإستثناء الرقم نفسه ؟

وجزاكم الله خيرا

على حد فهمي أنك قصدت بالمجموعات المصفوفة ثنائية البعد

هكذا

  
  int tab[3][4]= 

  {

    {1 , 2 , 3 ,4},

    {5 , 6 ,7 , 8},

    {9 ,10, 11,12}

  };

ولكن لم أفهم سؤالك جيدا /حاولي توضحي أكثر و إذا ممكن تحطي الكود لي بدأتي به البرنامج

حتى يسهل علينا فهم سؤالك و بالتالي الإجابة عليه

وفقك الله

تم تعديل هذه المشاركة بواسطة مومو (momo) في 9 مايو 2012 في 20:26

1

i love you mama

#4

أسف أختي على التأخير الخارج عن إرادتي بسبب ظروف خاصة

x*2=Σ x de i

i تنتمي للمجال [0,n] و x عدد صحيح طبيعي ينتمي ل IN

هذا الكود ب c في حالة احتساب العنصر x من حاصل مجموع المجموعة مجرب و شغال 100/100

مثال

نفترض أن لدينا مجموعتين على هذا النحو وكل مجموعة تنتهي بالعدد 0

المجموعة الأولى {4.10.6.0} سيطبع العدد 10

المجموعة الثانية {5.15.6.0} سيطبع العدد 0

#include <stdio.h>
#include <stdlib.h>
#//Réalisé par MOMO
#define MAX 1000
#define x printf("\n\n");


int main(void)
{

    int t[500][MAX]={0},to[MAX]={0},ta[MAX]={0},i=0,j=0,n=0,s=0,v=0;

    printf("Enter the number of groups :\t");    scanf("%d",&n); x

    for(i=0;i<n;i++)

      {
        for (j=0;j<MAX;j++)
         {
            printf("enter the nombre t[%d][%d]:\t",i,j); scanf("%d",&t[j]); x       

            s+=t[j];

           if(t[j]==0) break;
         }

        ta=j;  to=s;   s=0;  x x       

      } 

    for(i=0;i<n;i++)

      {
        v=0;

        for(j=0;j<ta;j++)

           {
             if(2*t[j]==to)              
               {
                  v=1; printf("group %d ==> %d",i+1,t[j]); x  break; 
               }
           }

        if(v==0)  printf("group %d ==> 0",i+1); x

      }


    getch();
}

وهذا كود آخر ب c++

#include <iostream>
#//Réalisé par MOMO
#define MAX 1000
#define x cout << "\n\n";
using namespace std;



int main(void)
{

    int t[500][MAX]={0},to[MAX]={0},ta[MAX]={0},i=0,j=0,n=0,s=0,v=0;

    cout <<"Enter the number of groups  :\t";   cin >> n ;   x

    for(i=0;i<n;i++)

      {
          cout<< "Enter the numbers of group n " << i+1; x x
        for (j=0;j<MAX;j++)
         {
            cout << j+1 <<"- number :\t"; cin >> t[j]; x

            s+=t[j];

           if(t[j]==0) break;
         }

        ta=j;  to=s;   s=0;  x x

      }

    for(i=0;i<n;i++)

      {
        v=0;

        for(j=0;j<ta;j++)

           {
             if(2*t[j]==to)
               {
                  v=1;  cout<<"group " << i+1 << " ==> " << t[j]; x  break;
               }
           }

        if(v==0)  cout<< "group " <<i+1 << " ==> 0"; x

      }


     return 0;
     system("pause");
}

وهناك طريقة أخرى بالمؤشرات و هي الأكثر قوة ولكن تحتاج شوي تركيز

كل التوفيق و لا تنسي تقييمي إذا كانت إجابتي مفيدة

وفي حال ما لم تفهمي شيء في الكود لا تترددي في السؤال

نحن هنا لنساعد بعضنا على الرحب و الساعة

تم تعديل هذه المشاركة بواسطة مومو (momo) في 11 مايو 2012 في 13:05

2

i love you mama

#5

اخي الكريم جزاك الله خيرا ووفقك يارب

هل بإمكانك ان تشر حلي الكود الاول وجزاك الله خيرا

#6
يارب عونك كتب:

اخي الكريم جزاك الله خيرا ووفقك يارب

هل بإمكانك ان تشر حلي الكود الاول وجزاك الله خيرا

هذا الكود الجديد في حالة انتقاص العنصر x من حاصل مجموع المجموعة

x*2=Σ x de i-x

i تنتمي للمجال [0,n] و x عدد صحيح طبيعي ينتمي ل IN

مثال

نفترض أن لدينا 3 مجموعات على هذا النحو وكل مجموعة تنتهي بالعدد 0

المجموعة الأولى {1.2.4.5.6.9.0} سيطبع العدد 9

المجموعة الثانية {1.2.4.5.6.7.0} سيطبع العدد 0

المجموعة الثالتة {1.2.9.4.5.6.0} سيطبع العدد 9

الكود بلغة c

#include <stdio.h>
#include <stdlib.h>
#//Réalisé par MOMO
#define MAX 1000
#define x printf("\n\n");


int main(void)
{

    int t[500][MAX]={0},to[MAX]={0},ta[MAX]={0},i=0,j=0,n=0,s=0,v=0;

    printf("Enter the number of groups :\t");    scanf("%d",&n); x

    for(i=0;i<n;i++)

      {
        for (j=0;j<MAX;j++)
         {
            printf("enter the nombre t[%d][%d]:\t",i,j); scanf("%d",&t[j]); x

            s+=t[j];

           if(t[j]==0) break;
         }

        ta=j;  to=s;   s=0;  x x

      }




    for(i=0;i<n;i++)

      {
        v=0;

        for(j=0;j<ta;j++)

           {
             if((2*t[j])==(to-t[j]))
               {
                  v=1; printf("group %d ==> %d",i+1,t[j]); x  break;
               }
           }

        if(v==0)  printf("group %d ==> 0",i+1); x

      }



    getch();
}

الكود ب c++

#include <iostream>
#//Réalisé par MOMO
#define MAX 1000
#define x cout << "\n\n";
using namespace std;



int main(void)
{

    int t[500][MAX]={0},to[MAX]={0},ta[MAX]={0},i=0,j=0,n=0,s=0,v=0;

    cout <<"Enter the number of groups  :\t";   cin >> n ;   x

    for(i=0;i<n;i++)

      {
          cout<< "Enter the numbers of group n " << i+1; x x
        for (j=0;j<MAX;j++)
         {
            cout << j+1 <<"- number :\t"; cin >> t[j]; x

            s+=t[j];

           if(t[j]==0) break;
         }

        ta=j;  to=s;   s=0;  x x

      }

    for(i=0;i<n;i++)

      {
        v=0;

        for(j=0;j<ta;j++)

           {
             if((2*t[j])==(to-t[j]))
               {
                  v=1;  cout<<"group " << i+1 << " ==> " << t[j]; x  break;
               }
           }

        if(v==0)  cout<< "group " <<i+1 << " ==> 0"; x

      }


     return 0;
     system("pause");
}

تم تعديل هذه المشاركة بواسطة مومو (momo) في 11 مايو 2012 في 13:04

i love you mama

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

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

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

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

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