Nous avons un tableau de type entier `int arr[]` et une variable de type entier `x`. La tâche consiste à réorganiser tous les éléments du tableau afin qu'ils soient divisibles par la valeur entière « x » donnée et que l'ordre soit croissant.
Entrée - int arr[] = {4,24, 3, 5, 7, 22, 12, 10}, int x = 2
Sortie - Le résultat du réarrangement de tous les éléments du tableau qui sont divisibles par , 3, 5, 7, 22, 12, 10} et x avec une valeur de 2. Maintenant, nous allons d'abord vérifier tous les éléments du tableau qui sont divisibles par 2, c'est-à-dire 4, 24, 22, 12, 10. Ensuite, nous organiserons tous les éléments par ordre croissant, c'est-à-dire 4, 10, 3, 5, 7, 12, 22, 24 et c'est le résultat final.
Input - int arr[] = {4,24, 3, 5, 7, 22, 12, 10}, int x = 3
Output - Tous les éléments du tableau qui peuvent être divisés par x =3 Le résultat réorganisé est : 4 3 12 5 7 22 24 10
Explication - Nous avons un tableau de type entier contenant les valeurs {4,24, 3, 5, 7, 22, 12, 10} , et x avec la valeur 3. Maintenant, nous allons d'abord vérifier tous les éléments du tableau qui sont divisibles par 3, c'est-à-dire 4, 24, 12. Ensuite, nous organiserons tous les éléments par ordre croissant, c'est-à-dire 4, 3, 12, 5, 7, 22, 24, 10 et c'est le résultat final.
La méthode utilisée dans le programme ci-dessous est la suivante
Passez les données à la fonction Rearrange_Elements(arr, size, x)
Dans la fonction Rearrange_Elements(arr, size, x)
Créez une variable de type vectoriel nommée vec pour stocker la valeur de type entier .
Commencez à boucler de i à 0 jusqu'à ce que i soit inférieur à la taille. À l'intérieur de la boucle, vérifiez SI arr[i] % x = 0, puis poussez arr[i] dans le vec
Triez le tableau en utilisant la méthode de tri de C++ STL où nous commençons() et end() Passé en tant que paramètre à la fonction.
Commencez la boucle de i à 0 jusqu'à ce que i soit inférieur à la taille. Vérifiez SI arr[i] % x = 0, puis définissez arr[i] sur vec[j++].
Utilisez une boucle for pour imprimer un tableau, en passant du premier élément du tableau au dernier élément disponible.
#include <bits/stdc++.h> using namespace std; void Rearrange_Elements(int arr[], int size, int x){ vector<int> vec; int j = 0; for(int i = 0; i < size; i++){ if(arr[i] % x == 0){ vec.push_back(arr[i]); } } sort(vec.begin(), vec.end()); for (int i = 0; i < size; i++){ if(arr[i] % x == 0){ arr[i] = vec[j++]; } } cout<<"Rearrangement of all elements of array which are multiples of x "<<x<<" in decreasing order is: "; for(int i = 0; i < size; i++){ cout << arr[i] << " "; } } int main(){ int arr[] = {4,24, 3, 5, 7, 22, 12, 10}; int x = 2; int size = sizeof(arr) / sizeof(arr[0]); Rearrange_Elements(arr, size, x); return 0; }
Rearrangement of all elements of array which are multiples of x 2 in decreasing order is: 4 10 3 5 7 12 22 24
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!