The MASM Forum

Members Gallery => Showcase => Topic started by: jj2007 on April 23, 2023, 02:16:43 AM

Title: Calculate your daily water or electricity consumption
Post by: jj2007 on April 23, 2023, 02:16:43 AM
This proggie calculates the difference between two dates, and optionally the consumption per day:

include \masm32\MasmBasic\MasmBasic.inc
  Init
  movaps xmm1, TimeSF(Input$("older date: ", fDate$(-90))) ; -90: suggest ninety days before today
  psubq TimeSF(Input$("newer date: ", fDate$())), xmm1 ; subtract from today (or another date)
  Print Str$("%i days between the two dates\n", TimeDiff(d)) ; display difference in days
  .if Val(Input$("\nConsumption: ", "500")) ; ask e.g. for cubic metres of water
xchg eax, ecx ; eax is a bit too volatile
If_ not ecx==-127 Then Inkey Str$("%3f units per day\n", ecx/TimeDiff(d))  ; consumption/days
  .endif
EndOfCode


Example:
older date: 22.01.2023
newer date: 22.04.2023
90 days between the two dates

Consumption: 500
5.56 units per day


Macros used: Val (https://www.jj2007.eu/MasmBasicQuickReference.htm#Mb1203), Input$ (https://www.jj2007.eu/MasmBasicQuickReference.htm#Mb1041)(), TimeSF (https://www.jj2007.eu/MasmBasicQuickReference.htm#Mb1328)(), fDate$() (https://www.jj2007.eu/MasmBasicQuickReference.htm#Mb1267), TimeDiff (https://www.jj2007.eu/MasmBasicQuickReference.htm#Mb1450)(), Str$ (https://www.jj2007.eu/MasmBasicQuickReference.htm#Mb1186)(), Inkey (https://www.jj2007.eu/MasmBasicQuickReference.htm#Mb1109)
Title: Re: Calculate your daily water or electricity consumption
Post by: Siekmanski on April 23, 2023, 03:55:53 AM
Including the C02 footprint would also be nice.  :biggrin:
Title: Re: Calculate your daily water or electricity consumption
Post by: daydreamer on April 30, 2023, 02:50:00 PM
Quote from: Siekmanski on April 23, 2023, 03:55:53 AM
Including the C02 footprint would also be nice.  :biggrin:
Pumping Coca-Cola instead calculate the % co2 in it?
Pumping water from your own well or close by river powered by petrol powered electric most accurate I think?