Heim >Backend-Entwicklung >C++ >Drucken Sie einen ausgeglichenen Klammerausdruck im C-Programm unter Verwendung der angegebenen Klammern

Drucken Sie einen ausgeglichenen Klammerausdruck im C-Programm unter Verwendung der angegebenen Klammern

王林
王林nach vorne
2023-09-09 23:13:021181Durchsuche

Drucken Sie einen ausgeglichenen Klammerausdruck im C-Programm unter Verwendung der angegebenen Klammern

Gegeben sind vier Variablen a, b, c, d, die vordefinierte Werte haben. Drucken Sie die angegebenen Klammern basierend auf den verwendeten Variablen aus.

Where-Variable,

a for ((
b for ()
c for )(
d for ))

Die Aufgabe besteht darin, alle angegebenen Klammern zu verwenden und den ausgeglichenen Klammerausdruck auszugeben, oder -1, wenn der ausgeglichene Klammerausdruck nicht gebildet werden kann. Wenn es mehrere Antworten gibt, können wir jede der mithilfe der angegebenen Klammern gebildeten Mehrfachantworten ausdrucken.

Beispiel

Input: a = 3, b = 2, c = 4, d = 3
Output : (((((()()()()())))))()()

Um dieses Ergebnis zu erzielen, können wir zunächst prüfen, ob mit einer gegebenen Anzahl von Klammern ein ausgeglichener Klammerausdruck gebildet werden kann. Wenn der Ausdruck aus einer bestimmten Anzahl von Klammern konstruiert werden kann, dann ist dies möglich.

  • Drucken Sie die Anzahl der Klammern vom Typ 1 aus.
  • Typnummer 3 in Klammern drucken.
  • Drucken Sie die Anzahl der Typ-4-Klammern aus.
  • Drucken Sie die Anzahl der Typ-2-Klammern aus.

Das Folgende ist der Algorithmus und die Implementierung der Methode.

Algorithmus

START
Step 1 -> Declare Function void print(int a, int b, int c, int d) Declare int i
   IF ((a == d && a) || (a == 0 && c == 0 && d == 0))
      Loop For i=1 and i<=a and i++
         Print ((
      End
      Loop For i=1 and i<=c and i++
         Print )(
      End
      Loop For i=1 and i<=d and i++
         Print ))
      End
      Loop For i=1 and i<=b and i++
         Print ()
      End
   Else
      Print can&rsquo;t be formed
Step 2 -> main()
   Declare int a = 3, b = 2, c = 4, d = 3
   Call print(a,b,c,d)
STOP

Beispiel

#include<stdio.h>
void print(int a, int b, int c, int d){
   int i;
   if ((a == d && a) || (a == 0 && c == 0 && d == 0)){
      for (i = 1; i <= a; i++)
         printf("((");
      for (i = 1; i <= c; i++)
         printf(")(");
      for (i = 1; i <= d; i++)
         printf("))");
      for (i = 1; i <= b; i++)
         printf("()");
   }
   else
      printf("can&#39;t be formed");
}
int main(){
   int a = 3, b = 2, c = 4, d = 3;
   print(a, b, c, d);
   return 0;
}

Ausgabe

Wenn wir das obige Programm ausführen, generiert es die folgende Ausgabe

(((((()()()()())))))()()

Das obige ist der detaillierte Inhalt vonDrucken Sie einen ausgeglichenen Klammerausdruck im C-Programm unter Verwendung der angegebenen Klammern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen