yambu05

TÜRKİYE CUMHURİYETİ
DUMLUPINAR ÜNİVERSİTESİ
MÜHENDİSLİK FAKÜLTESİ
İNŞAAT MÜHENDİSLİĞİ BÖLÜMÜ
YAPI MÜHENDİSLİĞİNDE BİLGİSAYAR UYGULAMALARI
( Teknik Seçmeli Ders VII )
05
Yrd. Doç. Dr. Mustafa Halûk SARAÇOĞLU
İnşaat Mühendisliği Bölümü
2014 – 2015 GÜZ
ALGORİTMA
Programlama dilleri
C Programlama dili
C Dilinin genel yapısı
Derleyiciler
“A+B” programı
…
Örnek 1.
d
b
Donatı adedi, çapı ve kesit boyutları belirli
olan betonarme dikdörtgen bir kiriş kesitindeki
donatı alanını ve donatı oranını belirleyen
program.
Giriş bilgileri
Değişken adı
Donatı adedi
adet
Donatı çapı
cap
Kesit genişliği
b
Kesit yüksekliği
h
paspayı
pp
Çıkış bilgileri
Değişken adı
Toplam donatı alanı
As
Donatı oranı
ro
Örneğin algoritması şu şekilde oluşturulabilir:
1. Başla
2. Giriş bilgilerini (donatı adedi, donatı çapı, kesit genişliği, kesit yüksekliği,
paspayı) tanımla
3. Toplam donatı alanını hesapla
4. Yararlı yüksekliği hesapla
5. Donatı oranını hesapla
6. Çıkış bilgilerini (toplam donatı alanı, donatı oranı) yazdır
7. Bitiş
Örneğin akış diyagramı şu şekilde olabilir:
Başla
Giriş bilgileri
(donatı adedi, donatı çapı,
kesit genişliği, kesit yüksekliği, paspayı)
Toplam donatı alanı
Çıkış bilgileri
(Toplam donatı alanı,
donatı oranı)
Bitir
Yararlı yükseklik
Donatı oranı
C++ Programının yapısı:
# include <iostream>
using namepsace std;
int main()
{
...
...
...
...
return 0;
}
başlık dosyası
main (ana) fonksiyonu
fonksiyon başlangıcı
program gövdesi
fonksiyonun bitişi
#include <iostream>
#include <cmath>
using namepsace std;
satırları ile başlık dosyaları programa eklenir.
int main()
ile programın ana fonksiyonun tanımlanması yapılır. main()
fonksiyonu bir değer döndürmeyeceğinden program sonunda ‘
return 0; ’ ile sıfır değeri döndürülür.
{
ile ana fonksiyonun, diğer bir deyişle programın başladığı belirtilir.
Programın sonu da kapanan küme parantez “}” ile olmalıdır.
int adet;
double cap,b,h,As,ro,d,pp;
satırlarında değişkenlerin türleri ve adları tanımlanır.
int adet;
satırında tek bir değişken tanımlanmaktadır.
double cap,b,h,As,ro,d,pp;
satırında ise birden çok değişken aralarında “,” kullanılarak
tanımlanmaktadır.
cout << "Donati adedi:"; cin >> adet;
satırı ile ekrana “Donatı adedi:” yazılması sağlanır.
cout <<
ekrana yazma işlemini sağlar.
cin >>
klavyeden bir değer girilmesini ve bu değerin
değişkene atanmasını sağlar.
Benzer şekilde diğer değerler alınır:
cout << "Donati capi:"; cin >> cap;
cout << "Kesit genisligi:"; cin >> b;
cout << "Kesit yuksekligi:"; cin >> h;
cout << "Paspayi:"; cin >> pp;
As=adet*(M_PI*cap*cap/4.0);
satırında toplam donatı alanının değeri hesaplanır.
M_PI
ifadesi pi değerine karşılık gelmektedir.
Öncelikle parantez içerisindeki ifade (bir donatının alanı)
hesaplanacaktır.
Daha sonra adet
hesaplanacaktır.
ile
çarpılarak
toplam
donatı
alanı
d=h-pp;
ro=As/(b*d);
satırlarında yararlı yükseklik ve donatı oranı hesaplanır.
Yararlı yükseklik kesit yüksekliğinden paspayı çıkarılarak
bulunur.
Donatı oranı ise; hesaplanan As ve d değerlerinin yanında
girdi bilgisi olarak alınan b değeri kullanılarak belirlenir.
cout<<"\n As:"<<As;
cout<<"\n ro:"<<ro;
satırlarında cout ile ekrana önce yazı ile As: ve daha sonra
hesaplanan As değerinin yazılması sağlanır.
Benzer şekilde donatı oranı da ekrana yazdırılır.
return 0;
}
ile ana fonksiyonun, diğer bir deyişle programın bittiği belirtilir.
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int adet;
double cap,b,h,As,ro,d,pp;
program
gövdesi
başlık dosyası
main (ana) fonksiyonu
fonksiyon başlangıcı
cout << "Donati adedi:"; cin >> adet;
cout << "Donati capi:"; cin >> cap;
cout << "Kesit genisligi:"; cin >> b;
cout << "Kesit yuksekligi:"; cin >> h;
cout << "Paspayi:"; cin >> pp;
As=adet*(M_PI*cap*cap/4.0); //Toplam donati alani
/* d ile yararli yukseklik hesaplaniyor
ro ile donati orani belirleniyor */
d=h-pp;
ro=As/(b*d);
cout<<"\n As:"<<As;
cout<<"\n ro:"<<ro;
cout<<"\n";
return 0;
}
fonksiyonun bitişi
Örnek olarak;
4 adet Φ12 donatıya sahip,
250 x 600 kesitindeki bir kirişin
paspayı 40
ise:
As : 452.389
ro : 0.00323135
olmalı…