Heim > Backend-Entwicklung > C++ > Übersetzen Sie in C++ Folgendes ins Chinesische: Finden Sie das Rechteck mit dem kleinsten Unterschied zwischen Länge und Breite

Übersetzen Sie in C++ Folgendes ins Chinesische: Finden Sie das Rechteck mit dem kleinsten Unterschied zwischen Länge und Breite

王林
Freigeben: 2023-09-16 13:21:09
nach vorne
678 Leute haben es durchsucht

Übersetzen Sie in C++ Folgendes ins Chinesische: Finden Sie das Rechteck mit dem kleinsten Unterschied zwischen Länge und Breite

Gegeben ist eine rechteckige Fläche als Eingabe. Das Ziel besteht darin, die Seiten des Rechtecks ​​zu finden, die den Unterschied zwischen Länge und Breite minimieren.

Rechteckfläche = Länge * Breite.

Beispiel

Eingabe− Fläche = 100

Ausgabe− Die Seiten des Rechtecks ​​mit der kleinsten Differenz:

Länge = 10, Breite = 10

Erklärung− Die Seite mit Fläche = 100.

2-50, 4-25, 5-20, 10-10. Die Seite mit der kleinsten Differenz ist 10-10, Differenz = 0. Wie wir alle wissen, ist ein Quadrat ein Rechteck, dessen Seiten alle gleich lang sind.

Eingabe− Fläche = 254

Ausgabe− Seiten des Rechtecks ​​mit minimaler Differenz:

Länge = 127, Breite = 2

Erklärung - Minimale Differenz nur möglicher Seiten, um ein Rechteck mit einer Fläche von 254 zu erstellen Die Werte sind 127 und 2.

Die im folgenden Programm verwendete Methode ist wie folgt:

Hier ermitteln wir den Quadratwurzelwert der Fläche und traversieren von dort zu 1, um den Wert mit der kleinsten Differenz und Fläche = Eingabefläche zu finden.

  • Nehmen Sie die Ganzzahlvariable Area als Eingabe.

    li>
  • Die Funktion fragmentSides(int area1) akzeptiert Bereich1 und gibt die Seitenlängen des Rechtecks ​​mit der kleinstmöglichen Differenz zwischen Länge und Breite aus.

  • Nehmen Sie ganzzahlige Länge, Breite und tmp1.

  • Setzen Sie tmp1=ceil(sqrt(area1))

  • Verwenden Sie eine for-Schleife zum Durchlaufen (int i = tmp1; i > 0; i--).

  • Wenn (Fläche1 % i == 0), dann setze Länge=Fläche/i und Breite=i.

  • Verwenden Sie die Break-Anweisung, um die Iteration zu stoppen.

  • Seitenlänge und -breite bedrucken.

Beispiel

#include <bits/stdc++.h>
using namespace std;
void rectangleSides(int area1){
   int length, breadth;
   int tmp1 = ceil(sqrt(area1));
   for (int i = tmp1; i > 0; i--) {
      if (area1 % i == 0) {

         length = ceil(area1 / i);
         breadth = i;
         break;
      }
   }
   cout<<"Sides of Rectangle with minimum difference :"<<endl;
   cout << "Length = " << length << ", Breadth = "   << breadth << endl;
}
int main(){
   int Area = 140;
   rectangleSides(Area);
   return 0;
}
Nach dem Login kopieren

Ausgabe

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

Sides of Rectangle with minimum difference :
Length = 14, Breadth = 10
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonÜbersetzen Sie in C++ Folgendes ins Chinesische: Finden Sie das Rechteck mit dem kleinsten Unterschied zwischen Länge und Breite. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
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