C/C++の宿題を片付けます 96代目
レス数が900を超えています。1000を超えると表示できなくなるよ。
【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはやめましょう。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
【C 関数検索 man on WWW】 http://www.linux.or.jp/JM/index.html
【過去ログ検索】 http://chomework.sakura.ne.jp/
【wiki】 http://www23.atwiki.jp/homework/
【前スレ】
C/C++の宿題を片付けます 95代目
http://pc11.2ch.net/test/read.cgi/tech/1187944110/
0830デフォルトの名無しさん
2007/10/08(月) 11:51:310831 ◆OJTev..Ns6
2007/10/08(月) 11:59:22削除ができるプログラミングを作成
[2] 環境
[2.1] OS:Windows
[2.2] コンパイラ名とバージョン:VC2005
[2.3] 言語: C
[3] 期限:できれば早目でオナガイ(´д`;)
(´д`)マッタクモッテワカリマセン
void InsertNode(List *list,char name,int sex,int age,int birth,int zipcode,char addr, int *tell)
{
Index ptr = Top;
Top = GetIndex(list);
SetNode(&list->n[Top], name,sex,age,birth,zipcode,addr,tell,ptr);
}
中略
int main(void)
{
Menu menu;
List list;
InitList(&list,100);
do{
Node x;
switch (menu = SelectMenu())
{
case Insert: x = Read("挿入");
InsertNode(&list,x.name,x.sex,x.age,x.birth,x.zipcode,x.addr,x.tell);
break;
エラーMSG
mainのInsertNodeの
8 番目の引数を 'int' から 'int *' に変換できません。(新しい機能 ; ヘルプを参照)
整数型からポインタ型への変換には reinterpret_cast、C スタイル キャストまたは関数スタイル キャストが必要です。
0832デフォルトの名無しさん
2007/10/08(月) 12:04:41の回答がまだないようだ…この問題でスレの品格が問われるのだが…
0833デフォルトの名無しさん
2007/10/08(月) 12:08:37そういう偉そうなことが言えるんなら、お前が解いてやれよw
0834デフォルトの名無しさん
2007/10/08(月) 12:16:21直リンしてみた
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5022.c
0835デフォルトの名無しさん
2007/10/08(月) 12:17:27問題文に中略とか使って説明省くような奴は今すぐ死んで教官に絞られて来い
0836デフォルトの名無しさん
2007/10/08(月) 13:08:09あっ、ごめ。勘違いしてC++で書いちゃった。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5023.txt
0837 ◆vLIz8KOkPM
2007/10/08(月) 13:10:49初心者でも理解しやすいプログラム(forとかifを使用して、mallocなどを使わず、構造体をシンプルに
struct bookdate{
char author[256]
char title[256]
char publisher[256]
int year
};
みたいな感じで書いていただけないでしょうか……?
0838デフォルトの名無しさん
2007/10/08(月) 13:16:51char *author,
*title,
*publisher;
int published_date;
} cite;
のほうがシンプルだと思うが
0839 ◆vLIz8KOkPM
2007/10/08(月) 13:18:36typedef struct _cite{
char *author,
*title,
*publisher;
int published_date;
} cite;
が理解できないんです・・・
0840デフォルトの名無しさん
2007/10/08(月) 13:24:26その問題文じゃ何も作れん。
サンプルコードも含めて問題全体をどっかにアップするなりしてくれ
0841デフォルトの名無しさん
2007/10/08(月) 13:26:32全く難解じゃないから少し勉強しろ
0842デフォルトの名無しさん
2007/10/08(月) 13:30:00間違ってC++で書いちゃったので、シンプルなCに書き換えました。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5024.txt
0843デフォルトの名無しさん
2007/10/08(月) 13:55:400844デフォルトの名無しさん
2007/10/08(月) 14:02:07>void InsertNode(List *list,char name,int sex,int age,int birth,int zipcode,char addr, int *tell)
こんな引数だし。名前一文字か、っていう
エラー書いてあるし、多分書きかけの
0845デフォルトの名無しさん
2007/10/08(月) 14:08:18とりあえず書いてみて。
0846 ◆OJTev..Ns6
2007/10/08(月) 14:08:54問題 構造体を使用して”名前、性別、年齢、生年月日、郵便番号、住所、電話番号を表示させる
又、データの追加、削除ができるこでき一覧表示は各項目でソートされていること
0847デフォルトの名無しさん
2007/10/08(月) 14:10:09C++でも良いですか?私の今の気分はC++なんですが・・・(´・ω・`)
0848デフォルトの名無しさん
2007/10/08(月) 14:10:57なんか>>831の後ろに付いてるソースコードは無視して良いの?
0849デフォルトの名無しさん
2007/10/08(月) 14:13:40それ機能要件じゃん
本当にいいのか?
0850 ◆OJTev..Ns6
2007/10/08(月) 14:30:45すみません。。。Cで指令が出てるもんで(´・ω・`)
>>848
問題ないです(^ω^)
>>849
機能要件??
すみません、まだまだ未熟ですのでわからないですorz
0851 ◆OJTev..Ns6
2007/10/08(月) 14:35:460852デフォルトの名無しさん
2007/10/08(月) 14:39:32了解です。では私の気分をCに切り替えます。
0853デフォルトの名無しさん
2007/10/08(月) 14:41:14ちなみに年齢は、生年月日と今日の日付から算出可能。
というかそうすべきだと思うのですが・・・(´・ω・`)
0854デフォルトの名無しさん
2007/10/08(月) 14:49:09色々突っ込みどころが満載なわけだが
> 問題 構造体を使用して”名前、性別、年齢、生年月日、郵便番号、住所、電話番号を表示させる
> 又、データの追加、削除ができるこでき一覧表示は各項目でソートされていること
・構造体を使用することで,何かを表示させることはできない
・「データの追加,削除」のデータが曖昧.名前?性別?…それとも構造体?
・「一覧表示は各項目でソートされていること」はそもそも日本語おかしい
0855デフォルトの名無しさん
2007/10/08(月) 14:51:430856デフォルトの名無しさん
2007/10/08(月) 14:54:05>>1
0857デフォルトの名無しさん
2007/10/08(月) 15:11:28[2] 問題文(含コード&リンク):
原点(0,0)から初めて。<なら(左へ1移動) >なら(右へ1移動) ^なら(上へ1移動) vなら(小文字のvで下へ1移動)
を入力して最後にどこにいるかを出力するプログラムを作成する
入力例
<^^>>v<^v>
出力例
(1,1)
[3] 環境
[3.1] OS:xp
[3.2] コンパイラ名とバージョン:gcc 3.4
[3.3] 言語: C
[4] 期限: 無期限
[5] その他の制限: なし
0858デフォルトの名無しさん
2007/10/08(月) 15:15:50上、右が正方向でいいのか?
0859デフォルトの名無しさん
2007/10/08(月) 15:16:30ぶっちゃけ、どっちがいい?
0860デフォルトの名無しさん
2007/10/08(月) 15:16:45int main(void){
int x, y;
char buf[1024+1], *p;
scanf("%1024s", buf);
for(x=y=0, p=buf;*p!='\0';p++)
switch(*p){
case '<': x--; break;
case '>': x++; break;
case '^': y--; break;
case 'v': y++; break;
}
printf("(%d,%d)\n",x,y);
}
0861デフォルトの名無しさん
2007/10/08(月) 15:19:390862デフォルトの名無しさん
2007/10/08(月) 15:21:070863デフォルトの名無しさん
2007/10/08(月) 15:30:38[2] 問題文(含コード&リンク):
�@ 10進数を2進数に変換するプログラムと
�A 2進数を10進数に変換するプログラムを作れ
ただし最初の入力で1を入力すれば�@を2を入力すれば�Aを
例1
2進数変換or10進数変換 (2or10)->2
2進数に変換したい数字を入力してください->4
100
例2
2進数変換or10進数変換 (2or10)->10
10進数に変換したい数字を入力してください->100
4
[3] 環境
[3.1] OS:xp
[3.2] コンパイラ名とバージョン:gcc 3.4
[3.3] 言語: C
[4] 期限: 無期限
[5] その他の制限: なし
連続ですみません
0864デフォルトの名無しさん
2007/10/08(月) 15:32:28入力する数値の制限はないのか?
・負数ならどうなる?
・100万桁ならどうなる?
・無限大は入力できる?
とか
0865デフォルトの名無しさん
2007/10/08(月) 15:33:470866デフォルトの名無しさん
2007/10/08(月) 15:35:50負数は無いものとして
入力桁数は
両方10桁でお願いします
0867デフォルトの名無しさん
2007/10/08(月) 15:46:023行目の「ただし最初の入力で1を入力すれば�@を2を入力すれば�Aを」ですが
「ただし最初の入力で2を入力すれば�@を10を入力すれば�Aを」の間違いでした
すみません
0868デフォルトの名無しさん
2007/10/08(月) 16:22:08[2] 問題文(含コード&リンク): データベースを作成しなさい。(詳しくは下で)
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: gcc または VC++
[3.3] 言語: C
[4] 期限: 10/09 13:00 (10/12 16:00最終期限)
[5] その他の制限:
・検索、挿入、削除、変更、ソート、出力の6機能を備えること。
・出力は標準出力、入力は標準入力を使うこと。
・挿入、削除、変更が行われる度に、データベースファイルを更新すること。
・検索はレコードの各項目に対して行えること。検索結果は20件を超える場合は20件ずつ表示すること。
・検索結果を表示する際、前の20件表示、次の20件表示、検索結果から1件選んで削除・変更・出力できること。
・必要ならば作業ファイルを作成してもよい。ただし、プログラム終了時には削除すること。
・挿入は先頭、末尾、番号指定で行えること。
・削除は全体から番号指定で1件削除、検索結果の全件削除ができること。
・ソートはレコードの各項目に対して行えること。また、昇順・降順を選択できること。
・データベースはファイルに保存されること。ファイル名はDATABASE.TXTとする。
・レコードは480Byte固定長、先頭から次の順に定義する。(*は入力時省略可、+は入力させない事を意味する。)
削除フラグ+:半角数字1桁(初期値0、削除されたら1に変更) 書名:半角80字(全角40字) シリーズ*:半角80字(全角40字) 巻数*:半角数字3桁(000〜999、省略時999)
著者:半角80字(全角40字) 出版社:半角80字(全角40字) レーベル*:半角50字(全角25字)(省略時はXで埋める)
初版発行日:半角数字8桁(2007年1月1日ならば20070101) 価格:半角数字6桁(480円ならば000480、4ドル95セントなら100495)
ISBN:半角数字13桁(10桁の場合は余りを空白で埋める)
登録日時+:半角数字14桁(2007年1月1日0時30分59秒ならば20070101003059。操作時にシステム時計をみて自動的に記録。)
更新日時+:半角数字14桁(同上) 予約領域:52Byte(Xで埋める)
0869デフォルトの名無しさん
2007/10/08(月) 16:28:41わざわざ読みにくくするなよ・・・
結局ファイルフォーマットとデータフォーマットはどーなってんの
0870デフォルトの名無しさん
2007/10/08(月) 16:40:05・レコードは480Byte固定長、先頭から次の順に定義する。
(*は入力時省略可、+は入力させない事を意味する。)
削除フラグ+:半角数字1桁(初期値0、削除されたら1に変更。)
書名 :半角80字(全角40字)
シリーズ* :半角80字(全角40字)
巻数* :半角数字3桁(000〜999、省略時999)
著者 :半角80字(全角40字)
出版社 :半角80字(全角40字)
レーベル* :半角50字(全角25字)(省略時はXで埋める)
初版発行日 :半角数字8桁(2007年1月1日ならば20070101)
価格 :半角数字6桁(480円ならば000480、4ドル95セントなら100495)
ISBN :半角数字13桁(10桁の場合は余りを空白で埋める)
登録日時+ :半角数字14桁(2007年1月1日0時30分59秒ならば20070101003059。操作時にシステム時計をみて自動的に記録。)
更新日時+ :半角数字14桁(同上)
予約領域 :52Byte(Xで埋める)
ファイルフォーマットは区切り無くレコードを連続記録したものでOKです。
特に指定されてなければ、余りは空白で埋めます。
0871デフォルトの名無しさん
2007/10/08(月) 16:43:260872デフォルトの名無しさん
2007/10/08(月) 16:44:47[1] 授業単元:
[2] 問題文(含コード&リンク): ランダムに何文字かのアルファベットを入力したとき、
そこに含まれる母音の種類(a,i,u,e,o)と、
その総数を表すプログラム。
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: VC++ 2005
[3.3] 言語: C++
[4] 期限: 明日まで
[5] その他の制限: なし
よろしくお願いします
0873デフォルトの名無しさん
2007/10/08(月) 16:48:43入力例と出力例をお願いします
0874デフォルトの名無しさん
2007/10/08(月) 16:53:59母音の種類:
その総数:0
0875デフォルトの名無しさん
2007/10/08(月) 16:55:160876デフォルトの名無しさん
2007/10/08(月) 16:56:500877デフォルトの名無しさん
2007/10/08(月) 16:58:440878872
2007/10/08(月) 17:05:50こんな感じでお願いします
//アルファベットを入力してください
How are you?
//母音は o a e o u です
//5 個の母音が含まれています
0879デフォルトの名無しさん
2007/10/08(月) 17:07:390880デフォルトの名無しさん
2007/10/08(月) 17:10:27つまり aiueo aiueo aiueo
なら
母音はaiueoaiueoaiueo
15 個の母音が含まれています
ってのでいいのね
0881デフォルトの名無しさん
2007/10/08(月) 17:12:130882デフォルトの名無しさん
2007/10/08(月) 17:13:16main(){int i,j,r;char s[80],c[10]={'a','i','u','e','o','A','I','U','E','O'};
while(1){r=0;scanf("%s",s);for(i=0;i!=80,s[i]!=0;i++)for(j=0;j!=10;j++)if(s[i]
==c[j])r++;printf("%d\n", r);}}
0884872
2007/10/08(月) 17:25:23正直、よく分かりません
>>882
すいません、エラー1です
// 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートし// ていません
0885デフォルトの名無しさん
2007/10/08(月) 17:49:47main()→int main()
0886デフォルトの名無しさん
2007/10/08(月) 17:50:18すまない、Cだと思ってた。C++でやりなおした。
#include <iostream>
int main()
{
const int B=5,L=80;
char s[L],c1[B]={'a','i','u','e','o'},c2[B]={'A','I','U','E','O'};
while(1)
{
int i,j,r[B];
std::cin >> s;
for(i=0;i!=B;i++) r[i]=0;
for(i=0;i!=L&&s[i]!=0;i++)
{
for(j=0;j!=B;j++) if(s[i]==c1[j]||s[i]==c2[j])r[j]++;
}
std::cout << "含まれてるボイン";
for(j=0;j!=B;j++) if(r[j]!=0) std::cout << c1[j]; cout << std::endl;
std::cout << "その数" << r[0]+r[1]+r[2]+r[3]+r[4] << std::endl;
}
return 0;
}
0887872
2007/10/08(月) 18:08:11ありがとうございました
しかしエラー3と出てしまいます
// (16) : error C2065: 'cout' : 定義されていない識別子です。
// (16) : error C2563: 仮パラメータ リストまたは関数へのポインタが、適合していません。
// (16) : error C2568: '<<' : オーバーロード関数のうち、どれを呼び出すのか決定できません。
0888デフォルトの名無しさん
2007/10/08(月) 18:09:170889デフォルトの名無しさん
2007/10/08(月) 18:09:36自分でも少しくらいチェック汁
std::cout
0890デフォルトの名無しさん
2007/10/08(月) 18:13:45[2] 問題文(含コード&リンク):
RC回路(4端子)のVo/Viと周波数fの関係を図示せよ。(Vo/Viは縦軸、周波数fは横軸)
R = 1kΩ、 C = 1μF
Vo/Vi = 1 / (1 + jωCR)
周波数fは、1、3、5、7、10、30、50、70、100・・・と増やしていく。
Cで計算した結果をExcelでグラフ化する。
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 10月10日まで
[5] その他の制限:なし
よろしくお願いします
0891872
2007/10/08(月) 18:19:36ありがとうございました
0892デフォルトの名無しさん
2007/10/08(月) 18:55:19参考URLが欲しいところ
0893890
2007/10/08(月) 19:06:44|____
| \
| \
| \
| \
| \
| \
| \
| \
| \_____
|______________________f
0894890
2007/10/08(月) 19:09:36Excelで表したとき>>893のようなグラフが出来上がれば成功です
紙面で出された課題ですのでURLはありません
0895デフォルトの名無しさん
2007/10/08(月) 19:36:04[2] 問題文(含コード&リンク):15+6,20÷5,10*8,12*(5+10),10+2の計算問題で答えを入力して
最後に正解数を表示させる。
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン:gcc 3.4
[3.3] 言語: C
[4] 期限:早めにお願いします
0896デフォルトの名無しさん
2007/10/08(月) 19:36:30永遠の17歳とか閣下とか聖徳太子とかが困る
0897852
2007/10/08(月) 19:44:03とりあえず私の読解力の限界にチャレンジしつつ、問題を解釈し
組んでみました。
久しぶりのCなので、ちょっと変かもしれません。
って、もう遅かったかな?
( ´∀`)つttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5026.txt
0898デフォルトの名無しさん
2007/10/08(月) 19:57:21#include<stdio.h>
#include<math.h>
int main(void){
const double R=1.0e+3, C=1.0e-6;
double Vo_Vi; // Vo / Vi
double f, omega, r;
int i, j, table[]={1,3,5,7};
for(i=1;i<=5;i++){
r = pow(10.0, i);
for(j=0;j<sizeof(table)/sizeof(*table);j++){
f = table[j] * r; // 周波数
omega = 2 * M_PI * f; // 周波数 → 角速度 変換
Vo_Vi = 1.0 / (1.0 + cos(omega * C * R)); // 注意!cos が -1 の時除算エラー
printf("%f , %.3e\n", f, Vo_Vi);
}
}
return 0;
}
0899デフォルトの名無しさん
2007/10/08(月) 20:08:27[2] 問題文(含コード&リンク):
�@ 10進数を2進数に変換するプログラムと
�A 2進数を10進数に変換するプログラムを作れ
ただし最初の入力で2を入力すれば�@を10を入力すれば�Aを
負数は無いものとし
入力桁数は両方10桁
例1
2進数変換or10進数変換 (2or10)->2
2進数に変換したい数字を入力してください->4
100
例2
2進数変換or10進数変換 (2or10)->10
10進数に変換したい数字を入力してください->100
4
[3] 環境
[3.1] OS:xp
[3.2] コンパイラ名とバージョン:gcc 3.4
[3.3] 言語: C
[4] 期限: 無期限
[5] その他の制限: なし
よろしくお願いしますお願いします
0901デフォルトの名無しさん
2007/10/08(月) 20:59:01こんな感じでよろしいでしょうか?
( ´∀`)つttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5027.txt
0902デフォルトの名無しさん
2007/10/08(月) 21:01:0010桁の入力可
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5028.c
0903デフォルトの名無しさん
2007/10/08(月) 21:02:23なんで回答が着きにくいかってーと
Excelで図形を表示するとこまで頑張ると,COMつかわにゃならんからだ.
せめて数値計算だけでとどめて欲しい
0904デフォルトの名無しさん
2007/10/08(月) 21:19:27こんな多機能なものを標準入力から操作するって、正気とは思えん。
> ファイルフォーマットは区切り無くレコードを連続記録したものでOKです。
連続記録したものでなくてもOKてことか?更新毎に(順番を保持しつつ)ファイルに書き出すってことなら
連続記録だといちいちファイル全上書きになって非効率なんだが。
まあ12日までなら小細工してるヒマないかもだけどな。
0905890
2007/10/08(月) 21:22:00失礼しました
Excelはこちらでやりますので、Cで数値を示すところまでかまいません
>>898では、計算結果がおかしいので困っています。力を貸していただけると助かります
私の解釈が間違ってたらすいません
0906デフォルトの名無しさん
2007/10/08(月) 21:25:35どう見ても固定長レコードでseekや何かを使えってこったろ
削除は元のレコードに削除フラグを立てるだけ
更新は元のレコードだけを書き換える
挿入はケツに追加していくだけ
性能要件は無いから、仕様を満たすだけならインデクスを保守する必要は
ないだろうが、やれば評価は高くなるだろうな
0907デフォルトの名無しさん
2007/10/08(月) 21:31:36いやね、
> ・挿入は先頭、末尾、番号指定で行えること。
これがいやらしいとは思わんかw
0908デフォルトの名無しさん
2007/10/08(月) 21:35:00なるほど、すまん。それを見落としていたぜ。
0909895
2007/10/08(月) 21:36:24わかりません。
どなたか教えてください('A`)
0910デフォルトの名無しさん
2007/10/08(月) 21:41:46レス大変遅れて申し訳ありません。
本当にありがとうございました。
0911デフォルトの名無しさん
2007/10/08(月) 21:48:08#include<stdio.h>
int main(void)
{
typedef struct {
char* ques;
double ans;
} DATA;
DATA data[] = {{"15+6", 15+6}, {"20÷5", 20/5}, {"10*8", 10*8}, {"12*(5+10)", 12*(5+10)}, {"10+2", 10+2}};
int i, sum;
double input;
for(i=0, sum=0; i<sizeof(data)/sizeof(data[0]); i++)
{
printf("問題%d\n%s = ", i+1, data[i].ques);
scanf("%lf", &input);
if(input == data[i].ans)
{
printf("正解!\n");
sum++;
}
else
{
printf("不正解!\n");
}
}
printf("正解数:%d\n", sum);
return 0;
}
0912デフォルトの名無しさん
2007/10/08(月) 21:58:11#include<stdio.h>
#include<math.h>
#ifndef M_PI
#define M_PI 3.14159265358979323846
#endif
int main()
{
const double ConstR = 1.0e+3, ConstC = 1.0e-6;
for (int i = 1; i <= 5; ++i) {
const int table[] = {1, 3, 5, 7, };
for (int j = 0; j < sizeof(table) / sizeof(* table); ++j) {
const double f = table[j] * pow(10, i); // 周波数
const double omegaCR = 2 * M_PI * f * ConstC * ConstR;
const double Vo_Vi = 1.0 / sqrt(1.0 + omegaCR * omegaCR);
printf("%g, %g\n", f, Vo_Vi);
}
}
return 0;
}
0913デフォルトの名無しさん
2007/10/08(月) 22:03:440914デフォルトの名無しさん
2007/10/08(月) 22:06:43気のせいです
0915912
2007/10/08(月) 22:10:280917デフォルトの名無しさん
2007/10/08(月) 22:19:35#define R (1*1.0e+3)
#define C (1*1.0e-6)
typedef struct _complex{ double r, i; } complex;
complex constructor(double r, double i){ complex _={r, i}; return _; }
double cabs(complex v){ return v.r*v.r+v.i*v.i; }
complex inverse(complex v){ double den=cabs(v); complex _={v.r/den, -v.i/den}; return _; }
complex VoVi(double freq){ return inverse(constructor(1, freq*C*R)); }
int main(void){
int freqBase;
int freqPer;
printf("freq(rad), Real(VoVi), Img(VoVi), Gain(VoVi)\n");
for(freqPer=1; freqPer<1.0e+9 ; freqPer*=10)
for(freqBase=1; freqBase<=7; freqBase+=2){
complex _=VoVi(freqBase*freqPer);
printf("%d, %10.10f, %10.10f, %10.10f\n", freqBase*freqPer, _, cabs(_));
}
}
こうか?
最近電気回路とか忘れた
0918デフォルトの名無しさん
2007/10/08(月) 22:30:22今後の勉強のために、添削また別解などをここでお願いすることは出来るのでしょうか?
0919デフォルトの名無しさん
2007/10/08(月) 22:32:25http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5031.zip
これでよかったら使え
0920デフォルトの名無しさん
2007/10/08(月) 22:36:40いいと思うよ。
ただ、そういう事情だと書いておいてくれると、切羽詰ってる
課題との優先順位がついて、助かる人がいるかもしれない。
0921デフォルトの名無しさん
2007/10/08(月) 22:40:42習ったところはif文とfor文、switch文とcontinue文まで習いました。
for文を一回か、二重ループにしないといけないのでわからないです。
どなたかわかる方、お願いします。
西暦と月を入力すると,以下のようなカレンダーを出力するプログラムを作成せよ.
例として,2007年7月のカレンダーを示す.
ヒント
1.閏年(うるうどし)にも対応すること.
1.西暦年が4で割り切れる年は閏年
2.ただし、西暦年が100で割り切れる年は平年
3.ただし、西暦年が400で割り切れる年は閏年
2.指定された年,月の一日(ついたち)の曜日を求めると良い.曜日を求めるには,Zellerの公式を使う.年も月も整数型の変数を用い,日の部分は1に置き換えること.
(年+年/4-年/100+年/400+(13*月+8)/5+日 )%7
1月と2月は前年の13月,14月として考える.
この式の答えと曜日の関係は以下の通り.
0:日曜日,1:月曜日,2:火曜日....,6:土曜日
3.色付け
printf("\033[31m%d",x);と記述すれば,変数xを赤で表示する.
printf("\033[34m%d",x);と記述すれば,変数xを青で表示する.
printf("\033[0m%d",x);と記述すれば,変数xを標準設定で表示する.
一度色指定すれば,次に色指定するまで設定が反映されることに注意する.
0922デフォルトの名無しさん
2007/10/08(月) 22:42:35C言語です。すいません
0923デフォルトの名無しさん
2007/10/08(月) 22:46:10>>1
0924デフォルトの名無しさん
2007/10/08(月) 22:48:46OSはknoopixEdu6をつかってます
0925デフォルトの名無しさん
2007/10/08(月) 22:51:32[2] 問題文(含コード&リンク):マクロ定義、サブ関数を使った四字熟語の読みをキーボード入力する課題
一刻千金( いっこくせんきん)
一騎当千( いっきとうせん)
一朝一夕 (いっちょういっせき)
if文,for文,while文,do文,switch文の五つの文を複数使うのが条件。(できれば全部です。
補足:無駄に長いプログラミングになっても大丈夫です。
[3] 環境
[3.1] OS:xp
[3.2] コンパイラ名とバージョン:gcc 3.4
[3.3] 言語: C
[4] 期限: 10月10日
[5] その他の制限: なし
よろしくお願いします(ペコリ
0926デフォルトの名無しさん
2007/10/08(月) 22:52:43他の質問者のように>>1のテンプレートに内容をを当てはめて質問するように
0927デフォルトの名無しさん
2007/10/08(月) 22:53:47エスパーが必要な書き方するな。
0928デフォルトの名無しさん
2007/10/08(月) 23:02:560929デフォルトの名無しさん
2007/10/08(月) 23:14:28ありがとうございます。
[1] 授業単元:プログラミング�T
[2] 問題文:下図の左のグラフ(頂点と辺からなる図)で、出発点を1とする一筆書きの書き順を全パターン生成しなさい。
[3] 環境
[3.1] OS:Windows XP(自宅) / Linux(学校)
[3.2] コンパイラ名とバージョン:Visual C++ 2005 Express Edition(自宅)
[3.3] 言語:C
[4] 期限:無期限
プログラミング歴約3ヶ月、教科書に柴田望洋著 明解C言語 入門編を使用おり、現在第七章まで学習が進んでいます。
この課題は既に提出済みなので、期限は存在しません。
ここにお願いしましたのは、今後の勉強のために、皆様にご指導いただけたらと思った次第であります。
アップロードしたファイルの中身は
・問題の詳細(画面をキャプチャしたファイルです)
・自分が作ったソースコード
・問題に対する考察
などが入っています。
添削や別解の案などがありましたらご教授下さい。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5033.zip
レス数が900を超えています。1000を超えると表示できなくなるよ。