このディレクトリの索引
#  出典 :: C言語の宿題片付けます 164代目 #616
#  [1]C言語の入門クラス  
#  [2]商品を買うとき、消費税が5%かかるが、消費税は一円未満は切り捨てになる。 
#  つまり、商品を二個一緒に会計するときと、別々に会計を行うのでは、違った結果が得られる 
#  時もある。二商品の税抜価格を入力して、一緒に会計するときと、別々に会計するときの 
#  税込価格を表示するプログラムの作成  
#   [3.1] OS: Windows 
#   [3.2] visual C++ 
#   [3.3] 言語: Cでおねがいしまむ  
#  [4] 期限:五月五日23:59分までに提出 
#  [5]簡略した文が助かります。あとで復習したいので。 
# 

'商品を買うとき、消費税が8%かかるが、消費税は一円未満は切り捨てになる。
つまり、商品を二個一緒に会計するときと、別々に会計を行うのでは、違った結果が得られる時もある。
二商品の税抜価格を入力して、一緒に会計するときと、別々に会計するときの税込価格を表示する' :-
        二商品の税抜価格を入力して(_商品その一の税抜価格,_商品その二の税抜価格),
        一緒に会計するときの税込価格(_商品その一の税抜価格,_商品その二の税抜価格,_一緒に会計するときの税込価格),
        別々に会計するときの税込価格(_商品その一の税抜価格,_商品その二の税抜価格,_別々に会計するときの税込価格),
        税込価格を表示する(_商品その一の税抜価格,_商品その二の税抜価格,_一緒に会計するときの税込価格,_別々に会計するときの税込価格).


二商品の税抜価格を入力して(_商品その一の税抜価格,_商品その二の税抜価格) :-
        整数を得る(商品その一の税抜価格,true,_商品その一の税抜価格),
        整数を得る(商品その二の税抜価格,true,_商品その二の税抜価格).


一緒に会計するときの税込価格(_商品その一の税抜価格,_商品その二の税抜価格,_一緒に会計するときの税込価格) :-
        一緒に会計するときの消費税(_商品その一の税抜価格,_商品その二の税抜価格,_一緒に会計するときの消費税),
        _一緒に会計するときの税込価格 is _商品その一の税抜価格 + _商品その二の税抜価格 + _一緒に会計するときの消費税.

別々に会計するときの税込価格(_商品その一の税抜価格,_商品その二の税抜価格,_別々に会計するときの税込価格) :-
        別々に会計するときの消費税(_商品その一の税抜価格,_商品その二の税抜価格,_別々に会計するときの消費税),
        _別々に会計するときの税込価格 is _商品その一の税抜価格 + _商品その二の税抜価格 + _別々に会計するときの消費税.


一緒に会計するときの消費税(_商品その一の税抜価格,_商品その二の税抜価格,_一緒に会計するときの消費税) :-
        一緒に会計するときの(_商品その一の税抜価格,_商品その二の税抜価格,_一緒に会計するときの二商品の合計の税抜価格),
        消費税(_一緒に会計するときの二商品の合計の税抜価格,_一緒に会計するときの消費税).

一緒に会計するときの(_商品その一の税抜価格,_商品その二の税抜価格,_一緒に会計するときの二商品の合計の税抜価格) :-
        _一緒に会計するときの二商品の合計の税抜価格 is _商品その一の税抜価格 + _商品その二の税抜価格.

別々に会計するときの消費税(_商品その一の税抜価格,_商品その二の税抜価格,_別々に会計するときの消費税) :-
        消費税(_商品その一の税抜価格,_商品その一の消費税),
        消費税(_商品その二の税抜価格,_商品その二の消費税),
        _別々に会計するときの消費税 is _商品その一の消費税 + _商品その二の消費税.

消費税(_商品の税抜価格,_消費税) :-
        '商品を買うとき、消費税が8%かかるが、消費税は一円未満は切り捨てになる。'(_商品の税抜価格,_消費税).

'商品を買うとき、消費税が8%かかるが、消費税は一円未満は切り捨てになる。'(_商品の税抜価格,_消費税) :-
        '商品を買うとき、消費税が8%かかるが'(_商品の税抜価格,_切り捨て前の消費税),
        消費税は一円未満は切り捨てになる(_切り捨て前の消費税,_消費税).

'商品を買うとき、消費税が8%かかるが'(_商品の税抜価格,_切り捨て前の消費税) :-
        _切り捨て前の消費税 is _商品の税抜価格 * 8 / 100.

消費税は一円未満は切り捨てになる(_切り捨て前の消費税,_消費税) :-
        切り捨て前の消費税が0または正の整数のときは切り下げる(_切り捨て前の消費税,_消費税).
消費税は一円未満は切り捨てになる(_切り捨て前の消費税,_消費税) :-
        切り捨て前の消費税が負の整数のときは切り上げる(_切り捨て前の消費税,_消費税).

切り捨て前の消費税が0または正の整数のときは切り下げる(_切り捨て前の消費税,_消費税) :-
        _切り捨て前の消費税 >= 0,
        _消費税 is floor(_切り捨て前の消費税).

切り捨て前の消費税が負の整数のときは切り上げる(_切り捨て前の消費税,_消費税) :-
        _切り捨て前の消費税 < 0,
        _消費税 is ceiling(_切り捨て前の消費税).


税込価格を表示する(_商品その一の税抜価格,_商品その二の税抜価格,_一緒に会計するときの税込価格,_別々に会計するときの税込価格) :-
        writef('商品その一の税込価格は %t円\n商品その二の税込価格は %t円\n\n',[_商品その一の税抜価格,_商品その二の税抜価格]),
        writef('一緒に会計するときの税込価格は %t円\n別々に会計するときの税込価格は %t円\n',[_一緒に会計するときの税込価格,_別々に会計するときの税込価格]).