Escriba un programa C (o C++) para hacer ZOOM (aumentar) los dígitos de un número entero. Debe tomar un número entero del usuario y mostrar cada dígito del número entero en forma ampliada usando algún patrón. Ejemplos:
Input : 123 Output : @ @@ @ @ @@@@@ ------------------------------- @@@@ @ @ @ @ @@@@ ------------------------------- @@@@@ @ @@@@@ @ @@@@@ -------------------------------
Este programa creativo toma un número entero del usuario e imprime todos y cada uno de los dígitos de ese número entero después de hacer zoom .
El número dado se convierte primero en una string usando stringstream . Después de eso, se accede a cada carácter (dígito) y se coloca en la estructura de la caja del interruptor que AMPLIA cada dígito y se imprime en forma de patrón. A continuación se muestra la implementación de C++
C
// C++ program to zoon digits of an integer #include <bits/stdc++.h> using namespace std; void zoomDigits(int number) { // Converting number to string stringstream ss; ss << number; string str = ss.str(); for (int k=0; k<str.length(); k++) { switch(str[k]-'0') { case 0: for (int i=0; i<5; i++) { for (int j=0; j<5; j++) { if (i==0 || i==4) cout << '@'; else if (j==0 || j==4) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 1: for (int i=0; i<5; i++) { for (int j=0; j<5; j++) { if (j==2) cout << '@'; else if ((i==1 && j==1)) cout << '@'; else if (i==4) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 2: for (int i=0; i<5; i++) { for (int j=0; j<4; j++) { if (i==0 && j==4) cout << " "; else if (i==0 || i==4) cout << '@'; else if (i==1 && j==0) cout << '@'; else if (i==(4-j)) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 3: for (int i=0; i<5; i++) { for (int j=0; j<5; j++) { if (i==0 || i==2 || i==4) cout << '@'; else if (j==4) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 4: for (int i=0; i<5; i++) { for (int j=0; j<5; j++) { if (j==4) cout << '@'; else if (i==2) cout << '@'; else if (j==0 && (i==0 || i==1)) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 5: for (int i=0; i<5; i++) { for (int j=0; j<5; j++) { if (i==0 || i==2 || i==4) cout << '@'; else if ((j==0 && i==1) || (j==4 && i==3)) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 6: for (int i=0; i<5; i++) { for (int j=0; j<5; j++) { if (i==0 || i==2 || i==4) cout << '@'; else if ((j==0 && (i==1 || i==3)) || (j==4 && i==3)) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 7: for (int i=0 ; i<5; i++) { for (int j=0 ; j<5; j++) { if (i==0 && (j!=4)) cout << '@'; else if (i==2 && (j==2 || j==4)) cout << '@'; else if (j==3) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 8: for (int i=0; i<5; i++) { for (int j=0; j<5; j++) { if (i==0 || i==2 || i==4) cout << '@'; else if ((j==0 && (i==1 || i==3) || (j==4 && (i==1 || i==3)))) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; case 9: for (int i=0; i<5; i++) { for (int j=0; j<5; j++) { if ( i==0 || i==2 || j==4) cout << '@'; else if (i==1 && j==0) cout << '@'; else cout << " "; } cout << endl; } cout << "-------------------------------\n\n"; continue; } } } // Driver code int main() { long long number = 12305; zoomDigits(number); return 0; }
Producción:
@ @@ @ @ @@@@@ ------------------------------- @@@@ @ @ @ @ @@@@ ------------------------------- @@@@@ @ @@@@@ @ @@@@@ ------------------------------- @@@@@ @ @ @ @ @ @ @@@@@ ------------------------------- @@@@@ @ @@@@@ @ @@@@@ -------------------------------
Complejidad temporal : O(n)
Espacio auxiliar : O(1)
Este artículo es una contribución de MAZHAR IMAM KHAN . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA