C/C++の宿題を片付けます 121代目at TECH
C/C++の宿題を片付けます 121代目 - 暇つぶし2ch200:デフォルトの名無しさん
09/01/05 01:15:44
>>198
#include <stdio.h>
int main()
{
printf("sum { 1, 3, ... , 99 } = %d\n", 50 * (1 + 99) / 2);
printf("sum { 2, 4, ... , 100 } = %d\n", 50 * (2 + 100) / 2);
return 0;
}

201:デフォルトの名無しさん
09/01/05 01:53:41
>>199
/* ちょっと気持ち悪く書いてみたよ */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define ENTER_MAX 10
#define NAME_LEN 256
#define AGE_LEN 4
#define BUFF_SIZE (NAME_LEN + AGE_LEN + 1)
int main(void)
{
char table[ENTER_MAX][BUFF_SIZE];
char buff[BUFF_SIZE];
int n;
int i;
do {
printf("登録数 (1 から %d) >> ", ENTER_MAX);
} while ((n = atoi(fgets(buff, BUFF_SIZE, stdin))) > ENTER_MAX);

for (i = 0; i < n; ++i) {
int len;
printf("名前 >> "); fgets(table[i], NAME_LEN, stdin);
len = strlen(table[i]);
printf("年齢 >> "); fgets(&table[i][len + 1], AGE_LEN, stdin);
table[i][len - 1] = ','; table[i][len] = ' ';
}
for (i = 0; i < n; ++i) printf("%s", table[i]);

return 0;
}

202:デフォルトの名無しさん
09/01/05 02:09:03
>>186

親切な解答、ありがとうございました。1はまた考えてみます。

失礼しました。


203:197 ◆brUNnJvSqY
09/01/05 02:12:10
>>201
ありがとうございます。

fatal error C1010: プリコンパイル ヘッダーを検索中に不明な EOF が見つかりました。'#include "stdafx.h"' をソースに追加しましたか?
という、エラーが出てしまいます。回避法はありますでしょうか?

出来れば、初心者に毛が生えた程度のプログラムで作っていただけると有りがたいです。

204:デフォルトの名無しさん
09/01/05 02:13:16
>>203
#include <stdafx.h> をソースの頭に書け
あと氏ね

205:デフォルトの名無しさん
09/01/05 02:32:12

[1] 授業単元: Cプログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: win
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:c
[4] 期限: 朝まで
[5] その他の制限: よろしくお願いします

206:デフォルトの名無しさん
09/01/05 02:47:14
>>205
/* 意味が良くわからないけどこういうことかな */
#include <stdio.h>
#define N 1024
const char const *str
= "#include <stdio.h>\n\nint main() {\nint k, c, n, i;int l;int m = 0;\n\
\tfor (k = 0; k < 3; k ++) {\n\t\tfor (n = l = 0;\n\t\t\
(c = getchar()) != '\\n';l++) {\n\t\t\tif (l == 0 && c == '-') {\n\t\t\tprintf(\"Error!!負の数\\n\");\
\n\t\treturn 1;\n\t}\n\tif (l < 8) {\n\t\tif (c < '0' || c > '9') {\n\
\t\tprintf(\"Error!!数字文字以外の入力\\n\");\n\treturn 1;\n}\n\
\tn = n * 10 + c - '0';\n\t}\n}\n\tif (l == 0) {\n\tprintf\
(\"Error!!改行のみの入力\\n\");\nreturn 1;\n}\n\tm += n;\n\t}\n\
\tprintf(\"合計は%d\\n\", m);\nreturn 0;\n}\n";
int main(void)
{
int x[N], i;
for (i = 0; str[i]; ++i) x[i] = str[i];
return 0;
}

207:デフォルトの名無しさん
09/01/05 03:23:15
ちょ、そのクワイン的発想は何w

208:デフォルトの名無しさん
09/01/05 03:36:17
字義通りだと、こうだろ?
むしろ、他の解釈を聞かせて欲しい。

209:デフォルトの名無しさん
09/01/05 03:42:07
ビルド済みのバイナリかソースのどちらかだろうとは考えた

210:C初心者
09/01/05 11:00:16
>>196
すいません、リンク先に行けなくて見れてないです。

211:デフォルトの名無しさん
09/01/05 12:52:12
[1] 授業単元: c
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: windows
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:c
[4] 期限:夕方
[5] その他の制限: よろしくです

212:デフォルトの名無しさん
09/01/05 13:00:26
>>211
何周目だよ。死ねよ。


213:デフォルトの名無しさん
09/01/05 13:16:18
>>1
> 気に入らない質問やその他や発言はスルーの方向で。
も読めない基地外って何?別にお前個人を指定、特定して答えろなんて
誰も言って無いし、答えられない低レベル役立たずのクズになんて頼んでもいないだろ。

214:デフォルトの名無しさん
09/01/05 13:21:06
スレタイも読めないようだな。ここで丸投げの宿題が書き込まれるのは
分かりきっていることなのに、自分が気に入らないとファビョって
訳も分からないクレームをつける奴って何?そんなんだから
一生、成功しないままこの世を去るんだろ?w
そういうのって簡単に言うと「負け組み、社会の底辺」って言うんだぜ?
ほれ、お前と同じ世代、同じ学校に通っていたけど自分が見下していたあいつ、
今何をしてる?少なくともお前以上の出世はしただろうねw
お前はいつまでも、こんなスレで引きこもりながら陰湿なレスをし続けるだけ。
人生終わってら。

215:デフォルトの名無しさん
09/01/05 13:44:35
>>211
/* たぶん大丈夫だと思う */
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define L 3
#define N 8
#define M (N * sizeof(int))
int main(void)
{
int *x[L], total = 0, i;
for (i = 0; i < L; ++i) {
int n;
x[i] = (int *)malloc(M);
printf(" input number >> ");
if ((n = atoi(fgets((char *)(x[i]), M, stdin))) > (int)pow(10, N))
printf("%d\n", n %= (int)(pow(10, N)));
if (n < 0 || (n == 0 && x[i][0] != '0')) {
fprintf(stderr, "Error!\n"); return 1;
}
total += n;
}
printf("answer = %d\n", total);
return 0;
}

216:デフォルトの名無しさん
09/01/05 13:45:57
下から9行目の
printf("%d\n", n %= (int)(pow(10, N)));

n %= (int)(pow(10, N));
に直して。

217:デフォルトの名無しさん
09/01/05 14:17:06
>>211
#include <stdio.h>

int input() {
  char c;int a = 0;int cnt = 0;

  while(1) {
    c = getchar();
    if(c == '\n') break;
    if('0'<=c && c<='9') a = a*10 + c-'0'; else cnt=9;
    cnt++;
  }

  if(cnt==0 || cnt>=9) return -1; else return a;
}

//
int main(void) {
  int a[3],i;
  printf("8桁までの整数を3つ入力してね\n");
  for(i=0;i<3;i++) {
    a[i] = input();
    if(a[i]<0) {
      fprintf(stderr,"Error : 8桁までの整数を入力してくださいませ\n");
      return -1;
    }
  }

  printf("合計 %d + %d + %d = %d\n",a[0],a[1],a[2],a[0]+a[1]+a[2]);
  return 0;
}


218:デフォルトの名無しさん
09/01/05 14:19:49
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: Windows XP
 [3.2] コンパイラ名とバージョン: Visual Stdio 2005
 [3.3] 言語: C
[4] 期限: 1/5 21:00

よろしくお願いします。

219:デフォルトの名無しさん
09/01/05 14:29:53
[1] 文字列の格納、比較
[2] URLリンク(kansai2channeler.hp.infoseek.co.jp) (設問もzipに入っています。)
   このプログラムをポインタとstrchr関数を使わない形に書き換えていただけないでしょうか。
   あと、コメントアウトでややこしいところ、ループの箇所等に説明をつけていただけるとありがたいです。
[3] 環境
 [3.1] WinXP
 [3.2] Borland C++ Compiler 5.5
 [3.3] 言語:C言語
[4] 期限:[2008年1月15日00:00まで]
[5] 原則的にgoto 文は使用しない。
do while ループに関してはできるかぎり使用せず、while に統一する。
※キーボードからの入力は、scanf 関数およびgets 関数を使用せず、getchar 関数または、
fgets 関数を使用すること。


220:デフォルトの名無しさん
09/01/05 14:33:13
>>213


221:デフォルトの名無しさん
09/01/05 17:03:15
>>219
しね

222:デフォルトの名無しさん
09/01/05 18:22:05
>>218
こんな感じでいかが?
URLリンク(kansai2channeler.hp.infoseek.co.jp)

223:デフォルトの名無しさん
09/01/05 19:26:03
>>211
もう前スレで解答してあるはずだが

224:218
09/01/05 20:03:05
>>222
自分のミスで問題に一部書き忘れをしてしまいましたが、ここまでしていただければ十分です
ありがとうございました

225:デフォルトの名無しさん
09/01/05 22:33:58
[1] 授業単元: 計算機工学
[2] 問題文(含コード&リンク): 下記
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: C
[4] 期限: 2009年01月15日19:00まで
[5] その他の制限: なし

■問題

指定した部品数で建てられる家の最大面積を求めるプログラムを作成して下さい。
窓、ドア、壁の3タイプの部品があり、部品の長さは2m。
次のルールを満たさなくてはいけません。
1)1面にはドアは1つまで
2)家には少なくとも1つのドアが必要
3)ドアの両脇は壁部品でなくてはならない
4)窓の両脇は壁部品でなくてはならない
5)家は四角型
6)部品はそれぞれ50個が上限

int MaxArea(int NumWall,int NumWin,int NumDoor)
このように各部品の数を指定し、面積を返す関数を作ってください。

例)
MaxArea(8,0,1) = 12
---
| |
-D-


226:デフォルトの名無しさん
09/01/05 23:14:44
文字型配列を、"OKINAWA"を初期値として宣言し、文字列を
反転させて、"AWANIKO"と出力するプログラムを作りなさい。

227:デフォルトの名無しさん
09/01/05 23:25:18
>>226
char str[]="OKINAWA"; reverse(str); printf("%s",str);

228:226
09/01/05 23:32:05
自己解決しました。

229:デフォルトの名無しさん
09/01/05 23:35:47
>>226
for使っての解き方誰かわかりますか?

230:デフォルトの名無しさん
09/01/05 23:38:45
>>225
Google Code Jam 2004のHousePartyってヤツだな。

231:デフォルトの名無しさん
09/01/05 23:44:51
>>229
reverse(char *str) {
  int i; for(i=0; i<len(str)/2; i++) { char c=str[i]; str[i]=str[len(str)-i-1]; str[len(str)-i-1]=c;}
}

232:デフォルトの名無しさん
09/01/05 23:48:51
[1]授業単元:C言語
[2]問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3]環境
[3.1]OS:windows XP
[3.2]コンパイラ名: visualC++2005
[3.3]言語:C
[4]期限:2009年1月6日午前8時
[5]特になし。

233:デフォルトの名無しさん
09/01/06 00:16:37
>>232
for(int i=0; i <= 100 ; i++ )if( i * ( i + 1 ) / 2 >= N ) { printf("%d\n",i); break;}
while( i * ( i + 1 ) / 2 < N ) { i++; }

234:デフォルトの名無しさん
09/01/06 00:17:14
whileの方の初期化忘れたw

235:デフォルトの名無しさん
09/01/06 00:18:23
>>232
#include<stdio.h>
int main() {
int i=0, n;
scanf("%d", &n);
while ((n-=++i)>0) /* または for(;(n-=++i)>0;) */
if (i==100) {printf("100まで加算してもだめだった\n"); return 0;}
printf("%dまで加算すればおk\n", i);
return 0;
}

236:デフォルトの名無しさん
09/01/06 00:19:31
>>232
int func_for(int n) {
  int i;for(i=1;i<=100;i++) if(i*i+i >= 2*n) return i; return -1;
}
int func_while(int n) {
  int i=0; while(++i<=100) if(i*i+i >= 2*n) return i; return -1;
}
main() {
  int i,ans;scanf("%d",&i);ans = func_for(i);if(ans>=0) printf("answer = %d\n",ans); else printf("not found\n");
}

237:デフォルトの名無しさん
09/01/06 01:09:51
>>225
URLリンク(kansai2channeler.hp.infoseek.co.jp)
一応、例題の計算結果には合致するようだが、理屈は分からん。

238:デフォルトの名無しさん
09/01/06 01:11:59
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:windows XP
 [3.2] コンパイラ名とバージョン:visual C++ 2008 Express Edition
[3.3] 言語:C言語
[4] 期限:1月9日
[5] その他の制限:特にありません。

よろしくお願いします。

239:デフォルトの名無しさん
09/01/06 02:18:23
[1]プログラミング
[2]int 型(符号つき32 ビット整数)および、unsigned int 型(符号なし32 ビット整数)のそれぞれの最大の素数を求めよ。
[3]環境
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名bcc
 [3.3] 言語:C言語
[4]特になしですが早めで。
[5]制限:エラトステネスを用いずに素数を求める。
どうか、よろしくお願いします。


240:デフォルトの名無しさん
09/01/06 03:38:59
>>239
>>177あたりでどう?

241:デフォルトの名無しさん
09/01/06 04:40:34
>>240
みのがしてました。ありがとうございますです。

242:デフォルトの名無しさん
09/01/06 08:19:55
スイマセン、どなたか>>200
(99+1)/2
の処理の意図を教えて頂けないでしょうか・・後から質問でスイマセン。

243:デフォルトの名無しさん
09/01/06 08:32:30
>>242
等差数列の和=項数*(初項+末項)/2

244:デフォルトの名無しさん
09/01/06 08:44:07
>>239 >>182 辺りが良いでおじゃるよ?

245:デフォルトの名無しさん
09/01/06 09:03:46
>>238
URLリンク(kansai2channeler.hp.infoseek.co.jp)

246:デフォルトの名無しさん
09/01/06 10:03:14
>>242
URLリンク(www.kwansei.ac.jp)

247:デフォルトの名無しさん
09/01/06 12:31:15
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):氏名と年齢を扱うプログラムを作りたい。これらのデータはリスト構造を用いて管理したいので、
1.リスト構造の要素となる構造体の型宣言を行え
2.上記構造体によって構築されたリスト構造の適切な箇所に新しい要素を追加する関数を作成せよ

なお、以下の点も守ること
・リスト構造は単方向リストとすること
・リスト構造のデータは年齢順に並ぶようにすること
・リスト構造はポインタ変数rootから始まるようにすること
・関数は新しい要素を受け取って、それをリスト構造に追加する形式にすること
・変数rootはグローバル変数とし、関数に渡さなくてもよい


[3] 環境
 [3.1] OS:windows XP
 [3.2] コンパイラ名とバージョン:visualC++2005
 [3.3] 言語:C/C++
[4] 期限:1月7日12:00まで
[5] その他の制限:特になし

よろしくお願いします。

248:デフォルトの名無しさん
09/01/06 12:38:29
麻呂のクソースを改変するでおじゃるよ

249:デフォルトの名無しさん
09/01/06 15:05:44
[1] 授業単元:C言語プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:VC2005
 [3.3] 言語:C++
[4] 期限:2009/1/8 23:00まで
[5] その他の制限:for,if等基本的なものを使う。strは禁止。

それではよろしくお願いします。

250:デフォルトの名無しさん
09/01/06 15:08:14
>strは禁止。
str~系関数のこと?
最初std::stringかと思ったが・・・

251:デフォルトの名無しさん
09/01/06 16:35:41
[1] 授業単元:プログラミング
[2] 問題文
Step 1. float型配列の先頭アドレスを受け取り,その配列内から最大の値を探して,
それを関数値として戻す関数 float max(float data[], int n) を定義せよ.ここで,nは配列data[]に入っている有効なデータの数(有効な配列要素は,0~n-1)である.
またデータに負の値はないものとする.

Step 2. main()関数内で,要素数100程度のfloat型配列を宣言し,課題11-2で作成したデータ入力関数のinput()関数を再利用してデータを配列に入力するようにプログラムする.
次に,Step1で作成した関数をmain()関数内呼び出して最大値を表示せよ.

[3] 環境
 [3.1] OS:Windows vista
 [3.2] コンパイラ名とバージョン:VC2008
 [3.3] 言語:C++
[4] 期限:2009/1/8 23:00まで
[5] その他の制限 特になし

よろしくお願いします



252:デフォルトの名無しさん
09/01/06 17:01:44
>>251
問題文も読まずに丸投げとは・・・

253:デフォルトの名無しさん
09/01/06 17:08:38
まだスレタイも読めない奴がいるのか

254:デフォルトの名無しさん
09/01/06 17:12:52
[1] 授業単元:プログラミング演習Ⅱ
[2] 問題文:
以下の仕様で収支残高管理プログラムを作成せよ.ただし,残高処理の関数を独自で定義すること.
その際,ファイルポインタについてはグローバル変数として宣言しても良い.
初期状態を除いてプログラム実行時に既存の残高額のファイル(balance.txt)を読み込む.
ファイルが存在する場合に限り,balance.txt)を読み込む処理をすれば良い.
各処理を選択するメニュー画面を残高額とともに表示する.可能であれば,残高は桁区切りカンマを用いて表示すること.
終了時にその時点の残高額をファイル(balance.txt)に書き込む.
ヒント:最初にbalance.txtを読み込みモードで開いて読み込んだ後は,即座にファイルを閉じ,最後の書き込み時に,改めて書き込みモードで開いて同名のファイルに書き込みをすれば良い.
また,ファイルからの金額の読み込みにはfscanfを,書き込みにはfprintfを使用すると良い.

255:254
09/01/06 17:15:48
>>254続き

[実行例]
***** 収支残高管理 *****

残高は \0 です.

[1] 収入
[2] 支出
[99] 終了

処理を選択してください:1

収入金額:12345


***** 収支残高管理 *****

残高は \12,345 です.

[1] 収入
[2] 支出
[99] 終了

256:254
09/01/06 17:16:27
>>255続き

処理を選択してください:2

支出金額:20000


***** 収支残高管理 *****

残高は \-7,655 (赤字)です.

[1] 収入
[2] 支出
[99] 終了

処理を選択してください:99
終了します.

[3] 環境
 [3.1] OS:Windows XP
 [3.2] コンパイラ名とバージョン:Microsoft Visual Studio.Net 2003
 [3.3] 言語:C++
[4] 期限:2009年1月8日
[5] その他の制限:特になし

よろしくお願いします。

257:デフォルトの名無しさん
09/01/06 17:21:54
>>253


258:デフォルトの名無しさん
09/01/06 17:38:13
>>251
#include<iostream>
#include<algorithm>

float max(float data[], int n){
if(n<=0) return -1.0;
return *std::max_element(data, data+n);
}

int input(float data[], int data_num_max){
int data_num;
for(data_num=0;data_num<data_num_max;){
float value;
if(!(std::cin >> value)) break;
data[data_num++]=value;
}
return data_num;
}

int main(void){
float data[100];
int data_num, data_num_max=sizeof(data)/sizeof(data[0]);

data_num=input(data, data_num_max);
std::cout << max(data, data_num) << std::endl;

return 0;
}

259:デフォルトの名無しさん
09/01/06 18:26:57
[1] 授業単元: プログラミング入門演習
[2] 問題文(含コード&リンク):
 複数の整数のうち、指定した数で割り切れる整数の個数を求めるプログラムを作成せよ。
 入力に関して
  キーボードから入力する整数の個数を入力し(最大で128に対応すること)改行する。
  次に指した数の整数をスペース1つずつ開けて1行で入力し、改行する。
  最後に1つ整数を入力し、改行する。この最後に入力した値で割り切れるかどうか
  判定する。この一連の入力時,例題や解答例のような入力を保す文字等は決して表示
  しないこと。
 出力に関して
  割り切れる整数の個数を数値のみ(+改行)を出力する。指定した数値・改行以外の
  文字等の出力は一切行わないこと。
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン:Visual Stdio 2008
 [3.3] 言語:C言語
[4] 期限: 1/8 12:00
[5] その他の制限:C言語の基礎を習っています。

よろしくお願いします

260:デフォルトの名無しさん
09/01/06 19:07:31
>>250
説明不足でごめんなさい
strlen関数のことです

#include <stdio.h>

void main(){

char moji[100];
int i=0,x;

printf("文字列を入力:");
gets(moji);
printf("\n\n");
while(moji[i] != '\0'){
i;
i++;
}
x=i+1;
printf("文字列の長さ=%d",x);
printf("\n\n");
}

という求め方を習ったのですが、strlen関数は習っていないので・・・

261:デフォルトの名無しさん
09/01/06 19:38:19
>>260
C++?

262:デフォルトの名無しさん
09/01/06 19:46:33
>>243
>>246
ありがとうございました
助かりましたw

263:つばめ
09/01/06 20:35:24
分からない問題があります。
正の整数nを入力し、nの約数の和を表示するプログラムを作る問題です。
初心者なので、宜しくお願いします。

264:デフォルトの名無しさん
09/01/06 20:40:56
一つの整数の約数って・・・・1からnまで全部足せばいいのか?w

265:デフォルトの名無しさん
09/01/06 20:52:19
>>263
#include <stdio.h>
int sum(int n){ return n == 0 ? 0 : n + sum(n - 1); }
int main(int n){ return scanf("%d", &n), printf("%d\n", sum(n)); }


266:デフォルトの名無しさん
09/01/06 20:55:10
約数の意味がわからないアホがここで何してんの?

267:265
09/01/06 20:56:12
アッー

>>264に騙された

268:デフォルトの名無しさん
09/01/06 21:00:21
>>263
#include <stdio.h>

int main(void)
{
int i, n, sum;
scanf("%d", &n);
for(i=1,sum=n; i<n; i++) if(!(n%i)) sum += i;
printf("%d", sum);
return 0;
}

269:デフォルトの名無しさん
09/01/06 21:14:41
>>259
#include<stdio.h>

int main(void){
int data[128], data_num;
int i, div;

scanf("%d", &data_num);
for(i=0;i<data_num;i++) scanf("%d", &data[i]);
scanf("%d", &div);

for(i=0;i<data_num;i++) if(data[i]%div==0) printf("%d\n", data[i]);

return 0;
}

270:デフォルトの名無しさん
09/01/06 21:17:12
表示するのは個数だろ

271:デフォルトの名無しさん
09/01/06 21:27:20
>>261
返事遅くなって毎度毎度すいません・・・
C++です

272:つばめ
09/01/06 21:31:50
質問回答ありがとうございます。
C++ではなく、C言語の方です。


273:デフォルトの名無しさん
09/01/06 21:38:08
>>270
このツンデレが!

274:デフォルトの名無しさん
09/01/06 21:39:56
なんでもツンデレ言うアホにはうんざりだ

275:デフォルトの名無しさん
09/01/06 21:43:58
じゃあ世話焼きで俺のことが大好きな妹で

276:デフォルトの名無しさん
09/01/06 21:59:37
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境 
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン: visualc++2005
 [3.3] 言語:C
[4] 期限:2009年1月7日AM7時

よろしくお願いします

277:デフォルトの名無しさん
09/01/06 22:06:46
[1] 授業単元: 情報処理応用
[2] 問題文(含コード&リンク):
DirectShowを用いてtest.aviなどファイルから再生している動画をout.aviなど別ファイルとして保存する
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: VC++2008
 [3.3] 言語: C++
[4] 期限: 1月7日
[5] その他の制限:
スレ違いかもしれませんができればお願いします


278:デフォルトの名無しさん
09/01/06 22:08:05
>>276
#include <stdio.h>

int main(void)
{
int i, j = 0;
while (j < 2 && scanf("%d", &i) != EOF) {
if (i < 0) {
puts("negative value");
j++;
}
else {
j = 0;
printf("%d\n", 2*i);
}
}
return 0;
}

279:デフォルトの名無しさん
09/01/06 22:12:58
[1] 授業単元:アルゴリズムの基礎および演習
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 2009年1月10日12:00まで
[5] その他の制限:特にありません。
よろしくお願いします。

280:デフォルトの名無しさん
09/01/06 22:26:15
>>279
1. URLリンク(kansai2channeler.hp.infoseek.co.jp)
2. URLリンク(kansai2channeler.hp.infoseek.co.jp)

281:デフォルトの名無しさん
09/01/06 23:07:11
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境 
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン: visualc++2005
 [3.3] 言語:C
[4] 期限:2009年1月7日AM9時
よろしくお願いします

282:デフォルトの名無しさん
09/01/06 23:10:01
>>279
3. URLリンク(kansai2channeler.hp.infoseek.co.jp)
4. URLリンク(kansai2channeler.hp.infoseek.co.jp)

283:デフォルトの名無しさん
09/01/06 23:29:31
>>281
スレリンク(tech板:601番)


284:デフォルトの名無しさん
09/01/06 23:57:36
>>283
これを利用しろということですか?

285:デフォルトの名無しさん
09/01/07 00:04:29
>>278
ありがとうございます
ちなみにfor文の方はどうなっているのでしょうか?

286:デフォルトの名無しさん
09/01/07 00:11:58
[1] 授業単元:C言語
[2] 問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:09年1月7日24:00まで
[5] その他の制限:丸投げですいません。基礎的な関数のみでよろしくお願いします。

287:デフォルトの名無しさん
09/01/07 00:14:42
>>285
#include <stdio.h>

int main(void)
{
int i, j = 0;
for (;j < 2 && scanf("%d", &i) != EOF;) {
if (i < 0) {
puts("negative value");
j++;
}
else {
j = 0;
printf("%d\n", 2*i);
}
}
return 0;
}

こんな感じでどうかな

288:デフォルトの名無しさん
09/01/07 01:03:59
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC++2008
 [3.3] 言語: C
[4] 期限: 1月7日
[5] その他の制限: 特になし

よろしくお願いします

289:デフォルトの名無しさん
09/01/07 01:10:06
>>288
課題7-3がないと無理

290:デフォルトの名無しさん
09/01/07 01:17:22
>>289
無視してかまわないです

追記
データ入力数は最大のmax個に達するか,負値が入力されるまでデータ入力を繰り返すものとする

291:デフォルトの名無しさん
09/01/07 01:21:38
[1] 授業単元:計算機工学
[2] 問題文(含コード&リンク):下記
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC++2008
 [3.3] 言語: C
[4] 期限: 1月15日
[5] その他の制限: 特になし


検索問題

データ数10万 ランダムな対象を1万回検索する
先頭から検索すると平均で1000秒かかった
高速化するにはどうしたらよいか
ソートされてる場合とされてない場合のそれぞれについて答えよ


292:デフォルトの名無しさん
09/01/07 01:26:38
>>291
ソートされてない場合
まずソートする、 このとき オーダーが n log になるようなまともなソートを使う
これを二分探索する

ソートされてる場合
二分探索する



293:デフォルトの名無しさん
09/01/07 01:27:09
オーダーは n * log (n) ね

294:デフォルトの名無しさん
09/01/07 01:28:24
>>286
URLリンク(kansai2channeler.hp.infoseek.co.jp)

295:デフォルトの名無しさん
09/01/07 01:31:32
>>288
URLリンク(kansai2channeler.hp.infoseek.co.jp)

296:デフォルトの名無しさん
09/01/07 01:42:34
>>291
それは本当にプログラミングの課題なのか?
考察ではなく実際に試したとしたら、116日ほどかかった計算になるんだが

297:デフォルトの名無しさん
09/01/07 01:42:55
>>295
ありがとうございます

298:デフォルトの名無しさん
09/01/07 01:54:29
>>249
URLリンク(kansai2channeler.hp.infoseek.co.jp)

299:デフォルトの名無しさん
09/01/07 02:31:06
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク):
キーボードから入力した整数と小数(それぞれ1つずつ)を乗算した結果を表示するプログラムを、
ポインタによる間接参照演算子を用いて作成せよ。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:1月7日24時
[5] その他の制限: 入力、乗算、表示部分全てでポインタを用いる

よろしくお願いします。

300:デフォルトの名無しさん
09/01/07 02:50:01
>>296
その発想はなかったわ。

301:デフォルトの名無しさん
09/01/07 03:09:50
>>299
設問者の意図がよく分からんが、こういうことか

#include <stdio.h>
int main(void) <%
char buf<:256:>;
int n;
double d;
int *np = &n;
double *dp = &d;
printf("input interger number: ");
fgets(buf, 256, stdin);
sscanf(buf, "%d", np);
printf("input decimal number: ");
fgets(buf, 256, stdin);
sscanf(buf, "%f", dp);
printf("%d times %f equals %f.\n", *np, *dp, *np**dp);
%>

302:デフォルトの名無しさん
09/01/07 03:56:04
宿題出てるんですがよくわかりません
よろしくお願いします

次のように、整数値を表すクラスを設計する

データメンバ
x:xの座標(ただし 0-1000とする)
y:yの座標(ただし 0-1000とする)
z:zの座標(ただし 0-1000とする)
    
メンバ関数
void setX(int a): xの座標を設計する(範囲外の値は、error messageを出力する)
void setY(int b): Yの座標を設計する(範囲外の値は、error messageを出力する)
void setZ(int c) Zの座標を設計する(範囲外の値は、error messageを出力する)
int getX(): Xの座標値を得る
int getY(): Yの座標値を得る
int getZ(): Zの座標値を得る

結果は、次のように表示する

Please Input X
3
Please Input Y
1000067
The value of Y is a mistake, Please input Y again!
5
Please Input Z
7
The result is: (3,5,7)

303:デフォルトの名無しさん
09/01/07 04:01:54
>>302
テンプレ嫁

304:デフォルトの名無しさん
09/01/07 09:05:19
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク):下記
[3] 環境
[3.1] OS: WindowsVista SP1
[3.2] コンパイラ名とバージョン:StadyC
[3.3] 言語: C
[4] 期限: 2009年1月7日 21時まで
[5] その他の制限: 特になし

『ジョーカーを除くトランプ52枚(1~13×4種)からランダムに5枚を抜き出した時、
・ワンペア(同じ数字が2枚)
・ツーペア(同じ数字が2枚のものが2組)
・スリーカード(同じ数字が3枚)
・ストレート(5枚連続した数値、[10,11,12,13,1]や[1,2,3,4,5]はOKだが[12,13,1,2,3]など1をまたぐケースはNG)
・フラッシュ(5枚とも同種)
・フルハウス(ワンペアとスリーカードの組み合わせ)
・フォーカード(同じ数字が4枚)
・ストレートフラッシュ(ストレートとフラッシュの組み合わせ)
それぞれの役が発生する確率(実際には試行した回数)をモンテカルロ法により求めるプログラムを作成する。
ただし、上位(記載が下にあるもの)の役と下位の役を同時に満たす場合は上位の役を優先する。
因数にポインタを含む関数を適当に作成し、利用すること。
メイン関数直下での処理はできるだけ避けることが望ましい

入力に関して
キーボードから、試行回数(+改行のみ入力する)。
最大でもint型に収まる数値とする。
このとき、入力を促す文字などは決して表示しないこと。
出題に関して
試行したうち、上記の8つの役の成立回数(+改行)のみワンペアから順に1行ずつ出力(計8行)。
指定した数値・改行以外の文字などの出力は一切行わないこと。



305:デフォルトの名無しさん
09/01/07 09:06:33
>>304
マルチ死ね

306:デフォルトの名無しさん
09/01/07 09:11:56
>>305
>>1


307:デフォルトの名無しさん
09/01/07 09:23:49
>>280
ありがとうございます。

308:304
09/01/07 09:26:40
なんとか自力で出来ました
どうもお手数おかけしました

309:デフォルトの名無しさん
09/01/07 11:08:04
>>300
エンジニアにむいてないな、オマエ。

310:デフォルトの名無しさん
09/01/07 11:10:14
>>306


311:デフォルトの名無しさん
09/01/07 11:27:55
>>310
>>1


312:デフォルトの名無しさん
09/01/07 11:27:59
>>304
引数を「いんすう」と読んでる教育機関なんか存在しないんじゃね?

313:デフォルトの名無しさん
09/01/07 11:28:11
>>311


314:回答する気もないくせに居座るだけの無能、粘着基地外
09/01/07 11:35:04
313 名前:デフォルトの名無しさん 投稿日:2009/01/07(水) 11:28:11
>>311

315:デフォルトの名無しさん
09/01/07 11:36:28
>>312
そこから考えると、
コイツは前のスレッドで同じ宿題二度投げてるやつじゃね?

316:デフォルトの名無しさん
09/01/07 11:36:35
>>314


317:デフォルトの名無しさん
09/01/07 11:36:44
>>314
>>1

318:デフォルトの名無しさん
09/01/07 11:38:12
>>304
スレリンク(tech板:128番)

319:デフォルトの名無しさん
09/01/07 11:43:13
>>304
URLリンク(detail.chiebukuro.yahoo.co.jp)

320:デフォルトの名無しさん
09/01/07 11:52:44
マルチ先を貼られた途端におとなしくなった。

321:デフォルトの名無しさん
09/01/07 12:00:17
>>317


322:デフォルトの名無しさん
09/01/07 12:01:14
>>321


323:デフォルトの名無しさん
09/01/07 12:01:20
>>319
うわぁ~~~、質問する側もどうかと思うが、それを見つけてくる粘着基地外暇人も
きめぇ~~~

324:デフォルトの名無しさん
09/01/07 12:01:40
>>323
>>1

325:デフォルトの名無しさん
09/01/07 12:34:32
巡回先が複数あるやつは多いだろ
特に質問系のスレは

326:デフォルトの名無しさん
09/01/07 13:13:30
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):下記
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン:Visual Stdio 2008
 [3.3] 言語:C言語
[4] 期限: 1/8 12:00
[5] その他の制限:なし。

中央値を求める関数を作成し、その関数を使用して中央値を出力する
プログラムを作成せよ。関数は下記の通りとする。

int median(int *in,int num)
   in   複数の整数値が格納された配列(先頭)ポインタ
   num  入力値の数
   戻り値 中央値

入力に関して
 キーボードから入力する整数の個数を入力し(最大で128に対応すること)改行する。
 次に指定した数の整数をスペース1つずつ開けて1行で入力し、改行する。

よろしくお願いします。

327:デフォルトの名無しさん
09/01/07 13:22:16
>>298
できました。ありがとうございます。

ですが
URLリンク(kansai2channeler.hp.infoseek.co.jp)
こういった形にできますでしょうか?
なるべくforじゃなくてwhileを使いたいのですが・・・


328:デフォルトの名無しさん
09/01/07 13:23:13
>>326
C/C++の宿題を片付けます 101代目
スレリンク(tech板:929番)


329:デフォルトの名無しさん
09/01/07 13:25:14
1年前ワロタww

330:デフォルトの名無しさん
09/01/07 13:28:44
毎年同じ内容の講義なんて当たり前だろ?

331:デフォルトの名無しさん
09/01/07 13:32:07
>>330
注目点は、環境がStudy Cなところじゃね?
>>304今年の学生はそれもつづれないようだけど。

332:デフォルトの名無しさん
09/01/07 13:38:33
>>326
#include <stdio.h>
int median(int *in, int num)
{
int i, j, temp;
for(i=num-1; i > 0; i--) {
for(j=0; j<i; j++) {
if(in[i] > in[j]) {
temp = in[i];
in[i] = in[j];
in[j] = temp;
}}}
return num & 1 ? in[num/2] : (in[num/2-1] + in[num/2]) / 2;
}
int main(void)
{
int i, num, in[128];
scanf("%d", &num);
for(i=0; i<num; i++) scanf("%d", in + i);
printf("%d", median(in, num));
return 0;
}

333:デフォルトの名無しさん
09/01/07 14:15:43
>>299です

>>301
解答ありがとうございました。
自分の知らない関数を使っているので、この解答を参考にしながら
書いてみます。

334:デフォルトの名無しさん
09/01/07 15:59:55
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):以下に記載
[3] 環境
 [3.1] OS:Windows Vista
 [3.2] コンパイラ名とバージョン:Visual C++ 2005 ver8.0
 [3.3] 言語: C++
[4] 期限:1/10 24:00
[5] その他の制限:特になし

次のように、整数値を表すクラスを設計する
データメンバ
x:xの座標(ただし 0-1000とする)
y:yの座標(ただし 0-1000とする)
z:zの座標(ただし 0-1000とする)
メンバ関数
void setX(int a): xの座標を設計する(範囲外の値は、error messageを出力する)
void setY(int b): Yの座標を設計する(範囲外の値は、error messageを出力する)
void setZ(int c): Zの座標を設計する(範囲外の値は、error messageを出力する)
int getX(): Xの座標値を得る
int getY(): Yの座標値を得る
int getZ(): Zの座標値を得る
結果は、次のように表示する
Please Input X
3
Please Input Y
1000067
The value of Y is a mistake, Please input Y again!
5
Please Input Z
7
The result is: (3,5,7)

335:デフォルトの名無しさん
09/01/07 16:22:14
>>334わからないながらも自分で考えてみたものの途中です
#include<iostream>
using namespace std;
class Dimension{
private:
int x;
int y;
int z;
public:
void setX(int a);
void setY(int b);
void setZ(int c);
int getX();
int getY();
int getZ();
void show();
};
void Dimension::setX(int a){
x = a;
if(a>=0 && a<=1000){
cout<<"Please Input X\n";
cin>>a;
}
else{
cout<<"The value of X is a mistake.Please input X again!"<<"\n";
cin>>a;
}
}

336:デフォルトの名無しさん
09/01/07 16:36:21
>>323
URLリンク(www.google.com)
ぐぐったらでてきた。

337:help me
09/01/07 16:40:29
[1] 授業単元:C言語
[2] 問題文: ニュートン・ラプソン法を用いて、x^3 −10x^2 +10x + 50 = 0
の解を求めよ。解の精度は有効数字5桁とする。
[3] 環境
 [3.1] OS:Linux
 [3.3] 言語: C
[4] 期限: 1月9日
よろしくお願いします。


338:デフォルトの名無しさん
09/01/07 16:50:22
>>334
URLリンク(kansai2channeler.hp.infoseek.co.jp)

339:デフォルトの名無しさん
09/01/07 16:59:44
>>337

#include<stdio.h>
#include<math.h>
//英語わからん
#define YUUKOUKETASUU 1e-5
double f(double x) {
return x*x*x - 10*x*x + 10*x + 50;
}
double g(double x) {
return 3*x*x - 20*x +10;
}
double NewtonMethod(double xn) {
double xn1 = xn - (f(xn)/g(xn));
if (fabs(xn1 - xn) < YUUKOUKETASUU)
return xn1;
return NewtonMethod(xn1);
}
int main(void) {
double x = NewtonMethod(0);
printf("f(x) = x^3 - 10x^2 +10x + 50\n");
printf("f(%f) = %f\n", x, f(x));
return 0;
}

340:デフォルトの名無しさん
09/01/07 17:01:19
>>337
#include <stdio.h>
#include <math.h>

#define YPSILON 1e-6
#define DELTA 1e-10

double f(double x)
{
return x*x*x - 10*x*x + 10*x + 50;
}

int main(void)
{
double x0, x1, d;

x0 = 0.0;
d = (f(x0+DELTA)-f(x0))/DELTA;
x1 = x0 - f(x0)/d;
while (fabs(x0 - x1) > YPSILON) {
x0 = x1;
d = (f(x0+DELTA)-f(x0))/DELTA;
x1 = x0 - f(x0)/d;
}
printf("x = %.5f\n", x1);
return 0;
}

341:help me
09/01/07 17:04:34
>>340
ありがとうございます!

342:yasu
09/01/07 17:07:23
[1] 授業単元: C言語プログラミング基礎
[2] 問題文(含コード&リンク):30以上500以下の整数の和を求めるプログラム作成する。                  
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン: PAD 2
 [3.3] 言語:C言語
[4] 期限: 1/9 12:00
[5] その他の制限:どうぞ宜しくお願いしますm(..)m


343:デフォルトの名無しさん
09/01/07 17:15:57
>>342
#include <stdio.h>
int main(void)
{
int i,sum=0;
for (i=30; i<=500; i++)
sum += i;
printf("%d", sum);
return 0;
}

344:デフォルトの名無しさん
09/01/07 17:22:38
>>340
なるほど、通常ありえないスペルミスを混入することで(ry

>>342
#include <stdio.h>
int main(void)
<%
printf("sam = %d\n", (500-30+1) * (30+500) / 2);
return 0;
%>

345:デフォルトの名無しさん
09/01/07 17:25:45
>>344 プ

346:デフォルトの名無しさん
09/01/07 17:35:26
>>343 プププ

347:デフォルトの名無しさん
09/01/07 17:38:54
>>344
なるほど、最近見かけることのないイーグルサムを混入したのですね

348:yasu
09/01/07 17:40:03
解答ありがとうございます。
助かりました!!

349:238
09/01/07 18:00:13
>>245
遅くなってすみません。ありがとうございます。

350:yasu
09/01/07 18:15:23
[1] 授業単元: C言語プログラミング基礎
[2] 問題文 nを入力し、1からnまでの3の倍数と5の倍数の和を求めるプログラム作成する。                  
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン: PAD 2
 [3.3] 言語:C言語
[4] 期限: 1/9 12:00
[5] その他の制限:できるだけ簡単な関数でお願いします。

どうぞ宜しくお願いしますm(..)m


351:デフォルトの名無しさん
09/01/07 18:28:57
犯人はヤス

352:デフォルトの名無しさん
09/01/07 18:36:38
>>350
#include <stdio.h>
int main(void)
{
int n;
scanf("%d", &n);
printf("%d\n", sum(n));
/*for (n=0; n<=100; n++) printf("%3d : %d\n", n, sum(n));*/
return 0;
}
int sum(int n)
{
return s(n / 3) * 3 + s(n / 5) * 5 - s(n / 15) * 15;
}
int s(int n)
{
return n * (n + 1) / 2;
}

353:デフォルトの名無しさん
09/01/07 18:38:12
>>350
PAD 2 ってなんだ?

354:デフォルトの名無しさん
09/01/07 18:39:59
>>334 すいません少し訂正します
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):以下に記載
[3] 環境
 [3.1] OS:Windows Vista
 [3.2] コンパイラ名とバージョン:cygwin
 [3.3] 言語: C++
[4] 期限:1/10 24:00
[5] その他の制限:簡単な関数とクラスでお願いします
次のように、整数値を表すクラスを設計する
データメンバ
x:xの座標(ただし 0-1000とする)
y:yの座標(ただし 0-1000とする)
z:zの座標(ただし 0-1000とする)
メンバ関数
void setX(int a): xの座標を設計する(範囲外の値は、error messageを出力する)
void setY(int b): Yの座標を設計する(範囲外の値は、error messageを出力する)
void setZ(int c): Zの座標を設計する(範囲外の値は、error messageを出力する)
int getX(): Xの座標値を得る
int getY(): Yの座標値を得る
int getZ(): Zの座標値を得る
結果は、次のように表示する
Please Input X
3
Please Input Y
1000067
The value of Y is a mistake, Please input Y again!
5
Please Input Z
7
The result is: (3,5,7)

355:デフォルトの名無しさん
09/01/07 18:47:08
[1] 授業単元: c
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: win
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: c
[4] 期限: 今日21時
[5] その他 よろしくです

356:デフォルトの名無しさん
09/01/07 18:51:00
>>355
何周目だよ。ホントに死ねよ。

357:デフォルトの名無しさん
09/01/07 19:04:21
質問者が過去の質問を見てるわけねえだろアホ
ましてや問題文のリンクしかみんな書かないんだから既出とかわかんねーよ

358:デフォルトの名無しさん
09/01/07 19:09:56
>>357
>>1

359:デフォルトの名無しさん
09/01/07 19:11:18
なんだこいつ

360:yasu
09/01/07 19:17:27
>>352
解答ありがとうございますm(..)m



361:デフォルトの名無しさん
09/01/07 19:36:01
>>355
/* この問題、見るたびに最大桁数が小さくなってるのは気のせいだろうか */
#include <stdio.h>
#include <ctype.h>
int main(void)
{
int a[3], i, j;
for (i = 0; i < 3; ++i) {
a[i] = 0;
int c;
j = 0;
while ((c = getchar()) != '\n') {
if (!isdigit(c) || (j == 0 && c == '\n')) {
puts("error.");
return 1;
}
if (j < 5) a[i] = a[i] * 10 + c - '0';
++j;
}
}
printf("%d + %d + %d = %d\n", a[0], a[1], a[2], a[0] + a[1] + a[2]);
return 0;
}

362:デフォルトの名無しさん
09/01/07 19:37:54
[1] 授業単元: C言語
[2] 問題文 20から10までの整数を順番に空白で区切って、表示し改行するプログラムを作る。
      whileを使うこと。
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン:Visual Stdio 2008  
 [3.3] 言語:C言語
[4] 期限: 1/10
[5] その他の制限:できるだけ簡単な関数でお願いします

363:デフォルトの名無しさん
09/01/07 19:41:00
>>356
>>1

364:デフォルトの名無しさん
09/01/07 19:43:15
>>362
#include <stdio.h>
int main(void)
{
int n = 20;
while (n > 10) printf("%d ", n--);
printf("%d\n", n);
return 0;
}

365:デフォルトの名無しさん
09/01/07 19:48:08
>>364
ありがとうございます!

366:デフォルトの名無しさん
09/01/07 19:48:43
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

367:デフォルトの名無しさん
09/01/07 21:55:09
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3]環境
[3.1] OS:WindowsXP
[3.2] コンパイラ名とバージョン:VC++ 2008
[3.3] 言語:C言語
[4] 期限:1/9
[5] その他の制限:特に無いです。

よろしくお願いします。


368:デフォルトの名無しさん
09/01/07 21:58:04
>>292
ソートするのは反則じゃないか?
ハッシュ法と答えて欲しいんじゃないかと

369:yasu
09/01/07 22:00:49
>>352
初心者なので、ソースを見ても分からなかったので、nを入力し1からnまでの3の
倍数の和を求めるプログラムを宜しくお願いします。

[1] 授業単元: C言語プログラミング基礎
[2] 問題文 nを入力し、1からnまでの3の倍数の和を求めるプログラム作成する。                  
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン: PAD 2
 [3.3] 言語:C言語
[4] 期限: 1/9 12:00
[5] その他の制限:できるだけ簡単な関数でお願いします。

どうぞ宜しくお願いしますm(..)m


370:デフォルトの名無しさん
09/01/07 22:06:48
>>367
#include <stdio.h>

int main(void)
{
int r = 12345, a = 997, c = 1, m = 65536;
double x, sum = 0.0;
int i;
for (i = 0; i < 100; i++) {
r = r*a + c;
r = r % m;
x = (double)r/m;
sum += x;
printf("%.4f ", x);
if (i % 10 == 9) {
putchar('\n');
}
}
printf("\nmean=%.4f\n", sum / 100.0);
return 0;
}

371:デフォルトの名無しさん
09/01/07 22:17:11
>>304
審判役くらいにしか使えない。
URLリンク(kansai2channeler.hp.infoseek.co.jp)

372:デフォルトの名無しさん
09/01/07 22:28:58
>>369

#include <stdio.h>
int main(void)
{
int n,sum=0;
int i;
do{
printf("整数nの値を入力せよ:");
scanf("%d",&n);
if(n<1)
printf("1以上の整数値を入力せよ。\n");
}while(n<1);
for(i=1; i<=n; i++)
if((i%3)==0)
sum = sum + i;
printf("\n");
printf("1から%dまでの3の倍数の和は%dです。\n",n,sum);
return 0;
}

373:nyao
09/01/07 22:31:31
[1] 授業単元:自由課題
[3]環境
OS:Mac
コンパイラ名とバージョン:よくわかりません。g++ ファイル名で実行してます。
言語:C++言語
[4] 期限:1/10

自由課題で「かぶ」を作っています。
ベースは自分で何とか作れたんですが、条件付けが難しくてできません。このプログラム→URLリンク(sugar310.dip.jp)
に、プログラム内に書いてあるルールを参考にして以下の6つの条件を付け足して欲しいです。
①ランダムに発生する数値から0を除外する。
(0が出たら「ランダムに発生」を繰り返す。)
②if(v==9||w==1){
cout <<「「クッピン」で勝負だ」<<"\n";

v==1||w==9でも
cout <<「「クッピン」で勝負だ」<<"\n";
③if(v==4||w==1){
cout << 「「シッピン」で勝負だ」<<"\n";

v==1||w==4でも
cout <<「「シッピン」で勝負だ」<<"\n";
④3が3枚のときは
cout << 「「アラシ」で勝負だ」<<"\n";
⑤2枚もしくは3枚の合計が20より大きいときは
cout << 「「ブタ」で勝負だ」<<"\n";
⑥2枚もしくは3枚の合計が10もしくは20になれば
cout << 「合計は10(20)だから「ニゲ」だ」 << "\n";
→1番最初のランダムに数字を発生させるところに戻る

よろしくお願いします!><

374:デフォルトの名無しさん
09/01/07 22:36:18
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク):
2項分布Pa,q(x)=Ca,b ・q^b・(1-q)^(a-b)を実装せよ。
またaを大きくして出力せよ。


[3] 環境
[3.1] OS: LINUX
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語: C
[4] 期限: 2009年1月8日
[5] その他の制限: 特になし


375:デフォルトの名無しさん
09/01/07 22:47:28
>>369
誰か、このPAD 2って環境知ってる?

376:デフォルトの名無しさん
09/01/07 22:50:10
[1] 授業単元:アルゴリズム入門
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 1月8日10時まで
[5]その他の制限:特になし

L69で適当な(文字列s の最初のn 文字のハッシュ値を返す)ハッシュ関数を定義し、mystrstr hash1() を完成させよ。
また、それを利用するメイン関数を作成し、実行せよ。
その後L71以降のローリングハッシュを用いてプログラムを改良せよ。

適切なハッシュ関数の定義だけでもお願いします。


377:yasu
09/01/07 23:07:23
>>372
ソース解読できました。
解答ありがとうございます。

378:デフォルトの名無しさん
09/01/07 23:39:58
[1] 授業単元:コンピュータ工学
[2] 問題文(含コード&リンク):行列式で二元連立方程式を解く {a1X+b1Y=C1 未知の定数:X、Y
[3] 環境                           a2X+b2Y=C2 変数:a1,a2,b1,b2,C1,C2
 [3.1] OS: Windows vista business
 [3.2] コンパイラ名とバージョン:VC
 [3.3] 言語: C
[4] 期限:無期限
[5] その他の制限:基礎全般はやってます。いきなりの宿題で困ってます;;


すみませんよろしくお願いします。

379:デフォルトの名無しさん
09/01/07 23:46:53
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
次の処理を行うプログラムを書きなさい
1; [80A1h] ← (B+C)*2??[80A0h]*3  オーバーフローは考慮不要


2;  [80B3h] [80B2h] ←[80B0h] +[80B1h] *2   和を16ビットで求める(分岐命令を使用してもよい)


3;  A ← B ・C + H ・L (論理演算)

[3] 環境
 [3.1] OS: Windows vista
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限: [2009年1月8日
[5] その他の制限: なし

どれか一つでいいので教えてください
まったくわかりませんww


380:デフォルトの名無しさん
09/01/08 00:09:46
>>378
定数と変数の違いとか、プログラム以前に数学を勉強した方がいい

381:デフォルトの名無しさん
09/01/08 00:13:27
>>327
for (A; B; C) {
 XXXXX
}

A;
while (B) {
 XXXXX
 C;
}
に機械的に置き換えればいい。

382:デフォルトの名無しさん
09/01/08 00:14:29
[1] 授業単元:コンピュータ工学
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境                          
 [3.1] OS: linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語: C
[4] 期限:一月8日 23:59
[5] その他の制限:

よろしく願いします


383:デフォルトの名無しさん
09/01/08 00:26:51
>>379
C言語じゃなくてZ80アセンブラじゃね?ww

;2
LD DE,80B1H
XOR A
LD B,A
LD H,
LD A,(HL)
LD B,A
DEC HL
LD A,(HL)
ADD A,B
ADD A,B

384:383
09/01/08 00:29:34
途中で送信してしまった。まあいいや

385:デフォルトの名無しさん
09/01/08 00:41:32
>>384らめえええぇぇぇ!!

ゴメンコンピュータはさっぱりなんだ
なんでコンピュータ系に行ったんだ・・・俺・・・


386:デフォルトの名無しさん
09/01/08 01:56:11
>373
>「0が出たら『ランダムに発生』を繰り返す」
必要性が分からない。+1すりゃいいんでないのか?

>375
不明。プログラム図面で考えろってことかね?

387:デフォルトの名無しさん
09/01/08 02:15:18
>376
L69、L71って何ですか?

388:デフォルトの名無しさん
09/01/08 03:50:41
[1] 授業単元:Computer Programming II ─ ② リスト構造 ─
[2] 問題文(含コード&リンク):
 例題12_3を参考にして,次のようなプログラムを完成せよ。
  ・探索キーとして名前を入力し,入力と一致した場合,その名前と年齢を印字することを繰り返す。
  ・Ctrl-Dが入力されたとき,プログラムを終了する。
 ただし,文字列の比較のためにstrcmpを利用する。利用方法を以下に示す。
  #include<string.h>
  int strcmp(const char* str1,sonst char* str2);
  【戻り値】str1 > str2 ならば正値(1)
       str1 = str2 ならば0
       str1 < str2 ならば負値(-1)
                     以上,問題終わり■
  (^^)例題12_3(^^) URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2008年1月8日10:30まで
[5] その他の制限:デキる人にとっては難しくないらしいです。

389:デフォルトの名無しさん
09/01/08 04:55:06
[1] 授業単元: 情報処理
[2] 問題文(含コード&リンク):
2段階シンプレックス法を解くプログラムを作成せよ
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 1月9日まで
[5] その他の制限: 特になし

よろしくお願いします



390:デフォルトの名無しさん
09/01/08 09:11:55
>>388
URLリンク(kansai2channeler.hp.infoseek.co.jp)

391:デフォルトの名無しさん
09/01/08 09:43:57
[1] 授業単元: プログラミング実習2
[2] 問題文(含コード&リンク):
・関数mainから2つのint型の変数を受け取って2つの変数の中身を入れ替える関数swapを作成せよ.
#include <stdio.h>
void swap(int *a, int *b);
int main(void)
{
int x, y;
printf("x="); scanf("%d",&x);
printf("y="); scanf("%d",&y);
printf("x=%d,y=%d\n",x,y);
swap(&x,&y);
printf("x=%d,y=%d\n",x,y);
return 0;
}
void swap(

void swap(の後をお願いします。

実行例
x=9↓
y=3↓
x=9,y=3
x=3,y=9
[3] 環境 Visual C++
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン: C++コンパイラ,リンカ
[3.3] 言語: C言語
[4] 期限: 2009年1月11日(日)まで
[5] その他の制限: 値渡し、参照渡しは習いました。
宜しくお願いします。

392:デフォルトの名無しさん
09/01/08 09:50:09
>>391

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



393:デフォルトの名無しさん
09/01/08 10:08:17
[1] 授業単元:C言語
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン: Visual Studio2008
 [3.3] 言語: C++
[4] 期限: 1月11日まで
[5]その他の制限:特になし

お手数ですがよろしくお願いします。

394:デフォルトの名無しさん
09/01/08 10:43:26
どなたか>>254お願いします。

395:デフォルトの名無しさん
09/01/08 11:24:24
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):下記
[3] 環境
 [3.1] OS: WindowsVista SP1
 [3.2] コンパイラ名とバージョン: Visual Stdio 2008
 [3.3] 言語: C
[4] 期限: 2009年1月8日 AM11:50まで
[5] その他の制限: できるだけ簡単にお願いします。ポインタや配列などは習っています
複数の整数のうち,指定した数で割り切れる整数の個数を求めるプログラムを作成せよ.
入力に関して
キーボードから入力する整数の個数を入力し(最大で128に対応すること)改行する.
次に指定した数の整数をスペース1つずつ開けて1行で入力し,改行する.
最後に1つ整数を入力し,改行する.この最後に入力した値で割り切れるかどうか判定する.
この一連の入力時,例題や解答例のような入力を促す文字等は決して表示しないこと.
出力に関して
割り切れる整数の個数を数値のみ (+改行)を出力する.指定した数値・改行以外の文字等の出力は一切行わないこと.


396:デフォルトの名無しさん
09/01/08 12:38:57
どなたか>>382お願いします

397:デフォルトの名無しさん
09/01/08 13:07:45
>>393
Cで書いたのでよければ
URLリンク(kansai2channeler.hp.infoseek.co.jp)


398:デフォルトの名無しさん
09/01/08 13:10:52
>>395 >>259
#include <stdio.h>
int main(void)
{
int data[128];
int i, n, d, c = 0;
scanf("%d", &n);
if (n > 128) n = 128;
for (i = 0; i < n; ++i) scanf("%d", &data[i]);
scanf("%d", &d);
for (i = 0; i < n; ++i) if (!(data[i] % d)) ++c;
printf("%d\n", c);
return 0;
}

399:デフォルトの名無しさん
09/01/08 13:15:47
>>254
URLリンク(kansai2channeler.hp.infoseek.co.jp)

400:デフォルトの名無しさん
09/01/08 13:29:14
メガネを掛けていて、ピッツァだったらメガネピッツァだろうがよぉ、紛れも無く

401:デフォルトの名無しさん
09/01/08 13:53:02
[1] プログラミング演習
(1)
日付データが入力された後、ファイルに保存するプログラムを書きなさい。
データのファイルはテキスト形式で、ファイル名は、day.txtとする。
データの形式は以下のとおり。
Y(改行)・・・データの1セットの始まりを表わす
96(改行)・・・年
07(改行)・・・月
12(改行)・・・日
以上を1セットとして入力する。
これを繰り返し入力する。Y
92
05
13
G・・・データの終わり(ファイルの終わり)を表わす。
※ファイルへの出力は、fprintf関数を使う。書式は以下のとおり。
fprintf(FILE*fp,書式指定文字列、変数、変数、・・・)
(2)
(1)でファイルに出力された日付データを構造体に読み込んで、構造体に読み込まれた日付データを画面に表示するプログラムを書きなさい。
但し、読み込むデータの個数は、ファイルに保存されているデータの個数であり、ファイルによって変化する(固定されていない)ので、それに対応できるようなプログラムであること。
[3] 環境
 [3.1] OS:Linux
 [3.2] Emacs
 [3.3] C言語のみでお願いします。
[4] 期限:早急にお願いします。


402:デフォルトの名無しさん
09/01/08 13:58:37
>>401
無期限なら、来年くらいに

403:デフォルトの名無しさん
09/01/08 14:00:12
>>402
[3.2] Emacs こっちの方が突っ込みどころだと思った

>>401
gccだよな?

404:デフォルトの名無しさん
09/01/08 14:02:23
>>402
来年が早急というお前の感覚を疑うぜw

405:デフォルトの名無しさん
09/01/08 14:04:52
>>404
来年が早急じゃないという根拠でもあるのかね?

406:デフォルトの名無しさん
09/01/08 14:06:25
>>404
>>1

407:デフォルトの名無しさん
09/01/08 14:09:29
言葉足らずですみません。
>>403
gccです。

>>402
できれば今日中にお願いします。



408:デフォルトの名無しさん
09/01/08 14:11:47
>>405
じゃなくて、それを言った奴の 感覚 についてなんだが?w

409:他人の真似しか出来ない低脳
09/01/08 14:12:46
406 名前:デフォルトの名無しさん 投稿日:2009/01/08(木) 14:06:25
>>404
>>1

410:デフォルトの名無しさん
09/01/08 14:13:20
>>408
>>1
>[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)

411:デフォルトの名無しさん
09/01/08 14:13:56
>>409
新参はコレだから・・・

412:デフォルトの名無しさん
09/01/08 14:14:58
URLリンク(dictionary.goo.ne.jp)
URLリンク(dictionary.goo.ne.jp)
さっきゅう ―きふ 0 【早急】
(名・形動)[文]ナリ
非常に急ぐ・こと(さま)。至急。そうきゅう。

非常に急いで来年くらいって、時間の感覚がおかしくなったバカくらいだろうね。


413:デフォルトの名無しさん
09/01/08 14:15:56
>>412
馬鹿じゃねーの?

414:デフォルトの名無しさん
09/01/08 14:20:42
言葉の意味も知らずに、自分の感覚で答えるから、世間からズレてると
思われていると気づかない引きこもりが多いんだな、このスレってw
来年くらいで 早急 w

415:デフォルトの名無しさん
09/01/08 14:21:46
>>412
それで、来年が早急でない根拠は?

416:デフォルトの名無しさん
09/01/08 14:22:47
>>414
自分の感覚が絶対と思っているのは、
ひどい田舎者か、
引きこもりなんじゃね?

417:デフォルトの名無しさん
09/01/08 14:46:29
>>407
URLリンク(kansai2channeler.hp.infoseek.co.jp)

418:デフォルトの名無しさん
09/01/08 14:47:19
>>401の者ですが、テンプレどおりに書かなくて迷惑かけてすみませんでした。

期限は2009年01月08日中にお願いします。

419:デフォルトの名無しさん
09/01/08 14:56:35
だれか>>382お願いします
……なにか不備があったのでしょうか。

420:デフォルトの名無しさん
09/01/08 15:07:01
>>419
とりあえず、「sample-11-1.c」ってなんだ?

421:デフォルトの名無しさん
09/01/08 15:13:22
>>401です。

>>417
ありがとうございます。
ただ、今さっきわかったのですが
(1)で出来たday.txtの内容が
1回目 ××/××/××
2回目 ××/××/××
3回目 ××/××/××



N回目 ××/××/××
といった書き方でなければいけないようです。
後、構造体の配列と構造体の関数間での受け渡しを使用しなければならないらしいので、
お手数掛けますがもう一度(1)と(2)をお願いします。

422:デフォルトの名無しさん
09/01/08 15:20:02
>>421
>>1
>・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。

423:デフォルトの名無しさん
09/01/08 15:31:43
>>422
本当にすみません。

次からは気をつけますので>>421をお願いします

424:デフォルトの名無しさん
09/01/08 15:40:53
>>420
すいません。書き忘れでした
下に書いてあるプログラムの名前です

425:デフォルトの名無しさん
09/01/08 16:19:00
>>423
おまえはすでにしんでいる

426:デフォルトの名無しさん
09/01/08 16:24:01
[1] 授業単元:プログラミング演習
[2] 問題文
m*dv/dt=mg-kv
をRunge-Kutta法で解き,抵抗係数k=0,0.1,0.15,0.3のときの
速度vの時間による変化を表せ。
なお質量m=0.1[kg],重力加速度g=9.8[m/s*s]とする。

[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:
 [3.3] 言語: C
[4] 期限: 1月9日 11:00
[5] その他の制限:とくにないです。

かなり急ぎの課題です。よろしくお願いします。

427:424
09/01/08 16:30:18
すいません、>>382の課題お願いします……
もはや「おまえはもうしんでいる」状態なのでしょうか……

428:デフォルトの名無しさん
09/01/08 16:34:02
NODEが何かわからない >>427

429:デフォルトの名無しさん
09/01/08 16:34:32
>>399
ありがとうございます
できれば簡単な関数でお願いしたいのですが……

430:デフォルトの名無しさん
09/01/08 16:35:36
>>425
本当に反省しています。

とてもピンチな状況なので>>421をお願いします(;_;)


431:デフォルトの名無しさん
09/01/08 16:40:08
[1] 授業単元:プログラミング演習
[2] 問題文
(d*d*y)/(d*x*x)=-M/(E*I)=W/(EI)*x
をRunge-Kutta法で解き,片持ちばりのx方向におけるy方向
変異の分布を示せ。ただし,先端に集中荷重が負荷されている
ものとし,ヤング率はE-206[GPa],集中荷重はW=30[N]とする。

求める図は文章での説明になります。
一方が壁に設置されていて厚さ5mm,オクイキが100mm
壁に設置されているところから500mm突き出ている物体です。
Wは突き出ている先端に上から下に向けてかかる力で,
その点をoとします。oから壁へ向かう方向がx軸正方向,
oから下へ向かう方向をy軸正方向とします。

わかりにくくてすみません。

[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:
 [3.3] 言語: C
[4] 期限: 1月9日 11:00
[5] その他の制限:とくにないです。

かなり急ぎの課題です。よろしくお願いします。


432:デフォルトの名無しさん
09/01/08 16:42:04
よろしくおねがいします。
[1] 授業単元:OS
[2] 問題文(含コード&リンク):
URLリンク(www.takagi.nuie.nagoya-u.ac.jp)
の、第12回演習(生産者・消費者問題)
[3] 環境
 [3.1] OS: CentOS
 [3.2] コンパイラ名とバージョン: gcc 4.1.2
 [3.3] 言語: C
[4] 期限: 2009/01/15
[5] その他の制限: lock,unlockシステムコールを使ってください。
リンク先のヒントに従ってもらうとうれしいです。

433:424
09/01/08 16:51:56
>>428
そのNODEっていうのは恐らく二分木の問題で使われてるNodeのことみたいですね。多分

わからなかったらNode使わなくていいですよ。
とりあえず、プログラムのKEY云々て列にある数値が入った二分木から標準入力でその数があればyes、無ければNoってだすプログラム作ってくれれば幸いです

434:デフォルトの名無しさん
09/01/08 16:55:41
>>424
>>1 を一億万回嫁。

435:デフォルトの名無しさん
09/01/08 16:58:37
>>430
言葉では何とでも言えるよな。

>>428への回答はどうなってるんだ?
また、条件が追加されたら洒落にならんぞ。
こりゃ「おまえはもうしんでいる」状態だな。

436:デフォルトの名無しさん
09/01/08 17:06:58
>>435
>>433
っていうか、オマエの中で何かが綯い交ぜになっている

437:デフォルトの名無しさん
09/01/08 17:09:21
本当に間違った事したと思ってます。

反省していますので、どうか>>421お願いします。

本当に時間がないんです。

438:424
09/01/08 17:11:30
Nodeの定義は、下のプログラムで定義してあるのかとずっと思ってたんですが……違ったのですか?
問題文これしかなくて……

439:デフォルトの名無しさん
09/01/08 17:11:58
>>433
NODEとKEYを定義して、コンパイルしてみた。
KEY init_data[num_of_data]={50, 20, 70, 10, 30, 60, 100, 25, 65, 150};
で、gccだと、コンパイルエラーになる。

440:デフォルトの名無しさん
09/01/08 17:17:09
[1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: (Windows)
 [3.2] コンパイラ名とバージョン: (VC2005)
 [3.3] 言語: (C++)
[4] 期限: 2009年1月8日24時
[5] その他の制限: c言語の初歩の段階です。

最後の砦の2chに来ました。
質問文の方で至らないところもあると思いますがどうか教えてください。


441:デフォルトの名無しさん
09/01/08 17:27:38
>>440
#include <iostream>
#include <algorithm>
int main()
{
char buf[80], a = 0;
int n = 0;
std::cout << "キーから文字を数文字入力してください";
std::cin >> buf;
std::cout << "調べる文字を入力してください= ";
std::cin >> a;
std::cout << "入力された文字列の中に m は、"
<< (n = std::count(buf, buf + 80, a))
<< " 個ありました。" << std::endl;
return 0;
}

どう見てもCじゃありません、本当にありがとうございまいました

442:デフォルトの名無しさん
09/01/08 17:30:42
>>440
URLリンク(kansai2channeler.hp.infoseek.co.jp)
getsは使いたくない性分で

443:デフォルトの名無しさん
09/01/08 17:38:50
>>436
>>433が回答になっているとでも思っているのかw

444:デフォルトの名無しさん
09/01/08 17:41:00
>>443
オマエはツリーをみてみた方が良いよ

445:デフォルトの名無しさん
09/01/08 17:54:22
>>444
お前、NODEがどんなものか解るんだろ。回答してやれよ。
俺はわかんね。

446:デフォルトの名無しさん
09/01/08 17:55:27
[1] 授業単元:プログラミング演習Ⅱ
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Windows XP
 [3.2] コンパイラ名とバージョン:Microsoft Visual Studio .NET 2003
 [3.3] 言語:C++
[4] 期限:2009年1月9日 午前中まで
[5] その他の制限:できるだけ簡単な関数でお願いします

よろしくお願いします

447:424
09/01/08 18:10:56
一応、教科書みながらここまでやってみました。
URLリンク(kansai2channeler.hp.infoseek.co.jp)

このプログラムがあってれば、あとは標準入力から探索して判定を出すって感じなんですが……
続きやってくれませんか

448:デフォルトの名無しさん
09/01/08 18:11:18
>>442
ありがとうございます。
ちなみにgetsを使ったソースも教えてもらえると助かります。
getsの文とsizeifの文を比較してみたいので

449:デフォルトの名無しさん
09/01/08 18:27:49
>>381
ありがとうございます。
色々と変えてやってみましたがこの状態で小文字数えるところでエラーがでて終了してしまいます。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
どこがダメなんでしょうか・・・?

450:デフォルトの名無しさん
09/01/08 18:37:56
>>449
while (...) {} に入る前に a=0; (>>381 のAに相当)
while (...) {} 中の最後に ++a; (>>381 のCに相当)

451:デフォルトの名無しさん
09/01/08 18:39:13
>>449
while(moji[a] != '\n')

452:デフォルトの名無しさん
09/01/08 18:48:31
>>450-451
あ、あれ。見直したら直す前のプログラムになってたorz

a=0;
while(moji[a] != '\n'){
if (moji[a] >= 'a' && moji[a] <= 'z')
++a;
}
s=a;
printf("英小文字の数 = %d\n",a);

こうでしょうか?
「文字列の長さ」の後反応がなくなるんです・・・

453:デフォルトの名無しさん
09/01/08 18:54:24
>>452
gets()だと\nが入らないので終了条件を'\0'にする
while(moji[a] != '\0')

454:デフォルトの名無しさん
09/01/08 18:57:04
>>447
URLリンク(kansai2channeler.hp.infoseek.co.jp)

455:デフォルトの名無しさん
09/01/08 19:07:08
>>453
ありがとうございます。
やってみたところ全部小文字で入力した場合は最後までいくのですが、一文字でも大文字が入ると途中でとまってしまうんです。
hello→最後まで
Hello→途中でとまってしまう

456:デフォルトの名無しさん
09/01/08 19:11:44
>>455
a=0;
while(moji[a] != '\0'){
if (moji[a] >= 'a' && moji[a] <= 'z') s++;
++a;
}
printf("英小文字の数 = %d\n",s);

457:デフォルトの名無しさん
09/01/08 19:23:04
>>456
できました
本当にありがとうございました!

458:デフォルトの名無しさん
09/01/08 20:42:58
[1] 授業単元:
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Windows xp
 [3.2] コンパイラ名とバージョン:VC 6.0
 [3.3] 言語: C++
[4] 期限: 2009/1/9/1:00
[5] その他の制限:問題文に中にあります。
自分では全くわかりません、期限が短いですができる方おねがいします。
         

459:nyao
09/01/08 20:51:31
>>373です。
>>378
なるほど
0が出たら+1ですか…(・ω・)


460:デフォルトの名無しさん
09/01/08 20:52:43
>>446>>458は同じ課題
C言語なら俺に聞け(入門篇)の過去ログ調べてみ

461:nyao
09/01/08 20:54:02
>>386さんへのレスでした。
すいませんorz

462:デフォルトの名無しさん
09/01/08 20:55:46
>>460
別スレだったかも?質問してた人はちゃんと出来てた。

463:デフォルトの名無しさん
09/01/08 21:11:32
>>459
ちがうだろ

464:デフォルトの名無しさん
09/01/08 21:15:03
>>462
URLリンク(detail.chiebukuro.yahoo.co.jp)
スレリンク(tech板:777番)


465:デフォルトの名無しさん
09/01/08 21:25:40
[1] 授業単元: 科学実習Ⅰ
[2] 問題文: 配列に順番に入力した数字を代入するプログラムを作れ。

すなわち、例えば以下のようなものを作れ。
1度目にinput_number()で入力した数を、numbers[0]に代入し、
2度目にinput_number()で入力した数を、numbers[1]に代入し、

n 度目にinput_number()で入力した数を、numbers[n-1]に代入する。

input_number()という関数は、自分で定義するように。
[3] 環境
 [3.1] OS: windows xp
 [3.2] コンパイラ名とバージョン:gcc -o
 [3.3] 言語: C言語
[4] 期限: 2009年1月13日 お願いしやす

466:デフォルトの名無しさん
09/01/08 21:29:35
これも頼む
[1] 授業単元: 科学実習Ⅰ
[2] 問題文: 配列に代入された数値を小さい順に並べ変えるプログラムを作れ。

ただし、数値は配列numbers[]にすでに代入されているものとし、変数nには代入された数値の個数が代入されているものとする。
(例)
int numbers[10] = { 82, 47, 2, 29, 95, 15, 38, 66, 51, 72 };
int n = 10;

(注意) このプログラムを実行すると、並べ変えを終えた配列ができる。
この配列は、元のnumbers[]の中身が並べ変わったものでも良いし、別の配列を作って、そ
の中に並べ変えた数値が代入されているのでも良い。

出来上がった配列の要素を順に表示すると
2, 15, 29, 38, 47, 51, 66, 72, 82, 95
のようになる。

[3] 環境
 [3.1] OS: windows xp
 [3.2] コンパイラ名とバージョン:gcc -o
 [3.3] 言語: C言語
[4] 期限: 2009年1月13日

467:デフォルトの名無しさん
09/01/08 22:21:47
どなたか
>>426
>>431をお願いします。
コンパイラ名ってのがよくわからないんですが
gccとか打ってコンパイルしてます

468:デフォルトの名無しさん
09/01/09 00:12:42
[1] 授業単元:プログラム技術
[2] 問題文(含コード&リンク):
char str[5][10] = {
"home", "arow", "abec","bobo"
};

という二次元配列があったとして、この配列に格納されている文字列を
格納されている配列番号とともに、アルファベット順に表示させるプログラムを作れ。
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:Microsoft Visual Studio .NET 2003
 [3.3] 言語:C++
[4] 期限:特になし
[5] その他の制限:特になし

よろしくお願いします。

469:367
09/01/09 00:18:53
>>370
ありがとうございました。

470:デフォルトの名無しさん
09/01/09 00:44:46
>>465
#include<stdio.h>
#define N 10
int input_number() {
int v;
scanf("%d", &v);
return v;
}
int main() {
int i, v[N];
for (i = 0; i < N; i ++) {
v[i] = input_number();
}
for (i = 0; i < N; i ++) {
printf("%d\n", v[i]);
}
return 0;
}

471:デフォルトの名無しさん
09/01/09 00:49:12
>>466
#include<stdio.h>
int main() {
int numbers[10] = { 82, 47, 2, 29, 95, 15, 38, 66, 51, 72 };
int n = 10, i, j, t;
for (i = 0; i < 10; i ++) { printf("%d ", numbers[i]); }
printf("\n");
for (i = 0; i < 10-1; i ++) {
for (j = i+1; j < 10; j ++)
if (numbers[i] > numbers[j]) {
t = numbers[i];
numbers[i] = numbers[j];
numbers[j] = t;
}
}
for (i = 0; i < 10; i ++) { printf("%d ", numbers[i]); }
printf("\n");
return 0;
}

472:デフォルトの名無しさん
09/01/09 00:58:13
>>468
#include<iostream>
#include<string>
#include<map>
int main() {
char str[5][10] = {"home", "arow", "abec","bobo", "dummy"};
typedef std::map<std::string, int> Map;
Map m;
for (int i = 0; i < 5; i ++)
m.insert(Map::value_type(str[i], i));
for (Map::const_iterator it = m.begin(); it != m.end(); ++ it)
std::cout << it->second << ":" << it->first << std::endl;
return 0;
}

473:デフォルトの名無しさん
09/01/09 01:04:00
>>472
すみません、
map関数とdummyデータを使わずにやることはできませんか?

474:デフォルトの名無しさん
09/01/09 01:07:20
ふざけてんのか

475:デフォルトの名無しさん
09/01/09 01:12:38
>>473
char str[5][10] = {"home", "arow", "abec","bobo"};
typedef std::multimap<std::string, int> Map;

476:デフォルトの名無しさん
09/01/09 01:33:24
#include <iterator>
#include <cstring>
int main()
{
char *str[5] = {"home", "arow", "abec","bobo"};
char *str2[5];
std::partial_sort_copy(str, str + 4, str2, str2 + 4, strcmp);
std::copy(str2, str2 + 4, std::ostream_iterator<char *>(std::cout, "\n"));
return 0;
}


477:デフォルトの名無しさん
09/01/09 01:55:57
280と282で教えてもらったプログラムの
2と4が動かないんですが何が悪いんでしょうか

478:デフォルトの名無しさん
09/01/09 02:01:29
お前の頭

479:デフォルトの名無しさん
09/01/09 02:21:04
>>478
おいっ、基地外、鏡を見ろよ。ほれ、何が映った?
出来の悪い面が映ったよな?それ、誰の面だ?お・ま・え・の・だ・よw

480:デフォルトの名無しさん
09/01/09 02:42:14
やぁ先生、見てるかい?

481:デフォルトの名無しさん
09/01/09 06:20:20
[1] 授業単元: C言語
[2] 問題文: スタックを操作する関数 push()とpop()を作れ。

(注意)次のようなmain()を使って、push(int v), int pop()の動作を確かめよ。

#include <stdio.h>

main()
{
int d;

push(1);
push(2);
push(3);
d = pop();
printf("First data = %d\n", d);
d = pop();
printf("Second data = %d\n", d);
push(4);
d = pop();
printf("Third data = %d\n", d);
push(5);
d = pop();
printf("Fourth data = %d\n", d);
d = pop();
printf("Fifth data = %d\n", d)
}

482:デフォルトの名無しさん
09/01/09 06:20:41
----------------
結果は、
First data = 3
Second data = 2
Third data = 4
Fourth data = 5
Fifth data = 1
と表示します。

[3] 環境
 [3.1] OS: windows xp
 [3.2] コンパイラ名とバージョン:gcc -o
 [3.3] 言語: C言語
[4] 期限: 2009年1月20日

483:デフォルトの名無しさん
09/01/09 07:08:38
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: Windows vista
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C言語
[4] 期限: 2009年1月10日10:00まで
[5] その他の制限: 特になし
txtで保存すると図が表示されなくなってしまうので、pdfのままにしました。
zipになってしまい申し訳ないです
よろしくお願いします!

484:483
09/01/09 07:16:27
OSはXPでも問題ないです
コンパイラ名とバージョン:gcc -o
でお願いします

追記すいません


485:デフォルトの名無しさん
09/01/09 08:33:00
>>426
>>431
お願いします。どなたか助けてください。

486:デフォルトの名無しさん
09/01/09 10:35:31
>>481-482

#include <stdio.h>
int a[100];
int sp=0;
void push(int v){a[sp++]=v;}
int pop(){return a[--sp];}
int main(){
/*省略*/
printf("Fifth data = %d\n", d) ←>>482はセミコロン抜けてる
}


487:デフォルトの名無しさん
09/01/09 10:43:37
>>485
数値解析系の宿題は需要、供給ともに少ないから
なかなか回答者は現れないだろうなあ。

488:デフォルトの名無しさん
09/01/09 11:18:04
[1] 授業単元:プログラミング
[2] 問題文
次に示すTableのデータに関して,以下の計算を行う.
(1)1次式を当てはめてその式を示す.同時に2乗累積誤差Eを求める.
(2)2次式を当てはめて上と同じことを行う.
(3)2次式を当てはめて上と同じことを行う.

Table
X=-4,Y=13.4
X=-3,Y=7.2
X=-2,Y=2.7
X=-1,Y=1.2
X=0,Y=0.6
X=1,Y=3.1
X=2,Y=6.9
X=3,Y=12.5
X=4,Y=20.8
X=5,Y=31.7
X=6,Y=44.0

[3] 環境
 [3.1] OS: Windows xp
 [3.2] コンパイラ名とバージョン: Microsoft Windows XP [Version 5.1.2600]
 [3.3] 言語: C言語
[4] 期限: 2009年1月10日15:00まで
[5] その他の制限: ありません
よろしくお願いします.




489:デフォルトの名無しさん
09/01/09 11:22:48
>>485
ルンゲクッタと書かれては問題見る気もしないんだ
お前が急いでるかどうかは回答者にはどうでもいいことなので関係ないんだ


490:デフォルトの名無しさん
09/01/09 11:47:21
>>489
さっぱりわからん
URLリンク(hwm3.gyao.ne.jp)

491:デフォルトの名無しさん
09/01/09 12:41:32
>>426
ちなみに
v(t)=mg/k+(v0-mg/k)exp(-kt/m) (k!=0.0)
v(t)=gt (k==0.0)
だと思ふ

492:デフォルトの名無しさん
09/01/09 13:03:47
[1] 授業単元:システム設計2
[2] 問題文:1~100の間で数当てゲーム
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン:cygwin-b20
 [3.3] 言語: C
[4] 期限: [2009年1月12日15:00まで]
[5] その他の制限: 標準ライブラリはなるべく使わないようにお願いします。

以上お願いします。

493:デフォルトの名無しさん
09/01/09 13:12:47
APIをつかって入力と出力をしろというのか

494:デフォルトの名無しさん
09/01/09 13:14:27
どなたか>>401>>421の条件で本当にお願いします。

期限が今日なので17時までで、できれば早めにお願いします。

構造体の関数間での受け渡しはsub関数でお願いします。

495:デフォルトの名無しさん
09/01/09 13:35:40
>>393
オナニーソース。
URLリンク(kansai2channeler.hp.infoseek.co.jp)

個人的に読み込み処理の手直しをしてみたかったんで書いた。
問題文がなくなってるんでここまで。
Linux(Debian) gcc で確認。

496:デフォルトの名無しさん
09/01/09 14:28:08
>>488
2乗累積誤差ってのがわからん。

式を適当に決めて誤差を求めるだけでいいのか?
それとも誤差を最小にするような式を求めろってこと?
(3)は3次式の間違い?

コンパイラは何だ?

497:デフォルトの名無しさん
09/01/09 15:01:42
>>431
I の値は?
Eの値は 10^-206 * 10^9 [Pa] ? それとも - は = の typo で E=206*10^9 [Pa] ?

# 断面2次モーメントなんて知らない

498:デフォルトの名無しさん
09/01/09 15:06:26
>>494
何言ってんだか分からないので無理

499:デフォルトの名無しさん
09/01/09 15:10:43
1] 授業単元:プログラミング演習
[2] 問題文:URLリンク(hpgoda.eng.niigata-u.ac.jp)
[3] 環境
 [3.1] OS:linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語: C
[4] 期限: 2009年1月10日
[5] その他の制限: 問題ページ中の関数、プログラム例を使って作ってください。
データのグラフ化は自分でできます

以上お願いします。

500:デフォルトの名無しさん
09/01/09 15:13:05
>>488です
>>496
から説明不足で質問をいただいたので

式を求める必要はありません。誤差を求めることが、この課題の目的です。
また(3)は3次式の間違いでした。申し訳ないんですが訂正させてください。
コンパイラはコマンドプロンプトだと思います。

よろしくお願いします。

501:デフォルトの名無しさん
09/01/09 15:16:51
コンパイラはコマンドプロンプト
コンパイラはコマンドプロンプト
コンパイラはコマンドプロンプト
だいじなところですからさんかいいいました

502:デフォルトの名無しさん
09/01/09 15:19:05
>>501
すみません。よくわからないんです。
普段は「bcc32」とか打ってコンパイルしてます。

503:デフォルトの名無しさん
09/01/09 15:27:01
安くない授業料も払って、マジメに出席して、
宿題が出来ないどころか、丸投げも出来ない程度にしかならないなんて、
詐欺も良いところだな。

504:デフォルトの名無しさん
09/01/09 15:33:22
おめー、詐欺ってのは高度な知能が必要なんだぞ。
言うなら「クズ」だろ。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch