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

طلب برنامج"تصحيح الخطأ في الكود"

مغلقمُجاب
بدأه Luna Volver A salir في 11 نوفمبر 2013 · 5 رد · 839 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اخواني بعد محاولات و تعب  لحل هذا السؤال : اكتب برنامج لادخال مجموعة من الارقام و تخزينها في مصفوفة احادية (اسمهاA) , ثم انسخ عناصر المصفوفة الى مصفوفة اخرى (اسمهاB)بشكل معكوس ثم ايجاد مجموعة العناصر المتكررة في المصفوفتين (A&B) و خزن النتيجة في مصفوفة ثالثة (اسمهاC)

هذا ما استطعت ان اتوصل اليه ارجوكم ساعدوني وين الخطأ بالكود

import java.util.Scanner;public class ZA{	public static void main(String args[])	{	int[] a;        int[] b;        int[] c;        int i,j,s=0,m=0,k=0;        a=new int[5];        b=new int[5];        c=new int[5];        Scanner input=new Scanner(System.in);        for(i=0;i<5;i++)            a=input.nextInt();            for(i=0;i<5;i++)            {                 m=a;                a=b[4-i];                b[4-i]=m;            }            for(i=0;i<5;i++)            System.out.print(" "+b+"");           for(i=0;i<5;i++)           {               for(j=0;j<5;j++)                   if(a==b[j])                       c[k]=a+b;                       k++;           }           for(i=0;i<5;i++)           System.out.print(" "+a);             for(i=0;i<k;i++)               System.out.print(c);	}	}
#2 أفضل إجابة
import java.util.Scanner;

public class ZA

    {

        public static void main ( String args[] )

            {

                int[] a;

                int[] b;

                int[] c;

                int i, j, s = 0, m = 0, k = 0;

                a = new int[ 5 ];

                b = new int[ 5 ];

                c = new int[ 5 ];

                Scanner input = new Scanner ( System.in );

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

                    {

                        a = input.nextInt ();

                    }

                //النسخ إلى مصفوفة أخرى بشكل معكوس

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

                    {

                        b[4 - i] = a;

                    }

                //إيجاد العناصر المكررة

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

                    {

                        for ( j = i ; j < 5 ; j ++ )

                            {

                                if ( a == a[j] && i != j )

                                    {

                                        c = a;

                                        s ++;

                                    }

                            }

                    }

                //طباعة الأولى

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

                    {

                        System.out.print ( "   " + a );

                    }

                System.out.println ();

                //طباعة الثانية

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

                    {

                        System.out.print ( "   " + b );

                    }

                System.out.println ();

                //طباعة الثالثة

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

                    {

                        System.out.print ( "   " + c );

                    }

                System.out.println ();

            }

    }
1

vVIfFr.gif

مدونتي



إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة

فما أحوجني إلى دعوة صالحة من أخ لي كريم

 

http://www.tvquran.com/

 

LoGeCom

أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز 

#3

إذا كانت لدينا مصفوفة A و قمنا بعكسها في مصفوفة B فإن A و B يملكان بطبيعة الحال نفس العناصر !

إلا إذا كان السؤال عن العناصر المتساوية بالتقابل (تحمل نفس الـ index) :

import java.util.Scanner;public class Exo {    public static void main(String[] args) {        int a[] = new int[5], b[] = new int[5], c[] = new int[5];        Scanner input = new Scanner(System.in);        for (int i = 0; i < 5; i++) {            a = input.nextInt();        }        for (int i = a.length - 1, j = 0; i >= 0; i--, j++) {            b[j] = a;        }        for (int i = a.length - 1, j = 0; i >= 0; i--, j++) {            if (a == a[j]) {                c = a;            }        }        System.out.println("A   B   C");        for (int i = 0; i < a.length; i++) {            System.out.println(a + "   " + b + "   " + c + "   ");        }    }}

المُخرجات :

1
2
3
4
5

A   B   C
1   5   0   
2   4   0   
3   3   3   
4   2   0   
5   1   0

تم تعديل هذه المشاركة بواسطة Snack3r في 12 نوفمبر 2013 في 00:10

#4

أظن أن المقصود هو التكرار في المصفوفة الواحدة

vVIfFr.gif

مدونتي



إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة

فما أحوجني إلى دعوة صالحة من أخ لي كريم

 

http://www.tvquran.com/

 

LoGeCom

أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز 

#5

آه أوكي, عفوا إذا, يمكننا حذف العناصر المتكررة هكذا :

import java.util.LinkedHashSet;import java.util.Set;public class Exo {    public static void main(String[] args) {        int array[] = {1, 2, 3, 4, 3, 2, 5, 6, 1, 4, 0, 5, 7};        Set<Integer> setString = new LinkedHashSet<Integer>();        for (int i = 0; i < array.length; i++) {            setString.add(array);        }        System.out.println(setString);    }}
#6

الف شكر .................................مليون شكر .............. وفقكم الله في الدنيا و الاخره

هذا الموضوع مغلق.

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