[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 07/01 22:51 / Filesize : 375 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん [2009/06/24(水) 23:28:21 BE:454421568-DIA(282072)]
あなたが解けない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++の宿題片付けます 127代目
pc12.2ch.net/test/read.cgi/tech/1244449887/

82 名前:前675 mailto:sage [2009/06/26(金) 10:16:03 ]
>>78 やっちまったみたい、17行目と18行目を、次の2行に置き換えてみて、教えて。
//if(argc != 2) {puts("Usage: exefile 10000"); return 1;}
//max_days = atoi(argv[1]);
if(argc < 2) max_days = 10000;
else max_days = atoi(argv[1]);

83 名前:デフォルトの名無しさん [2009/06/26(金) 16:39:26 ]
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
自分の名前の英字名のASCIIコードを順番に表示するプログラムを作りなさい。
[3] 環境
 [3.1] OS: Windows vista
 [3.2] コンパイラ名とバージョン:Visual Studio 2008
 [3.3] 言語: C
[4] 期限: 09年07月01日
[5] その他の制限:特になし

どうかよろしくお願いします。僕の能力では作ることができませんでした。


84 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 16:54:23 ]
#include <stdio.h>

int main() {
    int i;
    char name[30] = "Taro Aso";

    for ( i = 0; name[i] != '\0'; i++ )
        printf("%3d %c", name[i], name[i]);

    return 0;
}

85 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 18:09:15 ]
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9554.txt
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 7月1日 17:00
[5] その他の制限:

86 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 18:10:43 ]
>>28です。
答えてくだっさた方々ありがとうございました。


87 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 19:12:34 ]
>>85
#include<stdio.h>
#include<ctype.h>
#include<string.h>

int main(void){
char code[26][30]={{0}}, buf[30], filename[FILENAME_MAX], alpha;
FILE *fp;
int moji;

scanf("%s\n", filename);
fp=fopen(filename, "r");
if(fp==NULL) return 1;

while(fscanf(fp,"%c,%[^\n]\n", &alpha, buf)==2){
if(isalpha(alpha)){
strcpy(code[tolower(alpha)-'a'], buf);
}
}

fclose(fp);

while((moji=getchar())!=EOF){
if(isalpha(moji)){
printf("%s", code[tolower(moji)-'a']);
}else{
putchar(moji);
}
}

return 0;
}

88 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 19:23:31 ]
30って気持ち悪いw

89 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 19:28:57 ]
>>83
#include<stdio.h>
#include<ctype.h>

int main(void){
char name[]="Nanasi no Gonbee Jr.2";
int i;

for(i=0;name[i];i++){
printf("%c:%d\n", name[i], name[i]);
}

return 0;
}

90 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 19:36:17 ]
なんでctype.h?



91 名前:デフォルトの名無しさん [2009/06/26(金) 21:55:22 ]
>>10
有難うございました!

92 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 23:25:43 ]
[1]数値情報解析
[2]ドゥーリトル法によるLU分解でn元連立1次方程式を解くプログラムを作りなさい。
 LベクトルとUベクトルと解ベクトルを表示すること。
[3]
[3.1]Windows
[3.2]Visual Studio
[3.3]C
[4]2009年7月1日
[5]ほぼ素人なので、少しでも優しい表現にしていただくようよろしくお願い致します。

93 名前:デフォルトの名無しさん [2009/06/27(土) 00:37:12 ]
前スレ930のものです。

前スレで回答してもらえず、前スレが落ちてしまったのでもう一度質問させてください。
[1] 授業単元:計算機システム構成原理
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9559.txt
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 6月30日まで
[5] その他の制限: 特になし
よろしくお願いします。

94 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 00:39:17 ]
長くてめんどくさいだけの課題はやる人あんまりいないよな。

95 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 01:27:02 ]
>>93
ftp.gnu.org/gnu/bash/bash-4.0.tar.gz

96 名前: ◆/91kCCQXBo mailto:sage [2009/06/27(土) 02:17:57 ]
>>032 LED コンパイルはしてない。0b01111111
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/737.zip

97 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 05:39:00 ]
11

★pc1つで毎日3万稼ぐ★


★翌日入金★

★2009年最新在宅ワーク!★☆

toutou.nantomo.dousetsu.com/


98 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 06:30:45 ]
>>27
Dll_BMP_C.h ってのを晒さないと誰もできないぞ
(もし Dll_BMP_C.c みたいなのがあったらそれも)


99 名前:デフォルトの名無しさん [2009/06/27(土) 07:24:15 ]
>>27
>>98
D_llBMP_C.h kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9560.txt

100 名前:83 [2009/06/27(土) 09:54:43 ]
>>84
ありがとうございましたm(__)m



101 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 09:56:38 ]
>>99
thx
DllBmpReadImage()とかの実体のDLLかソースコードもあるとうれしい
(というかそれがないとできない)


102 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 10:04:27 ]
なんかこのやり取りを良く見る気がする
一般的でないライブラリを使用するときは
一緒にアップしろとテンプレに明記した方がいいんじゃないか

103 名前:デフォルトの名無しさん [2009/06/27(土) 10:11:06 ]
>>95
どうみてもbash

104 名前:デフォルトの名無しさん [2009/06/27(土) 10:37:35 ]
[1] 授業単元:C言語
[2] 問題文:2つの整数型の変数を入れ替える関数swapを定義して、それを使用して配列中の数字をランダムに入れ替えるプログラムの作成。
1から52までの数が順番に入った配列を用意し、十分に入れ替えた結果を表示すること。
[3] 環境
 [3.1] OS: windows
 [3.3] 言語: C
[4] 期限: 7月2日まで
[5] その他の制限: 特になし

105 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 10:44:04 ]
#include <stdio.h>
#include <stdlib.h>

void swap(int *a, int *b)
{
int temp = *a;
*a = *b;
*b = temp;
}

int main(void)
{
int i, a[52];

srand(time(NULL));

for(i=0; i<52; i++) a[i] = i + 1;

for(i=52; i> 0;) {
int j = rand() / (RAND_MAX + 1.0) * i--;
swap(a+i, a+j);
}

for(i=0; i<52; i++) printf("%d ", a[i]);

return 0;
}

106 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 11:30:32 ]
>>92
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9562.txt


107 名前:デフォルトの名無しさん [2009/06/27(土) 14:22:30 ]
[1] 授業単元 C言語
[2] 問題文 回文の判断をせよ
ただ、小文字、大文字の区別はしない、記号、空白も考えない。

Madam, I’m Adam
Able was I ere I saw Elba
この二つの文は回文である。 Ad czv zC Daのような文も回文

[3] 環境
 [3.1] OS Windows
 [3.2] コンパイラ名とバージョン VisualC++
 [3.3] 言語 C
[4] 期限: 6月29日



108 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 16:01:45 ]
>>107
眠りながら適当に書いた
#include<iostream>
#include<algorithm>
#include<string>
#include<cctype>
#include<functional>
int main(){
    std::string line;
    getline(std::cin,line);
    std::string tmp = line;
    tmp.erase(std::remove_if(tmp.begin(),tmp.end(),std::not1(std::ptr_fun(std::isalpha))),tmp.end());
    std::transform(tmp.begin(),tmp.end(),tmp.begin(),std::toupper);
    std::cout << (std::equal(tmp.begin(),tmp.end(),tmp.rbegin()) ? "回文です" : "回文じゃないです") << std::endl;
}

109 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 16:02:35 ]
おおっとすまん課題はC言語だったか。適当に書き直すわー

110 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 16:03:34 ]
>>107
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9564.txt



111 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 16:15:54 ]
書いてるうちに他の人が書いたけど悔しいから出してみる
#include<stdio.h>
#include<ctype.h>
#include<string.h>
void copyAlpha(char*dst,const char*src){
while(*dst = *src)if(isalpha(*src++))++dst;
}
void lowerCase(char*dst){
for(;*dst;++dst)*dst=tolower(*dst);
}
void reverseStr(char*dst,const char*src){
0[dst += strlen(src)]=0;
while(*src)*--dst=*src++;
}
int main(){
char src[80],rev[80];
gets(src);
copyAlpha(src,src);
lowerCase(src);
reverseStr(rev,src);
puts(strcmp(rev,src)==0 ? "回文です" : "回文じゃないです");
}

112 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 17:44:30 ]
ポインタなしver.がないので
isalphaの行をどうにかマクロにしたかったw

int is_anagram(const char str[]) {
    int head, tail, len;
    head = 0; tail = (len=strlen(str))-1;
    for ( len /= 2; head < len && len < tail; head++, tail-- ) {
         if ( !isalpha(str[head]) ) { head++; continue; }
         if ( !isalpha(str[tail]) ) { tail--; continue; }
         if ( tolower(str[head]) != tolower(str[tail]) )
             return 0;
    return 1;
    }
}


113 名前:デフォルトの名無しさん [2009/06/27(土) 17:50:07 ]
[1] 授業単元: コンピュータプログラミング
[2] 問題文:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/clip.gif
[3] 環境
 [3.1] OS: windows
 [3.2] VisualC++
 [3.3] 言語: c
[4] 期限: 2009年6月30日
[5] その他の制限:配列はcharやdouble,
並び替えはdo,for,if,whileなどで習いました。
   お願いします。

114 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 17:55:56 ]
URLが

115 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 17:56:14 ]
>>113 大きいクリップ、リンクが変。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9568.zip

116 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 17:57:34 ]
>>113
問題文のリンクがちがうぞw

117 名前:デフォルトの名無しさん [2009/06/27(土) 18:07:55 ]
<<115のが正しいです。
すみません。

118 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 18:33:49 ]
>>112
retrun 1;
の位置が明らかにおかしい

119 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 19:36:14 ]
>>107
俺もブームに乗って作ってみた。動作は保障しない。怪文21面相〜♪
そうそう、全角文字には対応してないんだからね!サンプルをコピペしてハマッタ。ソースの整形はご自分で!
#include <stdio.h>
#include <ctype.h>
#include <string.h>

int main(){
    unsigned char str[1024]={'\0',};    char *ch;   int i=0,j=0,N=0;
    printf("input string:");
    fgets(str,1024,stdin);
    str[1023] ='\0';ch = strchr(str,'\n');
    if(ch != NULL) *ch ='\0';
    for(i=0;str[i]!= '\0';i++){
        if(isalpha(str[i])){//アルファベット置換と移動
            str[j++] = toupper(str[i]); 
        }
        if(isdigit(str[i])){//数字移動
            str[j++] = str[i];
        }
    }
    str[j]='\0';    N=j/2;
    for(i=0;i<N;i++){
        if(str[i]!=str[j-1-i]){
            printf("string is no match!\n");
            return 1;
        }
    }
    printf("string is Match!\n");
    return 0;
}

120 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 20:15:38 ]
>str[1023] ='\0';
無意味



121 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 20:18:23 ]
>>120
保険だよ。一行削れるから、ないほうがよかったかなぁ。。。

122 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 20:25:14 ]
行削りたいなら
if(isalum(str[i])) str[j++] = toupper(str[i]);
でいいだろ

123 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 20:37:25 ]
>>122
あぁ、それでいけるのね。
toupperを普段使わないから、認識が曖昧だった。勉強になります。

124 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 20:41:01 ]
>>121
fgets()は必ず終端に'\0'を付けると>>120は言ってるんだろう
fgets()で付く場合と付かない場合があるのは'\n'だ

125 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 20:45:29 ]
>>124
それも認識が曖昧だった。なるほど、勉強になります。

126 名前:デフォルトの名無しさん [2009/06/27(土) 21:07:38 ]
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):
int型配列:int x[]と、int型配列xの大きさ:int sizeの2つの引数を用いて、
クイックソートで昇順に並べ替えるvoid quicksort(int x[], int size)と
二分木の中間走査によって昇順に並び変えるvoid inorder(int x[], int size)
の作成
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 明日
[5] その他の制限: 特になし

127 名前:デフォルトの名無しさん [2009/06/27(土) 22:03:12 ]
>>27
u9.getuploader.com/himajinn/download/190/DLL_files.zip

128 名前:93 [2009/06/27(土) 23:06:49 ]
>>95
これは違うと思うのですが…。
すいませんがどなたか>>93のをお願いします。


129 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 23:42:52 ]
>>128
>>94-95

130 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 23:54:48 ]
>>106 さんありがとうございました。
ホントに助かりました!



131 名前: ◆/91kCCQXBo mailto:sage [2009/06/28(日) 01:42:21 ]
>>113 ソートのアルゴリズムは習ってないということで。
pc12.2ch.net/test/read.cgi/tech/1232367742/676

132 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 02:54:57 ]
【質問テンプレ】
[1] 授業単元: C言語演習
[2] 問題文(含コード&リンク):3つの分数の和を求めるプログラムの作成.
但し,2つの分数の和をもとめる関数bunnsuwa(..)を作ってそれを利用して3つの分数を求める.
[3] 環境
 [3.1] OS:Windows/vista
 [3.2] コンパイラ名とバージョン Visual Studio 2008
 [3.3] 言語:C++
[4] 期限: ([7月2日まで]
[5] その他の制限:
下の手順でプログラムを作成すること

1.二つの分数を入力して,その和をmain関数で計算して結果を表示する
1.1 分数を二つ入力 b/a, d/c とする:
ここは整数変数4つにデータを入力
1.2 二つの分数の和をf/eに計算:
普通に計算してf,eを表示
2.その二つの分数の和を計算する部分を取り出し関数bunnsuwa(..)を作成する:
3.bunnsuwa(..)を複数回適用し、三つの分数の和を求めるプログラムを作成する

約分をできるようにする。また分母が0のときにエラー処理をする。
4.1 yakubun(..)という関数を作ってみるのもよい
例えば、void yakubun(int *a, int *b)で *b/*aを約分して更新する

マイナスの分子や分母が入れられた時や,分母が1になった時もきれいに表示できるようにする

お願いします〜




133 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 10:36:59 ]
>>132
こんな感じでよいか?

#include<stdio.h>
void yakubun(int*a,int*b){
int x=*a,y=*b,z;
while(y){z=x%y;x=y;y=z;}
*a/=x;*b/=x;
if(*a<0)*a=-*a,*b=-*b;
}
void bunnsuwa(int*a,int*b,int*c,int*d){
*b=*b**c+*a**d;*a*=*c;
}
int main(){
int a=!0,b=0,c,d,i;
for(i=1;i<4;i++){
for(;;puts("やりなおせ")){
printf("%dつ目の 分子 分母 = ",i);scanf("%d%d",&d,&c);
if(c)break;
}
bunnsuwa(&a,&b,&c,&d);
yakubun(&a,&b);
printf("合計 = %d",b);
if(a>1&&b!=0)printf(" / %d",a);
puts("");
}
return 0;
}


134 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 10:37:30 ]
[1] 授業単元: C言語
[2] 問題文:
(1) 整数と4つの演算子(+, -, *, /)とカッコ ( ) から
成る計算式の文字列から計算木を作成する関数を作れ。
ただし、再帰は使ってはならない。
(2) 整数と4つの演算子(+, -, *, /)から成る計算木から
計算式の文字列を作成する関数を作れ。優先順位に注意
して、必要な箇所をカッコ ( ) でくくれ。ただし、
再帰は使ってはならない。
[3] 環境
 [3.1] OS:Linux
 [3.2] gcc
 [3.3] C言語
[4] 期限:6/30
お願いします。

135 名前:93 [2009/06/28(日) 11:15:59 ]
>>129
本当にわからなくて>>95のが与えられてもよくわかりませんでした。
すいませんがせめて>>95のどれを見たらわかるかだけでも教えていただけないでしょうか?

136 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 11:41:43 ]
>>132
一応やってみた。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9569.txt

137 名前:デフォルトの名無しさん [2009/06/28(日) 13:36:16 ]
[1] 授業単元:数理物理
[2] 問題文(含コード&リンク):www.mns.kyutech.ac.jp/~kamada/suuributuri/sub8.html
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:どちらでも可
[4] 期限:6/30まで
[5] ヒントのプログラムから最後のprintfのところのxのあたいがよくわからないのでよろしくお願いします。

138 名前: ◆/91kCCQXBo mailto:sage [2009/06/28(日) 13:41:47 ]
>>132 >>136のGCDを参考にした。
3個の分数の和は、分数の和+1個の分数の和が題意だと解釈してみた。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9570.c

139 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 14:02:12 ]
>>133 >>136 >>138
ありがとうございました!とても参考になりました。

140 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 14:15:05 ]
>>87
答えてくださってありがとうございます。しかし、これを実行してみたら、フォネティックコード
化はちゃんとなっているんですけど、入力→フォネティックコード化→入力・・・・とずっと続
いてしまいます。

ポインタとファイルだけは何がどうなっているのかさっぱりわからないので自分で修正する
こともできなくて・・・。修正よろしくおねがいします。



141 名前:デフォルトの名無しさん [2009/06/28(日) 14:48:24 ]
>>96
遅くなりましたが、ありがとうございます。

142 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 15:16:05 ]
>>137
xは微分方程式を解いたときのx(t)の値だと思う
double func(double x, double v, double t) {
return (-x-v*v*v+1+cos(t));
}
に変えるだけでいいんじゃないかな

143 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 15:23:56 ]
>>140
こうかな?
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9571.c

144 名前:143 mailto:sage [2009/06/28(日) 15:30:17 ]
while((moji=getchar())!=EOF){
if(isalpha(moji)){
printf("%s", code[tolower(moji)-'a']);
}else{
if (moji == ']')
break;
putchar(moji);

}
}

前のだと無駄に ] を出力しちゃうのでこっちの方で。

145 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 16:04:07 ]
>>144
if (moji == '\n') // 改行で終わる(笑!)
  break;

146 名前:デフォルトの名無しさん [2009/06/28(日) 16:13:13 ]
[1] 授業単元: C言語
[2] 問題文:f(x)=xe^x-6を2分法とニュートン法で解きなさい。 
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン:Visual Studio 2008
 [3.3] 言語: C
「4」期限:6/28
[5] その他の制限: 配列が終わった程度しかやってません

147 名前:デフォルトの名無しさん [2009/06/28(日) 17:17:34 ]
>>142
助かりました。
プログラムは一応完成しました。
感謝します。

148 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 17:41:06 ]
>>146
#include <stdio.h>
#include <math.h>
double f(double x) { return x * exp(x) - 6; }
double fd(double x) { return (1 + x) * exp(x); }
/* 繰り返し回数、初期値は任意 */
int main(void) {
// 二分法
{
int i, n = 10;
double a = 0, b = 5, x;
for (i = 0; i < n; i++) {
x = (a + b) / 2;
if (f(x) < 0 && f(a) < 0) {
a = x;
} else {
b = x;
}
}
printf("%f\n", x);
}
// ニュートン法
{
int i, n = 10;
double x = 0;
for (i = 0; i < n; i++) {
x = x - f(x) / fd(x);
}
printf("%f\n", x);
}
return 0;
}

149 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 18:00:11 ]
>>148
即レスthxです
参考にさせてもらいます

150 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 18:05:56 ]
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
@kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9572.zip
Awww.dotup.org/uploda/www.dotup.org180573.zip

[3] 環境
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン:Visual Studio 2005
 [3.3] 言語:C
[4] 期限:7/2
[5] その他の制限:
お手数かけますが宜しくお願いします



151 名前:145 mailto:sage [2009/06/28(日) 18:09:36 ]
>>140 Ctrl+D をキーボードから入れれば終了する。Windowsなら Ctrl+Z。

152 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 20:10:58 ]
>>150
課題1

153 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 20:12:41 ]
URI張り忘れたorz
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9574.txt

154 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 20:41:45 ]
>>153
有難うございます。
助かりましたm(_ _)m


課題2の方どなたかお願いします。

155 名前:デフォルトの名無しさん [2009/06/28(日) 20:58:21 ]
すみません、アセンブラの問題なんですが、どこで質問したらいいのか分らないので
ここでさせて頂きますm(_ _)m
もしアセンブリプログラムの方が無理でしたらC言語の方で構いません。

[1] 授業単元: アセンブリプログラミング
[2] 問題文(含コード&リンク): 1からN(N≦3)までの正整数の順列を作成せよ。すなわち、
N=1を与えた場合には1を、N=2を与えた場合には12,21、N=3を与えた場合には123,132,...を生成する。
[3] 環境
 [3.1] OS:Windows 
 [3.3] 言語: アセンブリ言語、無理でしたらC++
[4] 期限: 7月1日
[5] その他の制限: 特にないです。

ちゃんとした質問になってるかも分かりませんが、すみませんが
よろしくお願いします。

156 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 21:02:26 ]
>>150
課題2
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9575.txt

157 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 21:23:33 ]
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9576.txt
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン: VC 2008
 [3.3] 言語: C
[4] 期限: 6月29日 15時
[5] その他の制限: 配列やif文などは使わない。(使わなくてもできるみたいです。
          printf,繰り返し処理を使う。

148を参考にやってみたのですが、実行結果の出し方が違うみたいなのでいまいちわからなかったので
質問しました。 お手数ですがよろしくおねがいします。

158 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 21:32:00 ]
>>156
迅速なレス感謝します
本当に助かりました。

159 名前:デフォルトの名無しさん [2009/06/28(日) 22:02:20 ]
>>155
C言語でアセンブラ出力する。

160 名前:デフォルトの名無しさん [2009/06/28(日) 22:35:48 ]
どなたか>>126お願いします



161 名前:145 mailto:sage [2009/06/28(日) 22:44:53 ]
>>087 scanf("%s\n", filename); // \nでは、<Enter>で入力が終わらない。
これか、  scanf("%s%*c", filename);
または、  scanf("%[^\n]%*c", filename);
これか、  fgets(filename, FILENAME_MAX, stdin); filename[strlen(filename) - 1] = '\0';

162 名前:デフォルトの名無しさん [2009/06/28(日) 22:50:03 ]
[1] 授業単元:数値計算
[2] 問題文(含コード&リンク):の連立1次方程式の解をガウスの消去法用いて解くプログラムを作成しなさい。
   (この行列を使用してください
     {{10,-9,0,0,0,0,0,0},
  {-9,17,-8,0,0,0,0,0},
  {0,-8,17,-9,0,0,0,0},
{0,0-9,13,-4,0,0,0},
{0,0,0,-4,12,-8,0,0},
{0,0,0,0,-8,10,-2,0},
  {0,0,0,0,0,-2,2,7}})

[3] 環境
 [3.1] OS: Windows Vista
 [3.2] Visual Studio 2008
 [3.3] 言語: C++
[4] 期限: 2009年7月1日まで]
[5] その他の制限:特にありませんがなるべく簡単なものでお願いします


163 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 23:05:17 ]
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9577.txt
[3] 環境
 [3.1] OS Linux
 [3.2] コンパイラ名とバージョン:不明
 [3.3] 言語:C
[4] 期限:7/3
[5] その他の制限:ポインタ配列を利用すること
お願いします

164 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 23:05:32 ]
[1] 授業単元:文字列
[2] 問題文(含コード&リンク):
#include<stdio.h>
int chrlen(int n,char a[]);
void cap2sml(char a[],char b[]);
void strinv(int n,char a[],char b[]);
int main(void)
{
char a[100],b[100];
int i,n;
n=0;
/*from CAPITAL to small*/
void cap2sml(char a[],char b[])
{
int i;
for(i=0;a[i]!='\0';i++){
b[i]=a[i]+0x20;
}
if("A"<=a)&&(a<="Z")
b[i]='\0';
}
↑入力データが英大文字のときのみ小文字変換して表示するようにせよ

[3] 環境
 [3.1] OS: Windows vista
 [3.2] gcc
 [3.3] 言語: C
[4] 期限: 2009年6月29日AM07:00
[5] その他の制限: 特になし


165 名前: ◆/91kCCQXBo mailto:sage [2009/06/28(日) 23:21:26 ]
>>155 N=3までの順列
#include <iostream>
using namespace std;
int main(void) {
  int i,j,k,n;
  cout<<"n="; cin>>n;
  cout.width(1);
  switch(n) {
  case 1:
    for(i=1;i<=1;i++) {
      cout<<i<<endl;
    }
    break;
  case 2:
    for(i=1;i<=2;i++) {
    for(j=1;j<=2;j++) {
      if(i==j) continue;
      cout<<i<<j<<endl;
    }}
    break;
  case 3:
    for(i=1;i<=3;i++) {
    for(j=1;j<=3;j++) {
      if(i==j) continue;
    for(k=1;k<=3;k++) {
      if(i==k || j==k) continue;
      cout<<i<<j<<k<<endl;
    }}}
  default:
    break;
  }
}

166 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 23:31:15 ]
>>163
入力はポインタでなくていいのかな。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9578.txt

167 名前:デフォルトの名無しさん mailto:sage [2009/06/28(日) 23:40:54 ]
>>164
もうちょっと何がしたいのか
具体的に書いてくれると嬉しい。

#include <stdio.h>
#include <ctype.h>

void cap2sml(char a[],char b[]){
int i;
for(i=0;a[i];i++) b[i] = tolower(a[i]);
}

int main(void){
char a[100] = "I have a friend whose name is Bob.";
char b[100];

cap2sml(a,b);

puts(a);
puts(b);

return 0;
}

168 名前:デフォルトの名無しさん [2009/06/28(日) 23:53:41 ]
>>166
早速の回答ありがとうございます
入力は指定がないのでポインタでなくてもいいです


169 名前:155 [2009/06/29(月) 00:24:46 ]
>>165
ありがとうございます!

>>159
すみません、それはどういうことでしょう?

170 名前:デフォルトの名無しさん [2009/06/29(月) 00:27:46 ]
回答してもらえるとうれしいです。>>162




171 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 00:42:50 ]
>>170
みんな暇なときにやってんだからさ
そうせかすなよw

締め切りまだ近いわけじゃないしw

172 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 00:44:38 ]
[1] 授業単元:計算機システム
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9532.txt
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 6月30日まで
[5] その他の制限:
ボスケテ



173 名前:デフォルトの名無しさん [2009/06/29(月) 01:07:25 ]
>>171
そうですね。つい焦っちゃって。
ごめんなさい。。


174 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 02:00:36 ]
>>173
昔作ったのでよければあげる。
データ変える程度ならちょっといじれば動くようになるはず。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9580.txt

175 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 02:26:03 ]
>>169
gcc と objdump が使えるなら
$ gcc a.c -c
$ objdump -d a.o > a.s
とかすればよかったとおもう

176 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 02:33:49 ]
gccならgcc -S foo.cで良くないか
わざわざディスアセンブルせんでも

177 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 02:43:03 ]
>>170

>>174さんのプログラムを使って作ってみたけどコアを吐く

kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9581.txt

行列式ゼロなのか、それともピボット選択の必要があるのか

178 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 03:02:55 ]
>>162 {0,-9

179 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 03:15:45 ]
>>178
すみませんコピペミスしてました
でも、そこを直してもやっぱりコアダンプです

180 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 03:18:17 ]
行列が潰れている(行列式がゼロ)なんじゃないでしょうか?
それともやっぱりピボット選択した方がいいのかなあ?
デバッガ掛けてみたらやっぱり tmp がゼロになる時があり
Division by Zero という事でした



181 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 03:37:11 ]
>>162 #define N 8

182 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 09:09:12 ]
>>181
あら本当だありがとう
でもこれじゃ未知数8、数式は7しかない
これじゃ解けませんぜ旦那

>>170
どうする?元の行列もう一列足りないよ






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<375KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef