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

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2006/12/03(日) 23:26:18
>>950
質問する前にスレを読み返した君はエライ
953936:2006/12/03(日) 23:26:41
>>949
あ、そういうことだったのですか…。完全に見方が解ってませんでした。
「関数の戻り値は○○です。」と書いてあるのかと思ってました。
どうもありがとうございました。
954デフォルトの名無しさん:2006/12/03(日) 23:26:53
んなもん適当で
955デフォルトの名無しさん:2006/12/03(日) 23:38:06
[1] 授業単元:プログラミング
[2] 問題文:四則演算を作成しなさい
[3] 環境
 [3.1] OS:WindowsXP
 [3.3] 言語:C++/
[4] 期限:明日
[5] 最近c++を習い始めました。1.2-1.1の答えが0.1ではなく0.09999になります。
このド素人にアドバイスお願いします。
956デフォルトの名無しさん:2006/12/03(日) 23:41:44
>>955
浮動少数点での計算は十中八九誤差が出ます
それだけ
957デフォルトの名無しさん:2006/12/03(日) 23:42:04
>>955
よくあること気にしない
958デフォルトの名無しさん:2006/12/03(日) 23:42:28
>>955
仕様です。
959デフォルトの名無しさん:2006/12/04(月) 00:00:19
>>955
printf("%.1f",hoge);
960デフォルトの名無しさん:2006/12/04(月) 00:07:44
[1] 授業単元:アーキテクチャー
[2] 問題文: C言語の配列とポインターを使って、文字列をひとつ入れて
それぞれの文字が入っているアドレスを出力しなさい。
また、整数データの列を定義してそれぞれの整数が入っている
アドレスを出力しなさい 。
[3] 環境
 [3.1] OS:WindowsXP
 [3.3] 言語: C
[4] 期限: 12月4日10時半
961デフォルトの名無しさん:2006/12/04(月) 00:15:02
次スレ立て人へ

現在過去スレ一覧で使ってるにくちゃんねるが、過負荷のため
12月31日で公開停止するそうです。

「にくちゃんねる」終了のお知らせ
ttp://makimo.to/close.html
962デフォルトの名無しさん:2006/12/04(月) 00:49:02
>>960 なんでポインタ使わんといかんのかいみわからん

#include <stdio.h>
#include <string.h>

int main()
{
  int i;
  int *phoge,hoge[] = {1,1,2,3,5,8,13,21};
  char *pfuga,fuga[] = "mojiretu";
  
  phoge = hoge;
  for(i = 0;i < strlen(fuga);i++){
    printf("&fuga[%d] = %p\n",i,(phoge+i));
  }
  
  printf("\n");
  
  pfuga = fuga;
  for(i = 0;i < sizeof(hoge)/sizeof(int);i++){
    printf("&hoge[%d] = %p\n",i,(pfuga+i));
  }
  
  return 0;
}
963#:2006/12/04(月) 01:38:04
[1] 授業単元:プログラミング入門
[2] 問題文
 http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3080.txt
 http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3081.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: Visual Studio 2005
 [3.3] 言語: C
[4] 期限: 12月5日
[5] その他の制限:
・問題1,2 関数、配列は使わない
 (main関数、printf関数など、定義関数は使える)
・問題3,4 特になし

>>947
ありがとうございました(^^。

親切な方ばかりで本当に助かっています。
宜しくお願いします。
964#:2006/12/04(月) 01:42:01
問題の番号間違えました(−−;)。
関数の方が4,5になっています。
すいません(汗)。
965デフォルトの名無しさん:2006/12/04(月) 01:54:35
誰か「C/C++の宿題は流石兄弟におまかせ 27代目」のdatを持ってないか?
持ってたら欲しいんだが。にくちゃんねるにも見当たらない。
966デフォルトの名無しさん:2006/12/04(月) 02:07:10
にくちゃんねるにあるじゃん
967デフォルトの名無しさん:2006/12/04(月) 02:16:39
>>966
途中で切れてるっぽい
968デフォルトの名無しさん:2006/12/04(月) 02:20:05
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
キーボードから入力した文章を単語単位で切り出し
総単語数と各単語の文字数を表示せよ。単語の区切りは半角スペース。
単語数の上限は50、一単語の最大文字数は30と仮定
[3] 環境
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン:bcc32
 [3.3] 言語:C
[4] 期限:12月5日まで
[5] その他の制限:文字入力にはgets関数を使用。ポインタだけでかければ
更に可

お願いします。半角スペースがわかりません。。
969デフォルトの名無しさん:2006/12/04(月) 02:29:10
' ' ←半角!
970デフォルトの名無しさん:2006/12/04(月) 02:33:06
>>969
それでエラー出たんです。。。
ってか難しくて無理ぽ。。。
971デフォルトの名無しさん:2006/12/04(月) 02:36:51
半角スペースとは0x20のことだ
972デフォルトの名無しさん:2006/12/04(月) 02:56:43
>>919
候補表示中にポインタがウィンドウ外に行ったとき、
ウィンドウ外をクリックされたときの挙動はどうしたらいい?
973デフォルトの名無しさん:2006/12/04(月) 03:03:59
[1] 授業単元:C言語
[2] 問題文(含コード&リンク): ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3084.txt
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン:Borland(bcc32)
 [3.3] 言語: C
[4] 期限:木曜日
[5] その他の制限:ありません、よろしくお願いします
974デフォルトの名無しさん:2006/12/04(月) 03:27:27
975デフォルトの名無しさん:2006/12/04(月) 04:13:56
>>963
逆順ってなんだ?
ヒストグラムのやつはデータに制限無いのか?
976デフォルトの名無しさん:2006/12/04(月) 04:19:17
>963
逆順ってこれでいいか?
2.
#include <stdio.h>
int main(void)
{
int i, n, m;
scanf("%d", &m);
i = m;
n = 0;
while(i) {
n = n * 10 + i % 10;
i /= 10;
}
printf("%d\n", n);
if(m>n) printf("mがnより大きい\n");
else if(m<n) printf("nがmより大きい\n");
else printf("nとmは等しい\n");
return 0;
}
977デフォルトの名無しさん:2006/12/04(月) 04:22:09
>963
0の桁を指定してないからこれだと0にしてある。
3.
int keta(int n)
{
int i;

if(n>=0) {
for(i=0; n; i++, n/=10);
return i;
}
else {
n = -n;
for(i=0; n; i++, n/=10);
return i + 1;
}
}
978デフォルトの名無しさん:2006/12/04(月) 06:09:08
1 2 3 4 5 6 7 8 9
-------------------------------------------------
1 | 1 2 3 4 5 6 7 8 9
2 | 2 4 6 8 10 12 14 16 18
3 | 3 6 9 12 15 18 21 24 27
4 | 4 8 12 16 20 24 28 32 36
5 | 5 10 15 20 25 30 35 40 45
6 | 6 12 18 24 30 36 42 48 54
7 | 7 14 21 28 35 42 49 56 63
8 | 8 16 24 32 40 48 56 64 72
9 | 9 18 27 36 45 54 63 72 81

をつくるプログラムをCでお願いします
979デフォルトの名無しさん:2006/12/04(月) 06:31:53
>>978
こういう質問をすると、たいがい掛け算九九の計算手順をとらずに
数字をそのまま並べて表示するプログラムを書く人が出てくる、間違いないw
980デフォルトの名無しさん:2006/12/04(月) 06:55:04
”つくる”が難しいな
981デフォルトの名無しさん:2006/12/04(月) 07:05:05
”表示する”なら簡単だなんだけどね
982デフォルトの名無しさん:2006/12/04(月) 07:06:03
>>978
>>979
ではご期待に応えて

#include <stdio.h>

int main()
{
printf("1 2 3 4 5 6 7 8 9\n"
"-------------------------------------------------\n"
"1 | 1 2 3 4 5 6 7 8 9\n"
"2 | 2 4 6 8 10 12 14 16 18\n"
"3 | 3 6 9 12 15 18 21 24 27\n"
"4 | 4 8 12 16 20 24 28 32 36\n"
"5 | 5 10 15 20 25 30 35 40 45\n"
"6 | 6 12 18 24 30 36 42 48 54\n"
"7 | 7 14 21 28 35 42 49 56 63\n"
"8 | 8 16 24 32 40 48 56 64 72\n"
"9 | 9 18 27 36 45 54 63 72 81\n");
return 0;
}
983デフォルトの名無しさん:2006/12/04(月) 07:08:01
>>978
#include<stdio.h>
void main(){
for (int i=0;i<3;i++) printf(" ");
for (i=1;i<10;) printf(" %d",i++);
printf("\n");
for (i=0;i<30;i++) printf("-");
int j,y;
for(i=1;i<10;i++){
printf("\n%d | ",i);
y=0;
for(j=1;j<10;j++){
y+=i;
if(y<10) printf(" ");
printf("%d ",y);
}
}
printf("\n");
}
984983:2006/12/04(月) 07:11:07
訂正
#include<stdio.h>
void main(){
for (int i=-2;i<1;i++) printf(" ");
while(i<10) printf(" %d",i++);
printf("\n");
for (i=0;i<30;i++) printf("-");
int j,y;
for(i=1;i<10;i++){
printf("\n%d | ",i);
y=0;
for(j=1;j<10;j++){
y+=i;
if(y<10) printf(" ");
printf("%d ",y);
}
}
printf("\n");
}
985983:2006/12/04(月) 07:17:38
再訂正
#include<stdio.h>
void main(){
for (int i=-2;i<1;i++) printf(" ");
while(i<10) printf(" %d",i++);
printf("\n");
for (;i<40;i++) printf("-");
int j,y;
for(i=1;i<10;i++){
printf("\n%d | ",i);
y=0;
for(j=1;j<10;j++){
y+=i;
if(y<10) printf(" ");
printf("%d ",y);
}
}
printf("\n");
}
986!983:2006/12/04(月) 07:38:46
訂正
#include<stdio.h>
void main()
{
int i,j,y;
printf(" |");
for(i=1;i<=9;i++)
printf(" %2d",i);
printf("\n--+");
for (i=0;i<28;i++)
printf("-");
for(i=1;i<=9;i++){
printf("\n%d |",i);
y=0;
for(j=1;j<=9;j++){
y+=i;
printf(" %2d",y);
}
}
printf("\n");
}
987デフォルトの名無しさん:2006/12/04(月) 08:12:05
[1] 授業単元:プログラミング
[2] 問題文:次のようなプログラムを作れ。
1. 数値を順番に読み込んで二次元の配列に格納する。
2. その配列を画面に出力する。
3. 次に、2つの整数を読み込む。
4. 二次元配列のうち、読み込んだ整数に対応する二つの行の内容を交換する。
5. 配列を画面に出力する。
配列の読み込み、交換、出力はそれぞれ関数にすること。

[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:gcc 3.4
 [3.3] 言語:C
[4] 期限:2006年12月5日17:00
[5] その他の制限:授業では配列までやりましたが、特に制限はないです。

自分では期限内にできそうにないのでよろしくお願いします。
988デフォルトの名無しさん:2006/12/04(月) 08:23:21
>987
二次元配列のサイズは?
989デフォルトの名無しさん:2006/12/04(月) 08:35:05
数値を順番に読み込むって
何から読み込むのか書いてないのは
なんだかなー

問題文に書いてあるとおりなんだろうからどうしようもないのかもしれんが
990デフォルトの名無しさん:2006/12/04(月) 08:53:03
誰か次スレ立てて。29chは2chにリンクするようにした

あなたが解けない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++の宿題を片付けます 77代目
http://pc8.2ch.net/test/read.cgi/tech/1164079451/
【過去スレ一覧】
http://makimo.to/cgi-bin/search/search.cgi?q=C%2B%2B%82%CC%8Fh%91%E8&andor=AND&sf=0&H=&view=table&link2ch=on&shw=2000&D=tech
991デフォルトの名無しさん:2006/12/04(月) 08:59:29
>990
立てたよ
C/C++の宿題を片付けます 78代目
http://pc8.2ch.net/test/read.cgi/tech/1165190320/
992987:2006/12/04(月) 09:01:13
二次元配列のサイズに規定はありません

あと、読み込む数値は全てキーボードからの入力です
993デフォルトの名無しさん:2006/12/04(月) 09:15:25
x + y = 1, x, y >= 0の条件の下で(2x + y)^2 + (x - y)^2 + (x + 2y)^2の最小値を求める
という問題の変数を増やした場合

x(1) + ・・・+ x(n) = 1, x(i) >= 0の条件の下でΣ{i=1,m} (Σ{j=1,n} a(i,j) * x(j))^2の最小値

はどのように解いたらいいのかわかりますか?いいサイトあったら教えてください
パソコン、プログラム使って解ける方法教えてください

994デフォルトの名無しさん:2006/12/04(月) 09:25:18
[1]プログラム演習
[2]
一定の文字からなる列sを読み込み、以下の条件を満たす同じ個数の文字からなる列tを出力するプログラムを作りなさい。
ただし、以下での単語とは空白以外の文字からなる列のこととする。
1,s中の単語は同じ順番で t に現われる
2,t中では単語は一つの空白に区切られる
3,t中に最初の単語の最初の文字から最後の単語の文字までは列全体のちゅうおうに位置し、前後は空白である
例えば文字の列
_This___is__a____good___program___
を入力すると
______This_is_a_good_program______
が出力される。ここで、_は空白を表すものとする。
[3]C言語
[4]12/7
[5]for,while,if文 ポインター 文字列 1,2次配列 関数の書き方


995デフォルトの名無しさん:2006/12/04(月) 09:38:35
>>993
二次計画問題。

数理計画とか凸計画とか線型計画とかの本で「二次計画」
という言葉を探すといいと思うよ。

アルゴリズムとしては、線型計画に帰着するのと、
凸計画として降下法系のを使うのの二つがあるが、後者のほうが実装は楽。
996デフォルトの名無しさん:2006/12/04(月) 09:46:13
>>995
ありがとうございます
変数が2次なんですけど出来ますか?
0よりは小さくならず、無限には大きくならないので最小値は必ず一つあるはずなんですが
997デフォルトの名無しさん:2006/12/04(月) 09:52:56
>>996
本を読んでみたら?
998デフォルトの名無しさん:2006/12/04(月) 09:57:14
>>997
しかも最小値を与えるx(i)を決定したいんですが...出来ますか?
本が手に入らないんですが...いいサイトないですか?検索してみますけど
999デフォルトの名無しさん:2006/12/04(月) 10:05:03
>>998
図書館池。スレ違い。
1000デフォルトの名無しさん:2006/12/04(月) 10:07:41
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。