C
1コード 2#include <stdio.h> 3#include <stdlib.h> 4 5typedef struct { 6 int b; 7 int a; 8} frac_t; 9 10int gcd(int x, int y) { 11 while (y != 0) { 12 int t = x % y; x = y; y = t; 13 } 14 return x; 15} 16 17frac_t frac_reduce(frac_t x) { 18 int d = gcd(abs(x.b), x.a); 19 x.b = x.b / d; 20 x.a = x.a / d; 21 return x; 22} 23 24frac_t frac_inv(frac_t x){ 25 if(x.b<=0){ 26 printf("%d/%d",x.a*(-1),x.b*(-1)); 27 }else{ 28 printf("%d/%d",x.a,x.b); 29 } 30} 31 32frac_t frac_mul(frac_t x,frac_t y){ 33 frac_t ret; 34 ret.a=x.a*y.a; 35 ret.b=x.b*y.b; 36 printf("%d/%d",ret.b,ret.a); 37 return frac_reduce(ret); 38} 39 40frac_t frac_div(frac_t x,frac_t y){ 41 frac_t ret; 42 ret.a=x.a*y.b; 43 ret.b=x.b*y.a; 44 printf("%d/%d",ret.b,ret.a); 45 return frac_reduce(ret); 46} 47 48int main(void) { 49 frac_t x = { -7, 12 }; 50 frac_t y = { 1 , 4 }; 51 frac_inv(x); 52 printf("\n"); 53 frac_mul(x,y); 54 printf("\n"); 55 frac_div(x,y); 56 printf("\n"); 57 return 0; 58}
コードを
```c
と
```
で囲ってください。現在、コード 中の * が欠落して表示されていないようです。
原因はわかりましたが、質問を放置する方のようですので回答を書くのは遠慮しておきます。
すいません。今後は質問を放置しないように気を付けるので回答お願いできないでしょうか?
まずは最初のコメントに書いたように * が消えないように質問を編集してください。
失礼ですが、他人に頼むなら自分もちゃんとやったほうがいいですよ。
へりくだっている人と横柄な人、どちらをサポートしたいと思いますか?
回答者はあくまで質問者と同じ単なるユーザです。たまたま回答するだけです。
回答する義務もないし義理もありません。
それなのに他のユーザが指摘したことを直そうともせずに一方的に「回答してください」とするのは人によっては横柄に見えます。「御託はいいからつべこべ言わずに答えだけ寄越せ」に見えてしまいます。他のユーザの指摘を受けて改善しようとするならへりくだっている人に見えるので回答しやすいです。
まずは他人にものを頼む態度とは何か考えてみてください。
仮にここで答えだけもらって仕事を得たとしても職場で人間関係で悩むことになり、孤立し、面倒なこと(仕事をやめるとか)になりかねませんよ。
ここで治したほうが身のためかもしれません。…まあお節介がすぎましたね。
質問は編集できるので編集してください。お願いします。
ソースのアップ方法
以下のようにすると、きちんとソースが表示されます。
</>をクリックします。
```ここに言語を入力
コード
```
と表示されるので
```①
②
```
①の箇所にCと入力し
②の箇所にソースをコピペして貼り付けます。
そうすると、きちんと表示されます。
質問は編集可能です。(ソースは再度アップ可能です)
上記のようにして、正しい方法でソースをアップし直してください。
ご指摘ありがとうございます。
…自分さえ良ければいいんですか?
teratailは「ナレッジサービス」を目的としています。
似たような問題に直面して、検索してこのページにたどり着いた人が「なるほど」となるのでしょうか?
質問文も意図的に削除されているだけなのでなにが問題かすらわかりません。
コード以外なにもない意図不明の質問になってしまったので低評価します。編集前のほうがマシでした。
回答1件
あなたの回答
tips
プレビュー