if文を使った組み合わせ(?)の問題です

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
botdo

if文を使った組み合わせ(?)の問題です

#1

投稿記事 by botdo » 2年前

以下のコードが思いつきません(>_<)自分の頭の固さがにくいです

「なし2個ともも3個をあわせて1組としてセット販売を行っている.
以下の実行結果のように, なしの個数, ももの個数の順にそれぞれ正の整数値として入力し, 最大セット作れるか,
またそのときに余った果物の数の合計を画面に表示するプログラムを作成しなさい.」

実行結果 (例
なし> 3
もも> 5
1 セット, 余り 3

下のは自分が途中までやったものです。続きが思いつきません。
どなたか助けてください。初心者なのであまり難しいものの使用は避けていただけると嬉しいです。

コード:

#include <stdio.h>
int main(void)
{
    int a,b,c,d;
    printf("なし> ");
    scanf("%d", &a);
    printf("もも> ");
    scanf("%d", &b);
    if(a%2>0) { 
        if(b%3>0) {
            
           
        }
    }    

        

    printf("%d セット,余り %d",c,d);
    return 0;
}

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: if文を使った組み合わせ(?)の問題です

#2

投稿記事 by みけCAT » 2年前

1. なしの個数だけを考えた時、最大何セット作れるかを考える
2. ももの個数だけを考えた時、最大何セット作れるかを考える
3. 1と2のセット数のうち、少ない方(多くない方)が実際に作れるセット数である
4. 全部の果物の数からセットを作るのに使う果物の数を引くと、余った果物の数が求まる

コード:

#include <stdio.h>
int main(void)
{
    int a,b,c,d;
    printf("なし> ");
    scanf("%d", &a);
    printf("もも> ");
    scanf("%d", &b);

    /* なしで何セット作れるかを求める */
    c = a / 2;
    /* ももで何セット作れるかを求める */
    d = b / 3;
    /* 多くない方を求める */
    if (d < c) c = d;
    /* 余った果物の数を求める */
    d = a + b - (2 + 3) * c;

    printf("%d セット,余り %d",c,d);
    return 0;
}
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

botdo

Re: if文を使った組み合わせ(?)の問題です

#3

投稿記事 by botdo » 2年前

なるほど!そのように考えるんですか!
勉強になります。もっと頭を柔らかく考えてみます!

返信

“C言語何でも質問掲示板” へ戻る