Figure Geometriche

Supponete di voler “disegnare”, in linguaggio C, un triangolo, una piramide o alcune forme riflesse…

In questa pagina troverete 3 esempi, dal più semplice al più complicato, che ve lo dimostreranno.

Diamo per scontato che l’utente inserisca un valore pari a 5. Le anteprime dei risultati saranno commentate all’interno del programma stesso.

1. Triangolo


*
**
***
****
*****

#include <stdio.h>

int main(void) {

int numero, i, j;

printf("Inserisci il valore desiderato. Ti stampero' un triangolo! ");
 scanf("%i", &numero);

printf("\n");

for(i = 0; i < numero; i++) { // Ciclo per le righe
 for(j = 0; j <= i; j++) { // Ciclo per il simbolo
 printf("*");
 }
 printf("\n");
 }

return 0;

}

2. Forma Riflessa


*
**
***
****
*****
****
***
**
*

#include <stdio.h>

int main(void) {

int numero, i, j;

printf("Inserisci il valore desiderato. Ti stampero' un'immagine! ");
 scanf("%i", &numero);

printf("\n");

for(i = 0; i < numero; i++) { // Ciclo per le righe
 for(j = 0; j <= i; j++) { // Ciclo per il simbolo
  printf("*");
 }
  printf("\n");
}
 for(i = numero - 1; i > 0; i--) { // Ciclo per le righe sotto
 for(j = 0; j < i; j++) { // Ripete finche' j e' minore del numero precedente
 printf("*");
 }
 printf("\n");
 }

return 0;

}

3. Piramide


    *
   ***
  *****
 *******
*********

#include <stdio.h>

int main(void) {

int numero, i, j;

printf("Inserisci il valore desiderato. Ti stampero' una piramide! ");
 scanf("%i", &numero);

printf("\n");

for(i = 1; i <= numero; i++) { // Ciclo per le righe
 for(j = 0; j <= numero - i; j++) { // Ciclo per gli spazi - Se digito 5, avro' 4 spazi.
 printf(" ");
 }
 for(j = (numero - i); j < (numero - i) + (2 * i - 1); j++) { // Ciclo per scrittura simbolo - Se digito 5, parto in primis dal 4° spazio finche' non raggiungo 5.
 printf("*");
 }
 printf("\n"); // Vado a capo.
 }

return 0;

}

4. Piramide vuota


     *
    * *
   *   *
  *     *
 * * * * *

#include <stdio.h>

int main(void) {
 	int h; // altezza del triangolo
 	int s; // spazi interni
 	int i; // indice di ciclo

 	printf("Altezza del triangolo (almeno 2): ");
 	scanf("%i", &h);
  s = 1;

  // stampa il vertice
  for (i = 1; i < h; i++)
  	printf(" ");
  printf("*\n");

  // stampa i lati obliqui
	for (h--; h > 1; h--, s += 2) {
 		for (i = 1; i < h; i++)
			printf(" ");
		printf("*");
		for (i = 1; i <= s; i++)
			printf(" ");
		printf("*\n");
	}

	// stampa la base
	// la larghezza della base e' s + 4
	for (i = 1; i <= (s + 4) / 2; i++)
		printf("* ");
	printf("\n");

	return 0;

}

Per ogni dubbio, non esitate a commentare!



  1. No trackbacks yet.

Lascia una risposta

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Page not found - Sweet Captcha
Error 404

It look like the page you're looking for doesn't exist, sorry

Search stories by typing keyword and hit enter to begin searching.