Advertisement
u53r

Disegnare un rettangolo vuoto, date altezza e larghezza

May 22nd, 2018
339
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.85 KB | None | 0 0
  1. /*
  2. 22 / 05 / 2018 by u53r
  3.  
  4. Date in input altezza e larghezza, scrivere un programma che le usi per disegnare un rettangolo, vuoto all'interno
  5.  
  6. Es.
  7. larghezza = 4
  8. altezza = 2
  9.  
  10. ****
  11. *  *
  12. ****
  13.  
  14. */
  15.  
  16. #include<stdio.h>
  17. int main(){
  18.     int lrg,altz,i,j; // lrg = larghezza del rettangolo , altz = altezza, i = variabile contatore per il primo "for", j = variabile contatore per il secondo "for"
  19.     printf("Inserisci larghezza --> ");
  20.     scanf("%d", &lrg); // Prendo in input la larghezza
  21.     printf("Inserisci altezza --> ");
  22.     scanf("%d", &altz); // Prendo in input l'altezza
  23.  
  24.     // Codice per stampare la prima riga in larghezza (aprire il rettangolo)
  25.     for(i = 0; i<lrg-1; i++){
  26.         printf("*"); // Stampo un numero di "*" (asterischi) pari alla larghezza-1
  27.     }
  28.     printf("*\n"); // L'ultimo asterisco lo stampo usando la sequenza di escape "\n", per fare in modo che si vada a capo
  29.     // Fine del codice per stampare la prima linea in larghezza
  30.  
  31.     // Codice per disegnare altezza e spazzi vuoti interni al rettangolo
  32.     for(i = 0; i<altz-2; i++){ // Ripeto il ciclo per un numero di volte pari all'altezza-2, questo perché le righe che "chiudono" il rettangolo sono disegnate da il primo e dall'ultimo for
  33.         printf("*"); // Disegno un asterisco
  34.         for(j = 0; j<lrg-2;j++){ // Stampo un numero di spazi vuoti pari alla larghezza-2, poiché il primo e l'ultimo asterisco della riga vengono disegnati rispettivamente ad inizio e fine ciclo
  35.             printf(" ");
  36.         }
  37.         printf("*\n"); // chiudo la riga con un asterisco e vado a capo
  38.     }
  39.     // Fine del codice per disegnare l'altezza
  40.  
  41.     // Codice per disegnare l'ultima linea in larghezza (chiudere il rettangolo)
  42.     for(i = 0; i<lrg-1; i++){ // Chiudo il rettangolo stampando una riga pari alla larghezza-1
  43.         printf("*");
  44.     }
  45.     printf("*\n"); // Chiudo la riga e vado a capo
  46.     // Fine del codice per disegnare una linea in larghezza
  47.     return 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement