Python

Python çalışma soruları ve cevapları (12 soru)

Python çalışma soruları ve cevapları (12 soru)

Merhaba değerli arkadaşlar  Sınavda çıkabilecek kolay ve orta seviyede python çalışma soruları sizler için çözümü ile birlikte paylaştık.

İlginizi Çekebilir: kolay python kod örneklerini

Python çalışma Soruları

1-) Kullanıcın girdiği 5 basamaklı bir sayının, basamaklarının toplamını ekrana yazdıran python kodlarını yazınız?

Cevap

#gencyazilimci
sayi=input("sayi gir: ")
lst=list(sayi)
i = 0
x = int(sayi)
if len(str(x)) == 5:
   #sayıyı basamaklarına ayırıp, ayrı ayrı değişkenlere atama yaparak her bir değişkeni topluyoruz
   bir = x % 10
   x = str(x)
   x = x[:-1]
   x = int(x)
   on = x % 10
   x = str(x)
   x = x[:-1]
   x = int(x)
   yuz = x % 10
   x = str(x)
   x = x[:-1]
   x = int(x)
   bin = x % 10
   x = str(x)
   x = x[:-1]
   x = int(x)
   onbin = x % 10
   print("toplam:",bir+on + yuz + bin+onbin)
else:
   print("Girdiginiz deger 5 basamakli degil")
Çıktı

2-) Klavyeden kullanıcının girdiği 3 adet integer türünde ki sayıyı büyükten küçüğe sıralayarak ortadaki sayı ile olan sayının arasındaki farkı ve yine ortadaki sayı ile küçük olan sayı ile arasındaki farkı ekrana yazdıran python kodlarını yazınız?

örneğin kullanıcının girdiği sayı; 45, 195, 22
örnek ekran çıktısı:
     büyük sayı ile ortadaki sayı arasındaki fark: 150
     küçük sayı ile ortadaki sayı arasındaki fark: 23

Cevap

#gencyazilimci
mylist=[]
while True:
   mylist.append(int(input("değer girniz:")))
   if (len(mylist) >= 3):
       break
mylist.sort()
mylist.reverse()
print(mylist)
print("büyük sayı ile ortadaki sayının farkı=",max(mylist) - mylist[1])
print("küçük sayı ile ortadaki sayının farkı=", mylist[1] - min(mylist))
Çıktı

3-) Kullanıcının girdiği iki birbirine eşit ise ekrana “5” sonucu yazdıracak, eşit değil ise 25 defa “eşit değil” sonucunu ekrana yazdıran python kodlarını yazınız? (while döngüsü ile yapılacaktır)

Cevap

#gencyazilimci
sayi1=input("ekle: ")
sayi2=input("ekle: ")
while sayi1 != sayi2:
   print("eşit değil \n"*20)
   break
else:
   print("5")
#-----------------ya da----------------------------
while (sayi1 == sayi2):
   print("5")
   break
else:
   for x in range(1,26):
       print("eşit değil - ", x)
Çıktı

4-) Rastgele 600 adet 0 ile 1000 arasında sayı oluşturup bir liste içerisine aktaran ve 100’den küçük olan sayıların adedini ekrana yazdıran python kodlarını yazınız?

Cevap

#gencyazilimci
import random
liste=[]
for i in range(600):
   ekle=random.randint(0, 1000)
   if (ekle < 100):
       liste.append(ekle)
adet=len(liste)
print("100 den küçük olan sayıların listesi: \n",liste)
print("100 den küçük olan {0} adet".format(adet))
Çıktı

5-) Kullanıcının girdiği iki sayı birbirine eşitse bu sayının 4’de göre modunu alıp ekrana yazdıran python kodlarını yazınız?

Cevap

#gencyazilimci
sayi1=int(input("sayı 1: "))
sayi2=int(input("sayı 2: "))
if (sayi1 == sayi2):
   print(sayi1 %4)
Çıktı

6-) Kullanıcının girdiği iki sayıyı toplayan ve toplam sonucu 40 ile 50 arasında ise ekrana “genç yazılımcı” yazdıran python kodlarını yazınız?

Cevap

#gencyazilimci
sayi1=int(input("sayo 1 :"))
sayi2=int(input("sayı 2 :" ))
top=sayi1+sayi2
for i in range(40,51):
   if (top == i):
       print("genç yazılımcı")
Çıktı

7-) Kullanıcının girdiği 4 basamaklı sayıyı basamaklarını ayırıp tek tek rakamlarını ve rakamlarının toplamını ekrana yazdıran python kodlarını yazınız?

Örnek: kullanıcı 3491 rakamı girmiş ise ekran çıktısı aşağıdaki gibi olacaktır.
3
4
9 
1
toplam: 17

Cevap

#gencyazilimci
sayi=input("sayi gir: ")
lst=list(sayi)
#her rakama ayrı ayrı şekilde alt alta yazdırıyoruz
for y in lst:
   print(y)
i = 0
x = int(sayi)
if len(str(x)) == 4:
   #sayıyı basamaklarına ayırıp, ayrı ayrı değişkenlere atama yaparak her bir değişkeni topluyoruz
   bir = x % 10
   x = str(x)
   x = x[:-1]
   x = int(x)
   on = x % 10
   x = str(x)
   x = x[:-1]
   x = int(x)
   yuz = x % 10
   x = str(x)
   x = x[:-1]
   x = int(x)
   bin = x % 10
   print("toplam:",bir+on + yuz + bin)
else:
   print("Girdiginiz deger 4 basamakli degil")
Çıktı

8 -) Kullanıcının girdiği sayının, 5’e göre kalanını  ekrana yazdıran python kodlarını yazınız?

Cevap

#gencyazilimci
sayi=int(input("sayı: "))
kalan=sayi % 5
print(kalan)
Çıktı

9-) Aşağıdaki görselin ekran çıktısını veren python kodlarını döngü kullanarak yazınız?

*****
****
***
**
*

Cevap

#gencyazilimci
satir=6
for i in range(satir):
   print(''*(3*i+1) + '*'*(satir - i - 1))

10-) Kullanıcının satın aldığı benzinin kaç TL tuttuğunu ve bunun ne kadarının vergi olduğunu hesaplayıp ekrana yazdıran programı python kodları ile yazınız. 

(kullanıcı satın aldığı benzini litre cinsinden girecek - Benzin litre fiyatı: 5,37 TL  - Vergi oranı %66)

Cevap

#gencyazilimci
litre=int(input("benzin: "))
hesap = litre*5.37
vergi = hesap*0.66
print("vergi:", vergi)
print("vergisiz benzinin fiyatı:", hesap)
print("toplam tutar:", hesap + vergi)
Çıktı

11-)Yukarıdaki denklemin sonucunu, kullanıcının girdiği x,y,c ve a değerlerine hesaplayıp sonucunu ekrana yazdıracak olan programın python kodları ile yazınız?

Cevap

#gencyazilimci
x=int(input(" X deger giriniz:"))
y=int(input(" Y deger giriniz:"))
c=int(input(" C degerini giriniz:"))
a=int(input(" A degerini giriniz:"))
sonuc=((x + y) * 2 / c) + (4 * a)
print("sonuç ",sonuc)
"""
işlemleri tek tek yapılışı
islem1= x + y
islem2= islem1 * 2
islem3= islem2 / c
islem4= 4 * a
islem5= islem3 + islem4
print("işlem 1 ", islem1)
print("işlem 2 ", islem2)
print("işlem 3 ", islem3)
print("işlem 4 ", islem4)
print("işlem 5 ", islem5)
"""
Çıktı

12-) Program çalıştırıldığında aşağıdaki gibi bir ekran çıktısı verecek:

Giriş Yapacağınız Sıcaklık Değerinin Birimini Seçiniz
   1 - Celsius
   2 - Fahrenheit
   3 - Kelvin
Kullanıcı giriş değer birimini seçip, değerini girecek.
Aşağıdaki gibi bir ekran çıktısı alacak:
Dönüştürmek istediğiniz birimi seçiniz:
   1 - Celsius
   2 - Fahrenheit
   3 - Kelvin
Eğer kullanıcı giriş yaptığı birime dönüştürmek isterse,
(Örneğin giriş birimini Celsius seçti, dönüştürmek istediği birimi de Celsius seçti)
O zaman aşağıdaki gibi bir hata mesajı verecek:
Hata - Giriş yaptığınız birim değerine dönüştürme yapılamaz.
Eğer kullanıcı giriş yaptığı birimden farklı bir birime dönüştürme yapmayı seçerse ekrana girilen sıcaklık biriminin dönüştürüldüğü sıcaklık değeri yazdırılacak.
Örneğin kullanıcı giriş yapacağı değeri Celsius seçti ve değeri 30 olarak girdi
Dönüştürülecek birimi de 2’yi seçip Fahrenheit birimine dönüştürmek istedi.
Sonuç ekrana 86 Fahrenheit olarak yazdırılır.

NOT: Dönüştürme formüllerini kendiniz araştırıp bulacaksınız.

Cevap

#gencyazilimci
"""
f=cx1.8+32
c=(f-32)/1.8
k=c+273.15
c=k-273.15
"""
print("Celsius = 1")
print("Fahrebheit = 2")
print("Kelvin = 3")
birim1=input("Giriş Yapacağınız Sıcaklık Biriminiz Seçiniz:")
deger=float(input("Sıcaklık Değeri Giriniz:"))
birim2=input("Dönüştürmek İstediğiniz Birimi Seçiniz:")
if birim1 == "1" : #celsius
   if birim2== "2" :
       print(deger,"celsius,",float(deger*1.8+32)," fahreit degerine eşittir")
   elif birim2 == "3":
       print(deger,"celsius,",deger+273.15," kelvin değeri:")
   else:
       print("HATA - Giriş yaptığınız birim değerine dönüştürme yapılamaz.")
elif birim1 == "2" : #fahrenheit
   if birim2=="1":
       print(deger,"fahrenheit, celsius değer:",(deger-32)/1.8)
   elif birim2 == "3":
       print(deger,"fahrenheit, kelvin değeri:", (deger-32)/1.8 + 273.15)
   else:
       print("HATA - Giriş yaptığınız birim değerine dönüştürme yapılamaz.")
elif birim1 == "3" : #kelvin
   if birim2=="1":
       print(deger,"kelvin, celsius  değeri:", deger-273.15)
   elif birim2 == "2":
       print(deger,"kelvin, fahrenheit değeri:",(deger-273.15)*1.8+32 )
   else:
       print("HATA - Giriş yaptığınız birim değerine dönüştürme yapılamaz.")
else:
   print("Lütfen 1 ile 3 arasında bir değer seçiniz.")
Çıktı

Arkadaşlar yazımızda hata veya önerileriniz olursa lütfen yorum yapın.

Unutmayın! Paylaşmak; kazanmanın en hızlı ve kolay yoludur. Bir sonraki blog’ta görüşmek dileğiyle esen kalın.

Bu makale yardımcı oldu mu?
EvetHayır

Paylaş

1 yorum

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir