c言語の3つの自然数a,b,cの最大公約数を考えたとき、aとbの最大公約数をdとするならば、cとdの最大公約数がa.b,cの最大公約数となる。以下のプログラムを利用してキーボードから入力した3つの自然数の最大公約数を表示するプログラムをおしえてください
以下のプログラムのmain関数内だけを修正で作成お願いします
#include <stdio.h>
int gcd(int a,int b){
int r;
/* ユークリッドの互除法 */
r = a % b;
while(r!=0){
a = b;
b = r;
r = a % b;
}
return b;
}
void main(void)
{
int a, b,tmp;
printf("2つの自然数を入力してください。\n");
printf("1つ目の自然数 = ");
scanf("%d", &a);
printf("2つ目の自然数 = ");
scanf("%d", &b);
/* 自然数 a > b を確認・入替 */
if(a<b){
tmp = a;
a = b;
b = tmp;
}
printf("最大公約数は%dです\n", gcd(a, b));
}
adj
- purin52002
- 記事: 235
- 登録日時: 7年前
- 連絡を取る:
Re: adj
こんにちは
作成お願いします、とのことですが
ここは質問掲示板であって、作成依頼掲示板じゃないので私は作成しません^p^
(中には作成してくれる人もいるかも?)
何がわからないのかわからないのでどう説明すればいいのかもわかりませんが、
以下のような処理をすればいいような気がします。
作成お願いします、とのことですが
ここは質問掲示板であって、作成依頼掲示板じゃないので私は作成しません^p^
(中には作成してくれる人もいるかも?)
何がわからないのかわからないのでどう説明すればいいのかもわかりませんが、
以下のような処理をすればいいような気がします。
- 3つの自然数 a,b,c を入力
- a,b の大きさを比較、b のほうが大きかったら a と入れ替える
- d に gcd(a,b) の結果を代入
- c,d の大きさを比較、d のほうが大きかったら c と入れ替える
- gcd(c,d) の結果を表示
c++初心者を自負しています。
質問者さんには今後私にプログラミングを教えてくれるようにやさしく丁寧に教えるつもりです。ぎぶあんどていく^p^
回答者さんには精一杯感謝します。ぎぶおんりー^p^
質問者さんには今後私にプログラミングを教えてくれるようにやさしく丁寧に教えるつもりです。ぎぶあんどていく^p^
回答者さんには精一杯感謝します。ぎぶおんりー^p^