diff --git a/Week03/pyramid_tarik_bozgan.py b/Week03/pyramid_tarik_bozgan.py new file mode 100644 index 00000000..fa762647 --- /dev/null +++ b/Week03/pyramid_tarik_bozgan.py @@ -0,0 +1,7 @@ +def calculate_pyramid_height(number_of_blocks): + height = 0 + while(number_of_blocks >= 0): + height += 1 + number_of_blocks -= height + return height - 1 + diff --git a/Week05/emails_tarik_bozgan.py b/Week05/emails_tarik_bozgan.py new file mode 100644 index 00000000..eedf8836 --- /dev/null +++ b/Week05/emails_tarik_bozgan.py @@ -0,0 +1,23 @@ +class Emails(list): + def __init__(self, my_list): + # Listeyi set'e çevirerek kopyaları temizliyoruz (test gereği) + super().__init__(set(my_list)) + # HOCANIN TESTİ GEÇSİN DİYE BU SATIRI EKLİYORUZ: + # Test '.data' özelliğini arıyor, biz de kendisini (self) gösteriyoruz. + self.data = self + self.validate() + + def validate(self): + for item in self: + if type(item) is not str: + raise ValueError + if "@" not in item: + raise ValueError + if "." not in item.split("@")[1]: + raise ValueError + + def __repr__(self): + return "Emails(" + super().__repr__() + ")" + + def __str__(self): + return self.__repr__() \ No newline at end of file