c bilgisayar programlama proje k...

40
C Bilgisayar Programlama Proje Kılavuzu Prof.Dr. ˙ I. ¨ O. Bildirici 2018-2019 ¨ gretim Yılı

Upload: others

Post on 11-Oct-2019

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

C Bilgisayar Programlama Proje Kılavuzu

Prof.Dr. I.O. Bildirici

2018-2019 Ogretim Yılı

Page 2: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

Dokuman Hakkında

Bu dokumanda KTU MDBF Harita Muhendisligi programında okutulmakta olan C Bilgisayar

Programlama dersinde hazırlanacak proje konuları yer almaktadır. Proje konularının bu dokumandan

secilmesi zorunlu degildir. Ogrenciler kendileri de benzer problemler onerebilirler.

Hazırlanacak projenin ozellikleri:

• Projeler bireysel olarak hazırlanır.

• Bir proje en az bir fonksiyon icermelidir.

– Fonksiyonlar tasınabilir olmalı, baska bir deyisle baska programlarda kullanılabilmelidir. Bu

nedenle global degiskenler kullanılmamalıdır.

• Baslık dosyası kullanılması zorunludur. Fonksiyon prototipleri (islev bildirimleri) bu dosyada yer

alır.

• Program girdileri bir dosyadan okumalı, cıktıları bir baska dosyaya yazmalıdır.

Ders web sayfasında ornek bir proje kodu yer almaktadır.

Proje is akısı:

• Altıncı haftadan itibaren proje konuları belirlenir.

• Arasınav haftası sonrası donemde proje asama asama kontrol edilir. Devam mecburiyeti

olmayanların da ders saatlerinde bulunarak projelerini kontrol ettirmeleri gerekir. Bir onceki yıl

proje yapıp basarısız olanlar yeniden proje yaparlar.

• Asamaları ders sorumlularınca izlenmemis projeler kabul edilmez.

• Yıl ici notu arasınav ve proje notunun ortalaması olarak belirlenir. Projede basarılı olamayanlar

proje notu olarak sıfır alırlar.

• Projeler ilan edilen tarihlerde ders saatinde teslim edilir ve degerlendirilir.

• Ders saati dısında proje kontrolu ve teslimi yapılmaz.

Proje dosyası icerigi:

1. Problemin tanımı

2. Ornek cozum

3. Hazırlanan programın akıs diyagramı

i

Page 3: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

4. Program kodu

5. Programın kullanım bilgileri

ii

Page 4: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

ICINDEKILER

1 Elipsoidal Cografi Koordinat Jeodezik Dik Koordinat Donusumu 1

2 Elipsoidal Cografi Koordinat Jeodezik Dik Koordinat Donusumu 2

3 Kuresel Cografi Koordinat Dik Koordinat Donusumu 3

4 Merkator Projeksiyonu 4

5 Soldner Projeksiyonu 5

6 Stereografik Projeksiyon 6

7 Ortografik Projeksiyon 7

8 Alan Koruyan Silindirik Projeksiyon 8

9 Sinusoidal Projeksiyon 9

10 Hammer Projeksiyonu 10

11 Aitoff Projeksiyonu 11

12 Kurede Pafta/Bolge Alanı 12

13 Global Jeodezik Dik Koordinatların Cografi Koordinatlardan Hesabı 14

14 Kurede Ortodrom 15

15 Kurede Loksodrom 16

16 Duzlemde Alan Hesabı 17

17 Rasgele Sayı Uygulaması 18

18 Yan Nokta Hesabı 19

iii

Page 5: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

19 Dik Ayak Dik Boy Hesabı 21

20 Meridyen Yay Uzunlugu 22

21 Uzayda Ucgen Alanı 24

22 Elips Yay Uzunlugu 26

23 Ikinci Derece Denklem Cozumu 27

24 Sıcaklık 28

25 Trigonometrik Fonksiyonlar 29

26 Kure Yuzeyi 30

27 Istatistik 31

28 Normal Dagılım: Numerik Integrasyon 32

29 Istatistik: Standartlastırılmıs Normal Dagılım 34

30 Istatistik: Korelasyon 35

iv

Page 6: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

1. Elipsoidal Cografi Koordinat Jeodezik Dik Koordinat Donusumu

1.1 Problemin Tanımı

Cografi koordinatlar ile yer merkezli jeodezik dik koordinatlar (kartezyen koordinatlar da denir) arasındaki

donusum asagıdaki bagıntılarla yapılır.

Verilenler: ϕ, λ, h

Istenenler: x, y, z

x = (N + h) cosϕ cosλ (1.1)

y = (N + h) cosϕ sinλ (1.2)

z = (N

1 + e′2+ h) sinϕ (1.3)

N =c√

1 + e′2 cos2 ϕ(1.4)

GRS80 elipsoiti icin sabit parametreler:

c = 6399593.6259m, e′2 = 0.006739496775

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

1.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller3d.txt dosyasını kullanınız. Bu dosyada ilk kolon il

merkezi plaka sayısı, diger kolonlar enlem boylam ve yuksekliktir.

1.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

1

Page 7: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

2. Elipsoidal Cografi Koordinat Jeodezik Dik Koordinat Donusumu

2.1 Problemin Tanımı

Cografi koordinatlar ile yer merkezli jeodezik dik koordinatlar (kartezyen koordinatlar da denir) arasındaki

donusum asagıdaki bagıntılarla yapılır.

Verilenler: ϕ, λ, h

Istenenler: x, y, z

x = (N + h) cosϕ cosλ (2.1)

y = (N + h) cosϕ sinλ (2.2)

z = (N(1− e2) + h) sinϕ (2.3)

N =a√

1− e2 sin2 ϕ(2.4)

GRS80 elipsoiti icin sabit parametreler:

a = 6378137m, e2 = 0.0066943800

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

2.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller3d.txt dosyasını kullanınız. Bu dosyada ilk kolon il

merkezi plaka sayısı, diger kolonlar enlem boylam ve yuksekliktir.

2.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

2

Page 8: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

3. Kuresel Cografi Koordinat Dik Koordinat Donusumu

3.1 Problemin Tanımı

Cografi koordinatlar ile yer merkezli jeodezik dik koordinatlar (kartezyen koordinatlar da denir) arasındaki

donusum asagıdaki bagıntılarla yapılır.

Verilenler: ϕ, λ

Istenenler: x, y, z

x = R cosϕ cosλ (3.1)

y = R cosϕ sinλ (3.2)

z = R sinϕ (3.3)

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

3.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır.

3.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

3

Page 9: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

4. Merkator Projeksiyonu

4.1 Problemin Tanımı

Kurenin silindire acı koruyan projeksiyonu olan Mercator Projeksiyonunda duzlem kartezyen koordinatlar

asagıdaki gibi hesaplanır.

Verilenler: ϕ, λ

Istenenler: x, y

x = Rλ (4.1)

y = R ln tan(π

4+ϕ

2) (4.2)

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

4.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır.

4.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

4

Page 10: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

5. Soldner Projeksiyonu

5.1 Problemin Tanımı

Kurenin silindire projeksiyonu olan Soldner Projeksiyonunda duzlem kartezyen koordinatlar asagıdaki

gibi hesaplanır.

Verilenler: ϕ, λ

Istenenler: x, y

x = R arctantanϕ

cos(λ− λ0)(5.1)

y = R arcsin(sin(λ− λ0) cosϕ) (5.2)

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

5.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır. λ0 = 34◦ alınız.

5.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

5

Page 11: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

6. Stereografik Projeksiyon

6.1 Problemin Tanımı

Kurenin duzleme projeksiyonu olan sterografik projeksiyonda duzlem kartezyen koordinatlar asagıdaki

gibi hesaplanır.

Verilenler: ϕ, λ

Istenenler: x, y

x = 2Rcosϕ0 sinϕ− sinϕ0 cosϕ cos(λ− λ0)

1 + sinϕ0 sinϕ+ cosϕ0 cosϕ cos(λ− λ0)(6.1)

y = 2Rcosϕ sin(λ− λ0)

1 + sinϕ0 sinϕ+ cosϕ0 cosϕ cos(λ− λ0)(6.2)

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

6.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır. ϕ0 = 38◦λ0 = 34◦ alınız.

6.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

6

Page 12: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

7. Ortografik Projeksiyon

7.1 Problemin Tanımı

Kurenin duzleme projeksiyonu olan ortografik projeksiyonda duzlem kartezyen koordinatlar asagıdaki

gibi hesaplanır.

Verilenler: ϕ, λ

Istenenler: x, y

x = R(cosϕ0 sinϕ− sinϕ0 cosϕ cos(λ− λ0)) (7.1)

y = R cosϕ sin(λ− λ0) (7.2)

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

7.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır. ϕ0 = 38◦λ0 = 34◦ alınız.

7.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

7

Page 13: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

8. Alan Koruyan Silindirik Projeksiyon

8.1 Problemin Tanımı

Cografi koordinatlardan duzlem dik koordinatların hesaplanması istenmektedir.

Verilenler: ϕ, λ

Istenenler: x, y

x = Rλ cosϕ0

y = Rsinϕ

cosϕ0

(8.1)

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

8.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır. ϕ0 = 38◦ alınız.

8.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

8

Page 14: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

9. Sinusoidal Projeksiyon

9.1 Problemin Tanımı

Cografi koordinatlardan duzlem dik koordinatların hesaplanması istenmektedir.

Verilenler: ϕ, λ

Istenenler: x, y

x = Rλ cosϕ

y = Rϕ(9.1)

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

9.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır. ϕ0 = 38◦ alınız.

9.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

9

Page 15: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

10. Hammer Projeksiyonu

10.1 Problemin Tanımı

Cografi koordinatlardan duzlem dik koordinatların hesaplanması istenmektedir.

Verilenler: ϕ, λ

Istenenler: x, y

x =2R√

2 cosϕ sin λ2√

1 + cosϕ cos λ2

y =R√

2 sinϕ√1 + cosϕ cos λ2

(10.1)

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

10.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır.

10.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

10

Page 16: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

11. Aitoff Projeksiyonu

11.1 Problemin Tanımı

Cografi koordinatlardan duzlem dik koordinatların hesaplanması istenmektedir.

Verilenler: ϕ, λ

Istenenler: x, y

x =2Rz

sin zcosϕ sin

λ

2

y =Rz

sin zsinϕ

z = arccos(

cosϕ cosλ

2

) (11.1)

ϕ = λ = 0 icin (11.1) bagıntılarında payda sıfır olacagından x, y tanımsız olur. Bu durumda x = y = 0

alınır.

Kure Yarıcapı:

R = 6371.km

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

11.2 Veriler

Ders web sayfası veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada ilk kolon il merkezi

adı, diger kolonlar enlem boylamdır.

11.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

11

Page 17: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

12. Kurede Pafta/Bolge Alanı

12.1 Problemin Tanımı

Kure yuzeyinde meridyen ve paralel daireler ile sınırlı bir bolgenin alanının ve kenar uzunluklarının

bulunması.

Verilenler: Bolge guneybatı koordinatları ve bolge/pafta boyutu (ϕ1, λ1,∆ϕ,∆λ)

Istenenler: km2 olarak alan, pafta kenar uzunlukları

F = R2(sinϕ2 − sinϕ1)∆λ (12.1)

Paralel daire uzunlugu (Kuzey ve Guney kenarlar)

∆L1 = R cosϕ1∆λ ∆L2 = R cosϕ2∆λ (12.2)

Meridyen yay uzunlugu (Dogu ve Batı kenarlar)

∆G = R∆ϕ (12.3)

Uyarı: Acı birimi radyan alınmalıdır.

R = 6371km

12.2 Veriler

Bir dosya acarak (ϕ1, λ1,∆ϕ,∆λ degerleri derece biriminde yazın. Bu dosyayı okuyarak hesaplanan alan

ve uzunlukları iki basamaklı olarak ikinci bir dosyaya yazdırın. Ornek bir dosya asagıdaki gibi olabilir.

37.00 28.50 1.00 1.50

37.00 30.00 1.00 1.50

38.00 28.50 1.00 1.50

38.00 30.00 1.00 1.50

39.00 28.50 1.00 1.50

39.00 30.00 1.00 1.50

40.00 28.50 1.00 1.50

40.00 30.00 1.00 1.50

Dosyadaki satır sayısı degisken olmalıdır.

12

Page 18: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

12.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

13

Page 19: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

13. Global Jeodezik Dik Koordinatların Cografi Koordinatlardan Hesabı

13.1 Problemin Tanımı

Elipsoit merkezli global jeodezik dik koordinatların cografi koordinatlardan hesabı

Verilenler: x, y, z

Istenenler: ϕ, λ, h

h =p

cosϕ−N

tanλ =y

x

p =√x2 + y2

tanβ0 =z√

1 + e′2

p

tanϕ =z + e′2b sin3 β0p− e2a cos3 β0

13.2 Veriler

Ders web sayfası veri klasorunden kartezyen.txt dosyası girdi olarak kullanın. Bu dosyadaki her bir satır

icin cografi koordinatları elde edip yeni bir dosyaya yazdırın. Dosya satır sayısı degisken olmalıdır. N

capraz egrilik yarıcapı olup enleme baglı olarak hesaplanır. Bagıntısını Bolum 1’den alabilirsiniz.

13.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

14

Page 20: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

14. Kurede Ortodrom

14.1 Problemin Tanımı

Kure yuzeyinde iki nokta arasındaki ortodrom (buyuk daire yayı) hesaplanması istenmektedir.

Verilenler: ϕ1, λ1, ϕ2, λ2, R = 6371.km

Istenenler: S

S = R arccos(sinϕ1 sinϕ2 + cosϕ1 cosϕ2 cos(λ2 − λ1))

14.2 Veriler

Ders web sayfası veri klasorunden ortodrom.txt dosyası girdi olarak kullanın. Bu dosyadaki her satırda

iki noktanın cografi koordinatları derece biriminde bulunmaktadır (ϕ1, λ1, ϕ2, λ2). Bu degerleri okuyarak

her satır icin uzaklık hesaplayıp ikinci bir dosyaya yazdırın.

14.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

15

Page 21: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

15. Kurede Loksodrom

15.1 Problemin Tanımı

Kure yuzeyinde iki nokta arasındaki loksodrom egrisinin azimutu ve uzunlugu istenmektedir.

Verilenler: ϕ1, λ1, ϕ2, λ2, R = 6371.km

Istenenler: α, `12

tanα =λ2 − λ1

ln tan(π4 + ϕ2

2 )− ln tan(π4 + ϕ1

2 )(15.1)

`12 = R(ϕ2 − ϕ1)√

1 + tan2 α (15.2)

Ters tanjant alınırken pay ve payda isaretleri onemli oldugundan atan2 fonksiyonu kullanılmalıdır.

Esitliklerdeki acılar radyan alınmalı ancak girdiler ve cıktılar derece olmalıdır.

15.2 Veriler

Ders web sayfası veri klasorunden ortodrom.txt dosyası girdi olarak kullanın. Bu dosyadaki her satırda

iki noktanın cografi koordinatları derece biriminde bulunmaktadır (ϕ1, λ1, ϕ2, λ2). Bu degerleri okuyarak

her satır icin α, ` hesaplayıp ikinci bir dosyaya yazdırın.

15.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

16

Page 22: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

16. Duzlemde Alan Hesabı

16.1 Problemin Tanımı

Duzlemde Kartezyen koordinatları verilen kapalı bir seklin alanı asagıdaki gibi hesaplanır.

Verilenler: x, y koordinatları

Istenenler: Alan

F =1

2

n∑i=1

xi(yi+1 − yi−1) (16.1)

16.2 Veriler

Ders web sayfası veri klasoru altında bulunan alan.txt dosyasını kullanınız. Bu dosyada ilk kolon nokta

adı diger kolonlar x ve y koordinatlarıdır. Dosyadaki tum noktaların olusturdugu seklin alanı hesaplanıp,

sonuc bir baska dosyaya yazılacaktır.

Koordinatlar iki ayrı dizide saklanabilir. Dizi boyutu sabit olacagından olası en buyuk nokta sayısına

gore dizi boyutu belirlenip, aktif nokta sayısı bir tamsayı degiskende tutulmalıdır.

16.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

17

Page 23: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

17. Rasgele Sayı Uygulaması

17.1 Problemin Tanımı

• Kullanıcı tarafından istenen sayıda 0-1 aralıgında rasgele reel sayı uretilip sıralanıp bir dosyaya

yazdırılacaktır.

• Sıralama icin bubble sort algoritması kullanılacaktır.

• Eleman sayısı ve yazdırılacak dosya adı komut satırından alınacaktır.

17.2 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

18

Page 24: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

18. Yan Nokta Hesabı

18.1 Problemin Tanımı

Bir olcu dogrusuna gore dik ayak ve dik boyları olculen noktaların koordinatlarının hesaplanması.

Verilenler: x1, y1, x2, y2 koordinatları si, hi

Istenenler: xi, yi

P1

P2

Pi

s i

hi

xi = x1 +x2 − x1√

(x2 − x1)2 + (y2 − y1)2s+

y2 − y1√(x2 − x1)2 + (y2 − y1)2

h

yi = y1 +y2 − y1√

(x2 − x1)2 + (y2 − y1)2s− x2 − x1√

(x2 − x1)2 + (y2 − y1)2h

18.2 Veriler

Bir metin editoru ile bir dosya olusturarak ilk iki satırına P1 ve P2 noktalarının koordinatlarını sonraki

satırlara s, h degerlerini yazın. Ikinci bir dosyaya hesaplanan nokta koordinatlarını yazın. Ornek olarak

asagıdaki degerleri kullanabilirsiniz.

Program s, h degerlerini dosya sonuna kadar okumalı, bu degerlerin sayısı degisken olmalıdır.

Programınızı farklı veriler ile de test edin.

Nokta x y

P1 4 563 061.13 392 950.77

P2 4 563 123.65 392 822.36

s h

17.03 -13.82

20.15 -10.71

43.25 -10.36

19

Page 25: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

18.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

20

Page 26: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

19. Dik Ayak Dik Boy Hesabı

19.1 Problemin Tanımı

Bir olcu dogrusuna bir noktadan inilen dik boyu ve ayagının hesaplanması

Verilenler: x1, y1, x2, y2, xi, yi koordinatları si, hi

Istenenler: si, hi

P1

P2

Pi

s i

hi

si =x2 − x1√

(x2 − x1)2 + (y2 − y1)2(xi − x1) +

y2 − y1√(x2 − x1)2 + (y2 − y1)2

(yi − y1)

hi =y2 − y1√

(x2 − x1)2 + (y2 − y1)2(xi − x1)− x2 − x1√

(x2 − x1)2 + (y2 − y1)2(yi − y1)

19.2 Veriler

Arastırma yaparak uygun nokta koordinatları belirleyin. Bir metin editoru ile bir dosya olusturarak

ilk iki satırına P1 ve P2 noktalarının koordinatlarını sonraki satırlara xi, yi degerlerini yazın. Ikinci bir

dosyaya hesaplanan si, hi degerlerini yazın.

19.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

21

Page 27: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

20. Meridyen Yay Uzunlugu

20.1 Problemin Tanımı

Elipsoit yuzeyinde ekvatordan verilen bir enleme kadar meridyen yay uzunlugu asagıdaki gibi hesaplanır.

Verilenler: ϕ

Istenenler: G

G = αϕ− β sin 2ϕ+ γ sin 4ϕ− δ sin 6ϕ+ ε sin 8ϕ+ . . . (20.1)

Katsayı Bessel Uluslararası (Hayford) Referans Sistem 1980

α 6 366 742.519 778 m 6 367 654.500 058 m 6 367 449.145 771 m

β 15 988.639 219 m 16 107.034 679 m 16 038.508 742 m

γ 16.729 955 m 16.976 211 m 16.832 613 m

δ 0.021 785 m 0.022 266 m 0.021 984 m

ε 0.000 031 m 0.000 032 m 0.000 031 m

Dikkat: Trigonometrik fonksiyonlar icin acılar radyan biriminde olmalıdır!

20.2 Veriler

Ders web sayfası yararlı dosyalarda veri klasoru altında bulunan iller.txt dosyasını kullanınız. Bu dosyada

ilk kolon il merkezi plaka sayısı, diger kolonlar enlem boylamdır.

Hesaplamayı yukarıdaki tablodan bir elipsoit secerek yapınız.

Her bir enlem degeri icin G hesaplayıp, yeni bir dosyaya yazdırınız. Dosya satır sayısı degisken olmalıdır.

20.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

22

Page 28: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

23

Page 29: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

21. Uzayda Ucgen Alanı

21.1 Problemin Tanımı

E3 uzayında kose koordinatları verilen ucgen alanı hesaplanacaktır.

Verilenler: P1, P2, P3 noktalarının koordinatları

Istenenler: F

Ucgenin bir kosesine gore iki vektor tanımlanarak, vektorlerin vektorel carpımının normu hesaplanır. Bu

deger vektorlerin olusturdugu paralelkenar alanıdır. Yarısı aranan ucgen alanıdır.

Vektorler:

a = (x2 − x1)e1 + (y2 − y1)e2 + (z2 − z1)e3

b = (x3 − x1)e1 + (y3 − y1)e2 + (z3 − z1)e3

a× b = (a2b3 − a3b2)e1 + (a3b1 − a1b3)e2 + (a1b2 − a2b1)e3

‖a× b‖ =√

(a2b3 − a3b2)2 + (a3b1 − a1b3)2 + (a1b2 − a2b1)2

(21.1)

21.2 Veriler

Ders web sayfası veri klasorunde bulunan nokta3b.txt dosyasını indirin. Bu dosyada bulunan her uc

satırın bir ucgen olusturdugunu kabul ederek hesaplama yapın. Sonucları ayrı bir dosyaya yazdırın.

21.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

24

Page 30: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

25

Page 31: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

22. Elips Yay Uzunlugu

22.1 Problemin Tanımı

Elips yay uzunlugu ortaya cıkan eliptik integral nedeniyle numerik olarak hesaplanabilir. Bu calısmada

elips yay uzunlugu kucuk dogru parcalarına (kirisler) bolunerek numerik integrasyonla hesaplanacaktır.

Verilenler: Elips parametrik denklemi parametreleri (t) ve elips yarı eksen uzunlukları (a, b)

Istenenler: Yay uzunlugu s(t)

Paramterik denklem:

f(t) = a cos te1 + b sin te2 (22.1)

Kiris uzunlugu:

‖∆fi‖ = ‖f(ti)− f(ti−1)‖ =√a2(cos ti − cos ti−1)2 + b2(sin ti − sin ti−1)2

s(t) =n∑i=0

‖∆fi‖ toplamı ile uzunluk bulunur.

∆t = ti − ti−1 = π50 alarak hesaplama yapılabilir.

22.2 Veriler

Uygun bir girdi dosyası olusturun. Verileri (a, b, t) buradan okuyun. Sonucları ayrı bir dosyaya yazdırın.

22.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

26

Page 32: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

23. Ikinci Derece Denklem Cozumu

23.1 Problemin Tanımı

Ikinci derece denklem koklerinin bulunması istenmektedir.

Verilenler: Kaysayılar (a, b, c)

Istenenler: Kokler x1, x2

ax2 + bx+ c = 0

x1,2 =−b±

√b2 − 4ac

2a

(23.1)

(b2 − 4ac) > 0 olup olmadıgı kontrol edilmelidir.

23.2 Veriler

Uygun bir girdi dosyası olusturun. Verileri (a, b, c) buradan okuyun. Sonucları ayrı bir dosyaya yazdırın.

23.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

27

Page 33: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

24. Sıcaklık

24.1 Problemin Tanımı

Sıcaklık birimleri arasında donusum.

Verilenler: ◦C

Istenenler: ◦F

Donusum bagıntıları: F ◦ = C◦ ∗ 1.8 + 32

C◦ = F◦−321.8

24.2 Veriler

Notepad ya da benzer bir editor programı ile bir dosya olusturun. Dosyaya alt alta 0-100 arası sayılar

yazın. Programınız bu dosyayı acmalı ve donusturulmus degerleri bir baska dosyaya yazmalıdır.

24.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

28

Page 34: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

25. Trigonometrik Fonksiyonlar

25.1 Problemin Tanımı

Trigonometrik fonksiyonların seri acılımları ile hesaplanması

Verilenler: α

Istenenler: sinα, cosα, tanα

sinx = x− x3

3!+x5

5!− x7

7!+ ... (25.1)

cosx = 1− x2

2!+x4

4!− x6

6!+ ... (25.2)

tanx = x+x3

3+

2x5

15+

17x7

315+ ... (25.3)

Dikkat: Seri terimlerinde acı birimi radyan alınmalıdır!

25.2 Veriler

Notepad ya da benzer bir editor programı ile bir dosya olusturun. Dosyaya alt alta 0-90 arası sayılar

yazın. Programınız bu dosyayı acmalı ve bu acılara karsılık sinus, kosinus ya da tanjant degerlerini bir

baska dosyaya yazmalıdır. Seri acılımını serinin terimi 10−10 dan kucuk oluncaya kadar devam ettirin.

25.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

29

Page 35: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

26. Kure Yuzeyi

26.1 Problemin Tanımı

Yarıcapı verilen bir kurenin alanının ve hacminin hesaplanması

Verilenler: R

Istenenler: A, V

V =4

3πR3 (26.1)

A = 4πR2 (26.2)

26.2 Veriler

Notepad ya da benzer bir editor programı ile bir dosya olusturun. Dosyaya alt alta 10-100 arası rastgele

reel sayılar yazın. Programınız bu dosyadaki degerleri kure yarıcapı olarak okuyup (her bir satır icin) bir

baska dosyaya yarıcap, alan ve hacim seklinde bir liste yazmalıdır. Hesaplama dosya sona erinceye kadar

devam ettirilmelidir. Dosyada satır sayısı degisken olmalıdır.

26.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

30

Page 36: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

27. Istatistik

27.1 Problemin Tanımı

Verilen bir sayı kumesinin ortalaması ve standart sapmasının bulunması

Verilenler: Bir grup reel sayı

Istenenler: µ, σ

µ =

n∑i=1

xin

(27.1)

σ =

√√√√ 1

n− 1

n∑i=1

(xi − µ)2 (27.2)

27.2 Veriler

Bir dosyada yer alan n adet degerin ortalaması ve standart sapması bulunup bir baska dosyaya

yazılacaktır. Bu amacla girdi olarak ders web sayfası yararlı dosyalar bolumunde reel.txt dosyasını

kullanın.

Dosyadaki eleman sayısı degisken alınmalıdır.

27.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

31

Page 37: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

28. Normal Dagılım: Numerik Integrasyon

28.1 Problemin Tanımı

Verilen bir standartlastırılmıs normal degisken z icin olasılık dagılım fonksiyonunun numerik olarak

hesaplanması

Verilenler: [-3,3] aralıgında degisen bir grup reel sayı

Istenenler: F (z) degerleri

Olasılık yogunluk fonksiyonu,

f(z) =1√2πe

−z2

2 (28.1)

ile verilir. Dagılım fonksiyonu ise,

F (z) =

∫ z

−∞f(z)dz (28.2)

olur. Burada integral elemanter fonksiyonlarla belirli olmadıgından dagılım fonksiyon degerleri sayısal

integrasyon ile hazırlanmıs tablolarla verilmektedir.

∫ ∞−∞

f(z)dz = 1 (28.3)

ve f(z) simetrik oldugundan, F (0) = 12 olur. Numerik integrasyon,

F (z) =1

2+ sign(z)

xn=|z|∑xi=0

f(xi) + f(xi+1)

2∆z, xi+1 = xi + ∆z (28.4)

olarak yeterince kucuk secilen bir ∆z ile gerceklestirilir. ∆z = 10−6 gibi bir deger ile tablo degerlerine

oldukca yakın sonuclara ulasılabilir.

28.2 Veriler

Bir dosya olusturarak [-3,3] aralıgında degisen reel sayılar yazın. Bu dosyayı acarak her bir z icin F (z)

degeri hesaplayıp ikinci bir dosyaya yazın.

Dosyadaki eleman sayısı degisken alınmalıdır.

28.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

32

Page 38: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

33

Page 39: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

29. Istatistik: Standartlastırılmıs Normal Dagılım

29.1 Problemin Tanımı

Verilen bir sayı kumesinin karsılık geldigi standartlastırılmıs normal dagılım degerlerinin bulunması

istenmektedir.

Verilenler: Bir grup reel sayı

Istenenler: z

µ =

n∑i=1

xin

(29.1)

σ =

√√√√ 1

n− 1

n∑i=1

(xi − µ)2 (29.2)

zi =xi − µσ

(29.3)

29.2 Veriler

Bir dosyada yer alan n adet degerin z degerleri bulunup bir baska dosyaya yazılacaktır. Bu amacla girdi

olarak ders web sayfası veri klasorunde bulunan reel.txt dosyasını kullanın.

Dosyadaki eleman sayısı degisken alınmalıdır.

29.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

34

Page 40: C Bilgisayar Programlama Proje K lavuzugalileo.selcuk.edu.tr/~bildirici/1205223/proje/proje_rehberi.pdfDokuman Hakk nda Bu dokumanda KTU MDBF Harita Muhendisli gi program nda okutulmakta

30. Istatistik: Korelasyon

30.1 Problemin Tanımı

Verilen iki sayı kumesinin ortalaması ve standart sapması ve aralarındaki korelasyonun belirlenmesi

Verilenler: Iki grup reel sayı

Istenenler: σXY , ρXY

µX =

n∑i=1

xin

µY =

n∑i=1

yin

σX =

√√√√ 1

n− 1

n∑i=1

(xi − µX)2

σY =

√√√√ 1

n− 1

n∑i=1

(yi − µY )2

σXY =

n∑i=1

(xi − µX)(yi − µY )

ρXY =σXYσXσY

(30.1)

30.2 Veriler

Bir dosyada iki kolon halinde bulunan x, y degerleri okunacak, hesaplanan µX , µY , σX , σY , σXY , ρXY

degerleri ikinci bir dosyaya yazılacaktır. Arastırma yapılarak uygun veriler bulunacaktır.

Dosyadaki eleman sayısı degisken alınmalıdır.

30.3 Program Ozellikleri

Hazırlanan programda en az bir fonksiyon olmalı, baslık dosyası kullanılmalı, fonksiyon bildirimleri bu

baslık dosyasında olmalı, verileri dosyadan okumalı, sonucları dosyaya yazmalıdır. Uyarılar:

• Konu ile ilgili kaynak arastırması yapın.

• Elle bir ornek cozum gerceklestirin.

• Kodlamadan once hangi fonksiyonlara ihtiyacınız oldugunu belirleyin.

• Okuyacagınız ve yazacagınız dosya yapısını ogrenin/belirleyin.

• Basit bir akıs diyagramı olusturun.

35