Heim > Backend-Entwicklung > C++ > Hauptteil

C++-Programm zum Neuanordnen aller Elemente, die ein Vielfaches von x in einem Array sind, in aufsteigender Reihenfolge

王林
Freigeben: 2023-08-30 20:25:06
nach vorne
1214 Leute haben es durchsucht

C++-Programm zum Neuanordnen aller Elemente, die ein Vielfaches von x in einem Array sind, in aufsteigender Reihenfolge

Wir haben ein Array vom Ganzzahltyp „int arr[]“ und eine Variable vom Ganzzahltyp „x“. Die Aufgabe besteht darin, alle Elemente des Arrays so neu anzuordnen, dass sie durch den angegebenen ganzzahligen Wert „x“ teilbar sind und die Reihenfolge aufsteigend sein sollte.

Lassen Sie uns die verschiedenen Eingabe- und Ausgabesituationen dieses Problems betrachten:

Eingabe - int arr[] = {4,24, 3, 5, 7, 22, 12, 10}, int x = 2

Ausgabe – Das Neuanordnungsergebnis aller Elemente im Array, die durch , 3, 5, 7, 22, 12, 10} und x mit einem Wert von 2 teilbar sind. Jetzt prüfen wir zunächst alle Elemente im Array, die durch 2 teilbar sind, also 4, 24, 22, 12, 10. Dann ordnen wir alle Elemente in aufsteigender Reihenfolge an, d. h. 4, 10, 3, 5, 7, 12, 22, 24, und dies ist die endgültige Ausgabe.

Eingabe - int arr[] = {4,24, 3, 5, 7, 22, 12, 10}, int x = 3

Ausgabe - Alle Elemente im Array, die durch x teilbar sind =3 Das neu angeordnete Ergebnis ist: 4 3 12 5 7 22 24 10

Erklärung - Wir haben ein Array vom Typ Integer, das die Werte {4,24, 3, 5, 7, 22, 12, 10} enthält. und x mit dem Wert 3. Jetzt prüfen wir zunächst alle Elemente im Array, die durch 3 teilbar sind, also 4, 24, 12. Dann ordnen wir alle Elemente in aufsteigender Reihenfolge an, d. h. 4, 3, 12, 5, 7, 22, 24, 10, und dies ist die endgültige Ausgabe.

Die im folgenden Programm verwendete Methode lautet wie folgt:

Deklarieren Sie ein Array vom Typ Integer. Berechnen Sie die Größe des Arrays und speichern Sie sie in einer Variablen namens size. Deklarieren Sie eine Variable „x“ vom Typ „Integer“, um das Array neu anzuordnen.

  • Übergeben Sie die Daten an die Funktion Rearrange_Elements(arr, size, x)

  • In der Funktion Rearrange_Elements(arr, size, x)

  • Erstellen Sie eine Vektortypvariable mit dem Namen vec, um den Ganzzahltypwert zu speichern .

    • Beginnen Sie mit der Schleife von i bis 0, bis i kleiner als die Größe ist. Überprüfen Sie innerhalb der Schleife, ob arr[i] % x = 0 ist, und schieben Sie dann arr[i] in den VEC.

    • Sortieren Sie das Array mit der Sortiermethode von C++ STL, wobei wir begin() und end() als a übergeben Parameter zur Funktion.

    • Beginnen Sie mit der Schleife von i bis 0, bis i kleiner als die Größe ist. Überprüfen Sie, ob arr[i] % x = 0 ist, und setzen Sie dann arr[i] auf vec[j++].

    • Verwenden Sie eine for-Schleife, um ein Array zu drucken und dabei vom ersten Element des Arrays bis zum letzten verfügbaren Element zu durchlaufen.

    • Beispiel
    #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;
    }
    Nach dem Login kopieren
  • Ausgabe

Wenn wir den obigen Code ausführen, wird die folgende Ausgabe generiert

Rearrangement of all elements of array which are multiples of x 2 in decreasing order is: 4 10 3 5 7 12 22 24
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonC++-Programm zum Neuanordnen aller Elemente, die ein Vielfaches von x in einem Array sind, in aufsteigender Reihenfolge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage