コーヒー豆の名前と100gあたりの値段をメンバとして持つ構造体
を定義し,以下の3種の豆を定義する.
• Mocha 350円/100g
• Kona 450円/100g
• Blend 300円/100g
標準入力からコーヒー豆の名前と重量(g)を入力したときに,価格
を標準出力に出力するプログラムを作成せよ.
出力がこうなります。
$ ./a.out
豆の種類: Blend
分量(g): 350
価格: 1050
冷やかしなどはいりません
すみません雑な質問ですけど解答していただければ助かります、、、
すいません 急ぎで解答をお願いします。
Re: すいません 急ぎで解答をお願いします。
オフトピック
過去、質問するだけしておいて解決しようとしない「冷やかし質問」ばかりしておいてそれはないですよ。tennga さんが書きました: 冷やかしなどはいりません
すみません雑な質問ですけど解答していただければ助かります、、、
http://dixq.net/forum/viewtopic.php?f=3&t=19203
http://dixq.net/forum/viewtopic.php?f=3&t=19179
http://dixq.net/forum/viewtopic.php?f=3&t=19156
http://dixq.net/forum/viewtopic.php?f=3&t=19103
自分の望む解答(回答ではない)以外を「冷やかしなど」と表現されているようでは、
まともな回答はつかないと思います。
実際にコーヒー豆の構造体を定義するところから始めてはいかがでしょうか。
それが分かれば実行中にキーボードから入力を受け付け受け取る部分を追加し、
入力された値に応じて適切な構造体から100g単価を取得した上で入力されたグラム数から合計額を計算し出力する流れになるかと思います。
ここは仕様を書くと自動でプログラムが作成される場ではないと思いますので、
まずはできるところからやってみてください。
Advanced Supporting Developer
無理やりこじつけ(ぉ
無理やりこじつけ(ぉ
- purin52002
- 記事: 235
- 登録日時: 7年前
- 連絡を取る:
Re: すいません 急ぎで解答をお願いします。
まずは自分で書けるところまで書いてみてください。
そのあとデバッグしていきましょう。
、、、というのもやっぱり冷やかしになってしまうのかしらorz
そのあとデバッグしていきましょう。
、、、というのもやっぱり冷やかしになってしまうのかしらorz
c++初心者を自負しています。
質問者さんには今後私にプログラミングを教えてくれるようにやさしく丁寧に教えるつもりです。ぎぶあんどていく^p^
回答者さんには精一杯感謝します。ぎぶおんりー^p^
質問者さんには今後私にプログラミングを教えてくれるようにやさしく丁寧に教えるつもりです。ぎぶあんどていく^p^
回答者さんには精一杯感謝します。ぎぶおんりー^p^
Re: すいません 急ぎで解答をお願いします。
これは質問ではなく命令ではないですか?tennga さんが書きました:標準入力からコーヒー豆の名前と重量(g)を入力したときに,価格
を標準出力に出力するプログラムを作成せよ.
質問はどこですか?tennga さんが書きました:すみません雑な質問ですけど解答していただければ助かります、、、
(これが課題かはわかりませんが)課題の丸投げは禁止です。
フォーラムルールを読んで従ってください。
どう質問していいか解らない時は、以下のテンプレをコピペして、
各項目に対して答える形で記載して下さい。
[hr]
[1] 質問文
[1.1] 自分が今行いたい事は何か
[1.2] どのように取り組んだか(プログラムコードがある場合記載)
[1.3] どのようなエラーやトラブルで困っているか(エラーメッセージが解る場合は記載)
[1.4] 今何がわからないのか、知りたいのか
[2] 環境
[2.1] OS : Windows, Linux等々
[2.2] コンパイラ名 : VC++ 2008EE, Borand C++, gcc等々
[3] その他
・どの程度C言語を理解しているか
・ライブラリを使っている場合は何を使っているか
[hr]
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: すいません 急ぎで解答をお願いします。
じゃあ、冷やかしでないのを。tennga さんが書きました: 冷やかしなどはいりません
#include <stdio.h>
#include <string.h>
#define LEN (20)
typedef struct {
char name[LEN];
int price;
} Coffee;
void get_price(Coffee *coffee, int kind)
{
char name[LEN];
int weight, i;
printf("豆の種類:"), scanf("%s", name);
printf("分量(g):"), scanf("%d", &weight);
for (i = 0; i < kind; i++) {
if (strcmp(name, coffee[i].name) == 0) {
printf("価格:%.0f\n", (double) coffee[i].price * weight / 100);
return;
}
}
printf("その豆は売ってません。\n");
}
int main(void)
{
Coffee coffee[] = {
{ "Mocha", 350 },
{ "Kona", 450 },
{ "Blend", 300 },
};
get_price(coffee, sizeof(coffee) / sizeof(coffee[0]));
return 0;
}
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。
プログラムは思ったとおりには動かない。書いたとおりに動く。
Re: すいません 急ぎで解答をお願いします。
これは、次のように実行時に初期化が行われます。
Coffee coffee[3];
memcpy(coffee[0].name, "Mocha\0\0\0\0\0\0\0\0\0\0\0\0\0\0", LEN);
coffee[0].price = 350;
memcpy(coffee[1].name, "Kona\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", LEN);
coffee[1].price = 450;
memcpy(coffee[2].name, "Blend\0\0\0\0\0\0\0\0\0\0\0\0\0\0", LEN);
coffee[2].price = 300;
分量が奇数の時、Mocha と Kona は 1円未満の端数が出て切り上げに
なってしまいます。
客商売では端数切捨てにしてほしいなあ、と思います。
#include <stdio.h>
struct { const char *種類; int 価格; } 表[] = {
{ "Mocha", 350 }, { "Kona", 450 }, { "Blend", 300 }
};
const int 個数 = sizeof 表 / sizeof *表;
int main(void)
{
char 種類[100]; int 分量, i;
printf("豆の種類: ");
scanf("%99s", 種類);
printf("分量(g): ");
if (scanf("%d", &分量) != 1) return 1;
for (i = 0; i < 個数 && strcmp(種類, 表[i].種類); i++) ;
if (i < 個数) printf("価格: %d\n", 表[i].価格 * 分量 / 100);
return 0;
}
tennga さんには、すべての回答者にコメントや質問や感謝の言葉などを
返信されることを希望します。解決へのチェックも忘れずに。