C/C++の宿題を片付けます 113代目

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2008/07/22(火) 23:32:04
>>950
あと、これがコンパイルできんようなら出直せ!!

#include <stdio.h>
int main(){
printf("じゃあの");
return 0;
}

じゃあの。
953354:2008/07/22(火) 23:32:40
394さんに解決していただいたのですが結果の出力を
以下のようにしなければならなかったようです。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7482.txt
どなたか変更していただけないでしょうか?

354の解答:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7429.txt
954 ◆prGJdss8WM :2008/07/22(火) 23:35:29
>>951
UTF-8 Tera Term Pro
を使ってやってます。

エラー文なんですが…
12-13: file not recognized: File format not recognized
とでます。

955 ◆prGJdss8WM :2008/07/22(火) 23:36:49
>>952
はコンパイルできます!!
956デフォルトの名無しさん:2008/07/22(火) 23:37:19
>>954
コンパイラは何を使っているのかと聞いている。

gcc xxx.c

か?

それからエラー文は全部かけ。エラー文は全部かけ。大切なことなので2回言いました。
957デフォルトの名無しさん:2008/07/22(火) 23:43:56
>>954
一応、間違わないように念押しする。

コンパイルに使ったコマンドから、実際にでているエラー、コマンドを入力できるプロンプトまでを
全部残さず洗いざらい全て厳密に確実にまごうことなくすっきりはっきり全部書き出せ。
958デフォルトの名無しさん:2008/07/22(火) 23:51:06
>>957
935じゃないけど、とりあえず、Center.xが通らない。
959デフォルトの名無しさん:2008/07/22(火) 23:58:37
>>958
さんくす!とりあえずなおした。

#include <stdio.h>
#include <math.h>

struct point{ double x; double y;} Polygon[100];
typedef struct point point;

double Length(point A,point B){ return sqrt( (A.x - B.x) * (A.x - B.x) + (A.y - B.y) *(A.y - B.y) ); }
double TriArea(point A,point B,point C){ double a = Length(B,C) , b = Length(A,C), c = Length(A,B) , s = (a+b+c)/2.0; return sqrt(s*(s-a)*(s-b)*(s-c) );}
point TriCenter(point A,point B,point C){ point ret; ret.x = (A.x + B.x + C.x) / 3.0; ret.y = (A.y + B.y + C.y) / 3.0; return ret;}

int main(){
int i,n=5;double AreaTotal,area; point O,R,C;
Polygon[0].x = 3.0; Polygon[0].y = 9.0; Polygon[1].x = 3.0; Polygon[1].y = 16.0;
Polygon[2].x = 5.0; Polygon[2].y = 18.0;Polygon[3].x = 6.0; Polygon[3].y = 12.0;
Polygon[4].x = 5.0; Polygon[4].y = 6.0; Polygon[5].x = 3.0; Polygon[5].y = 9.0; // [0]
O.x = 0.0; O.y = 0.0; for(i=0;i<n;i++){ O.x += Polygon[i].x; O.y += Polygon[i].y;}O.x /= (double)n; O.y /= (double)n;

R.x = 0.0; R.y = 0.0;AreaTotal=0.0; for(i=0;i<n;i++){
C = TriCenter(O,Polygon[i],Polygon[i+1]);AreaTotal += area = TriArea(O,Polygon[i],Polygon[i+1]);
R.x += C.x * area; R.y += C.y * area;}
R.x /= AreaTotal; R.y /= AreaTotal; printf("%lf %lf\n",R.x,R.y);return 0;}
960 ◆prGJdss8WM :2008/07/23(水) 00:03:11
すみません…
コンパイラはxxx.cです

コンパイルに使ったコマンドはccコマンドです
エラー文はさっき書いたので全部です。
1行しかでてきません;
961デフォルトの名無しさん:2008/07/23(水) 00:05:01
962デフォルトの名無しさん:2008/07/23(水) 00:07:08
>>960
ファイルの拡張子を .c にしてからやり直してみて。
963 ◆prGJdss8WM :2008/07/23(水) 00:08:49
ちょっとよくわからないので明日友達に聞いてみます…
すみませんでした…
とりあえず実行結果だけでも教えていただけませんか?
964デフォルトの名無しさん:2008/07/23(水) 00:09:45
>>963
だ    が    こ    と    わ    る    !
965デフォルトの名無しさん:2008/07/23(水) 00:11:38
>>960
これは酷い
966 ◆prGJdss8WM :2008/07/23(水) 00:14:30
拡張子を.cにしてみたら
エラーの内容がかわりました。
/var/tmp//cc9r5EdA.o(.text+0x25): In function `Length':
: undefined reference to `sqrt'
/var/tmp//cc9r5EdA.o(.text+0xd7): In function `TriArea':
: undefined reference to `sqrt'

とでました!
967デフォルトの名無しさん:2008/07/23(水) 00:16:36
>>963
エラーの行の一行前と、一行後ろを教えてほしいな。
一行前は、コマンドプロンプトとあなたが入力したコマンドかもしれないし、
一行後ろは、ただのコマンドプロンプトかも知れないけれども、
画面に表示されているそのままに。
968 ◆prGJdss8WM :2008/07/23(水) 00:21:35
>>967
これです。
>はコマンドプロンプトです。


> cc 12-13.c
/var/tmp//cc9r5EdA.o(.text+0x25): In function `Length':
: undefined reference to `sqrt'
/var/tmp//cc9r5EdA.o(.text+0xd7): In function `TriArea':
: undefined reference to `sqrt'
>

969デフォルトの名無しさん:2008/07/23(水) 00:24:09
>>968

cc 12-13.c -lm
970デフォルトの名無しさん:2008/07/23(水) 00:30:07
>>911
コンパイルだけ通した。動作未確認。
#include <stdio.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <unistd.h>
int main() {
int servSock, clientSock, recvLen, totalLen, n1, n2;
struct sockaddr_in servAddr,clientAddr;
unsigned int clientLen;
char buf[8];
if ((servSock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) exit( 1 );
memset(&servAddr, 0, sizeof(servAddr));
servAddr.sin_family = AF_INET;
servAddr.sin_addr.s_addr = htonl(INADDR_ANY);
servAddr.sin_port = htons(12345);
if (bind(servSock, (struct sockaddr *) &servAddr, sizeof(servAddr)) < 0) exit( 2 );
if (listen(servSock, 1) < 0) exit( 3 );
while ( 1 ) {
clientLen = sizeof(clientAddr);
if ((clientSock = accept(servSock, (struct sockaddr *) &clientAddr, &clientLen)) < 0) exit ( 4 );
recvLen = totalLen = 0;
while ( recvLen < 8 ) {
if ((recvLen = recv(clientSock, buf + totalLen, 8, 0)) < 0) exit( 5 );
totalLen += recvLen;
}
n1 = ntohl(*(int*)buf);
n2 = ntohl(*(int*)(buf+4));
printf("%d+%d=%d\n", n1, n2, n1 + n2);
}
}
971 ◆prGJdss8WM :2008/07/23(水) 00:30:15
>>969
できました!!
実行したら

> ./a.out
4.386667 12.173333
>

とでました!!
でも、scanfで頂点の座標を与えないんです…(>_<)
972970:2008/07/23(水) 00:31:18
しまった。WinSockかもしれないんだ。。
973970:2008/07/23(水) 00:33:26
>>970を訂正。
×while ( recvLen < 8 )
○while ( totalLen < 8 )
974デフォルトの名無しさん:2008/07/23(水) 00:33:51
>>970
せめてIPv6 readyなコードにしてほしかった。
975 ◆prGJdss8WM :2008/07/23(水) 00:35:13
>>972
コンパイルしたらエラーがいっぱいでますです…

> cc 12-12.c -lm
12-12.c: In function `main':
12-12.c:8: error: storage size of 'servAddr' isn't known
12-12.c:8: error: storage size of 'clientAddr' isn't known
12-12.c:11: error: `IPPROTO_TCP' undeclared (first use in this function)
12-12.c:11: error: (Each undeclared identifier is reported only once
12-12.c:11: error: for each function it appears in.)
12-12.c:14: error: `INADDR_ANY' undeclared (first use in this function)
>

976デフォルトの名無しさん:2008/07/23(水) 00:37:42
>>971
>>935のどこにもscanfを使うなんて書いてない
977デフォルトの名無しさん:2008/07/23(水) 00:37:58
>>975
#include <netinet/in.h>
を追加
978 ◆prGJdss8WM :2008/07/23(水) 00:38:20
>>971

間違えました;
scanfで頂点の座標を与えてあげないといけないんです(>_<)
979デフォルトの名無しさん:2008/07/23(水) 00:50:17
980デフォルトの名無しさん:2008/07/23(水) 00:52:09
>>968 見たいに、printf/scanfの出来上がりイメージを書いたら、誰かやってくれるかもよ。
> cc 12-13
12-13: file not recognized: File format not recognized
>
981 ◆prGJdss8WM :2008/07/23(水) 00:59:21
>>979

ありがとうございます!!
でも、セグメントエラーってでます…;
あと、このプログラムの説明をしていただけませんか?
982デフォルトの名無しさん:2008/07/23(水) 01:00:01
[1] 授業単元: プログラミング
[2] 問題文:時計を表示するプログラムを作る
(書きかけのソースは下に書きます。)
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] Borland C++ ver5.0.0
 [3.3] 言語:C
[4] 期限:今日
[5] その他の制限:よくわからないですが、ポインタ辺りまでならいいと思います。
最上段の年月日と曜日がうまく表示されません。
どなたかお願いしますm(__)m
983982:2008/07/23(水) 01:00:40
#include <stdio.h>#include <time.h> #include <conio.h>
void main()
{
static char *week[] = {"日", "月", "火", "水", "木", "金", "土"};
time_t now, prev;
struct tm *tm_now;
printf("\033[2J");
prev = now;
tm_now = localtime(&prev);
printf("\033[10;30H");
printf("%4d年%2d月%2d日 %s曜日\n",
tm_now->tm_year+1900, tm_now->tm_mon+1, tm_now->tm_mday, week[tm_now->tm_wday]);
for(;;){
if(kbhit()){
if(getch() == 0x1B) break;
}
prev = now;
now = time(NULL);
if(prev == now)
continue;
tm_now = localtime(&now);
printf("\033[11;30H");
printf("%2d時%2d分%2d秒\n",
tm_now->tm_hour, tm_now->tm_min, tm_now->tm_sec);
}
}
984デフォルトの名無しさん:2008/07/23(水) 01:05:32
>>981
ソート方法を挿入ソートに変えただけ
エラーは出ないから分からん、どこで出るのかな
985>>406:2008/07/23(水) 01:06:31
>>908
すいません。
せっかく作成して頂いたのですが、Borlandでは動作しないようです。
以下のようなエラーが出てしまいました。
C:\source>bcc32 7480.cpp
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland7480.cpp:
警告 W8012 7480.cpp 169: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8012 7480.cpp 199: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8012 7480.cpp 222: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8012 7480.cpp 253: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8008 7480.cpp 282: 条件が常に真(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8012 7480.cpp 302: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8008 7480.cpp 405: 条件が常に真(関数 CEncoder::encoding() )
警告 W8012 7480.cpp 440: 符号付き値と符号なし値の比較(関数 CEncoder::encoding())
警告 W8012 7480.cpp 446: 符号付き値と符号なし値の比較(関数 CEncoder::encoding())
警告 W8012 7480.cpp 759: 符号付き値と符号なし値の比較(関数 CDecoder::create_txt(ifstream &,ofstream &) )
警告 W8012 7480.cpp 842: 符号付き値と符号なし値の比較(関数 CDecoder::decoding())
警告 W8012 7480.cpp 848: 符号付き値と符号なし値の比較(関数 CDecoder::decoding())
警告 W8012 7480.cpp 925: 符号付き値と符号なし値の比較(関数 CPrintHeader::print_header(char *) )
警告 W8012 7480.cpp 931: 符号付き値と符号なし値の比較(関数 CPrintHeader::print_header(char *) )
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland

指定が、Borland bcc32 のコンパイラということになってまして
せっかく作成頂いたのに、本当にすいません。
>>859さんのを、待ちたいと思います。
すいません。
986デフォルトの名無しさん:2008/07/23(水) 01:07:10
つーか違う人やん、まあよかた
987デフォルトの名無しさん:2008/07/23(水) 01:11:42
>>985
警告が出てるだけなら、動くんじゃないの?
988デフォルトの名無しさん:2008/07/23(水) 01:14:54
ラーメン イケメン 僕セグメン
989>>406:2008/07/23(水) 01:50:19
>>987
実行すると、以下のようになってしまいます。
C:\source>7481

C:\source>7480
Usage:
encoding : C:\source\7480.exe -e[p[z]] ENC TXT
decoding : C:\source\7480.exe -d[p[z]]TXT ENC
header print : C:\source\7480.exe -p[z] ENC...

C:\source>

何も入力する前に、コマンドラインが出てしまいます。
990デフォルトの名無しさん:2008/07/23(水) 01:51:48
>>982
全角スペース混じってんぞ
ほんとに実行できたのかよ…
991デフォルトの名無しさん:2008/07/23(水) 01:52:53
>>989
使い方が間違っているからでしょ。

あと、usageを辞書で引いておいて
992ME != 908:2008/07/23(水) 01:56:03
993デフォルトの名無しさん:2008/07/23(水) 01:58:32
てか実に気の毒だが、コンピュータあんまり触った事がない人だと思うので
下手に丸投げしたコード出したりするとボロ出てきつい思いすると思う。
こういう無茶な(コンピュータ触って5年選手以上とかに出す問題)課題
を出す教師の単位なんて下手に貰っても得しないと思う。
昔は、理論屋、コード屋、検証屋、執筆屋とか分業が許され、論文も共同で
書くのが常だった。
994デフォルトの名無しさん:2008/07/23(水) 02:04:31
>>993
警告とエラーの区別がつかないくらいだから、これまでまったくサボってきたんだろ。
課題自体は、子供の宿題レベルには違いないし、出来ないから単位がでないかどうかも知れない。
995デフォルトの名無しさん:2008/07/23(水) 02:09:27
>>993
ほんとうに親切な人は問題について考えるんじゃなくて、解決策を考えてくれると思うんだ
996デフォルトの名無しさん:2008/07/23(水) 02:13:22
>>995
要するにこのスレに来るな。自分でやれってか
身も蓋も無いな

カンニングするための最低限の技術すら足りないのはどうしようもないが
997デフォルトの名無しさん:2008/07/23(水) 02:13:26
こんな馬鹿を卒業させたら、またなんちゃってSEが増えるだけだろ…
998デフォルトの名無しさん:2008/07/23(水) 02:13:34
>>995
このスレの回答者は親切に親身になって問題を解いてくれるね。(その後のフォローは皆無だけど)
999デフォルトの名無しさん:2008/07/23(水) 02:14:39
大学の卒業率が85%というから、学生の20人に3人が卒業しないまま大学を去るのだろう?
答えだけ聞いて済まそうという行動規範では・・・
1000C/C++の宿題を片付けます 114代目:2008/07/23(水) 02:15:13
あなたが解けない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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
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++の宿題を片付けます 113代目
http://pc11.2ch.net/test/read.cgi/tech/1215986178/
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。