Uzun süredir aklımda bir programlama yarışması düzenlemek vardı. Bu güne kısmetmiş.
Karşınızda
C64 BASIC Kısa Kod Yarışması kodlama yarışması.
Kurallar1. Yarışmanın amacı sorulan soruya cevap veren en kısa programı yazmak.
2. Her hafta cuma akşamı yeni bir soru soru soracağım.
3. Cevap vermek için bir sonraki soruya kadar süreniz olacak.
4. Programlar C64 BASIC ile yazılacak. (POKE, PEEK vb. komutlar serbest.)
6. Komut kısaltmaları kullanılmayacak. (Okunabilirliği yüksek tutmak için)
5. Kaynak kodlarınız PETCAT uyumlu olacak. Kodları CBM Prg Studio'ya kopyalayarak çalıştıracağım.
6. İlk 4 soru 10 son 3 soru 20'şey puanlık olmak üzere toplamda 7 soru soracağım.
7. En kısa kodu yazan o haftaki puanın sahibi olacak.
ÖdülElimdeki fazla olan irqHack64 kartuşlardan birini ödül olarak vermeyi düşündüm.
Yalnız elimdeki kartuşların üzerindeki arduino yazılımı güncel değil. Ben güncelleyemiyorum. Kazanan arkadaşın bu yazılımı güncellemesi gerekiyor.
İlk soru: Tek mi çift mi?Sadece tam sayı girdiler için verilen sayının tek mi çift mi olduğunu bulan bir program yazın.
Program tek sayılar için 'TEK' çift sayılar için 'CIFT' yazmalı.
Örnekler
Girdi: 1; Çıktı: TEK
Girdi: 2; Çıktı: CIFT
İkinci soru: Eksik rakamı bulTüm basamakları birbirinden farklı olmak üzere, girilen 9 karakterlik bir sayıda hanki rakamın eksik olduğunu bulan bir program yazın.
Not: Girdi olarak sadece 9 haneli ve rakamları birbirinden farklı sayılar test edilecektir.
Örnekler:
Girdi: 123456789; Çıktı: 0
Girdi: 124560789; Çıktı: 3
Girdi: 098762345; Çıktı: 1
Üçüncü soru: n basamaklı rastgele sayı0<n<10 olmak üzere girilen rakam için: n basamaklı, her basamağı birbirinden farklı ve sıfırla başlamayan rastgele bir sayı üretin.
Programınızın n'in koşullara uymadığı kontrol etmesine gerek yok. Üretilen rastgele sayının dağılımı önemli değil. Yani RND() fonksiyonun ürettiği sayılar yeterli.
Dördüncü soru: İkinci ismi bulGirilen bir ismin içinden varsa ikinci ismi bulan bir program yazın.
Program ikinci isim yoksa boş değer döndürmeli.
Eğer ilk isimle soyad arasından birden fazla isim varsa hepsini döndürmeli.
Örnekler:
fatma sezen aksu : sezen
rabia demet sağıroğlu : demet
fatma yonca evcimik : yonca
haluk levent :
Not: "Pablo Diego José Francisco de Paula Juan Nepomuceno María de los Remedios Cipriano de la Santísima Trinidad Ruiz y Picasso" gibi uzun isimleri denemeyeceğim.