- 1 名前:デフォルトの名無しさん [2009/01/15(木) 23:21:27 ]
- あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。気に入らない質問やその他や発言はスルーの方向で。
【質問者へ】 回答者の便宜のため、質問の際は以下を行うことを推奨します。 ・質問は【質問テンプレ】を利用してください。 ・問題文は、出題されたまま全文を書いてください。 ・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。 ・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。 ・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。 ・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。 ・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。 【質問テンプレ】 [1] 授業単元: [2] 問題文(含コード&リンク): [3] 環境 [3.1] OS: (Windows/Linux/等々) [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) [3.3] 言語: (C/C++/どちらでも可 のいずれか) [4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) [5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々) 【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm 【C 関数検索 man on WWW】 www.linux.or.jp/JM/index.html 【過去ログ検索】 chomework.sakura.ne.jp/ 【wiki】 www23.atwiki.jp/homework/ 前スレ C/C++の宿題を片付けます 121代目 pc11.2ch.net/test/read.cgi/tech/1230678123/
- 247 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:40:47 ]
- >>240
誤差がぁぁぁ kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8809.c
- 248 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:42:30 ]
- >>240
#include<stdio.h> #include<math.h> typedef struct { int deg, min, sec; } Degree; void rad2deg(Degree *pdeg, double rad) { pdeg->deg = (int)rad; rad = (fabs(rad) - fabs(pdeg->deg)) * 60; pdeg->min = (int)rad; rad = (rad - pdeg->min) * 60; pdeg->sec = (int)rad; } void print_deg(const Degree *pdeg) { printf("%d度%02d分%02d秒\n", pdeg->deg, pdeg->min, pdeg->sec); } void degsub(Degree *pdiff, const Degree *pdeg1, const Degree *pdeg2) { pdiff->sec = pdeg1->sec - pdeg2->sec; pdiff->min = pdeg1->min - pdeg2->min; pdiff->deg = pdeg1->deg - pdeg2->deg; if (pdiff->sec < 0) { pdiff->sec += 60; pdiff->min --; } if (pdiff->min < 0) { pdiff->min += 60; pdiff->deg --; } } int main() { double rad1, rad2; Degree deg1, deg2, degdiff; printf("radian1="); scanf("%lf", &rad1); printf("radian2="); scanf("%lf", &rad2); rad2deg(°1, rad1); printf("degree1="); print_deg(°1); rad2deg(°2, rad2); printf("degree2="); print_deg(°2); degsub(°diff, °1, °2); printf("degree1-degree2="); print_deg(°diff); return 0; }
- 249 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:55:09 ]
- >>240の人気に嫉妬
#include <stdio.h> #include <math.h> struct ds_t { int d; int m; int s;}; struct ds_t dec2ds(double dd){ struct ds_t ds; ds.d = floor(dd); ds.m = floor(60*(dd - ds.d) + 0.5/60); ds.s = floor(3600*(dd - ds.d) - 60*ds.m + 0.5); return ds; } void print_ds(struct ds_t *ds){ printf("%d.%d\'%d\"\n", ds->d, ds->m, ds->s); } struct ds_t sub_ds(struct ds_t *ds1, struct ds_t *ds2){ struct ds_t ds3; ds3.d = ds1->d - ds2->d; ds3.m = ds1->m - ds2->m; ds3.s = ds1->s - ds2->s; if(ds3.s < 0) ds3.s += 60, ds3.m--; if(ds3.m < 0) ds3.m += 60, ds3.d--; return ds3; } int main(void){ double dd1, dd2; struct ds_t ds1, ds2, ds3; scanf("%lf%lf", &dd1, &dd2); ds1 = dec2ds(dd1); ds2 = dec2ds(dd2); print_ds(&ds1); print_ds(&ds2); ds3 = sub_ds(&ds1, &ds2); return 0; }
|

|