[C] Üçgenin alanını hesaplama

Merhaba arkadaşlar,

Bu yazımda C programlama dili ile

  • Değişken tanımlamayı
  • Standart giriş çıkış birimlerini
  • Matematikteki 4 işlemi

kullanarak bir üçgenin alanını hesaplamayı anlatacağım.

Standart giriş çıkış işlemlerini kullanabilmek için ilk olarak stdio.h dosyasını eklemeliyiz.

Ardından sqrt gibi verilen sayının karekökünü alan işlem için math.h dosyasını eklemeliyiz.

Ve en sonda da açılan konsolda kullanıcıdan giriş bekleyecek olan getch fonksiyonu için conio.h dosyasını eklemeliyiz.


#include"stdio.h" 
#include"math.h" 
#include"conio.h"

Bu dosyaları ekledikten sonra ise fonksiyonun çalışacağı ana fonksiyon olan aşağıdaki fonksiyonu tanımlıyoruz. Çalışacak tüm kodlar bu fonksiyonun içine yazılmalıdır. Fonksiyonun sınırlarını ise süslü paranter belirler.


int main(void)
{
	return 0;
}

  • main : fonksiyonun ismidir.
  • void : main fonksiyonunun alacağı parametrenin olmayacağını belirtir.
  • int : main fonksiyonunun işlem sonrası döneceği değerin türüdür.
  • return : main metodunun döneceği değerin belirtildiği yerdir. Hiç bir koşul belirtilmez ise bu satırdan sonra yazılan kodlar çalışmayacaktır.

Bu metodun içine üçgenin her kenarının değerinin tutulacağı değişkenler tanımlanmalıdır. Ayrıca üç kenarın toplamının yarısının tutulacağı ve alanın tutulacağı değişkenler de tanımlanmalıdır. Üçgenin kenarlarına a,b,c denildiğini a,b,c kenarının toplamının yarısının değerinin tutulacağı değişkenin adının da u olduğunu, alan değerinin de d olarak tanımlandığını düşünelim. Tanımlamalar aşağıdaki gibi olacaktır.

	int a,b,c;
	float d,u;

Konsol açıldıktan sonra kullanıcıyı bilgilendirme amacıyla ekrana birşeyler yazmalıyız. Bunun için printf metodunu kullanabiliriz. Ayrıca “\n” ile metinin bir alt satırdan devam etmesini sağlayabilirsiniz.

	printf("Ucgenin alanini hesaplama programi.\n");
	printf("Lutfen 3 kenarin degerini de giriniz.\n");

Şimdi geldi kullanıcıdan a,b ve c değerlerini istemeye. scanf fonksiyonu ile kullanıcıdan değer girişi isteyebiliriz. Aşağıdaki kodlar ile kullanıcıdan a,b,c değerlerini isteyebiliriz.

	printf("a kenarini giriniz:");
	scanf("%d",&a);
	printf("b kenarini giriniz:");
	scanf("%d",&b);
	printf("c kenarini giriniz;");
	scanf("%d",&c);

Kullanıcıdan değerleri girdikten sonra alanı hesaplamamız gerekmektedir. Bu kısım bildiğimiz matematik formulünün aynısıdır. Tek fark karakök’ü almak için math.h dosyasında tanımlanmış sqrt fonksiyonunun kullanılmasıdır.

	u=(a+b+c)/2;
	d=sqrt(u*(u-a)*(u-b)*(u-c)); 

Aşağıdaki kod satırıyla hesaplanan üçgenin alanının değerini ekrana yazıyoruz. Float türünde bir değeri ekrana yazdırmak için %.2f kullanılır. Konsolun değeri göstermeden kapanmasını engellemek için ise getch fonksiyonu kullanılır. Kullanıcı bir giriş yapana kadar ekran bekleyecektir.

	printf("ucgenin alani : %.2f",d);
	getch();

Programın son hali ise aşağıdaki gibidir.

int main(void)
{
	int a,b,c;
	float d,u;
	printf("Ucgenin alanini hesaplama programi.\n");
	printf("Lutfen 3 kenarin degerini de giriniz.\n");
	printf("a kenarini giriniz:");
	scanf("%d",&a); // a kenarının degerini gir
	printf("b kenarini giriniz:");
	scanf("%d",&b); // b kenarının degerini gir
	printf("c kenarini giriniz;");
	scanf("%d",&c); // c kenerının degerini gir
	u=(a+b+c)/2; // 3 kenarı toplayıp 2 e böl ve degeri u ya ata
	d=sqrt(u*(u-a)*(u-b)*(u-c)); // ucgenin alanını hesaplama için genel formül
	printf("ucgenin alani : %.2f",d); //ucgenin alanını ekrana yaz
	getch(); // bir deger girilene kadar bekletir
	return 0;
}

Bu yazım da buraya kadar. Takıldığınız bir yer olursa çekinmeden sorabilirsiniz.
May the code be with you.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir