A computational method for three-dimensional flows is presented in terms of two stream functions, which may be considered as two components of a generalized vector potential. An iterative scheme is developed such that only a sequence of two-dimensional-like problems, for each function, is solved. The convergence of the iterative scheme is studied based on von Neumann linear analysis. For transonic flow calculation, numerical methods used for potential flows are readily applied, namely artificial density and Zebra relaxation. Results of transonic flow calculations around a wing are presented.