プログラミングについて再度質問です。ソースコード教えて欲しいです。stdilbとかEXIT使わない簡単なやつ教えて欲しいです。注文多くてすいません。
定価と消費税率(%)を引数として税込価格を返す price関数を作成
– 定価はint型、税率はdouble型、税込価格はdouble型とする
– main関数内でprice関数を呼び出し税込価格を計算させる
– price関数はmain関数の後に記述する
– 定価、税率(%)、税込価格を表示する(main関数内)
–税込価格の表示は小数点以下の値も表示する(四捨五入や切り捨ての必要なし)
No.3ベストアンサー
- 回答日時:
おっと、バグってるの書いちまった。
ほらな、コードがメンド臭くなるとバグの混入率も高くなるんだよ。
/* 修正版 */
#include <stdio.h>
double price(int reg_price, double tax_ratio);
int main(int argc, char** argv) {
int reg_price = 0;
int tax_ratio = 0;
int count = 0;
int carry = 1;
int base = 10;
if (argc != 3) {
return 1;
}
for (int i = 0; argv[1][i] != '\0'; i++) {
count++;
}
for (int i = 0; argv[1][i] != '\0'; i++) {
for (int j = count - i; j > 1; j--) {
carry *= base;
}
reg_price += (argv[1][i] - '0') * carry;
carry = 1;
}
count = 0;
for (int i = 0; argv[2][i] != '\0'; i++) {
count++;
}
carry = 1;
for (int i = 0; argv[2][i] != '\0'; i++) {
for (int j = count - i ; j > 1; j--) {
carry *= base;
}
tax_ratio += (argv[2][i] - '0') * carry;
carry = 1;
}
printf("%lf\n", price(reg_price, tax_ratio/100.0));
return 0;
}
double price(int reg_price, double tax_ratio) {
return reg_price * (1 + tax_ratio);
}
No.2
- 回答日時:
おっと。
バグってるの書いちまった。ほらな、コードがややこしくなるとバグの混入率も高くなるんだよ。
/* 修正版 */
#include <stdio.h>
double price(int reg_price, double tax_ratio);
int main(int argc, char** argv) {
int reg_price = 0;
int tax_ratio = 0;
int count = 0;
int carry = 1;
int base = 10;
if (argc != 3) {
return 1;
}
for (int i = 0; argv[1][i] != '\0'; i++) {
count++;
}
for (int i = 0; argv[1][i] != '\0'; i++) {
for (int j = count - i; j > 1; j--) {
carry *= base;
}
reg_price += (argv[1][i] - '0') * carry;
carry = 1;
}
count = 0;
for (int i = 0; argv[2][i] != '\0'; i++) {
count++;
}
carry = 1;
for (int i = 0; argv[2][i] != '\0'; i++) {
for (int j = count - i ; j > 1; j--) {
carry *= base;
}
tax_ratio += (argv[2][i] - '0') * carry;
carry = 1;
}
printf("%lf\n", price(reg_price, tax_ratio/100.0));
return 0;
}
double price(int reg_price, double tax_ratio) {
return reg_price * (1 + tax_ratio);
}
No.1
- 回答日時:
#include <stdio.h>
double price(int reg_price, double tax_ratio);
int main(int argc, char** argv) {
int reg_price = 0;
int tax_ratio = 0;
int count = 0;
int carry = 1;
int base = 10;
if (argc != 3) {
return 1;
}
for (int i = 0; argv[1][i] != '\0'; i++) {
count++;
}
for (int i = 0; argv[1][i] != '\0'; i++) {
for (int j = count; j > 1; j--) {
carry *= base;
}
reg_price += (argv[1][i] - '0') * carry;
}
count = 0;
for (int i = 0; argv[2][i] != '\0'; i++) {
count++;
}
carry = 1;
for (int i = 0; argv[2][i] != '\0'; i++) {
for (int j = count; j > 1; j--) {
carry *= base;
}
tax_ratio += (argv[2][i] - '0') * carry;
}
printf("%lf\n", price(reg_price, tax_ratio/100.0));
return 0;
}
double price(int reg_price, double tax_ratio) {
return reg_price * (1 + tax_ratio);
}
/*
> stdilbとかEXIT使わない簡単なやつ教えて欲しいです。
適切なライブラリを用いないとむしろコードがややこしくなる、って事を知るべきだ。
*/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語初心者です、、、お助けください 2 2023/03/14 20:08
- その他(お金・保険・資産運用) 至急!【Wolt】各メニューの価格設定の簡単な計算方法 3 2023/03/05 11:58
- 国産バイク 大型バイク カワサキz900rsに付ける ヨシムラのマフラーの質問です、 【 商 品 I D 】14 2 2023/06/27 13:43
- 専門店・ホームセンター そのホームセンターは昔、消費税込価格表示でした。 当時「当店は、消費税込価格表示です」と、客にその有 6 2023/01/15 10:11
- 経済学 答えが二つ出て曖昧なので誰か時給教えていただけると幸いです。 ある財の市場における需要関数と供給関数 3 2022/11/15 23:10
- テレビ 家電量販店の無料保証3年と5年の違い(液晶テレビ)はどういう基準で決まるのですか? 8 2023/08/06 08:22
- 経済学 ミクロ経済学 4 2023/01/28 01:57
- 消費税 消費税の納税額の計算 1 2023/02/19 18:12
- Visual Basic(VBA) VBAでのMATCH関数 3 2022/10/17 19:06
- 固定資産税・不動産取得税 中古マンションの土地・建物割合について 1 2022/06/02 15:06
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語での引数の省略方法
-
「指定されたキャストは有効で...
-
#define _CRT_SECURE_NO_WARNIN...
-
C言語 エラーの原因がわからな...
-
課題でつまってます・・・
-
複数桁10進数の*桁目だけを抽出...
-
数字列を3桁ごとにカンマで区切...
-
配列v2を逆順にしてv1に格納す...
-
double型の値を、一桁ずつint型...
-
C言語の配列をC++のvectorに高...
-
if と配列の組み合わせ
-
【C++】関数ポインタの使い方
-
ラップ関数とはどんなものですか?
-
このプログラミング誰か教えて...
-
Win32APIで作るコンボボックス...
-
卒業研究でよく分からないとこ...
-
C#のコンパイルエラーCS0120に...
-
C言語についてです。
-
c言語の配列を使ってサイコロを...
-
(int *)の意味
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
「指定されたキャストは有効で...
-
C言語 配列と関数の練習問題
-
複数桁10進数の*桁目だけを抽出...
-
(int *)の意味
-
if と配列の組み合わせ
-
ラップ関数とはどんなものですか?
-
卒業研究でよく分からないとこ...
-
【C++】関数ポインタの使い方
-
c言語
-
足して100になるような乱数のア...
-
C言語初心者です、、、お助けく...
-
数字列を3桁ごとにカンマで区切...
-
C言語 エラーの原因がわからな...
-
実数の整数部,小数部の取得
-
課題でつまってます・・・
-
商と剰余を同時に求める(C言語)
-
C言語の配列をC++のvectorに高...
-
std::set<int> で、ある値が何...
おすすめ情報