2. İÇİNDEKİLER:
Problemin Tanımı………………………………………………………………………………3
Problemin Algoritması…………………………..………………………………………….4
Problemin Akış Şeması………………………………………………………………………6
Problemin C Kodu……………………………………………………………………………..8
Örnekler
a) Örnek 1…………………………………………………………………………………………….…...18
b) Örnek 2……………………………………………………………………………………….…………19
2
3. PROBLEMİN TANIMI
Çİܷҷѷ:
Teslim tarihi ve işlem süresi verilen N tane işi, seçimli
olarak ya en kısa işlem süresine göre ya da en yakın teslim tarihli
işe göre sıralayarak, seçilen sıralama türüne göre oluşan toplam
gecikmeyi hesaplayan bir C programı yazınız. Yapılması
gerekenler aşağıda sıralanmıştır:
1. Kullanıcıdan N sayısı istenecektir.
2. Bu N işe ait işlem süreleri kullanıcıdan istenecektir.
3. Her işe ait teslim süresi (1-5) arasında üretilen bir rastgele sayı ile
işlem süresinin çarpılması ile hesaplanacaktır. Örnek: işlem süresi
15 ise teslim süresi 15*4=60 olacaktır.
4. Kullanıcıya hangi kritere göre işlerin sıralanacağı sorulacaktır.
Verilen cevaba göre işler sıralanacaktır.
5. İşler sıralandıktan sonra toplam gecikme (işin bitiş zamanı-teslimat
süresi) hesaplanacaktır. Teslim tarihinden önce biten işlerde
gecikme olmadığını unutmayın.
3
4. PROBLEMİN ALGORİTMASI
Adım 1: Programa başla.
Adım 2: N sayısını iste.
Adım 3: N sayısını oku.
Adım 4: İşlem sürelerini iste.
Adım 5: İşlem sürelerini oku.
Adım 6: a[i] dizisine 1 ile 5 arasında rastgele sayı ata.
Adım 7: Teslim süresi=işlem süresi*a[i]
Adım 8: Teslim süresini yaz.
Adım 9: Teslim süresinin ilk haline x i işlem süresinin ilk halini
normal işlem süresine ata.
Adım 10: Seçime götür. Seçim 1 ise en kısa işlem süresine göre
sırala veya seçim 2 ise en kısa teslim süresine göre sırala. Değilse
adım 1’e dön
Adım 11: Sıralamayı yazdır.
4
5. Adım 12: Gecikme süresi=işlem süresi-normal işlem
Adım 13: Gecikme süresini yazdır.
Adım 14: Gecikme süresi >0 ise gecikmeleri toplat ve
yazdır. Değilse adım 15’e geç.
Adım 15: Bitir.
5