Örnek soru ve cevapları
1-Verilen herhangi bir kelimenin palindrom olup olmadığını söyleyen fonksiyonu yazınız.
1 2 3 4 5 | def pali(kelime): if kelime == kelime[::-1]: return "palindrom" else: return "değil" |
2-Verilen herhangi bir metni verilen parametreye göre cümlelere veya kelimelere ayıran fonksiyonu yazınız.
1 2 3 4 5 6 7 | def ayirici(metin,hangisi=False): if hangisi==False: return metin.split(" ") elif hangisi==True: return metin.split(".") else: return "Lütfen kelime ise False, cümle ise True parametresi veriniz." |
3-Verilen herhangi bir listede asal olmayan sayıları en yakın asal sayıya dönüştüren ve listeyi güncelleyen kodu yazınız.(eşit uzaklık gibi durumlarda büyük olan sayı tercih edilecektir. 4 sayısı hem 3 e hem de 5 e dönüştürülebilir, bu durumda 5 tercih edilecektir.)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | def asalmi(sayi): for i in range(2,sayi-1,1): if sayi%i==0: return False return True def yuvarla(liste): for i in range(len(liste)): el=liste[i] if el<=2: el=2 else: while asalmi(el)==False: el=el+1 liste[i]=el return liste |
4-Eğer bir sayı 11 in katıysa veya bir sayının karesiyse bu sayıya ob sayı denir. Verilen iki sayı arasındaki sayılardan ob sayı olanları tespit edip bunları bir listeye ekleyerek sonunda listeyi döndüren fonksiyonu yazınız.
1 2 3 4 | from math import sqrt def obsayi(sayi): if sayi%11==0 or sqrt(sayi)==int(sqrt(math)): return "obsayi" |
5-Kullanıcıdan tek satırda öğrenci adı, vize notu, final notu alınacaktır. Bu şekilde 5 öğrenci için kullanıcıdan veri alıp sınıf not ortalamasını hesaplayınız(vize*0.4+final*0.6) ve her öğrencinin adını, vize notunu, final notunu, ortalamasını ve sınıf ortalamasına göre geçip geçmediğini ekrana yazdıran programı kodlayınız.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | def calis(): print("Lütfen Giriş Yapınız Örnek Giriş:\nRecep 23 54") veriler=[] for i in range(5): veri=input() veriler.append(veri.split(" ")) vize=0 final=0 for i in range(5): vize=vize+int(veriler[i][1]) final=final+int(veriler[i][2]) vize=vize/5 final=final/5 ortalama=(vize*0.4+final*0.6) for i in range(5): ort=int(veriler[i][1])*0.4+int(veriler[i][2])*0.6 if ort>ortalama: print(veriler[i][0],veriler[i][1],veriler[i][2],ort,"Geçti", sep=" ") else: print(veriler[i][0],veriler[i][1],veriler[i][2],ort,"Kaldı", sep=" ") |
6-Klavyeden bir veri alınız ve girilen veriyi hangiTur adında bir fonksiyona parametre olarak yollayın. Bu fonksiyonda verinin türünü tespit edip ekrana verinin türünü basınız.
1 2 3 4 5 6 7 8 9 | def hangiTur(veri): if type(veri) is str: print("string") elif type(veri) is int: print("integer") elif type(veri) is float: print("float") elif type(veri) is complex: print("karmaşık sayı") |
7-Aralık 2018 ayını baz alarak ayın kaçında hangi günde olduğumuzu söyleyen fonksiyonu yazınız.
1 2 3 | def aralik(veri): ay={0:"Cuma",1:"Cumartesi",2:"Pazar",3:"Pazartesi",4:"Salı",5:"Çarşamba",6:"Perşembe"} print(ay[veri%7]) |
8-Klavyeden 412 sayısı girilene kadar veri alıp alınan bu verileri tek bir satırda arasına boşluk koyarak yazdırınız.
1 2 3 4 5 6 7 8 | def surekli(): st="" while True: if input()=="412": break else: st=st+" "+input() print(st) |
9-Klavyeden girilen kelimenin uzunluğunu faktöriyel olarak hesaplayıp sonucu ekrana yazdıran kodu yazınız.
1 2 3 4 5 6 7 | veri=input() faktoriyel(len(veri)) def faktoriyel(uzunluk): if uzunluk==0: return 1 else: return uzunluk*faktoriyel(uzunluk-1) |
10-Eğitimlerde genellikle hafta hafta katılım sayılarında düşüşler yaşanmaktadır, 4 haftalık bir eğitim süresince her hafta için verilen katılım sayılarına göre(bu katılım sayıları tuple cinsinden verilecektir.) bir haftada ortalama kaç öğrencinin derse katıldığını ekrana yazdıran kodu yazınız. örnek katılım sayıları(53,47,44,36)
1 2 3 4 5 6 | def katilim(veri): ort=0 veri=list(veri) for i in range(len(veri)): ort=ort+veri[i] print(ort/len(veri)) |