หน้าหลัก » ภาษาซี (C) » โค้ดภาษาซี วาดรูปหกเหลี่ยม โดยใช้ดอกจัน (*)

โค้ดภาษาซี วาดรูปหกเหลี่ยม โดยใช้ดอกจัน (*)




ตัวอย่างโค้ดภาษาซี ในการวาดรูปหกเหลี่ยม โดยรูปหกเหลี่ยมจะแสดง/ปรับเปลี่ยนขนาดรูปตามตัวเลขที่กรอกเข้าไปในโปรแกรม

ตัวอย่างโค้ด

/***************************************************
 * Author    : CS Developers
 * Author URI: https://www.comscidev.com
 * Facebook  : https://www.facebook.com/CSDevelopers
 ***************************************************/
 
#include<stdio.h>

int main()
{
	int hexagonSize;
	int r, s, i;
	
    printf("  Enter number for Hexagon size : ");
	scanf("%d", &hexagonSize);
   	
   	for(r=0; r<hexagonSize; r++)
   	{
   		for(s=0; s<=hexagonSize-r; s++){
   			printf(" ");
		}
		
		for(i=0; i<hexagonSize; i++){
			if(r==0){
				printf("* ");
			}
			else if(r>0 && hexagonSize == 2){
				printf("*");
				for(s=0; s<(hexagonSize*2-3)+r*2; s++){
					printf(" ");
				}				
			}
			else if(r>0){
				if(i==0 || i == hexagonSize-1){
					printf("*");	
				}else{
					for(s=0; s<(hexagonSize*2-3)+r*2; s++){
						printf(" ");
					}
					i=hexagonSize-2;	
				}
			}
		}
		printf("\n");
	}
	
	for(r=0; r<=hexagonSize; r++)
   	{
   		for(s=0; s<=r; s++){
   			printf(" ");
		}

		for(i=0; i<hexagonSize; i++){
			if(r==hexagonSize){
				printf("* ");
			}
			else if(r==0 && hexagonSize == 1){
				printf("* *");
			}
			else if(r>=0 && hexagonSize == 2){
				printf("*");
				for(s=0; s<(hexagonSize*4-3)-r*2; s++){
					printf(" ");
				}				
			}
			else if(r>=0){
				if(i==0 || i == hexagonSize-1){
					printf("*");	
				}else{
					for(s=0; s<(hexagonSize*4-3)-r*2; s++){
						printf(" ");
					}
					
					i=hexagonSize-2;
				}
			}
		}
		
		printf("\n");
	}
	
	return 0;
}

อธิบายเพิ่มเติม

  • ลูป for ที่ 1 สำหรับวาดรูปหกเหลี่ยมในส่วนข้างบน
  • ลูป for ที่ 2 สำหรับวาดรูปหกเหลี่ยมในส่วนข้างล่าง
  • รูปหกเหลี่ยมเกิดจากการนำโค้ดส่วนบนกับโค้ดส่วนล่างมาแสดงผลรวมกัน

ผลลัพธ์

โค้ดภาษาซี วาดรูปหกเหลี่ยม โดยใช้ดอกจัน (*)