9 Tanecik Algoritma Sorusu :)

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    MbK
    MbK's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    1.Kullanıcını gireceği bir tam sayının tam bölenlerini bulup ekrana yazdır.


    2.Kullanıcının önceden belirlenmiş şifreyi bilmesi gerekmektedir.3 Giriş hakkı vardır.Eğer 3 kez yalnış girerse hakkınız bitti yazısı çıkıp program sonlanır.Doğru cevabı werirse hoşgeldiniz çıkar.


    3.Kullanıcının girdiği sayıların toplamını weren programın algoritmasını çıkartınız.Kullanıcıya sayı girmeye dewam edip etmeyeceği sorulacak;İstediği sürece toplama dewam edecek.


    4.Kullanıcını gireceği 50 sayıdan kaçının karesinin 4 ün katı olduğunu bulan programın akış diagramını çiziniz


    5.Bilgisayarın Rastgele Tuttuğu bir sayıyı,büyük gir - küçük gir yönlendirmesiyle kullanıcıya bulduran programın algoritmasını çiziniz.


    6.Kullanıcının gireceği 1.sayının 2.sayıya bölümünü bulan pragramı bölme komutu kullanmadan akış diagramını çiziniz.


    7.100'e kadar olan sayıların kendi basamak değerlerinin toplamına tam bölünen sayıları ekrana yazdır.

    8.Kullanıcının girdiği mesajı tersten ekrana yazdıran programın akış diagramını çiziniz.(uzunlukbul,harfal)


    9.Kullanıcının girdiği bir mesajdaki sesli harf sayısını bulan programın akış diagramını çiziniz.


    Çok özel kadınlar tanıdım. Bana hayatı onlar tanıttılar...
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    rapidhacker550
    rapidhacker550's avatar
    Kayıt Tarihi: 29/Eylül/2008
    Erkek
    Matlab için mi?

    T.C Anayasası Madde 26 : Herkes, düşünce ve kanaatlerini söz, yazı, resim veya başka yollarla tek başına veya toplu olarak açıklama ve yayma hakkına sahiptir. Bu hürriyet resmi makamların müdahalesi olmaksızın haber veya fikir almak ya da vermek serbestliğini de kapsar. Bu fıkra hükmü, radyo, televizyon, sinema veya benzeri yollarla yapılan yayımların izin sistemine bağlanmasına engel değildir.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    MbK
    MbK's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek
    pc hocası vermiş ödew matlab değil ama :) programlama içinmiş :)

    Çok özel kadınlar tanıdım. Bana hayatı onlar tanıttılar...
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Musket
    Musket's avatar
    Üstün Hizmet Madalyası
    Kayıt Tarihi: 09/Haziran/2002
    Erkek

    Bunların hepsinini oturup yazcan mı?

    Uzun iş.

    Ama sorular kolay.

    Bir de flowchart'ı elle mi çizcen?
    (Kuralları var, paralel kenar input output için, dikdörtgen işlemler için vs... vs..)

    Onun için bir program falan vardır bir bakın internette. 

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    UCANTENEKE
    UCANTENEKE's avatar
    Kayıt Tarihi: 30/Ağustos/2005
    Erkek

    bir benden olsun

     o sayıya kadar bütün sayılar modunu aldırırsın sonra sıfır olanlar ekrana yazdır


    Bence bu dünya üzerinde seçilmiş ırk diye bi kavram varsa bu ırk kesin ruslardır.Onlar daha iyisini yapana kadar en iyisi onlar
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Fikret
    Fikret's avatar
    Kayıt Tarihi: 01/Ekim/2007
    Erkek
    Musket bunu yazdı:
    -----------------------------

    Bunların hepsinini oturup yazcan mı?

    Uzun iş.

    Ama sorular kolay.

    Bir de flowchart'ı elle mi çizcen?
    (Kuralları var, paralel kenar input output için, dikdörtgen işlemler için vs... vs..)

    Onun için bir program falan vardır bir bakın internette.

    -----------------------------

    akış diyagramları için bi program var flowchart adında. diyagramları tam hatırlayamasamda vb veya asp dilinde soruları yarın yazabilirim sana :D 


    screw you guys! i"m goin" hoooome!
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Musket
    Musket's avatar
    Üstün Hizmet Madalyası
    Kayıt Tarihi: 09/Haziran/2002
    Erkek

    Abi flowchart 

    Akış diagramının İngilizcesi ^^

     

    Yani bir program adı da olabilir tabii de... 

  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Musket
    Musket's avatar
    Üstün Hizmet Madalyası
    Kayıt Tarihi: 09/Haziran/2002
    Erkek
    pit10din bunu yazdı:
    -----------------------------

    1.Kullanıcını gireceği bir tam sayının tam bölenlerini bulup ekrana yazdır.


    2.Kullanıcının önceden belirlenmiş şifreyi bilmesi gerekmektedir.3 Giriş hakkı vardır.Eğer 3 kez yalnış girerse hakkınız bitti yazısı çıkıp program sonlanır.Doğru cevabı werirse hoşgeldiniz çıkar.


    3.Kullanıcının girdiği sayıların toplamını weren programın algoritmasını çıkartınız.Kullanıcıya sayı girmeye dewam edip etmeyeceği sorulacak;İstediği sürece toplama dewam edecek.


    4.Kullanıcını gireceği 50 sayıdan kaçının karesinin 4 ün katı olduğunu bulan programın akış diagramını çiziniz


    5.Bilgisayarın Rastgele Tuttuğu bir sayıyı,büyük gir - küçük gir yönlendirmesiyle kullanıcıya bulduran programın algoritmasını çiziniz.


    6.Kullanıcının gireceği 1.sayının 2.sayıya bölümünü bulan pragramı bölme komutu kullanmadan akış diagramını çiziniz.


    7.100'e kadar olan sayıların kendi basamak değerlerinin toplamına tam bölünen sayıları ekrana yazdır.

    8.Kullanıcının girdiği mesajı tersten ekrana yazdıran programın akış diagramını çiziniz.(uzunlukbul,harfal)


    9.Kullanıcının girdiği bir mesajdaki sesli harf sayısını bulan programın akış diagramını çiziniz.


    -----------------------------

     

    Flowchart falan çizmiycem ama mantıklarını açıklıyayım.
    (Yani ödevini tam olarak yapmış olmayacağım ama yardımcı olmuş olacağım)

     

    1-

    2 den sayıya kadar bir döngü kuracaksın

    Bu 2 den sayı ya kadar artan değişkene 'checker' diyelim mesela.

    sayı % checker == 0 olduğunda, sayıyı checker'a böleceksin

    (sayı /= checker) 

    Ve checker'ın o anlık değerini bir kenara kaydedeceksin (output adında bir string uygun olur bu iş için, ya da bir array)

    Sonra checker'ı 2 ye eşitleyip devam edeceksin
    (1 e her sayı bölünür diye 2 den başlıyorsun) 

     

     

     

    2-

    olması gereken şifreye pass diyelim

    Hatalı girdi sayısına da errorCount 

    if input == pass

    terminate

     

    else

    errorCount += 1 

     

    ###############

    Açıkla açıkla zor oluyor ya. ben en iyisi psuedo code olarak yazıyım

    ###############

     

    3-

    product = 0 

    boolean continue = true

    if(continue)

    read number 

    product += number

    read continue

    else

    print product

    terminate

     

     

    4-

    numberCount = 0

    proCount = 0 

    returnFlag 

    if(counter < 50)

    read sayi

         if(sayi % 4 == 0)

         proCount++

    counter++

    go to returnFlag

     

     

    else

    terminate

     

     

     

    5-

    sayi = Math.random()

    returnFlag 

    read guess 

    if(sayi < guess)

    print "Küçük gir"

    go to returnFlag

     

    else if (sayi > guess)

    print "Büyük gir"

    go to returnFlag

     

    if(sayi == guess)

    Print "Tamam buldun helal"

    terminate

     

     

    6-

    read sayi1

    read sayi2

     

    print sayi1 % sayi2

    terminate 

     

     

    7-

    (Valla bunu pseudo code olarak nasıl yazarız bende emin değilim ama bunu biraz daha kodumsu yapsam sen düzenlesen daha hayırlı olur)

    (Zira flowchartlarda while for falan gibi olaylar yok. if ve go to var sadece yani biraz karışıyor anlatabildim mi bilmiyorum)

     

    output = "" 

    number = 0

    returnFlag

    if(number < 100)

         if( ( (number % 10) + (number - (number / 10) ) == number )

         output += number + " "

         (Aslında burda string e int eklenmez ama flowchart pseudo code da falan eklenir :P)

     

    number++

    go to returnFlag 

     

     

    8-

    read input

    inputLength = input.uzunlukbul ( input.length() )

    output = "" 

    returnFlag

    inputLength--

    //Bunun amacı da şu ki, bilgisayarda adresler 0 dan başlar ama uzunluklar 1 den başlar.

    //Bu sorunun da en mantıklı çözümü uzunluğu bir azaltmak :)) 

     

    //harfal dediği metod da aslında charAt(int index) şeklinde bir metod 

    if( inputLength >= 0 )

    output += input.harfal(inputLength)

    inputLength--

     

    go to returnFlag

     

    else

    print output

    terminate 

     

     

    9-

    Valla bana sorarsan bu tuzak bir soru

    Bunu yapmamanızı beklediğine inanıyorum hocanın

    Ama senden değerli değil

    Aslında olayı ASCII table ı kullanarak çözmek daha anlamlı.

    Ama böyle bir şansımız falan yok tabiiki bu durumda ^^

    O yüzden basit bir if koycaz.

    Sesli harf kontrol eden if i tek tek yazmıycam (8 tane sesli harf var malum ^^)

    Ama şöyle yapıyorsun

    | or manasına geliyor.

    Yani if(input.harfal(değer) == a | input.harfal(değer) == e | ....)

    Şeklinde yapılıyor o kısım

    Sesli harf kontrol() yazdığım yeri bu ifle değiştirirsin :)

     

     

    read input

    inputLength = input.uzunlukbul

    inputLength--

    sesliHarfCount = 0 

     

    returnFlag

    if(inputLength >= 0)

        SesliHarfKontrol() --> Burayı o babalar gibi if ile değiştircen :D

            sesliHarfCount++

     

    inputLength--

    go to returnFlag

     

     

     

     

    #############

    Bu kadar. Bitti. 

Toplam Hit: 2637 Toplam Mesaj: 8