# -*- coding: utf-8 -*-
"""
Created on Mon Feb 11 22:51:16 2019
@author: okmen
"""
"""
toprak örneği hesaplama programı
"""
#excel den değerleri çektim
global Dadi
global sayfaAdi
def anaMenu():
global menusecim
print("""
═════════════════════════════════════
1- Önce Dosya Adı Giriniz
2- Gübre Hesabı
3- Hesapla Ve Kaydet
4- Hesapla Ve Farklı Kaydet
5- Hesapla Kaydet Ve göster
6- Listeye Mail Yolla
7- Çıkış
═════════════════════════════════════ """)
def gubreEkimi():
eksik1=30-Azot
eksik2=10-AlınabilirFosfor
Gazot= int(eksik1)-int(eksik2)
x = eksik2*6.666
y = Gazot*2.1739
print ("gerekli 15-15",x)
print ("gerekli üre ",y)
def DosyaAdiGir(Dadi):
import openpyxl
kitap = openpyxl.load_workbook(Dadi)
sheet=kitap.active
d1=sheet['B2']
d2=sheet['B3']
d3=sheet['B4']
d4=sheet['B5']
d5=sheet['B6']
d6=sheet['B7']
d7=sheet['B8']
d8=sheet['B9']
d9=sheet['B10']
d10=sheet['B11']
d11=sheet['B12']
d12=sheet['B13']
a1=sheet['A2']
a2=sheet['A3']
a3=sheet['A4']
a4=sheet['A5']
a5=sheet['A6']
a6=sheet['A7']
a7=sheet['A8']
a8=sheet['A9']
a9=sheet['A10']
a10=sheet['A11']
a11=sheet['A12']
a12=sheet['A13']
#gösterdim
print(a1.value,':',d1.value)
print(a2.value,':',d2.value)
print(a3.value,':',d3.value)
print(a4.value,':',d4.value)
print(a5.value,':',d5.value)
print(a6.value,':',d6.value)
print(a7.value,':',d7.value)
print(a8.value,':',d8.value)
print(a9.value,':',d9.value)
print(a10.value,':',d10.value)
print(a11.value,':',d11.value)
print(a12.value,':',d12.value)
kitap.close()
#değer atadım
global Ph,Tuz,ToplamKirec,OrganikMadde,Azot,AlınabilirFosfor,AlınabilirPotasyum,Tekstur,YarayıslıBakır,YarayıslıCinko
global YarayıslıDemir,YarayıslıMangan
Ph =float(d1.value)
Tuz= float(d2.value)
ToplamKirec= float(d3.value)
OrganikMadde= float(d4.value)
Azot= float(d5.value)
AlınabilirFosfor= float(d6.value)
AlınabilirPotasyum= float(d7.value)
Tekstur= float(d8.value)
YarayıslıDemir= float(d9.value)
YarayıslıBakır= float(d10.value)
YarayıslıCinko= float(d11.value)
YarayıslıMangan= float(d12.value)
#global olusturalım
def HesaplaVeKaydet(Dadi):
if Ph <= 3.5:
PhDeger=("ultra asidik")
elif 3.5 < Ph <= 4.4:
PhDeger=("Son derece asidik")
elif 4.5 < Ph <= 5.0:
PhDeger=("çok güçlü asidik")
elif 5.1 < Ph <= 5.5:
PhDeger=("güçlü asidik")
elif 5.6 < Ph <= 6.0:
PhDeger=("orta derecede asidik")
elif 6.1 < Ph <= 6.5:
PhDeger=("hafif asidik")
elif 6.6 < Ph <= 7.3:
PhDeger=("doğal ")
elif 7.4 < Ph <= 7.8:
PhDeger=("Biraz alkalin")
elif 7.9 < Ph <= 8.4:
PhDeger=("orta derecede alkali")
elif 8.5 < Ph <= 9.0:
PhDeger=("güçlü alkali")
elif 9.0 < Ph :
PhDeger=("çok güçlü alkali")
else:
PhDeger=("Ölçülemedi")
if 0 <= Tuz < 2:
TuzDeger=("Düşük")
elif 2 <= Tuz < 4:
TuzDeger=("Orta")
elif 4 <= Tuz < 8:
TuzDeger=("Yüksek")
elif 8 <= Tuz < 16:
TuzDeger=("Aşırı")
elif 16 <= Tuz :
TuzDeger=("Çok aşırı")
else:
TuzDeger=("Ölcülemedi")
#Kirec
if 0<= ToplamKirec < 4:
ToplamKirecDeger=("Az kireçli")
elif 4 <= ToplamKirec < 8:
ToplamKirecDeger=("Orta kireçli")
elif 8 <= ToplamKirec < 15:
ToplamKirecDeger=("Kireçli")
elif 15 <= ToplamKirec < 30:
ToplamKirecDeger=("Çok kireçli")
elif 30 <= ToplamKirec < 55:
ToplamKirecDeger=("Çok fazla kireçli")
elif 55 <= ToplamKirec :
ToplamKirecDeger=("Marn")
else:
ToplamKirecDeger=("Ölçülemedi")
if 0 <= OrganikMadde < 2:
OrganikMaddeDeger=("Fakir")
elif 2 <= OrganikMadde < 5:
OrganikMaddeDeger=("Az")
elif 5 <= OrganikMadde < 10:
OrganikMaddeDeger=("Yüksek")
elif 10 <= OrganikMadde < 15:
OrganikMaddeDeger=("Zengin")
elif 15 <= OrganikMadde < 20:
OrganikMaddeDeger=("Çok zengin")
elif 20 <= OrganikMadde :
OrganikMaddeDeger=("Organik toprak")
else:
OrganikMaddeDeger=("Ölcülemedi")
if Azot <= 0.05:
AzotDeger=("Fakir")
elif 0.05 <= Azot < 0.10:
AzotDeger=("Orta")
elif 0.10 <= Azot < 0.15:
AzotDeger=("İyi")
elif 0.15 <= Azot :
AzotDeger=("Zengin")
else:
AzotDeger=("Ölcülemedi")
if 0<= AlınabilirFosfor < 20:
AlınabilirFosforDeger=("Fakir")
elif 20 <= AlınabilirFosfor < 50:
AlınabilirFosforDeger=("Orta")
elif 50 <= AlınabilirFosfor :
AlınabilirFosforDeger=("Zengin")
else:
AlınabilirFosforDeger=("Ölçülemedi")
if 0<= AlınabilirPotasyum < 3:
AlınabilirPotasyumDeger=("Fakir")
elif 3 <= AlınabilirPotasyum < 6:
AlınabilirPotasyumDeger=("Orta")
elif 6 <= AlınabilirPotasyum :
AlınabilirPotasyumDeger=("Zengin")
else:
AlınabilirPotasyumDeger=("Ölçülemedi")
if YarayıslıDemir <= 2.5:
YarayıslıDemirDeger=("eksik")
elif 2.5 <= YarayıslıDemir < 4.5:
YarayıslıDemirDeger=("yeterli")
elif 4.5 <= YarayıslıDemir < 9:
YarayıslıDemirDeger=("Yüksek")
elif 9 <= YarayıslıDemir < 13:
YarayıslıDemirDeger=("Çok yüksek")
elif 13 <= YarayıslıDemir :
YarayıslıDemirDeger=("Aşırı")
else:
YarayıslıDemirDeger=("Ölcülemedi")
eksik1=30-Azot
eksik2=10-AlınabilirFosfor
Gazot= int(eksik1)-int(eksik2)
x = eksik2*6.666
y = Gazot*2.1739
print ("gerekli 15-15",x)
print ("gerekli üre ",y)
import openpyxl
kitap = openpyxl.load_workbook(Dadi)
sayfa = kitap.get_sheet_by_name(sayfaAdi)
sayfa.cell(row=2,column=3,value=PhDeger)
sayfa.cell(row=3,column=3,value=TuzDeger)
sayfa.cell(row=4,column=3,value=ToplamKirecDeger)
sayfa.cell(row=5,column=3,value=OrganikMaddeDeger)
sayfa.cell(row=6,column=3,value=AzotDeger)
sayfa.cell(row=7,column=3,value=AlınabilirFosforDeger)
sayfa.cell(row=8,column=3,value=AlınabilirPotasyumDeger)
sayfa.cell(row=10,column=3,value=YarayıslıDemirDeger)
sayfa.cell(row=18,column=2,value=x)
sayfa.cell(row=19,column=2,value=y)
kitap.save(Dadi)
kitap.close()
def HesaplaVeFarkliKaydet(Dadi):
FdAdi= input("litfen kaydedilecek dosya adını giriniz: ")
if Ph <= 3.5:
PhDeger=("ultra asidik")
elif 3.5 < Ph <= 4.4:
PhDeger=("Son derece asidik")
elif 4.5 < Ph <= 5.0:
PhDeger=("çok güçlü asidik")
elif 5.1 < Ph <= 5.5:
PhDeger=("güçlü asidik")
elif 5.6 < Ph <= 6.0:
PhDeger=("orta derecede asidik")
elif 6.1 < Ph <= 6.5:
PhDeger=("hafif asidik")
elif 6.6 < Ph <= 7.3:
PhDeger=("doğal ")
elif 7.4 < Ph <= 7.8:
PhDeger=("Biraz alkalin")
elif 7.9 < Ph <= 8.4:
PhDeger=("orta derecede alkali")
elif 8.5 < Ph <= 9.0:
PhDeger=("güçlü alkali")
elif 9.0 < Ph :
PhDeger=("çok güçlü alkali")
else:
PhDeger=("Ölçülemedi")
if 0 <= Tuz < 2:
TuzDeger=("Düşük")
elif 2 <= Tuz < 4:
TuzDeger=("Orta")
elif 4 <= Tuz < 8:
TuzDeger=("Yüksek")
elif 8 <= Tuz < 16:
TuzDeger=("Aşırı")
elif 16 <= Tuz :
TuzDeger=("Çok aşırı")
else:
TuzDeger=("Ölcülemedi")
#Kirec
if 0<= ToplamKirec < 4:
ToplamKirecDeger=("Az kireçli")
elif 4 <= ToplamKirec < 8:
ToplamKirecDeger=("Orta kireçli")
elif 8 <= ToplamKirec < 15:
ToplamKirecDeger=("Kireçli")
elif 15 <= ToplamKirec < 30:
ToplamKirecDeger=("Çok kireçli")
elif 30 <= ToplamKirec < 55:
ToplamKirecDeger=("Çok fazla kireçli")
elif 55 <= ToplamKirec :
ToplamKirecDeger=("Marn")
else:
ToplamKirecDeger=("Ölçülemedi")
if 0 <= OrganikMadde < 2:
OrganikMaddeDeger=("Fakir")
elif 2 <= OrganikMadde < 5:
OrganikMaddeDeger=("Az")
elif 5 <= OrganikMadde < 10:
OrganikMaddeDeger=("Yüksek")
elif 10 <= OrganikMadde < 15:
OrganikMaddeDeger=("Zengin")
elif 15 <= OrganikMadde < 20:
OrganikMaddeDeger=("Çok zengin")
elif 20 <= OrganikMadde :
OrganikMaddeDeger=("Organik toprak")
else:
OrganikMaddeDeger=("Ölcülemedi")
if Azot <= 0.05:
AzotDeger=("Fakir")
elif 0.05 <= Azot < 0.10:
AzotDeger=("Orta")
elif 0.10 <= Azot < 0.15:
AzotDeger=("İyi")
elif 0.15 <= Azot :
AzotDeger=("Zengin")
else:
AzotDeger=("Ölcülemedi")
if 0<= AlınabilirFosfor < 20:
AlınabilirFosforDeger=("Fakir")
elif 20 <= AlınabilirFosfor < 50:
AlınabilirFosforDeger=("Orta")
elif 50 <= AlınabilirFosfor :
AlınabilirFosforDeger=("Zengin")
else:
AlınabilirFosforDeger=("Ölçülemedi")
if 0<= AlınabilirPotasyum < 3:
AlınabilirPotasyumDeger=("Fakir")
elif 3 <= AlınabilirPotasyum < 6:
AlınabilirPotasyumDeger=("Orta")
elif 6 <= AlınabilirPotasyum :
AlınabilirPotasyumDeger=("Zengin")
else:
AlınabilirPotasyumDeger=("Ölçülemedi")
if YarayıslıDemir <= 2.5:
YarayıslıDemirDeger=("eksik")
elif 2.5 <= YarayıslıDemir < 4.5:
YarayıslıDemirDeger=("yeterli")
elif 4.5 <= YarayıslıDemir < 9:
YarayıslıDemirDeger=("Yüksek")
elif 9 <= YarayıslıDemir < 13:
YarayıslıDemirDeger=("Çok yüksek")
elif 13 <= YarayıslıDemir :
YarayıslıDemirDeger=("Aşırı")
else:
YarayıslıDemirDeger=("Ölcülemedi")
import openpyxl
kitap = openpyxl.load_workbook(Dadi)
sayfa = kitap.get_sheet_by_name(dosyaAdi)
sayfa.cell(row=2,column=3,value=PhDeger)
sayfa.cell(row=3,column=3,value=TuzDeger)
sayfa.cell(row=4,column=3,value=ToplamKirecDeger)
sayfa.cell(row=5,column=3,value=OrganikMaddeDeger)
sayfa.cell(row=6,column=3,value=AzotDeger)
sayfa.cell(row=7,column=3,value=AlınabilirFosforDeger)
sayfa.cell(row=8,column=3,value=AlınabilirPotasyumDeger)
sayfa.cell(row=10,column=3,value=YarayıslıDemirDeger)
kitap.save(FdAdi)
kitap.close()
while True:
anaMenu()
secim= int(input("lütfen seçiminizi yapınız: "))
if secim == 1:
Dadi=input("lütfen excel dosyanızın adını uzantısız şekilde giriniz: ")
sayfaAdi= input("lütfen excel sayfasının sayfa adını giriniz örenğin sheet,sayfa1 :")
DosyaAdiGir(Dadi)
elif secim == 2:
gubreEkimi()
elif secim == 3:
HesaplaVeKaydet(Dadi)
elif secim == 4:
HesaplaVeFarkliKaydet(Dadi)
elif secim == 5:
pass
elif secim == 7:
print("çıkış yapılıyor")
break
else:
print("bence seçimin yanlış birdaha dene...")