Final Soruları Yardımı

Merhaba arkadaşlar final soruları yaparken iki soruda kaldım yardım ede bilecek biri varsa çok memnun olurum.

Soru 4) Sözlük veri yapısı kullanarak 10 adet kullanıcı adı ve bu kullanıcılara ait 10 adet şifre
tanımlayınız. Yazacağınız Python programı kullanıcıya kullanıcı adı ve şifresini sormalı, eğer girilen
kullanıcı adı tanımladığınız sözlük içerisinde yoksa ekrana “Kullanıcı sistemde kayıtlı değil” mesajı
yazmalı; eğer kullanıcı adı tanımladığınız sözlükte var ise VE girilen şifre yanlışsa program ekrana “Yanlış
şifre girdiniz” yazmalı; son olarak girilen kullanıcı adı tanımladığınız sözlükte var ise VE girilen şifre de
sözlükte girilen kullanıcı adına aitse program ekrana “Sisteme başarılı bir şekilde giriş yaptınız” yazmalı
ve sonlanmalıdır.
--------------------------------------------
Soru 5) İsmi rakam_topla olan ve num isimli bir parametre alan bir fonksiyon tanımlayınız.
Fonksiyonunuz kendisine parametre olarak gönderilen herhangi bir sayıyı girdi olarak almalı, o sayının
rakamlarını toplamalı ve ekrana bu toplamı güzel ve açıklayıcı bir şekilde yazmalıdır. Verilen fonksiyonu
içeren programı Python dilinde yazınız. Programınızın doğru sonuçlar üretip üretmediğini,
fonksiyonunuzu değişik değerde parametrelerle çağırarak kendiniz de test ediniz

Merhaba, hoşgeldiniz.

Bu son iki problemi çözmek için neler yaptınız görebilir miyiz? Ayrıca kodlarınızı paylaşırken kod görünümünde paylaşmanızı tavsiye ediyorum. Paylaşacağınız kodlara kod görünümü kazandırmayı bilmiyorsanız, aşağıdaki bağlantıyı ziyaret edin lütfen.

hocam önceki soru buydu doğrumu yanlış mı diye buna da bakarsanız çok memnun olurum.

Sözlük veri yapısı kullanarak 10 adet kullanıcı adı ve bu kullanıcılara ait 10 adet şifre
tanımlayınız. Yazacağınız Python programı kullanıcıya kullanıcı adı ve şifresini sormalı, eğer girilen
kullanıcı adı tanımladığınız sözlük içerisinde yoksa ekrana “Kullanıcı sistemde kayıtlı değil” mesajı
yazmalı; eğer kullanıcı adı tanımladığınız sözlükte var ise VE girilen şifre yanlışsa program ekrana “Yanlış
şifre girdiniz” yazmalı; son olarak girilen kullanıcı adı tanımladığınız sözlükte var ise VE girilen şifre de
sözlükte girilen kullanıcı adına aitse program ekrana “Sisteme başarılı bir şekilde giriş yaptınız” yazmalı
ve sonlanmalıdır

Cevabı

urunAdedi=int(input("Satin Almak Istediginiz Urun Adedi: "))

if 1<=urunAdedi<10:
print("Birim Fiyatı =12")

elif 10<=urunAdedi<100:
print("Birim Fiyatı =10")
elif 100<=urunAdedi:
print("Birim Fiyatı =7")
else:
print("En Az 1 Urun Secmelisiniz!")

Ürün adedi ile alakalı soru yerine diğer soruyu paylaşmışsınız. Kodlarla soru birbirine uymuyor. Ayrıca kodları yazarken 4 karakterlik girintiye de dikkat etmelisiniz.

Hocam bu kabul gördü de ilk paylaştığım 4 ve 5. sorunun cevabı lazım

E o zaman bu kodları niye paylaştınız? Size 4.ve 5. soruyla alakalı -varsa- kodlarınızı paylaşmanızı söylemiştim.

ha yok hocam onla alakalı kod hiç yapamadım ben sandım önce ki soruları görmek istedin :slight_smile:

Kullanıcının adını ve şifresini yazabilmesi için kullanıcıyla etkileşime girecek fonksiyonu görünüşe göre biliyorsunuz. Peki sözlük veri tipinin ne olduğunu biliyor musunuz?

Hocam Birinci soru için elimde şöyle bi kod var ama bunda kullanıcı sayısını nasıl arttırırım onu göstere blirmisiniz.

    sys_username = "mustafasolmaz"
    sys_password = "123456"

    kullanici_adi = input("Kullanıcı Adını Giriniz: ")
    sifre = input("Şifre'yi Giriniz: ")

    if (kullanici_adi == sys_username) and (sifre != sys_password):
        print("Şifre yanlış..")

    elif (kullanici_adi != sys_username) and (sifre == sys_password):
        print("Kullanıcı adı yanlış..")

    elif (kullanici_adi != sys_username) and (sifre != sys_password):
        print("Kullanıcı adı ve şifre yanlış..")
    else:
        print("Giriş yapıldı!")
    ```

Size soruda sözlük kullanmanız söyleniyor. Yani şöyle bir veri:

sozluk = {
    "mustafasolmaz": "123456",
    "aligüven": "654321",
    "muratçelik": "000000"
}

Koşul durumlarında da şöyle değiştirirsiniz:

Örnek:

if kullanici_adi in sozluk and sifre != sozluk[kullanici_adi]:
    print("Yanlış şifre girdiniz.")
elif kullanici_adi not in sozluk:
    print("Kullanıcı sistemde kayıtlı değil.")
elif kullanici_adi in sozluk and sifre == sozluk[kullanici_adi]:
    print("Sisteme başarılı bir şekilde giriş yaptınız.")
1 Beğeni

Diğer soru için ne yaptınız?

print("""

KULLANICI GİRİŞ EKRANI

“”")

sozluk = {
“murat”: “birben”,
“mehmet”: “aslan”,
“muratçelik”: “000000”,
“sevgi”: “12323”,
“birisi”: “sifre1”,
“adnan”: “P@ssword1”,
“virgülnegıcık”: “1şey”,
“ali”: “ayşe000”,
“kelime”: “oyunu”,
“bu10”: “sifre10”

}

kullanici_adi = input("Kullanıcı Adını Giriniz: ")
sifre = input("Şifre’yi Giriniz: ")

if kullanici_adi in sozluk and sifre != sozluk[kullanici_adi]:
print(“Şifre yanlış.”)
elif kullanici_adi not in sozluk and sifre in sozluk.values():
print(“Kullanıcı adı yanlış.”)
elif kullanici_adi not in sozluk and sifre not in sozluk.values():
print(“Kullanıcı adı ve şifre yanlış.”)
else:
print(“Giriş yapıldı!”)

Bunu Bu şekilde sublim text de deneyemedim eklentileri yüklemedim herhalde ama son soruyu hiç yapamadım

Burada soruda istenilen çıktılar verilmiyor.

Nasıl yani, kodlarınızı çalıştıramıyor musunuz? En kötü komut satırından çalıştırıp çıktıları inceleyin.

Web tabanlı online ide ler var oradan test ediyorum

1 Beğeni

Örneğin bu

Kusura bakmayın hocam sizi bu saate kadar yordum ama bilgisayarım bile yok telefondan yapmaya çalışıyorum :slight_smile:

Bence pydroid indir eğer bilgisayarın yoksa

1 Beğeni

@murat_birben
Bakın @EkremDincel arkadaşımız çıktıların istenilen çıktılar olmadığını söylüyor.

Dolayısıyla koşul durumlarını aşağıdaki gibi değiştirmek lazım.

if kullanici_adi in sozluk and sifre != sozluk[kullanici_adi]:
    print("Yanlış şifre girdiniz.")
elif kullanici_adi not in sozluk:
    print("Kullanıcı sistemde kayıtlı değil.")
elif kullanici_adi in sozluk and sifre == sozluk[kullanici_adi]:
    print("Sisteme başarılı bir şekilde giriş yaptınız.")

Son sorunuzu da aşağıdaki gibi yapabilirsiniz.

def rakam_topla(num):
    toplam = 0
    for i in str(num):
        toplam += int(i)
    return "{} sayısının rakamlarının toplamı: {}".format(num, toplam)
1 Beğeni
print("""

KULLANICI GİRİŞ EKRANI


""")

sozluk = {
    "murat": "birben",
    "mehmet": "aslan",
    "muratçelik": "000000",
    "sevgi": "12323",
    "birisi": "sifre1",
    "adnan": "P@ssword1",
    "virgülnegıcık": "1şey",
    "ali": "ayşe000",
    "kelime": "oyunu",
    "bu10": "sifre10"


}


kullanici_adi = input("Kullanıcı Adını Giriniz: ")
sifre = input("Şifre'yi Giriniz: ")

if kullanici_adi in sozluk and sifre != sozluk[kullanici_adi]:
    print("Şifre yanlış.")
elif kullanici_adi not in sozluk and sifre in sozluk.values():
    print("Kullanıcı adı yanlış.")
elif kullanici_adi not in sozluk and sifre not in sozluk.values():
    print("Kullanıcı adı ve şifre yanlış.")
else:
    print("Giriş yapıldı!")

bu şekilde test ettim oldu ilk soruyu