Monday, April 22, 2024

string replace split slice


# string ifadelerde slice yapmıştık, split yapmıştık

# slice bir parça almamıza imkan veriyor idi
# split belirtilen karaktere göre parçalamaya ve bir liste oluşturmaya yarıyor idi

yazi ="Bu yazıyı kullanalım"

parca = yazi[4:] # 4 ten sona kadar
parca = yazi[4:9] # 4 ten itibaren 5 karakter, veya 4 ten 9 a kadar
parca = yazi[:6] # 0 dan 6 ya kadar
print(parca)

## ad ve soyad girişi alındığında adı ayrı soyadı ayrı olarak ekrana yazan program
isim = input("Adınızı Soyadınızı Girin: ")
# örneğin, RECEP ÖZEN
boslukIndex=isim.rfind(" ")

print(boslukIndex)
ad = isim[:boslukIndex]
print(ad)
soyad = isim[boslukIndex+1:]
print(soyad) 


# split görmüştük

yazi = "Bu ifadede geçen herşey yapaydır. Benim adım Kazım. Geleni Tutarım."

adet = yazi.count(".")
print(adet)

parcalar = yazi.split(".")
print(parcalar)

parcalar.remove("")
print(parcalar)

kelimeler = yazi.split(" ")
print(kelimeler)
print(len(kelimeler))


# Karakter değiştirme , place => kelimesi yer anlamına geliyor. replace ne olur, yeniden yerleştir, yerine yerleştir.,

# replace komutu, basitçe değiştir replace("eskiİfade","yeniİfade")

yazi = "12.04.2023 tarihinde okula gelinecek. 15.04.2023 tarihinde gidilecek"

yazi = yazi.replace("2023","2024")

print(yazi)

# Klavyeden girilen yazının içindeki a harflerini e harfi yapan ve yaziyi ekrana yazan programı yazınız.

yazi = input("Bir Yazı Girin: ")

yazi = yazi.replace("a","e").replace("A","E")
print(yazi)


# join işlemi
# split bir yazıyı parçalayarak liste döndürüyor idi

yazi = "Bu bir Yazı"

bolunmus = yazi.split(" ")

yazi = "-".join(bolunmus) # - string ifadesini al, bolunmuş listesindeki her bir elemanın arasına yerleştir.

print(yazi)


yazi = """
Küçük Denizkızı, mercan kayalıkları arasında saklanarak insan dünyasını izliyordu. Güneş ışınları dalgalar üzerinde pırıltılar saçarken, denizkızı uzaktaki gemiyi ve güvertede şarkı söyleyen kızı gördü. Kızın neşeli sesini duyan Denizkızı, o an insan olmak ve onunla şarkı söylemek istedi.

Bir yosun perisine yalvararak sihirli bir kolye istedi. Kolye sayesinde kuyruğu bacaklara dönüştü ve Denizkızı karaya çıktı. İlk adımları tökezlese de, kızın şarkısına doğru yürümeye devam etti. Kız onu görünce şaşırdı ama Denizkızı'nın güzelliğine hayran kaldı. Beraber şarkı söylemeye başladılar ve denizkızı, o anki mutluluğu kelimelerle ifade edemiyordu.

Ancak güneş batarken, sihrin etkisi geçmeye başladı. Denizkızı'nın bacakları tekrar kuyruğa dönüştü ve denize geri dönmek zorunda kaldı. Kız onu uğurladı ve vedalaşırken Denizkızı'nın mutluluğu hüzünle karıştı. Belki de bir gün tekrar şarkı söyleyeceklerdi, ama o an sadece denizkızı ve hayali kalmıştı.
"""


#1. yazinin içinde kaç tane kelime olduğunu ekrana yazınız.
# kelime adedi : 12

#2. yazinin içindeki noktalama işaretlerinin tamamını silerek, yazıyı ekrana yazın. (, . ')

#3. tüm harfleri büyüterek ekrana yazın

#4. tüm harfleri küçülterek ekrana yazın.

#5. denizkızı ifadesinin yazıda kaç tane olduğunu ekrana yazın. (sayarken dikkat edin, denizkızı diyoruz. büyük küçük harf önemsiz)
# Denizkızı ifadesi 3 adet bulunmaktadır.









Friday, April 19, 2024

Sunucu Kitap

 https://drive.google.com/file/d/1FuKptFxgC6BFHdI1Dvf5hhwV2GBiL77r/view?usp=sharing

Monday, April 15, 2024

string slice split strip

# diziler, listeler bunu biliyorsunuz, liste birden fazla değişken tutan değişken gibiydi.
# fonksiyonlar

# string metin işlemleri
# stringler yazılardır. yani karakterler tutar, harf, sayısal karakter, özel karakterler
liste=["ahmet","leyla","ayşe"]
kelime = "Bu bir yazı"

# string ifadeler, listeler gibi davranabilir
print(kelime[3])

#yukarıdaki bilgiye göre klavyeden girilen yazının harflerini alt alta ekrana yazan programı yazınız.
# bu soruyu çözmek için yazının uzunluğunu bilmem lazım.
# hemen hatırlayalım, listelerde listenin uzunluğunu nasıl buluyorduk
# len(liste), listenin uzunluğunu alıyorduk.
# o halde önce yukarıdaki kelimenin uzunluğunu yazdıralım.

# uzunluk = len(kelime)
# print(uzunluk)

# o halde soruyu çözelim

yazi = input("Bir yazı girin: ")
for i in range(len(yazi)):
    print(yazi[i])

# Klavyeden girilen yazının harflerini yanyana aralarında tire olacak şekilde ekrana yazan programı yazınız.
   

 


# Klavyeden girilen yazının harflerini yanyana aralarında tire olacak şekilde ekrana yazan programı yazınız.
   
yazi = input("Bir yazı girin: ")
for i in range(len(yazi)):
    print(yazi[i],end="-")

for harf in yazi:
    print(harf, end="-")

print()
# Klavyeden girilen yazinin tek olan indexlerindeki harfleri ekrana yazan programı yazınz.
for i in range(len(yazi)):
    if i%2==1:
        print(yazi[i])


# klavyeden girilen yazının son karakterini ekrana yazan program

# yazi = input("Bir yazı girin: ") # diyelim ki Recep girdim

# uzunluk = len(yazi) # recep ise uzunluk kaç olur, 5 olur.

# sonKarakter=yazi[uzunluk - 1] # son karakter olacaktır

# print(sonKarakter)

# sorunun asıl çözümü
yazi = input("Bir yazı girin: ")
print(yazi[len(yazi)-1])
# slice parçalama anlamına gelir, bir yazının içinden parça almaya yarar
# kullanımı
# Stringİfade[baslangicIndex : bitisIndex]

kelime="Bu bir yazı, uzun olsun diye biraz daha"

print(kelime)

# 5. karakterden itibaren ekrana yazalım. burada slice kullanacağız.
kelime = "Merhaba Dünya"
print(kelime[5:])
# yukarıdaki ifade 5. indexten itibaren(5 dahil) yazının sonuna alınmasını sağlar
# çünkü nerede biteceği yazılmamış


print(kelime[:5]) # bu ne yapar, 0 dan başlar çünkü başlangıç yazılmamış, 5 te biter(5 dahil değil)  

# 3. indexli karakterden, 7 indexli karaktere kadar yazdıralım
print(kelime[3:7])


# aşağıdaki değişkenin içinde T harfini arayarak, oradan itibaren i harfini arayıp,
# T harfinden, T harfinden sonraki i harfine kadar olan yazıyı ekrana yazan programı yazınız.

kelime = "Bilişim Teknolojileri Alanı"

# aramam gereken bir yazıda arama nasıl yapılır
# stringifade.find("aranacakifade") arananifade bulunur ise onun indexini, bulamaz ise -1 değerini döndürür.
# index = kelime.find("t") # küçük t olmadığı için -1 döndürür, yani bulamadı
# index = kelime.find("T") # T değeri yazıda var. 8 değerini döndüdür.

Tindex = kelime.find("T") # 8 değeri döndü

# Find komutu başlangıç ve bitişe sahiptir.
# kelime.find("aranacakifade",AramayaBaşlanacakIndex, AramanınBiteceğiIndex);
#AramayaBaşlanacakIndex yazılmaz ise, 0 olduğu düşünülür, başan başlar
# AramanınBiteceğiIndex yazılmaz ise, yazının son elemanının indexi varsayılır, yani sona kadar arar

# şimdi de T den sonraki i yi arayalım
iindex = kelime.find("i",Tindex)
# print(iindex)

print(kelime[Tindex:iindex+1])


# aşağıdaki değişkenin içinde T harfini arayarak, oradan itibaren i harfini arayıp,
# T harfinden, T harfinden sonraki i harfine kadar olan yazıyı ekrana yazan programı yazınız.

kelime = "Bilişim Teknolojileri Alanı"

print(kelime[kelime.find("T"): kelime.find("i", kelime.find("T"))])


# split, bir kelimeyi bölyeye yarar, aslında parçalamaya yarar.
# slice parçalamaz, parça alır.

# split nasıl parçalar ya da böler.
# size sorayım. Aşağıdaki cümlede kaç adet kelime vardır.
# Ahmet evden çıkıp okula gitti

# yukarıdaki ifadede boşluklara bakarak 5 kelime olduğunu söylemişsinizdir.
# split de bunu yapıyor.

# belirtilen karakterleri arayarak, gördüğü yerde oralardan parçalama yapar.
# yani sonuç olarak geriye bir liste döner.
# kelime = "Ahmet evden çıkıp okula gitti"

# sonuc = kelime.split(" ")
# print(sonuc)
# print(len(sonuc))

# Klavyeden girilen yazının kelime sayısını ekrana yazan programı yazınız.
# kelime = input("Bir yazı girin: ")
# kelime = kelime.strip() # strip bir kelimenin sağından solundan, temizlik yapar, temiz halini döndürür
# # parantez içine birşey yazılmaz ise boşlukları temizler, yazılır ise onları temizler.

# sonuc = kelime.split(" ")
# print(sonuc)
# print(len(sonuc))

# stripi bir ele alalım

# kelimenin harflerini yanyana aralarında - olacak şekilde ekrana yazan programı yazınız.
kelime = "bu bir kelime"
sonuc =""

for harf in kelime:
    sonuc = sonuc + harf+"-"

print(sonuc.strip("-")) # en sonlardaki - leri temizledik


kelime="Adana,01, Adıyaman,02, Afyonkarahisar,03, Ağrı,04, Aksaray,05, Amasya,06, Ankara,07, Antalya,08, Ardahan,72, Artvin,09, Aydın,10, Balıkesir,11, Bartın,74, Batman,73, Bayburt,78, Bilecik,12, Bingöl,13, Bitlis,14, Bolu,15, Burdur,16, Bursa,17, Çanakkale,18, Çankırı,19, Çorum,20, Düzce,81, Edirne,22, Elazığ,23, Erzincan,24, Erzurum,25, Eskişehir,26, Gaziantep,27, Giresun,28, Gümüşhane,29, Hakkâri,30, Hatay,31, Iğdır,79, Isparta,32, İstanbul,34, İzmir,35, Kahramanmaraş,46, Kars,36, Kastamonu,37, Kayseri,38, Kırklareli,39, Kırşehir,40, Kocaeli,41, Konya,42, Kütahya,43, Malatya,44, Manisa,45, Mardin,47, Mersin,33, Muğla,48, Muş,49, Nevşehir,50, Niğde,51, Ordu,52, Osmaniye,80, Rize,53, Sakarya,54, Samsun,55, Şanlıurfa,63, Siirt,56, Sinop,57, Sivas,58, Tekirdağ,59, Tokat,60, Trabzon,61, Tunceli,62, Uşak,64, Van,65, Yalova,77, Yozgat,66, Zonguldak,67"

# yukarıdaki yazıdan illerin adlarını tutan bir liste oluşturarak bu listeyi ekrana yazan programı yazınız.

result = kelime.split(",")

iller = []

for index in range(len(result)):
    if index % 2==0:
        iller.append(result[index])

print(iller)




























Thursday, March 28, 2024

9. Sınıf Programlama temelleri dersi sınav soruları hakkında bilgi

Sınav 9 sorudan oluşacaktır. Bilgisayarda uygulama olarak gerçekleştirilecektir.

Sınav Uygulama Adımları

·       Masaüstünde PT2d1y_OkulNo şeklinde bir klasör oluşturunuz.

·       Her sorunun cevabı ayrı bir dosyada gerçekleştirilmelidir

·       Değerlendirme yapılırken program çalışmıyor ise 0 puan olarak değerlendirilecektir.

Sınav süresi 60 dakika olacaktır.

Aşağıda sınavın kapsamı verilmiştir. 

temel seviye programlama -> temel seviye, giriş alma, ekrana yazma, değişken kullanımı

karar verme komutları -> if, if...else, if...elif..

döngüler -> for, while

listeler-> listeler, liste oluşturma, listeye veri ekleme, listenin her bir elemanına erişerek işlem yapma, listeyi ekrana yazma vb. konular 

functionlar -> function tanımlama, parametreli functionlar, değer döndüren functionlar vb. konular

9. Sınıf Mesleki gelişim sınav çalışma soruları

 Mesleki gelişim dersi 2. dönem 1. yazılı sınavı için çalışma sorularına erişmek için TIKLAYINIZ

Monday, March 18, 2024

9b 18.03.2024 functions tekrar ve denemeler


# çağrılana kadar herhangi bir şey yapmayan çağrıldığında çalışan kod bloklarıdır.
# keyfi olabilir, tekrar tekrar kullanılacak uzun veya kısa kod blokları var diyelim.
# her seferinde yazmak yerine bunları kullanırız.
# bir kütüphane oluşturmak için olabilir.

# print() # ekrana yaz alt satıra geç
# print("merhaba") # ekrana gönderilen parametreyi yazar, alt satıra geçer
# bu yukarıdaki ikisi bir iş yapıyor, geriye birşey döndürmüyor.

# input() # giriş alır,
# input("bir ad girin: ") # ekrana bir ad girin yazacak, giriş alacak
# ad = input("bir ad girin: ")# giriş aldık, ad değişkeninin içine attık

liste = []
liste.append(1)
liste.append(5)
liste.append(1)
liste.append(9)

print(liste)

elemansayisi = len(liste)
print(elemansayisi)


# bir fonksiyon nasıl tanımlanır

# define , tanımlamak anlamına gelir.

# def FunctionName():
#     Bu kısımda kodlar olacak

def EkranaMerhabaYaz():
    print("Merhaba")

# yukarıdaki function parametresiz olarak yazılmış bir functiondur
   
# parametre nedir, parantezin içine yazılan ifadeler
# functionun çağrıldığı yerden functiona değer göndermek için kullanılan ifadeler
def EkranaYaz(ifade):
    print(ifade)

# birden fazla parametre gönderilebilir.

def ToplamYaz(a,b):
    toplam = a+b
    print(toplam)

EkranaMerhabaYaz()
EkranaYaz("Merhaba Dünya")

ToplamYaz(4,6)
a = 6
c = 3
ToplamYaz(a,c)



# functionlar bir iş yaptıktan sonra illa da ekrana yazacak diye birşey yok

# functionlar geriye değer döndürebilirler, çağrıldıkları yere

import random


# sayi = random.randint(1,2)
# print(sayi)

def ZarAt():
    zar = random.randint(1,6)
    return zar # return geriye dön, anaprograma dön demek oluyor, yanına yazdığımız ifadeyi ana programa döndürür

a = ZarAt()
print(a)

print(ZarAt())




# Faktoriyel isimli bir function tanımlayarak, functiona gönderilen sayının faktoriyelini ekrana yazan
# programı yazınız.

# Faktoriyel nedir?
# bir sayının faktoriyeli, o sayıdan 1 e kadar olan tamsayıların birbiri ile çarpımlarının sonucudur

# 3! = 3 * 2 * 1 = 1 * 2 *3
# 5! = 5 * 4 * 3 * 2 * 1 = 1 * 2 * 3 * 4 * 5


def Faktoriyel(sayi):
    fak = 1
    for i in range(1,sayi+1):
        fak = fak * i
    return fak


print(Faktoriyel(5))
print(Faktoriyel(7))



# Geçtiğimiz derslerde sayısal loto yapmıştık
# orada üretilen sayıların birbirinden farklı olmaları gerekiyor idi.

import random

def KuponUret(): # 1,49 arasında 6 adet birbirinden farklı sayı
    kupon = []
    while len(kupon) < 6: # kupon eleman sayısı 6 olana kadar dön
        sayi = random.randint(1,49)
        if kupon.count(sayi) == 0:
            kupon.append(sayi)
    kupon.sort()
    return kupon

print(KuponUret())



# map işlemi
# Python'da map() fonksiyonu, bir iterable nesnenin her bir elemanına
# bir fonksiyonu uygular ve sonuçları yeni bir iterable nesne olarak döndürür.

# map(fonksiyon, iterable)

def ikiKati(sayi):
    return sayi * 2

liste = [1,3,5,9]

result = map(ikiKati,liste) # listenin her bir elemanı için iki katı hesaplanır, yeni bir liste oluşur.
# ancak yukarıdaki kodda sistem oluşan listenin liste olduğunu bilemez.
# dolayısı ile
print(result) # dediğimizde map ile oluşan listenin sadece adresini görebiliriz.

result = list(map(ikiKati,liste)) # map ile oluşan listenin liste olduğunu belirtiyoruz
# bu sayede artık bir listemiz olmuş oluyor.
print(result)


# listenin her bir elemanının karesini alarak yeni bir liste oluşturma

def kare(sayi):
    return sayi * sayi

liste = [1,5,4,7,9,2,11]

# soru şu, listenin elemanlarının karesinin listesini oluşturarak ekrana yazdırın

sonuc = list(map(kare,liste))

print(sonuc)



# filter denen birşey var.
# aynı map gibi çalışır.
# bu durumda tanımını yapalım
# filter ne demek, filtre, bir listenin içinden belirtilen şartlara göre ayırma işlemidir.

# map gibi kullanılır, yani
# filter, listenin her bir elemanı için belirtilen filtre functionuna göre yeni bir liste oluşturur
# filter için kullanacağınız functionun true ya da false döndürmesi gerekir.

liste = [1,3,5,2,6,7,12,63,24]

# yukarıdaki listedenin elemanlarından çift olanları ayrı bir listeye atınız.
# normalde nasıl yapıyorduk

# result = []
# for i in liste:
#     if i%2 ==0:
#         result.append(i)

# print(result)

def ciftMi(sayi):
    return sayi % 2 == 0

result = list(filter(ciftMi, liste))

print(result)


# diyebilirsiniz ki hocam tek satır için function yazıp duruyoruz
# bunun yerine function gibi çalışacak birşey yazabilir miyiz

# evet var, lambda

liste = [1,3,5,2,6,7,12,63,24]

# yukarıdaki listeden çift olan elemanlarından bir liste oluşturalım

result = list(filter(lambda x: x%2==0, liste))
# yukarıda lambda x: ifadesi ile şunu demiş olduk, her bir eleman için dönerken elemanı x olarak kabul et

print(result)

result = list(map(lambda x: x*3,liste))
print(result)



# Aşağıdaki listede bulunan isimlerden E veya e içerenleri ayrı bir listeye atan programı yazınız.

isimler = ["Ahmet", "Ayşe", "Fatma", "Mehmet", "Elif", "Ali", "Hatice", "Ömer",
           "Hakan", "Merve", "Selin", "Can", "Deniz", "Emre", "Eda",
           "Büşra", "Cansu", "Umut", "Ezgi", "Çağlar"]


result = list(filter(lambda x: x.count("e")+x.count("E") != 0,isimler))

print(result)













 

Sunday, March 10, 2024

9. SINIF 11.03.2024

# bir liste nasıl tanımlanıyor idi

#liste = ["Adana", "Sakarya","İstanbul"]

# dictionary ler ise key ve value dan oluşur. { } arasına yazılırlar

#dict = {"key":"value"}

liste = {"Adana":1 , "Sakarya":54, "İstanbul":34, "Kocaeli":41, "Rize":53, "Ankara":6}

print(liste["İstanbul"])

# key erişim için kullandığımız değerdir.
# sözlük kullanmışsınızdır, kelimeyi bulunca anlamını okuyorsunuz.

sozluk = {"Arı":"Küçük bal yapan iğnesi olan böcek", "Kitap":"içinde bilgilerin yazı ve resimlerle gösterildiği basılı materyal","rakam":"sayı yazmak için kullanılan sayısal işaretlerdir."}
print(sozluk["Arı"])

for i in sozluk:
    print(sozluk[i])




# fonksiyonlar, function
# tekrar tekrar kullanılacak işlemlerin tekrar tekrar yazılmaması için bir yerde toplanması sebebiyle veya
# düzenli görünsün diye veya keyiften kenarda yazılmış olan
# çağrılmadığı sürece çalışmayan kod bloklarıdır

# Tanımlanması
# def functionName():
#   ....
#   ....
#   ....

def Selamla(): # Selamla adında bir function tanımladık
    print("Merhaba Dünya")

Selamla() # bir fonksiyon adının yazılması ve parantez açıp kapatılması ile çağrılır.
Selamla()

print() # bakın zaten kullandığımız print de bir fonksiyon işi ekrana yaz alt satıra geç
ad = input() # bu da function , giriş alıyor alınan girişi geri döndürüyor.



# fonksiyonlar, function

# EkranaYaz adında bir function tanımlayanız. bu functionun görevi verilen ifadeyi ekrana yazmaktır. sonrasında
# alt satıra geçmesin. yani sadece ekrana yazsın

def EkranaYaz(kelime): # parantez içinde olan ifadelere parametre adı verilir. çağrılırken functiona veri göndermek için kullanılır.
    print(kelime,end="") # burada çok daha fazla işlem yapılıyor olabilir idi,

EkranaYaz("Merhaba") # kolayca yazdığımız functionu çağırıyoruz.
EkranaYaz("Dünya")
# fonksiyonlar, function

# EkranaYaz adında bir function tanımlayanız. bu functionun görevi verilen ifadeyi ekrana yazmaktır. sonrasında
# alt satıra geçmesin. yani sadece ekrana yazsın

# def EkranaYaz(kelime): # parantez içinde olan ifadelere parametre adı verilir. çağrılırken functiona veri göndermek için kullanılır.
#     print(kelime,end="") # burada çok daha fazla işlem yapılıyor olabilir idi,

# EkranaYaz("Merhaba") # kolayca yazdığımız functionu çağırıyoruz.
# EkranaYaz("Dünya")


# Soru
# Kare adında bir function tanımlayınız. bu functiona gönderilen sayının karesini ekrana yazan bir function olacaktır.

# klavyeden girilen sayının karesini bu functionu kullanarak ekrana yazdıran programı yazınız.

def kare(sayi):
    k = sayi * sayi
    print(k)

s = int(input("Bir sayı girin: "))
kare(s)


# functionlar sadece işlem yapmazlar, işlemleri yaptıktan sonra geriye birşey de döndürebilirler

# print() işi yapar
# input() işi yapar, geriye birşey döndürür

# örneğin: Topla adında bir function tanımlayalım. işi gönderilen 2 sayıyı toplamak olsun.
# işlem sonucunu çağrıldığı yere döndürsün.

def Topla(s1,s2):
    toplam = s1+s2
    return toplam # geriye döndür(çağrıldığı yere) belirtilen değeri, return komutunu gördüğünde function biter

a = int(input("Bir sayı girin"))
b = int(input("Bir sayı girin"))

sonuc = Topla(a,b)
print(sonuc)