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

algorithm find all combination for n number

بدأه محمد1991 في 5 ديسمبر 2011 · 7 رد · 616 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

المطلوب ايجاد algorithm find all combination for n number

هلا انا عملت هاد الكود

public class comination {



    public static void main(String[] args) {

      for(int i=1;i<=3;i++){
      	for(int j=1;j<=3;j++){
      		for(int k=1;k<=3;k++){
      			System.out.println (i+""+j+""+k);
      		}
      	}
      }  
    }
}

بيعطيني ل 3 واذا بدي لل 4 بزيد كمان لوب كيف بقدر اخليه يطبع لرقم غير محدد يعني المستخدم يدخله

هيك الناتج ل 3

--------------------Configuration: <Default>--------------------

111

112

113

121

122

123

131

132

133

211

212

213

221

222

223

231

232

233

311

312

313

321

322

323

331

332

333

#2
محمد1991 كتب:

السلام عليكم

المطلوب ايجاد algorithm find all combination for n number

هلا انا عملت هاد الكود

public class comination {



    public static void main(String[] args) {

      for(int i=1;i<=3;i++){
      	for(int j=1;j<=3;j++){
      		for(int k=1;k<=3;k++){
      			System.out.println (i+""+j+""+k);
      		}
      	}
      }  
    }
}

بيعطيني ل 3 واذا بدي لل 4 بزيد كمان لوب كيف بقدر اخليه يطبع لرقم غير محدد يعني المستخدم يدخله

هيك الناتج ل 3

--------------------Configuration: <Default>--------------------

111

112

113

121

122

123

131

132

133

211

212

213

221

222

223

231

232

233

311

312

313

321

322

323

331

332

333

السلام عليكم

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

Scanner sc= new Scanner(System.in);
int n=sc.nextInt();
 for(int i=1;i<=n;i++){
        for(int j=1;j<=n;j++){
                for(int k=1;k<=n;k++){
                        System.out.println (i+""+j+""+k);
                }
        }
      }

هناك عدة طرق للادخال في الجافا

اضن ان Scanner هو ابسطها

تم تعديل هذه المشاركة بواسطة sahraoui17 في 5 ديسمبر 2011 في 17:50

#3

لااااااااااا

لازم اغير عدد اللوب لكل عدد زيادة مو n

#4
محمد1991 كتب:

لااااااااااا

لازم اغير عدد اللوب لكل عدد زيادة مو n

السلام عليكم

لم افهم السوال

الرجاء عدم استعمال كلمات اجنبية بكتابة عربية

اظن ان هذا من قوانين المنتدى

#5
sahraoui17 كتب:

السلام عليكم

لم افهم السوال

الرجاء عدم استعمال كلمات اجنبية بكتابة عربية

اظن ان هذا من قوانين المنتدى

السؤال لازم يطبع التراكيب المحتملة لكل عدد فمثلا ال 3 بدها 3 forloop

وال 4 بدها 4 forloop

كيف بقدر اعطي صيغة بحيث انو ينفذ مهما كانت قيمة n بدون ما اعدل عدد ال loop

يعني يكون برنامجي ثابت لجميع الارقام

#6
محمد1991 كتب:

السؤال لازم يطبع التراكيب المحتملة لكل عدد فمثلا ال 3 بدها 3 forloop

وال 4 بدها 4 forloop

كيف بقدر اعطي صيغة بحيث انو ينفذ مهما كانت قيمة n بدون ما اعدل عدد ال loop

يعني يكون برنامجي ثابت لجميع الارقام

هل هذا ما تقصده

http://www.merriampark.com/comb.htm

#7

هل هذا المطلوب :

import java.util.Arrays;
import java.util.Scanner;

public class Combination {

    public static int[] next(int[] current, int radix) {
        int[] n= new int[current.length];

        for (int i= n.length; i-- > 0;) {
            if (current+1 == radix)
                n= 0;
            else {
                n= current+1;
                for (; i-- > 0; n= current);
                return n;
            }
        }
        return null;
    }

    public static void main(String[] args) {

    	System.out.println("Please enter a number");
		Scanner input = new Scanner(System.in);

		int  M= input.nextInt(); 

        System.out.println("Possible Combintations: ");

        int[] a= new int[M];

        do {
            System.out.println(Arrays.toString(a));
        }
        while ((a= next(a, (M+ 1) )) != null);
    }
}
1
#8

شكرا جزيلا

نعم هذا المطلوب

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