Rumah >pembangunan bahagian belakang >C++ >Cetak ungkapan kurungan seimbang dalam program C menggunakan kurungan yang diberikan

Cetak ungkapan kurungan seimbang dalam program C menggunakan kurungan yang diberikan

王林
王林ke hadapan
2023-09-09 23:13:021392semak imbas

Cetak ungkapan kurungan seimbang dalam program C menggunakan kurungan yang diberikan

Diberi empat pembolehubah a, b, c, d, yang mempunyai nilai pratakrif, cetak kurungan yang diberikan berdasarkan pembolehubah yang digunakan.

Jika boleh ubah,

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

Tugasnya ialah menggunakan semua kurungan yang diberikan dan mencetak ungkapan kurungan seimbang, atau -1 jika ungkapan kurungan seimbang tidak dapat dibentuk. Jika terdapat berbilang jawapan, kita boleh mencetak mana-mana daripada berbilang jawapan yang dibentuk menggunakan kurungan yang diberikan.

Contoh

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

Untuk mencapai hasil ini, kita boleh menyemak dahulu sama ada ungkapan kurungan seimbang boleh dibentuk dengan bilangan kurungan tertentu. Jika ungkapan itu boleh dibina daripada bilangan kurungan tertentu, maka kita boleh.

  • Cetak bilangan kurungan jenis 1.
  • Cetak kurung jenis nombor 3.
  • Cetak bilangan kurungan jenis 4.
  • Cetak bilangan kurungan jenis 2.

Berikut ialah algoritma dan pelaksanaan kaedah tersebut.

Algoritma

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

Contoh

#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;
}

Output

Jika kita menjalankan program di atas maka ia akan menghasilkan output berikut

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

Atas ialah kandungan terperinci Cetak ungkapan kurungan seimbang dalam program C menggunakan kurungan yang diberikan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam