30 Mart 2019 Cumartesi

Algoritma Örnekleri ve Sorular - 4


16. Soru
Klavyeden girilen bir n değerini ikilik sayı sistemine çevirip ekrana yazacak algoritmayı geliştiriniz.
Çözüm: Bu algoritma bir takım özel değişkenler ve yöntemler kullanmadan tam olarak doğru bir şekilde istenilen görevi yerine getiremeyecektir. Bu amaçla biz dizi değişkenleri kullanabileceğimizi düşünerek bu algoritmayı oluşturmaya çalışacağız.






119.N OKU
120.INDIS=7
121.KALAN=N%2 

122.IKILI[INDIS]=KALAN 
123.N=N/2
124.INDIS=INDIS-1
125.EĞER N>1 İSE 3. ADIMA GİT 

126.IKILI[INDIS]=N 
127.INDIS=0
128.IKILI[INDIS] YAZ 
129.INDIS=INDIS+1
130.EĞER INDIS<=7 İSE 10. ADIMA GİT

131.SON


17. Soru
Klavyeden girilecek bir sayının tek mi çift mi olduğunu bulabilecek bir algoritma geliştiriniz. Bu algoritmayı geliştirirken başvurduğunuz varsayımları da yazınız.
Çözüm: Varsayım şu olmalıdır: Kalanı bulma operatörünün varlığı bir varsayımdır. Çünkü böyle bir operatör her programlama dilinde olmayabilir. 


132.SAYI OKU
133.EĞER SAYI%2=0 İSE “Tek” YAZ DEĞİLSE “Çift” YAZ


18. Soru
Klavyeden girilen iki sayı ve bir operatöre göre işlem yapıp sonucu ekrana yazan algoritmayı tasarlayınız.
Çözüm: 


134.A,B OKU
135.OP OKU
136.EĞER OP=”+” İSE C=A+B 

137.EĞER OP=”-“ İSE C=A-B 
138.EĞER OP=”*” İSE C=A*B 
139.EĞER OP=”/” İSE C=A/B
140.C YAZ 


19. Soru
Klavyeden girilen kesirli bir değeri a/b şeklinde rasyonel ifade olarak ekrana yazabilecek algoritmayı geliştiriniz.
Çözüm: Bu algoritmayı yazabilmek için küçük bir varsayımımız olacaktır. Bu varsayıma göre programlama dilinde örneğin adı TAM olan ve bir sayısal değerin tam kısmını bulan bir fonksiyona ihtiyaç vardır. 



141.X OKU
142.PAY=X
143.PAYDA=1
144.PAY=PAY*10
145.PAYDA=PAYDA*10
146.EĞER PAY<>TAM(PAY) İSE 4. ADIMA GİT 

147.EĞER PAY%2=0 VE PAYDA%2=0 İSE PAY=PAY/2 PAYDA=PAYDA/2 7.ADIMA GİT 


148.EĞER PAY%5=0 VE PAYDA%5=0 İSE PAY=PAY/5 PAYDA=PAYDA/5 
8.ADIMA GİT
149.PAY, PAYDA YAZ 


20. Soru
Klavyeden girilecek bir harfi büyük harfe çevirip ekrana yazan algoritmayı geliştiriniz.
Çözüm: Bu konu ile ilgili algoritma yazabilmek için ASCII kümesi dediğimiz bir küme hakkında bilgi sahibi olmamız gerekiyor. B küme bilgisayarınız tarafından kullanılan tüm karakterlerin saklandığı bir listedir. Normalde sayısal işlemler yapan bilgisayarınızın alfabetik karakterleri ifade edebilmesi için böyle bir lise-kümeye ihtiyaç duyulur. Bu kümenin elemanları bir çok kitapta liste olarak verilmiştir her bir liste üyesinin numarası 0 ile 255 arasındadır. Ve sayısal olarak 65 dediğimizde “A” harfini ve mesela 97 dediğimizde “a” harfini anlatmış oluruz. Bu küme incelendiğinde harfler simetrik olarak belli bir bölgede yer alırlar ve bir harfin büyüğü ile küçüğü arasında 32 gibi bir sayısal fark vardır. Büyük harfler 65 ile başlar ve daha küçük değerlere sahiptir. Küçük harfler ise 97 ile başlar. 


150.HARF OKU
151.EĞER HARF>=”a” VE HARF<=”z” İSE HARF=HARF-
32 
152.HARF YAZ. 


Bu kavramla ilgili olarak onlarca soru çözülebilir. Programlama kısmında bu konuyu temel alan bir çok örnek bulabileceksiniz. 

Hiç yorum yok:

Yorum Gönder