# -*- 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...")