1*99451b44SJordan Rupprecht //===-- main.cpp ------------------------------------------------*- C++ -*-===// 2*99451b44SJordan Rupprecht // 3*99451b44SJordan Rupprecht // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*99451b44SJordan Rupprecht // See https://llvm.org/LICENSE.txt for license information. 5*99451b44SJordan Rupprecht // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*99451b44SJordan Rupprecht // 7*99451b44SJordan Rupprecht //===----------------------------------------------------------------------===// 8*99451b44SJordan Rupprecht 9*99451b44SJordan Rupprecht #include <cstdlib> 10*99451b44SJordan Rupprecht #include <cstring> 11*99451b44SJordan Rupprecht #include <string> 12*99451b44SJordan Rupprecht #include <fstream> 13*99451b44SJordan Rupprecht #include <iostream> 14*99451b44SJordan Rupprecht 15*99451b44SJordan Rupprecht int 16*99451b44SJordan Rupprecht product (int x, int y) 17*99451b44SJordan Rupprecht { 18*99451b44SJordan Rupprecht int result = x * y; 19*99451b44SJordan Rupprecht return result; 20*99451b44SJordan Rupprecht } 21*99451b44SJordan Rupprecht 22*99451b44SJordan Rupprecht int 23*99451b44SJordan Rupprecht sum (int a, int b) 24*99451b44SJordan Rupprecht { 25*99451b44SJordan Rupprecht int result = a + b; 26*99451b44SJordan Rupprecht return result; 27*99451b44SJordan Rupprecht } 28*99451b44SJordan Rupprecht 29*99451b44SJordan Rupprecht int 30*99451b44SJordan Rupprecht strange_max (int m, int n) 31*99451b44SJordan Rupprecht { 32*99451b44SJordan Rupprecht if (m > n) 33*99451b44SJordan Rupprecht return m; 34*99451b44SJordan Rupprecht else if (n > m) 35*99451b44SJordan Rupprecht return n; 36*99451b44SJordan Rupprecht else 37*99451b44SJordan Rupprecht return 0; 38*99451b44SJordan Rupprecht } 39*99451b44SJordan Rupprecht 40*99451b44SJordan Rupprecht int 41*99451b44SJordan Rupprecht foo (int i, int j) 42*99451b44SJordan Rupprecht { 43*99451b44SJordan Rupprecht if (strange_max (i, j) == i) 44*99451b44SJordan Rupprecht return product (i, j); 45*99451b44SJordan Rupprecht else if (strange_max (i, j) == j) 46*99451b44SJordan Rupprecht return sum (i, j); 47*99451b44SJordan Rupprecht else 48*99451b44SJordan Rupprecht return product (sum (i, i), sum (j, j)); 49*99451b44SJordan Rupprecht } 50*99451b44SJordan Rupprecht 51*99451b44SJordan Rupprecht int 52*99451b44SJordan Rupprecht main(int argc, char const *argv[]) 53*99451b44SJordan Rupprecht { 54*99451b44SJordan Rupprecht 55*99451b44SJordan Rupprecht int array[9]; 56*99451b44SJordan Rupprecht memset(array,0,9*sizeof(int)); 57*99451b44SJordan Rupprecht 58*99451b44SJordan Rupprecht array[0] = foo (1238, 78392); 59*99451b44SJordan Rupprecht array[1] = foo (379265, 23674); 60*99451b44SJordan Rupprecht array[2] = foo (872934, 234); 61*99451b44SJordan Rupprecht array[3] = foo (1238, 78392); 62*99451b44SJordan Rupprecht array[4] = foo (379265, 23674); 63*99451b44SJordan Rupprecht array[5] = foo (872934, 234); 64*99451b44SJordan Rupprecht array[6] = foo (1238, 78392); 65*99451b44SJordan Rupprecht array[7] = foo (379265, 23674); 66*99451b44SJordan Rupprecht array[8] = foo (872934, 234); 67*99451b44SJordan Rupprecht 68*99451b44SJordan Rupprecht return 0; 69*99451b44SJordan Rupprecht } 70