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

ぼるじょあがC/C++の宿題を片づけますYO! 67代目

■ このスレッドは過去ログ倉庫に格納されています
0001ぼるじょあ ◆yBEncckFOU 2006/12/10(日) 11:33:41
(・3・)エェー ぼるじょあですYO!
         わからない宿題を片づけますYO!

あなたが解けない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

【前スレ】
ぼるじょあがC/C++の宿題を片づけますYO! 66代目
http://pc8.2ch.net/test/read.cgi/tech/1149349035/
0342デフォルトの名無しさん2007/01/18(木) 10:51:56
>>341
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
0343デフォルトの名無しさん2007/01/18(木) 10:59:11
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
  コピー プログラムを書いてください。 次のように、
  第 1 引数をコピー元、第 2 引数をコピー先ファイル
  名として扱ってください。

  % ./a.out コピー元ファイル名 コピー先ファイル名


[3] 環境
 [3.1] OS: (Windows)
 [3.2] コンパイラ名とバージョン: (gcc)
 [3.3] 言語: (どちらでも可)
[4] 期限: 明日まで
[5] その他の制限: ありません
0344デフォルトの名無しさん2007/01/18(木) 11:20:15
プログラムとして逸脱した文字
>>341
0345デフォルトの名無しさん2007/01/18(木) 11:20:46
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
・テキストファイルを読み込んで指定した文字または文字列が何行目にあるか検索する。

・読み込むテキストファイルはコマンドライン引数から得る
・検索する文字、文字列はscanf()から得る
・scanf()から得た文字、文字列の配列はヒープで確保
・検索する文字、文字列がなければエラーメッセージを出して
再び文字、文字列を指定して再検索
・指定した文字、文字列がみつかれば、「○○は○行目にあります。」と表示する
・and検索、or検索もできるようにする

[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:1月20日に提出
[5] その他の制限:
何を習ったかはここを見てください!学校バレますがw
http://ylb.jp/c/
http://ylb.jp/2006b/proc/index.html
http://www.kyoto-su.ac.jp/%7Eyamada/programming/programmingB.html
0346ぼるじょあ ◆hZ8e4Wjqvw 2007/01/18(木) 11:28:48
>>343
(・3・) エェー 低速版できたYO!
#include<stdio.h>
int main(int argc, char *argv[]){
 char *fname_in, *fname_out;
 FILE *fp_in, *fp_out;
 int moji;
 if(argc!=3){
  fprintf(stderr, "\nUsage: %s filename1 filename2\n", argv[0]);
  return 1;
 }
 fname_in=argv[1];
 fname_out=argv[2];
 fp_in=fopen(fname_in, "rb");
 if(fp_in==NULL){
  fprintf(stderr, "\nError: %s file cannot open.\n", fname_in);
  return 1;
 }
 fp_out=fopen(fname_out, "wb");
 if(fp_out==NULL){
  fprintf(stderr, "\nError: %s file cannot open.\n", fname_out);
  fclose(fp_in);
  return 1;
 }
 while((moji=fgetc(fp_in))!=EOF)
  fputc(moji, fp_out);
 fclose(fp_in);
 fclose(fp_out);
 return 0;
}
0347デフォルトの名無しさん2007/01/18(木) 11:34:54
この前違うスレで問題書いて答えてもらったんですが
toupper()を使っての問題を教えてもらったんですが
実行してもできませんでした
全部の文字を大文字という問題わかりますか?
0348デフォルトの名無しさん2007/01/18(木) 11:35:37
>>345です。
読み込むテキストファイルは

one two three four
five six seven
eight nine ten

をテスト用に使おうとしてましたがそこまでいかず・・・。
よろしくお願いします。
0349ぼるじょあ ◆hZ8e4Wjqvw 2007/01/18(木) 11:39:44
>>347
(・3・) エェー リダイレクトを使ってファイル入力してNE!
          例: a.out < a.c
#include<stdio.h>
#include<ctype.h>

int main(void)
{
 int moji;

 while((moji=getchar())!=EOF)
  putchar(toupper(moji));

 return 0;
}
0350ぼるじょあ ◆hZ8e4Wjqvw 2007/01/18(木) 11:45:58
>>341
(・3・) エェー 全角空白はタブに置き換えて欲しいお
          それともインデントつけない方がいいのかお?
0351デフォルトの名無しさん2007/01/18(木) 13:16:12
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):

配列{1,3,5,7,9,0,2,4,6,8}があるとき、insert関数とdel関数を使って、4番目の要素を削除し、7番目に10を挿入せよ。

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: visual studio.net
 [3.3] 言語: C
[4]期限
1月19日



お願いします。
0352デフォルトの名無しさん2007/01/18(木) 13:17:40
インデントよろしくです
0353デフォルトの名無しさん2007/01/18(木) 13:21:44
先頭だけ大文字とかはできますか?
0354デフォルトの名無しさん2007/01/18(木) 13:46:31
>>353
またお前か
0355デフォルトの名無しさん2007/01/18(木) 15:25:50
346ありがとうございました。うまくできました☆
0356初心者2007/01/18(木) 15:29:07
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):
  引数に渡された文字列 s を保持するのにぴったりの長さのメモリ領域を割り当て、その領域に文字列 s をコピーし、そのアドレスを返す関数 str_dup を完成させてください。
割り当てに失敗した場合は、NULLを返してください。文字列のコピーには strcpy を使用します。

#include <string.h> /* strlen 関数と strcpy 関数 */

char *str_dup(char *s){
char *p = NULL;

[      空欄 1      ]

return p;
}
空欄をうめてください。
[3] 環境
 [3.1] OS: Windowsです
 [3.2] コンパイラ名とバージョン: (gcc)
 [3.3] 言語: (C)
[4] 期限: 明後日です
[5] その他の制限:ないです
0357ぼるじょあ ◆hZ8e4Wjqvw 2007/01/18(木) 16:06:22
>>345 (・3・) エェー 題意を満たせないものしかできなかったYO! 本物と名無しさんが頼りだYO!
#include<stdio.h>
#include<string.h>
#define ONE_LINE_MAX 1024
int main(int argc, char *argv[]){
 char *filename, one_line[ONE_LINE_MAX], word[ONE_LINE_MAX];
 long line_count;
 int is_word_found;
 FILE *fp;
 filename=argv[1];
 fp=fopen(filename, "r");
 if(fp==NULL){
  fprintf(stderr, "\nError: %s file cannot open.\n", filename);
  return 1;
 }
 while(1){
  printf("検索する文字列を入力して下さい :");
  scanf("%s", word);
  fseek(fp, 0L, SEEK_SET);
  line_count=0;is_word_found=0;
  while(fgets(one_line, sizeof(one_line), fp)!=NULL){
   line_count++;
   if(strstr(one_line, word)!=NULL){
    printf("%s は %ld 行目にあります\n", word, line_count);
    is_word_found=1;
   }
  }
  if(!is_word_found) printf("%s は見つかりませんでした\n", word);
 }
 fclose(fp);
 return 0;
}
0358デフォルトの名無しさんNGNG?2BP(222)
>>356
if((p=malloc(strlen(s)))){strcpy(p,s);}
0359ぼるじょあ ◆hZ8e4Wjqvw 2007/01/18(木) 16:18:10
>>351
(・3・) エェー insert関数とdel関数は適当に作ったYO!
#include<stdio.h>
#define NITEM(array) (sizeof(array)/sizeof(array[0]))
void insert(int array[], int array_size, int index, int value){
 int i;
 for(i=array_size-2;i>=index;i--)
  array[i+1]=array[i];
 array[index]=value;
}
void del(int array[], int array_size, int index){
 int i;
 for(i=index;i<array_size-1;i++)
  array[i]=array[i+1];
 array[i]=0;
}
void disp(int array[], int array_size){
 int i;
 for(i=0;i<array_size;i++)
  printf(" %d", array[i]);
 printf("\n");
}
int main(void){
 int data[]={1,3,5,7,9,0,2,4,6,8};
 disp(data, NITEM(data));
 del(data, NITEM(data), 4-1);
 disp(data, NITEM(data));
 insert(data, NITEM(data), 7-1, 10);
 disp(data, NITEM(data));
 return 0;
}
0360ぼるじょあ ◆hZ8e4Wjqvw 2007/01/18(木) 16:19:23
>>358
(・3・) エェー 一文字分足りてないYO!
0361デフォルトの名無しさん2007/01/18(木) 16:36:32
2次元配列でそれぞれの要素に文字列をもたせてあります
2次元配列の中の文字列をクリアするにはどうすればいいんでしょうか?
0362デフォルトの名無しさんNGNG?2BP(222)
OK
if((p=malloc(strlen(s)+1))){strcpy(p,s);}
0363デフォルトの名無しさん2007/01/18(木) 17:21:20
ピリオドで改行するプログラムを教えてください
0364デフォルトの名無しさんNGNG?2BP(222)
ジャパン語で
0365デフォルトの名無しさん2007/01/18(木) 18:26:11
>363
if(ch=='.') putchar('\n');
0366homoじょあ ◆5OLf4yFnuM 2007/01/18(木) 21:45:48
(・3・) エェー みんなの質問適度に待ってるYO
0367デフォルトの名無しさん2007/01/18(木) 21:57:13
偽者が多くて頼みたくないです さようなら
0368ぼるじょあ ◆yBEncckFOU 2007/01/18(木) 23:29:20
(・3・) エェー もいら画像処理やMPEGに関してその筋じゃ有名人なんだけど
          hZ8e4Wjqvw氏が全部回答してくれたから出番なしだったお
          いや嫌味を言ってるんじゃなくてhZ8e4Wjqvw氏も幅広い知識を持った
          なかなか賢い人だと感じたお
0369ぼるじょあ ◆yBEncckFOU 2007/01/18(木) 23:30:31
(・3・) エェー >>331本物ってもいらのことかお?
          もいらはhomoじょあとかアナルじょあと呼ばれてるからたぶん本物じゃないお
0370ぼるじょあ ◆yBEncckFOU 2007/01/18(木) 23:32:21
(・3・) エェー 大沢あかねたんとおしりのあなに頭を入れて24時間くんくんしたいくらい
          大沢あかねたんが好きだお
          大沢あかねたんと結婚または愛人になってくれるなら
          全財産なげうっていいお
0371ぼるじょあ ◆yBEncckFOU 2007/01/18(木) 23:34:37
(・3・) エェー 大沢あかねたんと1週間アナ○三昧できるだけでもいいお
          3日間アナ○三昧なら500万までなら出せるお
0372デフォルトの名無しさん2007/01/19(金) 00:28:22
>>357
ありがとうございます!!

あと実行時に、何語で検索するか→1語ならそのまま検索、1語以上ならand検索かor検索か
とか言う流れにしたいのですが・・・
0373ぼるじょあ ◆hZ8e4Wjqvw 2007/01/19(金) 04:23:41
>>334
(・3・) エェー notファイルはもうお腹いっぱいだYO!
          http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3457.c
0374デフォルトの名無しさん2007/01/19(金) 14:47:58
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):
UNIX システムコールを利用して、以下の仕様を満たすプログラムを書いてください。

コマンドライン引数がない場合は、標準入力を標準出力へコピー
コマンドライン引数が 1 つある場合は、第 1 引数のファイルの内容を標準出力へコピー
コマンドライン引数が 2 つある場合は、第 1 引数のファイルの内容を第 2 引数のファイルにコピー

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: (gcc)
 [3.3] 言語: (C++)
[4] 期限: 明後日
[5] その他の制限:
0375デフォルトの名無しさんNGNG?2BP(222)
>>374
#include<stdio.h>
int main(int argc,char* argv[]){FILE* src=stdin;FILE* dst=stdout;int c;
if(argc>=2)src=fopen(argv[1],"r");if(argc==3)dst=fopen(argv[2],"w");
if(argc<4)while((c=fgetc(src))!=EOF)fputc(c,dst);return 0;}
0376デフォルトの名無しさん2007/01/19(金) 16:10:37
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):アルゴリズムの説明をせよ
#include<stdio.h>
#include<stdlib.h>
//int main(int argc, char **argv){ //argvはコマンドライン引数のこと
int main(void){
int i,j,m,n,k1,k2;
int blank;
int hint[4];
int total;
[3] 環境
 [3.1] OS: (Windows/Linux/等々) linux
 [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) gcc
 [3.3] 言語: C言語
[4] 期限: ([yyyy年mm月dd日hh:mmまで] 2007年1月23日まで
[5] その他の制限:なしです。お願いします
03773762007/01/19(金) 16:12:55
FILE *data;
int initial[4][4];
if((data = fopen("prob4-1.txt", "r"))==NULL) {
printf("ファイルを開くことはできません\n");
exit(1);}
for(i=0;i<4;i++){
for(j=0;j<4;j++){
fscanf(data,"%d",&initial[i][j]);}
blank=0;
}
for(i=0;i<4;i++){
for(j=0;j<4;j++)
printf("%4d",initial[i][j]);
printf("\n");} printf("\n");


for(i=0;i<4;i++){
for(j=0;j<4;j++){
if(initial[i][j]==0)
blank++;}}
printf("initial\n");
for(i=0;i<4;i++){
for(j=0;j<4;j++)
{
printf("%2d" ,initial[i][j]);}
printf("\n");}
03783762007/01/19(金) 16:15:59
while(blank!=0){
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if(initial[i][j]==0){
for(m=0;m<5;m++)
hint[m]=0;
for(n=0;n<4;n++){
if(initial[i][n]!=0)
hint[initial[i][n]]=1;}
for(n=0;n<4;n++){
if(initial[n][j]!=0)
hint[initial[n][j]]=1;}
       k1=i/2;
k1*=2;
k2=j/2;
k2*=2;
for(m=k1;m<k1+2;m++)
for(n=k2;n<k2+2;n++){
if(initial[m][n]!=0)
hint[initial[m][n]]=1;}
total=(hint[1]+hint[2]+hint[3]+hint[4]);
for(m=1;m<5;m++)
if(total==3&&hint[m]==0){
initial[i][j]=m;
blank--;}}}
printf("result\n");
for(i=0;i<4;i++){
for(j=0;j<4;j++)
printf("%4d",initial[i][j]);
printf("\n"); }
fclose(data);
return 0;}書ききれなかったので追加します。すみません
0379デフォルトの名無しさん2007/01/19(金) 16:27:03
>>345のやつに
and検索or検索の機能の追加お願いします。
これできないと単位もらえないので焦ってます;

実行後、いくつの後で検索するかを決めて、その後andかor検索にするか決めて、
andの場合は「○○と○○を含む行は○行目」
orの場合は「○○を含むのは○行目、○○を含むのは○行目」
と表示させるようにしたいんです!
色々やって途中までできたものをうpしとくので、よろしくお願いします!!
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3463.c
0380ニケ2007/01/19(金) 17:05:48
[1] 授業単元:計算機数学�U
[2] 問題文(含コード&リンク):
  banana melon orange appleなどと代入して、
  辞書式のリスト構造を作り、それを出力する
  プログラムを作りなさい
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:VC 6.0
 [3.3] 言語:C++
[4] 期限:できれば今日中がいいです。
[5] 2分探索木を最後に習いました。

ぼるじょあさん留年がかかってるのでお願いします。
0381ぼるじょあ ◆yBEncckFOU 2007/01/19(金) 17:08:27
(・3・) エェー 自分が単位もらうわけじゃないし単位落としてもいいYO!
0382デフォルトの名無しさん2007/01/19(金) 17:12:44
>>375
UNIXのシステムコールを使っとらんがな
0383デフォルトの名無しさん2007/01/19(金) 17:20:21
>>376
C言語なら俺に聞け(入門篇) Part 6
http://pc10.2ch.net/test/read.cgi/tech/1167325490/549

せっかく答えたのに無視ですか
氏ねよお前
0384デフォルトの名無しさん2007/01/19(金) 17:25:35
383さんへ
申し訳ないです…用事で出かけてました。
でも、ありがとうございました!!!
0385ニケ2007/01/19(金) 17:40:22
えぇ〜(><)
そう言わずにお願いしますYO!
ぼるじょあさぁん!!
0386ミケ2007/01/19(金) 17:59:56
留年した方がニケの為になるのでは?
0387ニケ2007/01/19(金) 18:04:44
ミケめ!!
留年なんて言わなきゃ良かった…。

ホントに誰かお願いします!
0388ぼるじょあ ◆yBEncckFOU 2007/01/19(金) 20:00:21
>>380
(・3・) エェー そんな曖昧な仕様の宿題なのかYO!
都合が悪いところは勝手に直してくれYO!
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3465.c
0389ぼるじょあ ◆yBEncckFOU 2007/01/19(金) 20:03:06
>>388
(・3・) あらためて>>380を読み返すとユーザーに入力させるんじゃなくて代入なのかYO!
しかも辞書式のリスト構造ってなんだYO!
とりあえず>>388は2分木だYO!
0390デフォルトの名無しさん2007/01/19(金) 23:25:32
[1] 授業単元:プログラミング
[2] 適当な英文ファイルを読み込んで, アルファベット a 〜 z の各文字の出現回数をファイル frequency.txt に出力するプログラムを作成せよ.
ただし, 大文字と小文字は区別しないものとする.

※ fgets で文字列にデータを一行づつ読み込み, 文字列中の文字を一文字づつ調べて出現回数を配列に記録することにより数えよ. 例えば,
配列を int count[26] とすると, 'a' の個数を count[0] で, 'b' の個数を count[1] で, …, 'z' の個数を count[25] で数えるようにすればよい.
[3] 環境
 [3.1] windows
 [3.2] cygwin
 [3.3] C
[4] 期限: 2007/1/21
[5] なるべく問題文に忠実に、難しすぎる書き方無しでお願いします。
0391ぼるじょあ ◆hZ8e4Wjqvw 2007/01/19(金) 23:45:00
>>390
(・3・) エェー isalpha tolower は使ってもいいのかNA?
#include<stdio.h>
#include<ctype.h>
int main(void){
 char *filename_in="適当な英文ファイル";
 char *filename_out="frequency.txt";
 FILE *fp_in, *fp_out;
 char buf[256];
 int i, count[26]={};
 fp_in=fopen(filename_in, "r");
 if(fp_in==NULL){
  fprintf(stderr, "\nError: %s file cannot open.\n", filename_in);
  return 1;
 }
 while(fgets(buf, sizeof(buf), fp_in)!=NULL){
  for(i=0;buf[i]!='\0';i++)
   if(isalpha(buf[i]))
    count[tolower(buf[i])-'a']++;
 }
 fclose(fp_in);
 fp_out=fopen(filename_out, "w");
 if(fp_out==NULL){
  fprintf(stderr, "\nError: %s file cannot open.\n", filename_out);
  return 1;
 }
 for(i=0;i<26;i++)
  fprintf(fp_out, "%c:%d\n", 'a'+i, count[i]);
 fclose(fp_out);
 return 0;
}
0392ニケ2007/01/19(金) 23:47:32
ぼるじょあさん!
バイトで返事できなくてすみません。
ユーザーに打ってもらうのでこれで
大丈夫です。
ありがとうございました!

0393デフォルトの名無しさん2007/01/20(土) 01:17:20
>>391
ありがとうございます。使っていいのかどうか分かりませんけど
手伝ってもらったって感じで出すからそれでおkです。
0394デフォルトの名無しさん2007/01/20(土) 08:38:26
どこの誰とも知れない若者を留年の窮地から救ったぼるじょあ氏の優しさに感動
0395ぼるじょあ ◆yBEncckFOU 2007/01/20(土) 08:39:01
(・3・)b エェー ぼくたちぼるじょあにかかれば宿題なんていちころなりYO
0396ぼるじょあ ◆yBEncckFOU 2007/01/20(土) 08:39:50
ぼるじょあさんすごいです〜(><)
0397デフォルトの名無しさん2007/01/20(土) 10:20:34
void sub(void){
static int abc = 0;
abc++;
printf("%d,",abc);
}
呼び出した時にabcは
毎回ゼロ初期化されるのでしょうか?
それとも1,2,3,4,5・・・となるのでしょうか?
0398ぼるじょあ ◆hZ8e4Wjqvw 2007/01/20(土) 10:28:21
>>397
(・3・) エェー 自分で試してみればいいYO!
0399デフォルトの名無しさん2007/01/20(土) 11:22:56
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):
次のような構造体 node と変数 head があり、head は連結リストの先頭を指しています。 この関数 average は、ノードがない場合は 0 を返すものとします。
/* node 構造体と変数 head */
struct node {
char name[32]; /* 名前 */
int height; /* 身長 */
struct node *next; /* 次のノードへのポインタ */
};
struct node *head; /* 常に連結リストの先頭を指す変数 */

変数 head から順にすべてのノードを調べ、平均身長を返す関数 average
を完成させてください。

int average(void){

[3] 環境
 [3.1] OS: (Windows)
 [3.2] コンパイラ名とバージョン: (gcc 3.4)
 [3.3] 言語: (C)
[4] 期限: [無期限]
[5] その他の制限: お願いいたします
0400ぼるじょあ ◆hZ8e4Wjqvw 2007/01/20(土) 11:54:38
>>399
(・3・) エェー これでいいかNA?
int average(void){
 struct node *member;
 long height_sum=0L;
 int node_num, ret=0;

 member=head;
 for(node_num=0;member!=NULL;node_num++){
  height_sum+=member->height;
  member=member->next;
 }
 if(node_num>0) ret=height_sum/node_num;

 return ret;
}
0401デフォルトの名無しさん2007/01/20(土) 13:41:41
二人のボルジョアさん、こんにちわ。
0402デフォルトの名無しさん2007/01/20(土) 13:47:30
どうしてもボルジョアさんのお仕事や経歴が知りたいNA!
0403ぼるじょあ ◆yBEncckFOU 2007/01/20(土) 19:28:38
>>402
(・3・) エェー ぼるじょあは自身をぼるじょあと認識した存在の総称だからぼるじょあの中には無数のペルソナがあって特定のお仕事や履歴ってものは無いんだYO!
強いて言えば宿題を片付けるのがお仕事だYO!
0404ぼるじょあ ◆yBEncckFOU 2007/01/20(土) 19:53:07
(・3・) エェー もいらはアナ○について詳しい
0405ぼるじょあ ◆yBEncckFOU 2007/01/20(土) 20:44:29
(・3・) アルェー C/C++よりもSchemeとかJavaScriptとかHaskellの方が得意なぼるじょあもいるYO!
0406デフォルトの名無しさん2007/01/20(土) 20:46:16
>>404
アナゴさんについて詳しく教えて下さい!!><
0407ぼるじょあ ◆hZ8e4Wjqvw 2007/01/20(土) 22:25:20
>>402
(・3・) エェー 本当に知りたいなら自分がどういう立場で、どういう理由で知りたいかを
          真実っぽく書けば教えてくれるかも知れないYO!

          多分君が期待していると思われる回答が返ってくると思うYO!
          事実ではなくて欲しい答えが…
0408ぼるじょあ ◆yBEncckFOU 2007/01/20(土) 22:47:17
>>406
(・3・) エェー くちぼるの厚さは最大部分で13.4�_、色はどどめ色、下唇の中央からちょい右に小さいほくろがあるお
          臭いは腐った下痢便のにおいがするお

          て、ちゃうわボケ!もいらは○ナルに詳しいんだお
          大人の事情で1文字だけ伏せさせて貰ってるお
0409デフォルトの名無しさん2007/01/21(日) 00:13:24
>>408
ノリツッコミ下手やなぁw
0410ノリ2007/01/21(日) 00:16:43
悪かったのぅ
うちはボケ専門だ
0411デフォルトの名無しさん2007/01/21(日) 02:10:12
>>398
未定義だったり処理系定義だったりする場合があるから、その答えはまずい。
今回の例では問題ないけど。
0412デフォルトの名無しさん2007/01/21(日) 12:54:33
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
  buildheap 関数を参考にして、親 >= 子を満たすヒープ構造
(根に最大値を持つヒープ構造)を構成する buildheap2 関数を作ってください。

/*
親の位置 p、配列の要素数 n、配列 heap を引数に取り、
p から下のヒープ構造を構成する関数 buildheap2
*/
void buildheap2(int p, int n, int heap[]){

[3] 環境
 [3.1] OS: (Windows)
 [3.2] コンパイラ名とバージョン: (gcc 3.4)
 [3.3] 言語: (どちらでも可)
[4] 期限: (無期限)
[5] その他の制限:
0413デフォルトの名無しさん2007/01/21(日) 14:15:15
[1] 授業単元: プログラミング技術
[2] 問題文(含コード&リンク):キーボードから3つの線分(整数)を入力し、
その3つの線分で三角形を描くことができるなら"CAN MAKE A TRIANGLE"
描けないなら"CAN'T MAKE A TRIANGLE"と表示する。
[3] 環境
 [3.1] OS: (Linux)
 [3.2] コンパイラ名とバージョン: (gcc 3.4)
 [3.3] 言語: (C言語)
[4] 期限: (無期限)
[5] その他の制限: (制御構造、論理演算子)
0414ぼるじょあ ◆hZ8e4Wjqvw 2007/01/21(日) 14:27:10
>>413
(・3・) エェー 「3つの線分(整数)を入力し、」の部分があやしいけど
          これでいいのかお?

#include<stdio.h>
int main(void){
 int a, b, c;

 printf("三角形の三辺の長さを入力して下さい :");
 scanf("%d %d %d", &a, &b, &c);
 if(a>0 && b>0 && c>0 && (-a+b+c)*(a-b+c)*(a+b-c)>0)
  printf("\"CAN MAKE A TRIANGLE\"");
 else
  printf("\"CAN'T MAKE A TRIANGLE\"");
 return 0;
}
0415デフォルトの名無しさん2007/01/21(日) 14:46:08
ぼるじょあさんへ
僕は大学の一年で、応用化学を専攻しています。教養の科目でプログラミングを取りました。
コンピュータの素晴らしさや、プログラミングの面白さを知りました。
そんな、プログラミングを軽々やっちゃうぼるじょあさんのことが知りたいので
いろいろ聞きました。ぼるじょあさん達のこと教えてください。
いつもありがとう
0416デフォルトの名無しさん2007/01/21(日) 14:59:37
                / ̄ ̄\
              /  ヽ_  .\ 
              ( ●)( ●)  |     ____
              (__人__)      |     /      \
              l` ⌒´    |  / ─    ─  \
             . {         |/  (●)  ( ●)   \
               {       / |      (__人__)      |
          ,-、   ヽ     ノ、\    ` ⌒´     ,/_
         / ノ/ ̄/ ` ー ─ '/><  ` ー─ ' ┌、 ヽ  ヽ,
        /  L_         ̄  /           _l__( { r-、 .ト
           _,,二)     /  ・     ・   〔― ‐} Ll  | l) )
           >_,フ      /               }二 コ\   Li‐'
        __,,,i‐ノ     l   ×          └―イ   ヽ |
                    l                   i   ヽl
0417デフォルトの名無しさん2007/01/21(日) 16:11:32
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):画面に「*」を用いて底辺が6文字分の長さ
を持つ直角三角形を表示する。for文を使用すること
実行イメージ
*
**
***
****
*****
******
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: C言語
[4] 期限: 無期限
[5] その他の制限:お願いします
0418デフォルトの名無しさん2007/01/21(日) 16:18:37
>>417
int main(void){
    char*p="\0******" + 6;
    for(;*p;--p){
        puts(p);
    }
    return 0;
}
0419デフォルトの名無しさん2007/01/21(日) 17:13:26
>>417
#include <stdio.h>
int main(void) {
    static const int n = 6;
    int i, j;
    for (i = 0; i < n; i++) {
        for (j = 0; j < i + 1; j++)
            printf("*");
        printf("\n");
    }
    return 0;
}
0420デフォルトの名無しさん2007/01/21(日) 17:58:51
412お願いします。
0421デフォルトの名無しさん2007/01/21(日) 18:00:42
>>420
buildheapって何だよ?
0422デフォルトの名無しさん2007/01/21(日) 18:28:14
>>420
ま、いいや。どちらでも可ってことだし、とりあえずC++で。
#include <algorithm>
void buildheap2(int p, int n, int heap[]) {
    std::make_heap(heap + p, heap + p + n);
}
0423デフォルトの名無しさん2007/01/21(日) 20:25:40
[1] 授業単元: 数値解析
[2] 問題文(含コード&リンク): 整数a,bを与えた時、a,bの
最大公約数(a,b),及びax+by=(a,b)を満たすx,y∈Z
を一組求めるプログラムを作れ。
(Zは整数全体の集合とする)

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: どちらでも可
[4] 期限: 2007年1月22日
[5] その他の制限: 問題に、実行結果をいくつか添付することと書いて
あります。

お願いします。
0424デフォルトの名無しさん2007/01/21(日) 20:39:36
言語:C
よろしくお願いします。

n 個のデータをキーボードから入力し,その平均と標準偏差を求めるプ
ログラムを作成せよ。データの個数n もキーボードから入力できるようにす
ること。
※例えば,5個のデータ50,60,70,80,90 の平均は70, 標準偏差は15.8である。
(テストデータとして入力し,結果を確認せよ)
0425デフォルトの名無しさん2007/01/21(日) 20:55:55
>>423
#include <stdio.h>
void extended_gcd(int a, int b, int *x, int *y, int *g) {
    int tx = 0, lastx = 1, ty = 1, lasty = 0, temp, quotient;
    while (b != 0) {
        temp = b; quotient = a / b; b = a % b; a = temp;
        temp = tx; tx = lastx - quotient * tx; lastx = temp;
        temp = ty; ty = lasty - quotient * ty; lasty = temp;
    }
    *x = lastx; *y = lasty; *g = a;
}
int main(void) {
    int i, a[] = {88, 84, 87, 84, 92, 78, 28, 90, 96, 54}, b[] = {70, 86, 81, 74, 96, 63, 50, 35, 14, 69}, x, y, g;
    for (i = 0; i < sizeof(a) / sizeof(a[0]); i++) {
        extended_gcd(a[i], b[i], &x, &y, &g);
        printf("%d*%d+%d*%d=%d\n", a[i], x, b[i], y, g);
    }
    return 0;
}

【実行例】
88*4+70*-5=2
84*-1+86*1=2
87*-13+81*14=3
84*15+74*-17=2
92*-1+96*1=4
78*-4+63*5=3
28*9+50*-5=2
90*2+35*-5=5
96*-1+14*7=2
54*9+69*-7=3
0426デフォルトの名無しさん2007/01/21(日) 21:02:09
>>424
#include <stdio.h>
#include <math.h>

int main()
{
    float input_data[99], heikin, hensa, sum_heikin=0, sum_hensa=0;
    int i, n;

    scanf("%d", &n);
    for (i=0 ; i<n ; i++)
    {
        scanf("%f", &input_data[i]);
        sum_heikin+=input_data[i];
        printf("%f\n", sum_heikin);
    }
    heikin=(float)sum_heikin/n;

    for (i=0 ; i<n ; i++)
    {
        sum_hensa= sum_hensa+(input_data[i]-heikin)*(input_data[i]-heikin);
    }
    hensa=sqrtf(sum_hensa/n);
    printf("%f\n%f\n", heikin, hensa);

    return 0;
}
04274232007/01/21(日) 21:03:56
>>425
ありがとうございます!本当に助かりました!!
0428デフォルトの名無しさん2007/01/21(日) 21:09:10
>426 下のを自分で作ったのですが、標準偏差の計算部分は合っていますでしょうか?
#include<stdio.h>
#include<math.h>
int main(void){
double sum,input,heikin,hensa,sum2;
int n;

printf("入力されたデータの平均と標準偏差を求めます。\n");
printf("入力を終わらせたい時は000と入力して下さい。\n\n");
printf("データを入力して下さい\n");
n=0;
sum=0;
sum2=0;
while(input!=000){
n++;
printf("%d番目のデータ:",n);
scanf("%lf",&input);
sum=sum+input;
sum2=sum2+input*input;

}

heikin=sum/(n-1);
hensa=sqrt((sum2/n-1)-(heikin*heikin));
printf("平均:%lf\n",heikin);
printf("標準偏差:%lf\n",hensa);
return(0);
}
0429ぼるじょあ ◆hZ8e4Wjqvw 2007/01/21(日) 21:21:10
>>428
(・3・) エェー n-1を括弧で括ってないから間違ってるYO!
          あと、質問テンプレの標準偏差の数値は不偏分散の二乗根みたいだYO!
0430デフォルトの名無しさん2007/01/21(日) 21:47:02
[1] 授業単元:
[2] 問題文(含コード&リンク):相手にメールを送り、受け取った人がそれを開くと
              自動的にドレミファソラシドの音を繰り返すプログラムを作成せよ。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語: C/C++どちらでも可
[4] 期限:2007/2/4
[5] その他の制限:音階は特に気にしなくていいです

0431デフォルトの名無しさん2007/01/21(日) 22:14:17
それなんてウイルス?
0432デフォルトの名無しさん2007/01/21(日) 22:51:02
授業単元:プログラミング演習
です。書き忘れ。
0433デフォルトの名無しさん2007/01/21(日) 23:48:28
>>430
>自動的にドレミファソラシドの音を繰り返す
この部分はメーラー依存になるな
VBSでいいのか?
0434デフォルトの名無しさん2007/01/22(月) 00:11:01
>>433おっけいです 題意を満たせば問題ないです
0435デフォルトの名無しさん2007/01/22(月) 10:10:38
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
 中心の要素は a[(left+right)/2] で求めることができます。
この要素を左側の要素と交換すれば、同じプログラムを利用できます。
 
クイックソートの軸として、中心の要素の値を使うことが一般的です。
quicksort 関数を変更してください。

[3] 環境
 [3.1] OS: (Windows)
 [3.2] コンパイラ名とバージョン: (gcc 3.4)
 [3.3] 言語: (C)
[4] 期限: (明後日)
[5] その他の制限:
0436ぼるじょあ ◆hZ8e4Wjqvw 2007/01/22(月) 20:34:36
>>435
(・3・) エェー 変更元になる quicksort 関数の書き込みはまだかお?
0437デフォルトの名無しさん2007/01/22(月) 20:38:01
(・3・)(・ε・)
0438デフォルトの名無しさん2007/01/22(月) 20:38:24
>>430はスルーですか??
0439ぼるじょあ ◆hZ8e4Wjqvw 2007/01/22(月) 20:43:10
>>430
(・3・) エェー もいらはギブアップだYO! 他のぼるじょあさんと名無しさんが頼りだNE!

          ちなみに、メールを受信した側のPCで音を鳴らすの?
          それとも、メール送信した側で開封通知メールの機能を使って送信した側で音を鳴らすの?
0440デフォルトの名無しさん2007/01/22(月) 20:47:10
送信した側です
04414402007/01/22(月) 20:52:43
ちがいます!すみません受信した側のpcで鳴らすよう言われました。
■ このスレッドは過去ログ倉庫に格納されています