From fb21ba22dad041eafbb17e52ecf770e5af8fa28d Mon Sep 17 00:00:00 2001 From: Kursad <122346253+KursaDSc@users.noreply.github.com> Date: Sun, 27 Apr 2025 08:15:02 +0200 Subject: [PATCH 1/7] =?UTF-8?q?Odev=20altyap=C4=B1s=C4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Project.md | 29 +++++++++++++++++++++++++++++ ali/main.py | 0 furkan/main.py | 0 kursad/main.py | 0 mehmet/main.py | 0 mustafa/main.py | 0 6 files changed, 29 insertions(+) create mode 100644 Project.md create mode 100644 ali/main.py create mode 100644 furkan/main.py create mode 100644 kursad/main.py create mode 100644 mehmet/main.py create mode 100644 mustafa/main.py diff --git a/Project.md b/Project.md new file mode 100644 index 0000000..d9c9a82 --- /dev/null +++ b/Project.md @@ -0,0 +1,29 @@ +# Task Manager Project + +## Project Description +In this assignment, we created a task manager application using Python. Users can add, complete, delete, and list tasks. + +## Functions Overview + +### add_task(task_name: str) -> None +- Adds a new task with the given name. +- Parameters: `task_name` (str) - Name of the task. +- Returns: None + +### complete_task(seq_num: int) -> None +- Marks a task as Completed. +- Parameters: `seq_num` (int) - Sequence number of the task. +- Returns: None + +### delete_task(seq_num: int) -> None +- Marks a task as Deleted. +- Parameters: `seq_num` (int) - Sequence number of the task. +- Returns: None + +### list_tasks() -> None +- Lists all tasks with their status. +- Returns: None + +### list_completed_tasks() -> None +- Lists only completed tasks. +- Returns: None diff --git a/ali/main.py b/ali/main.py new file mode 100644 index 0000000..e69de29 diff --git a/furkan/main.py b/furkan/main.py new file mode 100644 index 0000000..e69de29 diff --git a/kursad/main.py b/kursad/main.py new file mode 100644 index 0000000..e69de29 diff --git a/mehmet/main.py b/mehmet/main.py new file mode 100644 index 0000000..e69de29 diff --git a/mustafa/main.py b/mustafa/main.py new file mode 100644 index 0000000..e69de29 From a6fddee7a1622eb3b9650143dec3279ca996b093 Mon Sep 17 00:00:00 2001 From: Kursad <122346253+KursaDSc@users.noreply.github.com> Date: Mon, 28 Apr 2025 19:32:09 +0200 Subject: [PATCH 2/7] Kursad - main.py --- kursad/main.py | 129 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) diff --git a/kursad/main.py b/kursad/main.py index e69de29..7263f71 100644 --- a/kursad/main.py +++ b/kursad/main.py @@ -0,0 +1,129 @@ +import os + +clear_screen = lambda: print("\033[H\033[J") + +tasks = [] + +# Sayısal girişi gecerli olarak alır. +def get_input(message="Lütfen bir işlem numarası giriniz: "): + while True: + try: + return int(input(message)) + except ValueError: + print("lütfen gecerli bir deger giriniz") + +# Menu başlıgını yazdırır. +def menu_header(menu_name): + clear_screen() + global menu_width + menu_width = 30 + print(menu_width*'-') + print(f"\033[1;33m"+ menu_name.center(menu_width)+f"\033[0m") + print(menu_width*'-') + +# Ana menuyu yazdırır. +def show_main_menu(): + menu_header("Task Manager") + + print("1 - Add new task") + print("2 - Delete task") + print("3 - Complete task") + print("4 - List completed tasks") + print("5 - List all tasks") + print("6 - Exit") + print(menu_width*'-') + + selection = get_input() + clear_screen() + return selection + +def get_seq_number(): + existing_numbers = {task["seq_number"] for task in tasks} + i = 0 + while True: + if i not in existing_numbers: + return i + i += 1 + +def add_task(): + menu_header("Add Task") + + task = { + "seq_number": get_seq_number(), + "task_name": input("Görev: "), + "status":"Pending" + } + tasks.append(task) + print(tasks) + + print("Görev başarıyla eklendi.") + + +def delete_task(): + menu_header("Delete Task") + + seq_number = get_input("Silmek istediğiniz görev numarasını girin: ") + for task in tasks: + if task["seq_number"] == seq_number: + if task["status"] == "Deleted": + print("Bu görev zaten silinmiş.") + return + task["status"] = "Deleted" + task["seq_number"] = None + print("Görev başarıyla silindi (işaretlendi).") + return + print("Görev bulunamadı.") + +def complete_task(): + menu_header("Set Completed Tasks") + + seq_number = get_input("Tamamlamak istediğiniz görev numarasını girin: ") + for task in tasks: + if task["seq_number"] == seq_number: + if task["status"] == "Completed": + print("Bu görev zaten tamamlanmış.") + return + task["status"] = "Completed" + print("Görev başarıyla tamamlandı.") + return + print("Görev bulunamadı.") + +def list_completed_tasks(): + menu_header("Completed Tasks") + + completed_tasks = [task for task in tasks if task["status"] == "Completed"] + if not completed_tasks: + print("Tamamlanmış görev bulunamadı.") + else: + for task in completed_tasks: + print(f"{task['seq_number']}. {task['task_name']}") + input("\nDevam etmek için bir tuşa basın...") + +def list_tasks(): + menu_header("All Tasks\nS.No\tTask\tStatus") + + if not tasks: + print("Görev bulunamadı.") + + else: + sorted_tasks = sorted(tasks, key=lambda x: x['seq_number']) + for task in sorted_tasks: + print(f"{task['seq_number']}\t{task['task_name']}\t{task['status']}") + input("\nDevam etmek için bir tuşa basın...") + +while True: + selection = show_main_menu() + if selection == 1: + add_task() + elif selection == 2: + delete_task() + elif selection == 3: + complete_task() + elif selection == 4: + list_completed_tasks() + elif selection == 5: + list_tasks() + elif selection == 6: + break + else: + print("Geçersiz seçim. Lütfen tekrar deneyin.") \ No newline at end of file From 0d19a3735fcaad2ed275d9690b73c4c8ce99295f Mon Sep 17 00:00:00 2001 From: Kursad <122346253+KursaDSc@users.noreply.github.com> Date: Mon, 28 Apr 2025 19:51:18 +0200 Subject: [PATCH 3/7] Update main.py --- kursad/main.py | 46 ++++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/kursad/main.py b/kursad/main.py index 7263f71..589996a 100644 --- a/kursad/main.py +++ b/kursad/main.py @@ -1,7 +1,6 @@ import os clear_screen = lambda: print("\033[H\033[J") - tasks = [] # Sayısal girişi gecerli olarak alır. @@ -12,17 +11,21 @@ def get_input(message="Lütfen bir işlem numarası giriniz: "): except ValueError: print("lütfen gecerli bir deger giriniz") +def show_message(message): + print(message) + input("\nDevam etmek için bir tuşa basın...") + # Menu başlıgını yazdırır. -def menu_header(menu_name): +def menu_header(menu_name, menu_width=30): clear_screen() - global menu_width - menu_width = 30 + print(menu_width*'-') print(f"\033[1;33m"+ menu_name.center(menu_width)+f"\033[0m") print(menu_width*'-') # Ana menuyu yazdırır. def show_main_menu(): + menu_width = 30 menu_header("Task Manager") print("1 - Add new task") @@ -54,62 +57,61 @@ def add_task(): "status":"Pending" } tasks.append(task) - print(tasks) + show_message("Görev başarıyla eklendi.") - print("Görev başarıyla eklendi.") def delete_task(): - menu_header("Delete Task") - + menu_header("Delete Task",50) seq_number = get_input("Silmek istediğiniz görev numarasını girin: ") for task in tasks: if task["seq_number"] == seq_number: if task["status"] == "Deleted": - print("Bu görev zaten silinmiş.") + show_message("Bu görev zaten silinmiş.") return task["status"] = "Deleted" task["seq_number"] = None - print("Görev başarıyla silindi (işaretlendi).") + show_message("Görev başarıyla silindi.") return - print("Görev bulunamadı.") + show_message("Görev bulunamadı.") def complete_task(): - menu_header("Set Completed Tasks") - + menu_header("Complete Task",50) seq_number = get_input("Tamamlamak istediğiniz görev numarasını girin: ") for task in tasks: if task["seq_number"] == seq_number: if task["status"] == "Completed": - print("Bu görev zaten tamamlanmış.") + show_message("Bu görev zaten tamamlanmış.") return + task["status"] = "Completed" - print("Görev başarıyla tamamlandı.") + show_message("Görev başarıyla tamamlandı.") return - print("Görev bulunamadı.") + + show_message("Görev bulunamadı.") def list_completed_tasks(): - menu_header("Completed Tasks") + menu_header("Completed Tasks", 50) completed_tasks = [task for task in tasks if task["status"] == "Completed"] if not completed_tasks: - print("Tamamlanmış görev bulunamadı.") + show_message("Tamamlanmış görev bulunamadı.") else: for task in completed_tasks: print(f"{task['seq_number']}. {task['task_name']}") - input("\nDevam etmek için bir tuşa basın...") + input("\nDevam etmek için bir tuşa basın...") def list_tasks(): - menu_header("All Tasks\nS.No\tTask\tStatus") + menu_header("All Tasks\nS.No\tTask\tStatus", 30) if not tasks: - print("Görev bulunamadı.") + show_message("Görev bulunamadı.") else: sorted_tasks = sorted(tasks, key=lambda x: x['seq_number']) for task in sorted_tasks: print(f"{task['seq_number']}\t{task['task_name']}\t{task['status']}") - input("\nDevam etmek için bir tuşa basın...") + input("\nDevam etmek için bir tuşa basın...") while True: selection = show_main_menu() From 052e0a6d27ae168f035382a0a814776aaeecc440 Mon Sep 17 00:00:00 2001 From: FurkanBilal Date: Thu, 1 May 2025 19:26:10 +0200 Subject: [PATCH 4/7] Update main.py --- furkan/main.py | 91 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) diff --git a/furkan/main.py b/furkan/main.py index e69de29..16ac9b7 100644 --- a/furkan/main.py +++ b/furkan/main.py @@ -0,0 +1,91 @@ +#bazi yerlerinde yapay zekadan yardım alinmistir + + +gorevler = [] + +def gorev_ekle(gorev_adi): + sira_numarasi = sonraki_sira_numarasi_al() + gorev = { + "Sıra Numarası": sira_numarasi, + "Görev Adı": gorev_adi, + "Durum": "Bekliyor" + } + gorevler.append(gorev) + print(f"Görev '{gorev_adi}' {sira_numarasi} sıra numarası ile eklendi.") + +def gorev_tamamla(sira_numarasi): + gorev = gorev_bul(sira_numarasi) + if gorev: + gorev["Durum"] = "Tamamlandı" + print(f"Görev '{gorev['Görev Adı']}' tamamlandı.") + else: + print("Görev bulunamadı.") + +def gorev_sil(sira_numarasi): + gorev = gorev_bul(sira_numarasi) + if gorev: + gorev["Durum"] = "Silindi" + print(f"Görev '{gorev['Görev Adı']}' silindi.") + else: + print("Görev bulunamadı.") + +def tamamlanan_gorevleri_listele(): + tamamlanan_gorevler = [gorev for gorev in gorevler if gorev["Durum"] == "Tamamlandı"] + if tamamlanan_gorevler: + print("Tamamlanan Görevler:") + for gorev in tamamlanan_gorevler: + print(f"{gorev['Sıra Numarası']}: {gorev['Görev Adı']}") + else: + print("Tamamlanan görev bulunamadı.") + +def tum_gorevleri_listele(): + if gorevler: + print("Tüm Görevler:") + for gorev in sorted(gorevler, key=lambda x: x["Sıra Numarası"]): + print(f"{gorev['Sıra Numarası']}: {gorev['Görev Adı']} - {gorev['Durum']}") + else: + print("Görev bulunamadı.") + +def sonraki_sira_numarasi_al(): + kullanilan_numaralar = {gorev["Sıra Numarası"] for gorev in gorevler if gorev["Durum"] != "Silindi"} + return next(num for num in range(1, len(gorevler) + 2) if num not in kullanilan_numaralar) + +def gorev_bul(sira_numarasi): + for gorev in gorevler: + if gorev["Sıra Numarası"] == sira_numarasi: + return gorev + return None + +def menu(): + print("\nGörev Yönetimi") + print("1. Yeni görev ekle") + print("2. Görev tamamla") + print("3. Görev sil") + print("4. Tamamlanan görevleri listele") + print("5. Tüm görevleri listele") + print("6. Çıkış") + +def ana_program(): + while True: + menu() + secim = input("Seçiminizi yapın (1-6): ") + if secim == "1": + gorev_adi = input("Görev adını girin: ") + gorev_ekle(gorev_adi) + elif secim == "2": + sira_numarasi = int(input("Tamamlamak istediğiniz görevin sıra numarasını girin: ")) + gorev_tamamla(sira_numarasi) + elif secim == "3": + sira_numarasi = int(input("Silmek istediğiniz görevin sıra numarasını girin: ")) + gorev_sil(sira_numarasi) + elif secim == "4": + tamamlanan_gorevleri_listele() + elif secim == "5": + tum_gorevleri_listele() + elif secim == "6": + print("Görev Yönetiminden çıkılıyor. İyi günler!") + break + else: + print("Geçersiz seçim. Lütfen tekrar deneyin.") + +ana_program() From 453e3448c65e240b0ef36a696457e1818d29c3c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ali=20B=C3=BCy=C3=BCkg=C3=BCral?= Date: Fri, 2 May 2025 17:46:02 +0200 Subject: [PATCH 5/7] Ali_odev --- ali/main.py | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/ali/main.py b/ali/main.py index e69de29..171a7d4 100644 --- a/ali/main.py +++ b/ali/main.py @@ -0,0 +1,90 @@ +# Görev listesi +gorevler = [] + +# Sıra numarası takipçisi +siradaki_numara = 1 + +# Görev ekleme fonksiyonu +def gorev_ekle(gorev_adi): + global siradaki_numara + gorev = { + "sira": siradaki_numara, + "ad": gorev_adi, + "durum": "Bekliyor" + } + gorevler.append(gorev) + print(f"Görev eklendi: {siradaki_numara} - {gorev_adi}") + siradaki_numara += 1 + +# Görev tamamlama fonksiyonu +def gorev_tamamla(sira_no): + for gorev in gorevler: + if gorev["sira"] == sira_no and gorev["durum"] != "Silindi": + gorev["durum"] = "Tamamlandı" + print(f"Görev tamamlandı: {sira_no}") + return + print("Görev bulunamadı veya zaten silinmiş.") + +# Görev silme fonksiyonu +def gorev_sil(sira_no): + for gorev in gorevler: + if gorev["sira"] == sira_no and gorev["durum"] != "Silindi": + gorev["durum"] = "Silindi" + print(f"Görev silindi: {sira_no}") + return + print("Görev bulunamadı veya zaten silinmiş.") + +# Tamamlanan görevleri listeleme fonksiyonu +def tamamlanan_gorevleri_listele(): + tamamlananlar = list(filter(lambda g: g["durum"] == "Tamamlandı", gorevler)) + if not tamamlananlar: + print("Tamamlanan görev yok.") + else: + for g in sorted(tamamlananlar, key=lambda x: x["sira"]): + print(f'{g["sira"]}. {g["ad"]} - {g["durum"]}') + +# Tüm görevleri listeleme fonksiyonu +def tum_gorevleri_listele(): + if not gorevler: + print("Henüz hiç görev yok.") + else: + for g in sorted(gorevler, key=lambda x: x["sira"]): + print(f'{g["sira"]}. {g["ad"]} - {g["durum"]}') + +# Ana menü fonksiyonu +def ana_menu(): + while True: + print("\nGörev Listesi Uygulaması") + print("1. Görev Ekle") + print("2. Görev Tamamla") + print("3. Görev Sil") + print("4. Tamamlanan Görevleri Listele") + print("5. Tüm Görevleri Listele") + print("6. Çıkış") + print() + # Kullanıcıdan seçim alma + + print("--"*30) + secim = input("Seçiminizi yapın (1-6): ") + print() + # Seçim kontrolü + + if secim == "1": + gorev_adi = input("Görev adını girin: ") + gorev_ekle(gorev_adi) + elif secim == "2": + sira_no = int(input("Tamamlamak istediğiniz görev numarasını girin: ")) + gorev_tamamla(sira_no) + elif secim == "3": + sira_no = int(input("Silmek istediğiniz görev numarasını girin: ")) + gorev_sil(sira_no) + elif secim == "4": + tamamlanan_gorevleri_listele() + elif secim == "5": + tum_gorevleri_listele() + elif secim == "6": + print("Çıkılıyor...") + break + else: + print("Geçersiz seçim, lütfen tekrar deneyin.") +ana_menu() From 9a8e8843e25ff73700aa8fa1bc7c45599d97cbad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ali=20B=C3=BCy=C3=BCkg=C3=BCral?= Date: Fri, 2 May 2025 23:37:21 +0200 Subject: [PATCH 6/7] Update main.py --- ali/main.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ali/main.py b/ali/main.py index 171a7d4..a22bfb4 100644 --- a/ali/main.py +++ b/ali/main.py @@ -61,12 +61,12 @@ def ana_menu(): print("4. Tamamlanan Görevleri Listele") print("5. Tüm Görevleri Listele") print("6. Çıkış") - print() + # Kullanıcıdan seçim alma print("--"*30) secim = input("Seçiminizi yapın (1-6): ") - print() + # Seçim kontrolü if secim == "1": From 6eca0396a280c5ab52e505f0de04ff291a21e957 Mon Sep 17 00:00:00 2001 From: Kursad <122346253+KursaDSc@users.noreply.github.com> Date: Sat, 3 May 2025 00:09:30 +0200 Subject: [PATCH 7/7] Update main.py --- mustafa/main.py | 109 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 109 insertions(+) diff --git a/mustafa/main.py b/mustafa/main.py index e69de29..63283a0 100644 --- a/mustafa/main.py +++ b/mustafa/main.py @@ -0,0 +1,109 @@ +gorevler = [] + +def sira_numarasi_al(): + mevcut_numaralar = {gorev['sira_numarasi'] for gorev in gorevler if gorev['durum'] != "Silindi"} + i = 1 + while True: + if i not in mevcut_numaralar: + return i + i += 1 + +def yeni_gorev_ekle(): + gorev_adi = input("Yeni Görev Adını Giriniz: ") + sira_numarasi = sira_numarasi_al() + gorev = {"sira_numarasi": sira_numarasi, "gorev_adi": gorev_adi, "durum": "Bekleniyor"} + gorevler.append(gorev) + print(f"Görev Eklendi: {sira_numarasi} - {gorev_adi}") + +def butun_listeyi_goruntule(): + print("Bütün Görevler: ") + found = False + for gorev in sorted(gorevler, key=lambda x: x["sira_numarasi"]): + if gorev["durum"] != "Silindi": + print(f"{gorev['sira_numarasi']} - {gorev['gorev_adi']} - {gorev['durum']}") + found = True + if not found: + print("Listelenecek Görev Yok.") + +def tamamlanan_gorevleri_listele(): + print("Tamamlanan Görevler:") + found = False + for gorev in sorted(gorevler, key=lambda x: x["sira_numarasi"]): + if gorev["durum"] == "Tamamlandı": + print(f"{gorev['sira_numarasi']} - {gorev['gorev_adi']}") + found = True + if not found: + print("Tamamlanan Görev Yok.") + +def gorevi_tamamla(): + aktif_gorevler = [g for g in gorevler if g["durum"] != "Silindi"] + if not aktif_gorevler: + print("Tamamlanacak görev yok.") + return + print("Seçim Yapabilmeniz İçin Bütün Liste Getiriliyor.") + butun_listeyi_goruntule() + try: + sira = int(input("Tamamlanacak Görevin Sıra Numarasını Giriniz: ")) + for gorev in gorevler: + if gorev["sira_numarasi"] == sira and gorev["durum"] != "Silindi": + gorev["durum"] = "Tamamlandı" + print(f"Görev Tamamlandı: {gorev['sira_numarasi']} - {gorev['gorev_adi']}") + return + print("Görev Bulunamadı.") + except ValueError: + print("Geçersiz Giriş Yaptınız.") + +def gorevi_sil(): + aktif_gorevler = [g for g in gorevler if g["durum"] != "Silindi"] + if not aktif_gorevler: + print("Silinecek görev yok.") + return + print("Seçim Yapabilmeniz İçin Bütün Liste Getiriliyor.") + butun_listeyi_goruntule() + try: + sira = int(input("Silenecek Görevin Sıra Numarasını Giriniz: ")) + for gorev in gorevler: + if gorev["sira_numarasi"] == sira and gorev["durum"] != "Silindi": + gorev["durum"] = "Silindi" + print(f"Görev Silindi: {gorev['sira_numarasi']} - {gorev['gorev_adi']}") + return + print("Görev bulunamadı.") + except ValueError: + print("Geçersiz Giriş Yaptınız.") + +def menu(): + print("") + print("1. Yeni Görev Ekle") + print("2. Bütün Listeyi Görüntüle") + print("3. Tamamlanan GÖrevleri Listele") + print("4. Görevi Tamamla") + print("5. Görevi Sil") + print("6. Çıkış") + +def calistir(): + menu() + + while True: + secim = input("\n1-6 Arasında Seçim Yapınız:\n...") + if secim == "1": + yeni_gorev_ekle() + elif secim == "2": + butun_listeyi_goruntule() + elif secim == "3": + tamamlanan_gorevleri_listele() + elif secim == "4": + gorevi_tamamla() + elif secim == "5": + gorevi_sil() + elif secim == "6": + print("Çıkış Yapılıyor...") + break + else: + print("Geçersiz Seçim.") + + menu() + +if __name__=="__main__": + calistir() + +