#include <stdio.h>
#include <string.h>
#include <stdlib.h>
char isimler[30]; // Malzeme isimleri
int sayaclar[50]; // Malzeme adetleri
int son_kullanma_tarihi[50]; // Son kullanma tarihleri
int malzeme_sayac ; // Malzeme sayısı
// Malzeme ekleme fonksiyonu
void malzeme_ekle() {
char isim; // Malzeme ismi
int sayac, sonkullanmatarihi;
printf("Malzeme Adi: ");
scanf(" %s", &isim); // Malzeme ismini al
printf("Adet: ");
scanf("%d", &sayac); // Adet bilgisini al
printf("Son Kullanma Tarihi: ");
scanf("%d", &sonkullanmatarihi);
int i; // Son kullanma tarihini al
// Daha önce eklenmiş bir malzeme varsa, adet bilgisini arttır
for ( i = 0; i < malzeme_sayac; i++) {
if (isimler[i] == isim) {
sayaclar[i] += sayac; // Adet arttırılır
if (son_kullanma_tarihi[i] < sonkullanmatarihi) {
son_kullanma_tarihi[i] = sonkullanmatarihi; // Son kullanma tarihi güncellenir
}
printf("Malzeme sayisi degistirildi.\n");
return;
}
}
// Yeni malzeme ekleme
isimler[malzeme_sayac] = isim; // Yeni malzeme ismini kaydederiz
sayaclar[malzeme_sayac] = sayac; // Adet eklenir
son_kullanma_tarihi[malzeme_sayac] = sonkullanmatarihi; // Son kullanma tarihi eklenir
malzeme_sayac++; // Malzeme sayacını arttırır
printf("Malzeme eklendi.\n");
}
// Malzeme çıkarma fonksiyonu
void malzeme_cikar() {
char isim; // Malzeme ismini tutacak değişken
int sayac;
printf("Cikarilacak Malzeme: ");
scanf(" %s", &isim); // Malzeme ismini al
printf("Cikarilacak Malzeme Sayisi: ");
scanf("%d", &sayac);
int i; // Çıkarılacak adet
for ( i = 0; i < malzeme_sayac; i++) {
if (isimler[i] == isim) {
if (sayaclar[i] >= sayac) {
sayaclar[i] -= sayac; // Adet çıkarılır
printf("Malzeme sayisi degistirildi.\n");
int i,j;
if (sayaclar[i] == 0) {
// Malzeme bitmişse, onu listeden çıkar
for ( j = i; j < malzeme_sayac - 1; j++) {
isimler[j] = isimler[j + 1]; // İsim kaydırılır
sayaclar[j] = sayaclar[j + 1]; // Adet kaydırılır
son_kullanma_tarihi[j] = son_kullanma_tarihi[j + 1]; // Son kullanma tarihi kaydırılır
}
malzeme_sayac--; // Malzeme sayacı azaltılır
}
} else {
printf("Malzeme yeterli degil.\n");
}
return;
}
}
printf("Malzeme bulunamadi.\n");
}
// Malzemeleri listeleme fonksiyonu
void malzemeleri_listele() {
int i;
for ( i = 0; i < malzeme_sayac; i++) {
printf("Malzeme İsmi: %s, Adedi: %d, Son Kullanma Tarihi: %d\n",
isimler[i], sayaclar[i], son_kullanma_tarihi[i]);
}
}
int main() {
int sec;
do {
printf("*MALZEME YONETIMI*\n");
printf("1. Malzeme Ekle\n2. Malzeme Cikar\n3. Malzeme Listele\n4. Cikis\nSeciminizi yapiniz (1-4): ");
scanf("%d", &sec);
switch (sec) {
case 1:
malzeme_ekle();
break;
case 2:
malzeme_cikar();
break;
case 3:
malzemeleri_listele();
break;
case 4:
printf("Cikis\n");
break;
default:
printf("Gecersiz secim.\n");
}
} while (sec != 4);
return 0;
}
Her tarafta yorum satırı görünce artık direkt ai tarafından yazıldığı bariz belli oluyor.
isimler[30] dizisinde problem var. Burada 2 boyutlu array oluşturmak lazım.
Ayrıca verileri ayrı ayrı tutma. Struct oluştur ve max_size belirleyerek bir array oluştur.
C:
int FRIDGE_MAX_ITEM_SIZE = 50;
struct Malzeme {
char isim[30];
int adet;
int son_kullanma_tarihi;
};
struct Malzeme malzemeler[FRIDGE_MAX_ITEM_SIZE];
1. dönem de struct vs görmeniz lazım. 1. sınıf isen daha henüz data structure bilmiyorsun. O sebeple liste kullan vs demicem. Arraylerle çözersin.
Forum arkadaşlarımdan ricam, bence kimse yardım etmesin.
Zorluklarları araştıra araştıra kendin öğren. Kısa yola kaçıp AI tarafından yaptırırsan düşük not alırsın, o senin problemin. Yapay zekayı mentor olarak kullan. Nasıl yaparım de, al şunu yap deme. Gelişimini kötü etkiler. Ayrıca ekip olarak yapılacak bir proje 2-3 kişi bir araya gelin ve bir zahmet kafa patlatın.
Her tarafta yorum satırı görünce artık direkt ai tarafından yazıldığı bariz belli oluyor.
isimler[30] dizisinde problem var. Burada 2 boyutlu array oluşturmak lazım.
Ayrıca verileri ayrı ayrı tutma. Struct oluştur ve max_size belirleyerek bir array oluştur.
C:
int FRIDGE_MAX_ITEM_SIZE = 50;
struct Malzeme {
char isim[30];
int adet;
int son_kullanma_tarihi;
};
struct Malzeme malzemeler[FRIDGE_MAX_ITEM_SIZE];
1. dönem de struct vs görmeniz lazım. 1. sınıf isen daha henüz data structure bilmiyorsun. O sebeple liste kullan vs demicem. Arraylerle çözersin.
Forum arkadaşlarımdan ricam, bence kimse yardım etmesin.
Zorluklarları araştıra araştıra kendin öğren. Kısa yola kaçıp AI tarafından yaptırırsan düşük not alırsın, o senin problemin. Yapay zekayı mentor olarak kullan. Nasıl yaparım de, al şunu yap deme. Gelişimini kötü etkiler. Ayrıca ekip olarak yapılacak bir proje 2-3 kişi bir araya gelin ve bir zahmet kafa patlatın.