-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathday1.p
35 lines (26 loc) · 1.44 KB
/
day1.p
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/*
After feeling like you've been falling for a few minutes, you look at the device's tiny screen. "Error: Device must be calibrated before first use. Frequency drift detected. Cannot maintain destination lock." Below the message, the device shows a sequence of changes in frequency (your puzzle input). A value like +6 means the current frequency increases by 6; a value like -3 means the current frequency decreases by 3.
For example, if the device displays frequency changes of +1, -2, +3, +1, then starting from a frequency of zero, the following changes would occur:
Current frequency 0, change of +1; resulting frequency 1.
Current frequency 1, change of -2; resulting frequency -1.
Current frequency -1, change of +3; resulting frequency 2.
Current frequency 2, change of +1; resulting frequency 3.
In this example, the resulting frequency is 3.
Here are other example situations:
+1, +1, +1 results in 3
+1, +1, -2 results in 0
-1, -2, -3 results in -6
Starting with a frequency of zero, what is the resulting frequency after all of the changes in frequency have been applied?
*/
DEFINE VARIABLE iShift AS INTEGER NO-UNDO.
DEFINE VARIABLE iFreq AS INTEGER NO-UNDO.
ETIME(YES).
INPUT FROM C:\User\JCCARDOT\Perso\Travail\aoc\aoc2018\day1.txt.
REPEAT:
IMPORT iShift.
iFreq = iFreq + iShift.
END.
INPUT CLOSE.
MESSAGE ETIME SKIP
iFreq
VIEW-AS ALERT-BOX INFO BUTTONS OK.