-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfulladder.cmd
More file actions
60 lines (57 loc) · 1.17 KB
/
fulladder.cmd
File metadata and controls
60 lines (57 loc) · 1.17 KB
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
@echo off
setlocal enabledelayedexpansion
:fulladder
::A,B,Cin,S,Cout file
set A=%1
set B=%2
set Cin=%3
set S=%4
set Cout=%5
::a*/b*/c + /a*b*/c + /a*/b*c + a*b*c -> S
::a*b*/c + a*/b*c + /a*b*c + a*b*c === a*b + a*c + b*c -> Cout
if exist "!A!" (
if exist "!B!" (
if exist "!Cin!" (
:: Case a*b*c
echo a*b*c
echo. > "!S!"
echo. > "!Cout!"
) else (
:: Case a*b*/c
echo a*b*/c
echo. > "!Cout!"
)
) else (
if exist "!Cin!" (
:: Case a*/b*c
echo a*/b*c
echo. > "!Cout!"
) else (
:: Case a*/b*/c
echo a*/b*/c
echo. > "!S!"
)
)
) else (
if exist "!B!" (
if exist "!Cin!" (
:: Case /a*b*c
echo /a*b*c
echo. > "!Cout!"
) else (
:: Case /a*b*/c
echo /a*b*/c
echo. > "!S!"
)
) else (
if exist "!Cin!" (
:: Case /a*/b*c
echo /a*/b*c
echo. > "!S!"
) else (
:: Case /a*/b*/c
echo /a*/b*/c
)
)
)
exit /b