5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

プログラム書いて!

1 :名無しさん@1周年:2001/07/26(木) 05:28
(0,0)から(100,100)までの格子があって
(a,b)=1 なら通れる
(a,b)≠1 なら通れない
この時(0,0)から(100,100)までに通る格子点を出力する
同じ格子点は一回しか通れないとする
プログラムをC言語で書いて欲しいのです
考え方だけでも教えて!!

2 :名無しさん@1周年:2001/07/26(木) 10:48
また、宿題か・・・
どうでも良いが、何が通れるんだよ?
Cもいいが日本語を勉強しなさい。

3 :名無しさん@1周年:2001/07/26(木) 12:31
迷路脱出でしょ。再帰による全経路算出。

4 :名無しさん@1周年:2001/07/26(木) 12:32
αβ枝刈り

5 :おもしろそうだったので・・・:2001/07/27(金) 14:07
問題が良く分からないのだが、
「与えられた格子の任意の二点間の最短距離(1ノルム)を求め、その経路を示せ」
と解釈して、その解を出力するプログラムなら書けたよ。

ソースは改行が多すぎて一度に書き込めない・・・

6 :名無しさん@1周年:2001/07/27(金) 23:52
(0,0)から(100,100)までの格子があって
それぞれの格子点(a,b)に対して配列A[a][b]=1or0という値が与えられていて
A[a][b]=1なら(a,b)は通過可能
A[a][b]=0なら(a,b)は通過不可能
とする.この時(0,0)から(100,100)まで進むときに通過する格子点を表示する
同じ格子点は一回しか通れない.また(100,100)まで行けないときは行けないと表示する
このプログラムをCでお願いします
不備があったらすみません 結構書けそうで書けないので困っています・・・・

7 :名無しさん@1周年:2001/07/27(金) 23:59
ルートが複数あったらどうすんの?
>>5が「最短」って言うとるけど?

8 :名無しさん@1周年:2001/07/28(土) 00:34
たしか、そういうのって、0のノードに接続されているリンクはすべて
消してから、(0、0)と(100,100)をもって、左右にひっぱったときに、
ピンと張ったリンク群が最短経路になる。。。
っていう方法でプログラミングすればよかったのでわ?(藁

9 :1=6:2001/07/28(土) 00:51
ええとルートは最短でなくともかまいません
1通りでもルートが表示できればいいです
最短にすると自分の力では書ける気がしません・・・・

10 :5:2001/07/28(土) 01:01
距離と道のりの区別もつかない厨房です。(陳謝

簡単のために 10x10 で設計しましたが・・・
最短の道のりを持つ経路が複数ある場合すべてを出力するようにしました。

 こういう問題は、Level Set Method の得意種目なのです。
わしの読みにくいへたれプログラムを出してもいいけれど、
Sehian 先生のページを見にいって楽しむと勉強になるでしょう。
いろいろ面白い研究されてます。

http://www.math.berkeley.edu/~sethian/level_set.html

11 :1=6:2001/07/28(土) 01:03
>>10
ありがとうごぜぇ〜ます!
感謝!です

12 :名無しさん@1周年:2001/07/28(土) 01:11
よくある迷路を抜ける方法でやってみればだめなん?
右手を壁につけて離さないで進めばいつかでられる。、、ってやつ。

進行方向コードみたいなのを決めるとかして
右に進むを1、下に進むを2、左に進むを3、上に進むを4みたいな。
壁に右手をつけたまま。・。。っつうとこをうまく考えればなんとか
なりそうじゃんよ。
ちなみに、100×100の格子とやらは、102×102にしておいて
回りを0(通過不可)にしておく方が楽かも。

13 :名無しさん@1周年:2001/07/28(土) 09:51
プログラム側で番兵置かなくていいってことか

14 :12:2001/07/28(土) 10:06
>>13
そそ。
再帰とか使えばもっとかっこええんやろが
俺様は頭が悪くってのう(藁

15 :名無しさん@1周年:2001/07/28(土) 22:13
>>14
んー、でも、番兵もしらんような奴もいるしー

16 :名無しさん@1周年:2001/07/28(土) 22:20
どーせなら、竜牙兵を配置すべし。

17 :@:2001/08/01(水) 16:24
ひまだったのでポストスクリプトの出力付プログラムを作ってみた。
結果(PSファイル)は標準出力に出でくる。乱数を使って配列Aの値を
きめてるが、FACTORの値を大きくすると通れる点が増える。時間をseed
にしているので、実行のたびに結果は変わる。

18 :A(ヘッダー):2001/08/01(水) 16:25
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define ISIZE 100
#define JSIZE 100
#define FACTOR 5

int A[ISIZE][JSIZE];

19 :B(処理本体):2001/08/01(水) 16:26
int next(int pi, int pj, int i, int j)
{
A[i][j] = 0;

if (i == 0 && j == 0 ||
pi != i + 1 && i < ISIZE - 1 && A[i + 1][j] && next(i, j, i + 1, j) ||
pi != i - 1 && i > 0 && A[i - 1][j] && next(i, j, i - 1, j) ||
pj != j + 1 && j < JSIZE - 1 && A[i][j + 1] && next(i, j, i, j + 1) ||
pj != j - 1 && j > 0 && A[i][j - 1] && next(i, j, i, j - 1))
return printf("%d %d moveto %d %d lineto stroke\n", pi, pj, i, j);

return 0;
}

20 :C(メイン):2001/08/01(水) 16:27
main(void)
{
int i, j;
int scale = 500 / ISIZE;

srand((int)time(NULL));

printf("%!PS\n");
printf("50 50 translate\n");
printf("%d %d scale\n", scale, scale);
printf("0 setlinewidth\n");
for (i = 0; i < ISIZE; i++)
printf("%d %d moveto %d %d lineto stroke\n", i, 0, i, JSIZE - 1);
for (j = 0; j < JSIZE; j++)
printf("%d %d moveto %d %d lineto stroke\n", 0, j, ISIZE - 1, j);


for (i = 0; i < ISIZE; i++)
for (j = 0; j < JSIZE; j++)
A[i][j] = (random() > RAND_MAX / FACTOR);

A[0][0] = 1;
A[ISIZE - 1][JSIZE - 1] = 1;

for (i = 0; i < ISIZE; i++)
for (j = 0; j < JSIZE; j++)
if (!A[i][j])
printf("%d %d 2 %d div 0 360 arc stroke\n", i, j, scale);

printf("1 %d div setlinewidth\n", scale);
next(ISIZE - 1, JSIZE - 1, ISIZE - 1, JSIZE - 1);
printf("showpage\n");
}

21 :名無しさん@1周年:02/05/09 00:01
     ξ
   / ̄\
   / ´∀`)
 ⊂     ⊃
  (  土 |  
 /⊂   曜⊃
/ /     
 ̄    


22 :名無しさん:03/01/03 01:06
            / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\
Λ_Λ  | 君さぁ こんなスレッド立てるから          |
( ´∀`)< 厨房って言われちゃうんだよ             |
( ΛΛ つ >―――――――――――――――――――‐<
 ( ゚Д゚) < おまえのことを必要としてる奴なんて         |
 /つつ  | いないんだからさっさと回線切って首吊れ     |
       \____________________/

(-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ…
(∩∩) (∩∩) (∩∩)

(-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ…
(∩∩) (∩∩) (∩∩)

(-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ…
(∩∩) (∩∩) (∩∩)


23 :山崎渉:03/01/11 05:21
(^^)

24 :山崎渉:03/04/17 09:18
(^^)

25 :山崎渉:03/04/20 04:02
   ∧_∧
  (  ^^ )< ぬるぽ(^^)

26 :山崎渉:03/05/21 22:03
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―

27 :山崎渉:03/05/21 23:26
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―

28 :山崎渉:03/05/28 14:30
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉

29 :山崎 渉:03/07/12 12:35

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄

30 :山崎 渉:03/07/15 12:47

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄

31 :山崎 渉:03/08/02 02:30
   ∧_∧
  (  ^^ )< ぬるぽ(^^)

32 :ぼるじょあ ◆yBEncckFOU :03/08/02 03:06
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ

33 :33:03/08/04 23:31
33げとずざ

34 :山崎 渉:03/08/15 18:31
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

35 :名無しさん@3周年:04/07/14 01:03
ねるぽー

36 :fortran77:04/07/20 04:36
課題が出されましたが、まったくわかりません・・
どなたか教えていただけますでしょうか?(fortran77です)
X**2+Y**2=81
Y=X・tanX
Xの範囲は0<X<π/2
Xの値を凾w=0.01のステップで0から次々に増加させ、各々の
Xの値と、両式から得られるYの値を表としてファイルへ出力せよ。

この連立方程式からYを消去して得られる方程式の解を、2分法により
少数第6桁までで、求めよ。

37 :名無しさん@3周年:04/07/20 09:55
>>36
   PROGRAM HOGE
   STOP 'Xが有効な範囲を超えました.'
   END

38 :fortran77:04/07/20 11:30
えっと、、下から3,4行目の方法でこの連立方程式を
解けという問題です。


39 :fortran77:04/07/20 11:31
後、訂正です
課題が出されましたが、まったくわかりません・・
どなたか教えていただけますでしょうか?(fortran77です)
X**2+Y**2=4
Y=X・tanX
Xの範囲は0<X<π/2
Xの値を凾w=0.01のステップで0から次々に増加させ、各々の
Xの値と、両式から得られるYの値を表としてファイルへ出力せよ。

この連立方程式からYを消去して得られる方程式の解を、2分法により
少数第6桁までで、求めよ。

40 :名無しさん@3周年:04/07/20 19:24
>>39
> Xの値を…ファイルへ出力せよ。
(1) ファイルを開く。
(2) 「Xの値を凾w=0.01のステップで0から次々に増加させ」るループを考える。
(3) (2)でつくったループの中に以下の処理を書き加える。
(3-1) Xの値が与えられたとき、「X**2+Y**2=4」からYの値を求める式を考えて
    この時のY(X)の値を求める。
(3-2) 同様に「Y=X・tanX」からY(X)を求める。
(3-3) Xの値と(3-1)、(3-2)で求めた値をファイルに書き込む。
(3-4) (ループ終わり)
(4) ファイルを閉じる。

> この連立方程式から…求めよ。
ttp://www.google.co.jp/search?hl=ja&ie=UTF-8&q=%EF%BC%92%E5%88%86%E6%B3%95+FORTRAN&lr=lang_ja
> 2分法 FORTRAN の検索結果のうち 日本語のページ 約 6,310 件
お好みのものを使って下さい。


41 :fortran77:04/07/24 08:44
ありがとうございます。しかし、なかなかうまくいきません。
お手数ですが、書いてみてはもらえないでしょうか?


42 :名無しさん@3周年:04/10/23 08:28:26
#include<stdio.h>
#include<math.h>

int main()
{
float x,y1,y2;
for(x=-2;x<=2;x=x+0.01)
{
y1=sqrt(4-x*x);
y2=x+tan(x);
if(abs(y1-y2)<0.01)
{
printf("x=%fは解",x);
}
printf("x=%f y=%f\n",x,y1,y2);

}
return 0;
}

43 :名無しさん@5周年:2005/11/17(木) 22:04:22
   __、,_
 ,.' ノ7ヾ、
 彡ツノ)^ゝ    
´、(i´,ー`リ  「プログラム」
 くア]_[アl>
  | 〒ム     「書いてみたよーww」
  し' `J

44 :名無しさん@5周年:2005/12/15(木) 21:25:53
   __、,_
 ,.' ノ7ヾ、
 彡ツノ)^ゝ 
´、(i´,ー`リ 「>>43誤爆乙」 
 くア]_[アl>
  | 〒ム
  し' `J

45 :名無しさん@5周年:2006/01/14(土) 22:52:55
   __、,_
 ,.' ノ7ヾ、
 彡ツノ)^ゝ 
´、(i´,ー`リ 「誤爆じゃないよ!」 
 くア]_[アl>
  | 〒ム
  し' `J

46 :名無しさん@5周年:2006/02/16(木) 17:44:14
**ってわからん

47 :名無しさん@5周年:2006/02/18(土) 13:52:22
文字列配列だったり

48 :名無しさん@5周年:2007/01/17(水) 19:15:52
   __、,_
 ,.' ノ7ヾ、
 彡ツノ)^ゝ 
´、(i´,ー`リ 「11ヶ月ぶりですね><」 
 くア]_[アl>
  | 〒ム
  し' `J

49 :名無しさん@5周年:2007/04/09(月) 00:37:20
                 _,ィ≦三三ミk_
             rf彡三三イ彡ミミミk
             杉゙ -=彡イ⌒ミ三三i,
                 「_  ___ ミ三三ミ,
               }tェ'〉 ::tェ-ミヽ :Y三ミ  しっぽり男爵 曰く
               〈."/ ム  ̄ ,'  j}冗}  「で、あるか
              Y≫≪_ / :::/:zrリ
               _i {亡ァ' {/ /::::||リ
.              / ニミY‐'  , イ::::::|゙
           f´ .r‐y〉〉フ‐<´ :::: /^ト、
          _,. -┤ / /ナく^>-<フ" ̄∨ 了、_
       , イ   i「レ/7」:::::-{{二}}=-:::::::: 〉  |  ¨‐- ,,
     {     / ./∧ム/∨//∧_,ノ /      ¨ヽ,
     |   /  |「 /{   ∨/    /         ∧

50 :名無しさん@5周年:2007/06/16(土) 21:35:21
晒し上げ

51 :名無しさん@5周年:2008/02/12(火) 00:34:36
     __、,_ 
   ,.' ノ7ヾ、 
   彡ツノ)^ゝ 
  ry´´ー` ヽっ
   !       i
  ゝ c_c_,.ノ

52 :名無しさん@5周年:2008/03/13(木) 06:04:17
記念カキコ

53 :名無しさん@5周年:2008/03/13(木) 16:31:22
      ___    |次はいつ書き込まれるのかな?|
    r'''"     ゙l,     ̄ ̄ ̄ ̄ ̄|/ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     `l       `l、__                ,r‐ー-、
プゲラ .|             ) /" ̄ ̄ ̄\    /     ヽ、
     l   ,r'"" ̄ニ、  .,//        ヽ、 /        i
    / _,r"∠ニ、'L- l,,/ l   ,rー--−ヽ、 l /      ,,r 、 ゙l ニヤニヤ
  <" ,,r'" l 、___`_|.   |  / ,,/" ``ヽl l/    ,,,,ノ" ,,ハ ゙l 
  `>i`|.l ヒーーーラli.   |.i´l.|  '⌒ L ⌒ l/    l" ニ= r-‐ l  l
  〈  ゝ'ヘ、\., - 、/.li____ゝ || 、___イ_, 〔   r、 !、   ヽ l 丿
   vヘ、  ヽ、 ヽ==l,,ハ,,   ハミ lーー--ー-//ゝ、 ゝゝ7 、__ ' //
  ,,_.n ,,ゝ、,,,,,,,゙゙''''^'',,,,,,彡ーく./ ミ \, ‐-‐.//  l`ー‐=ト、`ー' /l ̄\_
. / l,,l,,厂  l\∧l'''''l∧l    ヽ \`ー-' イ  ノ,,r‐'''| | ヽ ,,イ .l  l'",,,、 ヽ
/,∪     l,   >‐i  l     l   >ー‐ヘヽ /   l l    | .|  ∪ l |.゙ト、


54 :名無しさん@5周年:2008/04/13(日) 21:22:02
1ヶ月周期age

55 :名無しさん@5周年:2008/04/14(月) 01:06:31
write(*,*) 'hello, warld.'
end


56 :名無しさん@5周年:2009/07/27(月) 15:53:14
           |  |    :::::::ヽ
          |  |    ::::::::::ヽ
          |      .:::::::::/         / ̄:三}
          〈二二二二_`ヽ(         /   ,.=j ―――――――――┐
          l    _,, ミ\ ゝ       /   _,ノ    -= ヽ =_、V_1   ロ |
          l`ニ  ' -‐' :ミ,|ヽミ      /{.  / |  清 -= (  ,,,>`)   リ |
          l   :.    ::ッ|ソミ    , '::::::::ヽ、/  | 孔原  -=(つ┯つ  コ |
            i ,`´、,_  .:/ヽミ   / :::::::::::::::/.   | 明  -=≡| .┃/.   ン |
           /"´`"''`X ::::::ヽ_,‐'´::::::::::::::;/   r r 、 この顔見かけたら 番 |
.            ヾiiァッ' ‐:ラ ':::::::::::::::: ;∠.    | ! ! !ヽ  すぐ110番    長 |
            ,.r` リ/  /:::::::::::::::::::ィ´  `ゝ  !、  / ―――――――――┘
         /       / :::::::::::::::: ; '´   /´\ /   r'
.         i      ! ::::::::::::::/    | .!::::::::/ヽ、.._!
         {      {:::::::::::;:イ /   ‖i:::::::/:::::::::::::/ 
    .      ヽ       ヽ,.ァ‐'´ /ヽ 二 ,/`ヽ、::::::::: / 
          ヽ、 ,. ‐'"   .ノ ,〈    >   `'‐- '
              >   _,. ‐'´ / /    `)
           ,ゝ             /
           _l::......           '、
  _____,,,>゙'、 ::....            l_____
./::::::::::::::::、!::::::::::::::::`'ゝ、,  :::..    ..::::...,r‐'´:::::::::::::::::::::: ゙゙''‐-、
|::::::::::'::::ヽ::::::';:::::::::::::::::゙'、゙'、_     _,-'゙/:::::::::::::::::::::::/r::::::::::: ヽ,
 i::::::::::::::゙、::::i:::::::::::::::::::::'、::::゙',ー‐‐''´::/":::::::::::::::::::::/::::/r、:::::::::::::::l


57 :名無しさん@5周年:2009/10/01(木) 01:11:58
             ...--―-....,,_
           /:::::::::::::::::::::::::::>..、       /
          /::::::::::::::::/二二二ヽ;ヽ    /
        ∠::::::::::::::::::/`"`'"^`'^"`{:::ハ     
         /:::::::::::i:::::::∨⌒    ⌒ }:::ハ     そういえばここ植民地のようなものでしたね
       ∠::::::::::::::|::::::::| ┃    ┃ :::::ハ    
    /::::::::::::::::::::|:::::::| ┃    ┃ Y::::}     
     ̄ ̄|:::::::::::__|::::::| ┃    ┃ Y::|    
       レ'l:::( マ|:::::|   _     ∨:l   \
           レ\从::::|   { /    ,,∠::::|     \
       |\ _,,. <V¨7v- ┌‐ ヽWV'\|
.  / //  {´:::::::::::::/::/〆j}::|
 ( 〈   \  V:::::::::::∧::|/¨|::::i
.  `    /∨ > -∧::::|′|:::ハ
       / /¨} /\|::::::::|   V:∧
      j_7  {7   `セサ   セヲ}


58 :名無しさん@5周年:2009/10/04(日) 07:50:58
大学で
一様な電場中に導体球がおかれたときの電位・電場の様子を可視化せよ
という課題が出たんですが
特に境界条件とかどうしていいのかよくわかりません

誰かヒントや解いてくれる方いないでしょうか?
提出期限は、10月7日の18:00までです。お願いします。

59 :名無しさん@5周年:2009/10/04(日) 17:54:40
簡単じゃい。

解析領域・・・導体球を含んだ立方体を用意する。立方体空間の中心
       に導体球があるイメージ。
       導体球内部は解かなくて良い。何故なら、導体球内部
       は、何処も等電位なので電場はゼロ。

境界条件・・・立方体の1面にV=1の電位条件を付加
       それに対向する1面にV=0の電位条件を付加
       導体球表面に、未知等電位条件を付加 
              
あとは、解析領域内に格子ないしはメッシュを作成して、FEMなり
差分法なりでラプラス方程式を解けば良い。ラプラス方程式解いたら
解析空間全域で電位が求まるので、ポスト処理で勾配計算して電場を
算出。あとは可視化すればいい。

もし導体球が1つであれば、解析解が存在する簡単な問題だから、
FEMや差分法で解かなくてもいいんですけどね。
そうしたら、解析解の数式に沿って電場や電位を可視化するだけ。
解析解は電磁気の本などを参考に。

60 :名無しさん@5周年:2009/10/04(日) 22:31:35
>>59
ありがとうございます
おかげで、どういう組み方かがよくわかりました

あと
メッシュ、FEM、ポスト処理
というものの意味がわからないんですが、どのようなものなのでしょうか?

61 :名無しさん@5周年:2009/10/06(火) 02:34:13
あとは調べなさい

62 :名無しさん@5周年:2009/10/06(火) 19:42:51
水の電場駆動のプログラムを作っているのですが
理論もアルゴリズムもさっぱりわからない。
良い参考書があれば紹介お願いいたします。

あとGROMACSってこの件に関して役に立ちますか?

63 :名無しさん@5周年:2009/10/08(木) 08:14:01
水の電場駆動ってだけじゃ分からんな。
その物理現象は分かるんだけど、何が入力条件、境界条件で、
その結果、具体的に何を求めたいのか書いてくれないと。

64 :名無しさん@5周年:2009/10/14(水) 12:04:19
遅くなりましてすみません
現状は細孔内にある水を安定な状態にするところまでできています。
例えばy軸方向に2枚の壁があるとして、x軸方向に水を駆動させることを考えています。
(その場合、z軸にのみ周期境界条件は必要ことで良いでしょうか。)
エレクトロンボルトを駆動させるパラメータとしたいと思っています。
その駆動と壁との吸着によるせん断?というものを求めたいと思っています。

21 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)