トップページ⇒tech
1001コメント348KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2007/02/07(水) 15:41:38
あなたが解けない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/
0002デフォルトの名無しさん2007/02/07(水) 15:44:10
【前スレ】
C/C++の宿題を片付けます 82代目
http://pc10.2ch.net/test/read.cgi/tech/1169575464/

【重要】
・課題に動作で必要なファイルがある場合にはロダにUPする事、回答者に作らせてはならない
なければ質問者が作る

・回答の督促は禁止
但し、スレ中の全未回答問題レス番号を張る場合のみ許可とする

【質問テンプレ】 サンプル
[1] 授業単元:配列 ポインタ ファイルアクセス
[2] 問題文(含コード&リンク):
問題文全文リンクhttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/xxxx.txt
必要ファイル:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/yyyy.zip
起動時にリダイレクトにて読込ませるデータファイルです

[3] 環境 Windows Xp SP2
[3.3] 言語: Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
[4] 期限: ([200x年02月07日13:00まで] (24時表示ガ望ましい)
0003デフォルトの名無しさん2007/02/07(水) 16:05:23
・作りかけの動かないソースを宿題として投げるのは止めてください
  自分が 判らない・作れない・動かない等は、たいてい何か条件を見逃している為です
  課題全文を掲載する事によって、質問者が見落としている事も回答者に知らせる事が出来ます

・課題全文をテンプレの様に書き別途ファイルをロダにUPすれば回答を得やすくなります
  作りかけであっても「途中までやりました」「ここまで作成しまた」としてUPすると
  クラス名・変数名 コーディンスタイルなど追従するため理解が楽になります
0004デフォルトの名無しさん2007/02/07(水) 16:16:31
・死んでください
0005デフォルトの名無しさん2007/02/07(水) 17:19:14
回答が得られないケースの傾向

・マルチ
  別のスレッドに同一の質問がある
・レポート
  考察を述べよ・原因理由を述べよ 等 記述が主旨の宿題はスルーされてます
・督促
  【重要】のルールを守らず同課題が張られると回答者の気力が萎えます
・重複質問
  直近に 同じ/似た 質問があったかも知れません・前スレぐらいまでは検索してみましょう
  別人が新規の質問として投稿しても督促とみなされスルーされます
・動作に必要なファイルがない
  読込みデータを回答者が作ると、課題と別のフォーマットになる可能がある
  (回答を得ても動かない場合はほとんどこのケース)
・作りこんだソースの一部しかUPされない
  回答者が仮のmainを作らないと起動する事が出来ないものはスルーされます
・課題掲載がなく作りかけのソースのみUPされてる
  仕様(課題)が判らないと答えようがない
・環境構築が大変
  別ミドルウェァをインストールしなければならないようなものはスルーされます
・言語仕様かミドルウェアの仕様か判別できない
  もはや宿題のレベルではないような・・・
0006デフォルトの名無しさん2007/02/07(水) 17:38:56
・こんなにダラダラと決まり事作ったって質問する奴は読まない
0007デフォルトの名無しさん2007/02/07(水) 17:45:34
長くて読む気がしない。
要点を三行半でまとめてくれないか?
0008デフォルトの名無しさん2007/02/07(水) 17:51:43
・バーカ
0009デフォルトの名無しさん2007/02/07(水) 18:02:09
・↑要点
0010デフォルトの名無しさん2007/02/07(水) 18:14:08
>>6
読まないでいいんじゃね?
回答欲しい奴はは読むだろうしw
0011デフォルトの名無しさん2007/02/07(水) 18:21:04
何故回答が得られないのか、まとまってるな
未回答の理由がリンク1つ >4 で済むから楽だな
0012デフォルトの名無しさん2007/02/07(水) 18:22:12
>4 じゃね〜やw >5だったorz
0013デフォルトの名無しさん2007/02/08(木) 02:06:45
いきなり軽く荒れてるねー
0014デフォルトの名無しさん2007/02/08(木) 02:22:37
決まり事というより回答する為には必須のようなw
0015デフォルトの名無しさん2007/02/08(木) 02:59:44
ほっぺ膨らませて鉄アレイみたいな顔になるところとか、期も過ぎる。
0016152007/02/08(木) 03:01:17
物凄い勢いで誤爆した。スマソ
0017デフォルトの名無しさん2007/02/08(木) 04:19:35
前スレ>>959 http://pc10.2ch.net/test/read.cgi/tech/1169575464/959
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3625.zip
0018デフォルトの名無しさん2007/02/08(木) 05:58:06
前スレ>>947 http://pc10.2ch.net/test/read.cgi/tech/1169575464/947
x(10)が分からん。もとい、刻み幅が出せん。教えてくれ。



前スレでテンプレにそう形なのはhttp://pc10.2ch.net/test/read.cgi/tech/1169575464/956とかかな。
crypt.hが分かる人よろ。
0019デフォルトの名無しさん2007/02/08(木) 10:06:16
>>15
驚きました
0020デフォルトの名無しさん2007/02/08(木) 11:57:48
おらっ、俺にも簡単に解ける宿題を質問しろ!
0021デフォルトの名無しさん 2007/02/08(木) 14:08:18
いきなりですみません。
倍精度整数型の配列a[100]にキーボードから入力された整数を順に格納する、ただし、今までに
入力された数を掛け合わせたものが1000万を超えれば、そこで終了し、結果と
そこまでの配列aの内容を逆順に出力するプログラムをC言語で作れ。
この問題解いていただけませんか?お願いします

0022デフォルトの名無しさん2007/02/08(木) 14:14:52
断る。去れ。
0023デフォルトの名無しさん2007/02/08(木) 14:31:21
倍精度整数型ってCの型で言うと何?
0024デフォルトの名無しさん2007/02/08(木) 14:40:47
>>21
環境に依存する
倍長精度整数型の表せる範囲は言語や処理系によって違う
>1のテンプレ使え
0025デフォルトの名無しさん2007/02/08(木) 14:47:13
単精度浮動小数点数 float
倍精度浮動小数点数 double

char short int long (long long)
単精度整数? 倍精度整数? 対応する日本語訳が難しいな。
0026デフォルトの名無しさん2007/02/08(木) 14:57:27
文字型 char: 1 byte
文字列型 char *:
単精度整数型 short: 2 byte
整数型 int:  4 byte
倍精度整数型 long: 4 byte (環境依存)
単精度浮動小数点型 float: 4 byte
倍精度浮動小数点型 double: 8 byte

最大1000万だから32bit変数で十分だね
0027デフォルトの名無しさん2007/02/08(木) 15:01:58
堂々と嘘を書かないでくれ
0028デフォルトの名無しさん2007/02/08(木) 15:03:56
ウソではなく正確ではない、かと
0029デフォルトの名無しさん2007/02/08(木) 15:05:43
どこの腐れ政治家だよ
0030デフォルトの名無しさん2007/02/08(木) 15:07:21
息を吐くように嘘をつく人種もいるそうな。
0031デフォルトの名無しさん2007/02/08(木) 15:19:25
>>25
長精度整数とか倍長精度整数とかは見たことがある
だが整数に精度は会わないと思う
短整数型、長整数型でいい
0032デフォルトの名無しさん2007/02/08(木) 15:25:09
倍長精度整数型 C言語 の検索結果 約 21,000 件中 1 - 10 件目 (0.14 秒)
0033デフォルトの名無しさん2007/02/08(木) 15:26:44
>>27
どれをウソと言っているの?
0034デフォルトの名無しさん2007/02/08(木) 15:32:56
>>21
これで好きなように改造しろ

#include <stdio.h>
void main(void){
long a[100],b=1,i;
for (i=0;i<100&&b<10000000;i++ ) { scanf("%ld",&a[i]); b *= a[i]; } while ( i-- ) printf( "%ld ", a[i] );
}
0035デフォルトの名無しさん2007/02/08(木) 15:44:25
>33
>文字列型 char *:
これのことかな?
0036デフォルトの名無しさん2007/02/08(木) 15:47:13
>>35
サイトの内容をコピペしたのでいらんもんまでくっついてきただけ
それは消し忘れた
0037デフォルトの名無しさん2007/02/08(木) 15:54:17
64bitネイティブの世の中になってコンパイラが対応したら
int幅が64の時代になるのかなぁ

                                                                                         昭和は遠くになりにけり
0038デフォルトの名無しさん2007/02/08(木) 16:05:27
int自体はCPUのビットと関係無い
0039デフォルトの名無しさん2007/02/08(木) 16:12:50
>38
ありぁそなの?メモリのアドレッシング幅=intだと思ってた
雑談スマソ>All

宿題スレ再開どぞ
0040デフォルトの名無しさん2007/02/08(木) 16:17:23
よろしくお願いします。
[1] 授業単元: プログラミング言語演習1
[2] 問題文:
キー入力した10人分の得点データを整数型配列 に格納し、その後、優(80以上)、良(70〜79)、可(60〜60)
それぞれの人数と平均点を求め、出力せよ。
[3] 環境 : VC++ 6.0
 [3.1] OS: WindowsXP
 [3.2]言語:C++
 [4]期限:2月9日 12時
0041デフォルトの名無しさん2007/02/08(木) 17:45:51
>>40 可は60〜69にした 違ったら直してくれ
#include <stdio.h>
#define N (10)
void main(void)
{
int i,a[N],t6=0,t7=0,t8=0,c6=0,c7=0,c8=0;
    for (i=0;i<N;i++){
        printf("%2d番目の得点:",i+1);
        if (EOF==scanf("%d",&a[i]) )
            break;
    }

    for (i=0;i<N;i++){
            if ( 80<=a[i] ) {  c8++;  t8 += a[i]; }
        else if ( 70<=a[i] ) {  c7++;  t7 += a[i]; }
        else if ( 60<=a[i] ) {  c6++;  t6 += a[i]; }
    }

    if( c8 != 0)
        printf(" 優  %d人 ave %d\n", c8, t8/c8);
    if( c7 != 0)
        printf(" 良  %d人 ave %d\n", c7, t7/c7);
    if( c6 != 0)
        printf(" 可  %d人 ave %d\n", c6, t6/c6);
}
0042デフォルトの名無しさん2007/02/08(木) 17:52:13
>>41
×int i,a[N],t6=0,t7=0,t8=0,c6=0,c7=0,c8=0;
○int i,a[N]={0},t6=0,t7=0,t8=0,c6=0,c7=0,c8=0;
0043デフォルトの名無しさん2007/02/08(木) 18:14:42
>>41,>>42
ありがとうございます。
0044デフォルトの名無しさん2007/02/08(木) 23:53:08
>>43
出力するのは「それぞれの人数」と「それぞれの平均点」なのかい?
「それぞれの人数」と「平均点」のようにも見えるけれど。
それから「可」の点数の範囲は結局いくらだったの?
0045デフォルトの名無しさん2007/02/09(金) 00:12:09
>>21

#include <stdio.h>

int main(){

long int a[100];
int i,j,total=1;
puts("100個の整数格納しろやカスが");
for(i=0;i<100;i++){
scanf("%d",&a[i]);
total *= a[i];
if(total > 10000000){
printf("今までに入力された数を掛け合わせたもの:%d\n",total);
for(j=i;j>=0;j--)
printf("a[%d]=%d\n",j,a[j]);
break;
}
}
printf("終了だ包茎野郎");
return 0;
}
0046デフォルトの名無しさん2007/02/09(金) 00:39:34
>>40
//可は60〜69です
#include <iostream>
using namespace std;
int a[10];
int i, l=0, m=0, s=0, ss=0;
float sum=0;

int main(){
for(i=0; i<10; i++){
cout << "?\n";
cin >> a[i];
sum += a[i];
if(a[i]>=80 && a[i]<=100){l++;} else if(a[i]>=70 && a[i]<=79){m++;
} else if(a[i]>=60 && a[i]<=69){s++;} else {ss++;}
}
cout << "優:" << l << " 良:" << m << " 可:" << s << " 不可:" << ss << "\n";
cout << "平均:" << sum/10 << '\n';
return 0;
}
0047デフォルトの名無しさん2007/02/09(金) 01:28:03
前スレ<<712 http://pc10.2ch.net/test/read.cgi/tech/1169575464/712
0048デフォルトの名無しさん2007/02/09(金) 05:37:52
>>47
ネットワークについて無知ゆえにスルー
0049デフォルトの名無しさん2007/02/09(金) 05:45:48
>>47
ステップ数がおおくなりそうなのでスルー
15日までだから、まだまだおk
0050デフォルトの名無しさん2007/02/09(金) 14:05:54
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク)
10文字以内の文字列を入力し格納、表示する。
また配列の先頭アドレスを格納するポインタ変数を用意し
そのポインタ変数を使って1文字ずつ画面に出力する。
for文を使用(Null文字を見つけるまでポインタをインクリメント)すること
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: C
[4] 期限: 無期限
[5] その他の制限: 特になし

よろしくお願いします
0051デフォルトの名無しさん2007/02/09(金) 14:17:38
>>50
#include <stdio.h>

int main(void)
{
char str[11];
char *p;

fgets(str, 11, stdin);
printf("%s\n", str);
for (p = str; *p != '\0'; p++){
putchar(*p);
}
puts("");
return 0;
}
0052デフォルトの名無しさん2007/02/09(金) 14:44:07
>>50
#include <stdio.h>

int main(void)
{
char str[11];
char *p = str;
fgets(str, 11, stdin);
for(; putchar(*p++); );
return 0;
}
0053デフォルトの名無しさん2007/02/09(金) 14:54:44
アヒャ
>>50
#include<stdio.h>
void main(){
char*p;
for(gets(p);*p!='\0';printf("%c\n",*p++));
}
0054デフォルトの名無しさん2007/02/09(金) 15:02:11
gets使うなよ。
それ以前にバッファ確保してないじゃないか。
子ね
0055デフォルトの名無しさん2007/02/09(金) 15:03:36
(´・ω・`)ショボーン
0056デフォルトの名無しさん2007/02/09(金) 15:18:26
#include <stdio.h>
void main(void) {
char s[11],*p;
for(fgets(p=s,sizeof(s),stdin),puts(s);*p||(exit(0),0);printf("%c\n",*p++));
}

void mainにした場合はexitするのがお作法だろう
0057デフォルトの名無しさん2007/02/09(金) 15:31:44
>void mainにした場合は
あ り え な い
0058デフォルトの名無しさん2007/02/09(金) 15:35:29
>>57
>>56は>>53に対するつっこみじゃねえか?
0059532007/02/09(金) 15:39:19
>>56
了解
0060デフォルトの名無しさんNGNG?2BP(222)
void main自体があり得ない。
0061デフォルトの名無しさん2007/02/09(金) 16:04:44
組み込みでは結構使うが…スレ違いだな
0062デフォルトの名無しさん2007/02/09(金) 17:30:53
int main() にして
return 0; でOSに正常終了を返すのがセロリー?
0063デフォルトの名無しさん2007/02/09(金) 19:04:48
62 名前:デフォルトの名無しさん 投稿日:2007/02/09(金) 17:30:53
int main() にして
return 0; でOSに正常終了を返すのがセロリー?
0064デフォルトの名無しさん2007/02/09(金) 19:06:28
63 名前:デフォルトの名無しさん[] 投稿日:2007/02/09(金) 19:04:48
62 名前:デフォルトの名無しさん 投稿日:2007/02/09(金) 17:30:53
int main() にして
return 0; でOSに正常終了を返すのがセロリー?
0065デフォルトの名無しさん2007/02/09(金) 19:11:26
64 名前:デフォルトの名無しさん 投稿日:2007/02/09(金) 19:06:28
63 名前:デフォルトの名無しさん[] 投稿日:2007/02/09(金) 19:04:48
62 名前:デフォルトの名無しさん 投稿日:2007/02/09(金) 17:30:53
int main() にして
return 0; でOSに正常終了を返すのがセロリー?
0066デフォルトの名無しさん2007/02/09(金) 19:33:08
>セロリー?
開発環境が違うからぁ〜〜ぁ〜〜好き嫌いはイナメナイ〜♪
0067デフォルトの名無しさん2007/02/09(金) 20:08:29
>>62-65
再帰処理ですね!センセー!
0068デフォルトの名無しさん 2007/02/09(金) 20:09:12
[1] 授業単元:卒業研究
[2] 問題文(含コード&リンク):
ブロックソートによるソートを行いその後に圧縮
[3] 環境
 [3.1] OS:WindowsXP
 [3.2] 知識足らずで分かりません。
 [3.3] 言語:Cを希望
[4] 期限:2月10日朝7時くらいまでです・・・w
[5] その他の制限:特に無いです。一応学校ではc c++基礎はやりました。
 ただサボりすぎてて分からないです。ww

これが終わらないと卒業できないんでお願いしますww
0069デフォルトの名無しさん 2007/02/09(金) 20:11:56
68です
追記
abcab
babca
ababc
cabab
bcabc

こんなテキストファイルをソートできて圧縮できればいいので簡単にお願いしますw
0070デフォルトの名無しさん2007/02/09(金) 20:13:26
>>68
良い方に考えるんだ
卒業できないってことはもう一年学べるって事じゃないか
自力でがんばれよ
0071682007/02/09(金) 20:18:54
後一年通う事は出来ないw
まー巡回シフトさせなきゃいけなくてシフトさせながら格納とか分かりません。
本当に(ry
0072デフォルトの名無しさん2007/02/09(金) 20:20:03
>>68
サボってる間何してた?
0073デフォルトの名無しさん2007/02/09(金) 20:21:13
こいつの態度が気に入らない
0074682007/02/09(金) 20:22:01
>>72
ネトゲとスロットww
ダメ人間確定ですwww
0075682007/02/09(金) 20:23:53
正直人に物を頼む態度でない事は分かってます。
ダメならばスルーして下さい。

まぁ今まで自分がやってきた事なので甘い考えで卒業しようとするほうが間違ってるんですけどね・・・
0076デフォルトの名無しさん2007/02/09(金) 20:29:43
卒業研究って、プログラムよりその後の論文の方が大変だと思うんだ・・・
0077682007/02/09(金) 20:34:39
>>76
なぜか知らないんですが論文が無いんです。
ただほかにも課題が山のように有りますが・・・
0078デフォルトの名無しさん2007/02/09(金) 20:50:04
論文を書かなくてもいいっていうのもおかしい話だw
文系か?
0079デフォルトの名無しさん2007/02/09(金) 20:53:27
大学じゃないんだろ
0080682007/02/09(金) 21:06:02
専門です。
0081デフォルトの名無しさん2007/02/09(金) 21:08:05
専門ってことはプログラミングを専門に勉強してきたんだろ?
専門で卒業できないってヤバくね?就職は決まった?
0082682007/02/09(金) 21:13:48
卒業したら違う専門に入りなおすか
バイトしながら学費をためようと思ってるのですが2年間学費出してもらったので
せめて卒業する事が親孝行かなぁと・・・

この道につくのは諦めました・・・
0083デフォルトの名無しさん2007/02/09(金) 21:14:10
もう相手するなよ。
0084デフォルトの名無しさん2007/02/09(金) 21:14:27
基礎やって卒業?
0085デフォルトの名無しさん2007/02/09(金) 21:15:49
他の専門に入り直すなら卒業する必要ないだろ
0086デフォルトの名無しさん2007/02/09(金) 21:17:56
最近は親孝行のレベルも下がったんだな。
もらったもの何にも返してないじゃん。
0087デフォルトの名無しさん2007/02/09(金) 21:20:57
>>86
・・・・・・・・・・・・
か、カラダで支払えと・・・・・・・・?
0088デフォルトの名無しさん2007/02/09(金) 21:22:49
その状況では、早めに辞めてその分の学費を浮かしつつ働いて稼ぐのが一番の孝行だったろうな
0089デフォルトの名無しさん2007/02/09(金) 21:27:08
頼むからそういう話はよそでやってくれ。
0090682007/02/09(金) 21:29:51
>>88
その通りですね。だらけた自分が終ってる。
0091デフォルトの名無しさん2007/02/09(金) 21:49:08
今の季節は学費を稼ぐためにクマと格闘してるよ
0092デフォルトの名無しさん2007/02/10(土) 00:06:59
うおっ、ここにも格差社会の風潮が!?
0093デフォルトの名無しさん2007/02/10(土) 09:43:37
格差社会っていうよりゆとり教育?
0094デフォルトの名無しさん2007/02/10(土) 10:09:34
ここで、>>68に

社会はプログラマとしての君を必要としている!
卒業後はぜひとも
「このスレにいる奴らの会社に」プログラマとして就職して
「このスレにいる奴らのプロジェクトに参加して」頑張ってくれ給え!

とか煽ったらどうなるのか・・・
0095デフォルトの名無しさん2007/02/10(土) 12:49:19
[1] 授業単元:プログラミング�U
[2] 問題文:4×4の魔方陣を全出力するプログラムを作成しなさい。
魔方陣とは縦横斜めのどの列を足しても答えが全て同じとなるものです。
出力例:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16 (これは魔方陣にはなってません。あくまでも出力例です)
[3] 環境
 [3.1] OS: Windows XP
 [3.2] bcc
 [3.3] 言語:C++
[4] 期限:2007年2月13日午後4時
[5] その他の制限: 検索時間を短縮する為に後戻り法(バックトラック)を利用する。
          全パターン出力したら終了する。
          同じものが2つ以上でないようにする。
よろしくお願いします。


0096デフォルトの名無しさん2007/02/10(土) 13:11:29
http://ja.wikipedia.org/wiki/%E9%AD%94%E6%96%B9%E9%99%A3#3.C3.973.E3.81.AE.E9.AD.94.E6.96.B9.E9.99.A3
奇数ならまだしも、偶数はまんどくせっ
0097デフォルトの名無しさん2007/02/10(土) 16:32:23
>>95
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3627.txt

程よく枝刈りするようにしといた。

それで、結果は7040通りになるんだけど、あってるかね?
0098デフォルトの名無しさん2007/02/10(土) 18:59:37
>>94
どーもならん
0099952007/02/10(土) 20:04:35
答えは880通りになるらしいです。
0100デフォルトの名無しさん2007/02/10(土) 20:19:51
>>95
魔方陣ならネットに転がっていそうな気もする
0101デフォルトの名無しさん2007/02/10(土) 20:34:58
みんな難しいことやってるんだな。
俺にはバックトラックとかわからないよ。
■ このスレッドは過去ログ倉庫に格納されています