سي بلس بلس-33: انشاء مصفوفة عشوائية ومعالجتها ثم ترتيب عناصرها


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

اخوتي الكرام اخواتي الفاضلات 

سؤالنا اليوم يقول:

اكتب برنامج بلغة سي بلس بلس لتوليد مصفوفة مكونة من 40 عدد صحيح ثم نقل العناصر التي قيمتها اقل او تساوي 50 الى مصفوفة ثانية ثم ترتيب كل من المصفوفتين بأستخدام ترتيب الحشر

Insertion sort

الحل في ادناه:

The code:

#include <iostream>

#include <stdlib.h>

#include <time.h>

 

using namespace std;

 

int MatGen(int a[40])

{int i;

/* initialize random seed: */

srand (time(NULL));

// generate 40 random numbers between 1 and 100 and put them in the matrix a

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

    a[i]=rand()%100 +1;

}

int cond(int a[40],int b[40])

{int i;

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

{

    if (a[i]<=50)

        b[i]=a[i];

    else b[i]=0;

}

}

 

void selectSort(int arr[40])

{

//pos_min is short for position of min

            int pos_min,temp;

 

            for (int i=0; i < 39; i++)

            {

                pos_min = i;//set pos_min to the current index of array

                        for (int j=i+1; j < 40; j++)

                        {

                        if (arr[j] < arr[pos_min])

                   pos_min=j;

   //pos_min will keep track of the index that min is in, this is needed when a swap happens

                        }

//if pos_min no longer equals i than a smaller value must have been found, so a swap must occur

            if (pos_min != i)

            {

                 temp = arr[i];

                 arr[i] = arr[pos_min];

                 arr[pos_min] = temp;

            }

            }

}

int print (int arr[40])

{

    int i;

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

        cout<<arr[i]<<“\t”;

}

int main()

{int i,a[40],b[40];

//the original matrix

cout<<“the original matrix”<<endl;

MatGen(a);

print(a);

cout<<endl;

//the second matrix

cout<<“the second matrix”<<endl;

cond(a,b);

print(b);

cout<<endl;

//the sorted original matrix

cout<<“the sorted original matrix”<<endl;

selectSort(a);

print(a);

cout<<endl;

//the sorted new matrix

cout<<“the sorted second matrix”<<endl;

selectSort(b);

print(b);

    return 0;

}

The execution results:

1

اتمنى ان يكون السؤال وحله مفيداً ومفهوماً للجميع 

تحياتي وانتظرونا في سؤال وجواب اخر قريباً ان شاء الله 

6 comments

  1. thanks.please help me to solve this soon if possible Suppose you are blocking the left lane while driving a car and there is an angry driver behind you. Now suppose we can calculate the probability that the angry driver will flash their lights at you by looking at your car’s license plate number (CLP). Assume our calculation method takes two inputs: (i) NUM = Number of digits in the CLP. (e.g. 11228 has 5 digits) (ii) DIFF = Number of different digits represented by the CLP. (e.g. 11228 consists of 3 different digits: 1, 2, and 8)
    Based on these inputs, assume the probability that a person will flash their light can be calculated as follows: Number of digits (NUM) Number of different digits (DIFF) Probability of Flashing Lights (PFL) NUM ≤ 4 DIFF ≤ 2 10% DIFF >2 20% NUM >4 DIFF ≤ 2 50% DIFF >2 80%
    Now, write a proper C++ program that will take as input the license plate number CLP and output the probability of flashing lights as described by the table above. Your program should abide by the following requirements: 1- Must compile and run properly. 2- Must make sure the number of digits entered by the user does not exceed 6 and is more than 2 digits. Otherwise, must ask the user to re-enter the license plate number. 3- Must contain a function getDiff of the integer type that takes in one integer parameter CLP. The function should return the number of different digits in the CLP passed as an argument. 4- Must contain a function getNum of the integer type that takes in one integer parameter CLP. This function should return the number of digits that represent the CLP argument.
    5- Your implementation of getDiff must make use of arrays.

    إعجاب

  2. السلام عليكم ارجو مساعدتي ضروري لانكم درستم مادة المعماريه انوي ان اعمل محاكاة لمعماريتين مختلفتين في”FBGA heterogeneous architecture “ولا اعرف من اين ابدا اي ماهي التقنيه اوالبيئه التي ممكن ان اعمل بها 

    إعجاب

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s