このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1288531658/3
#  [1] 授業単元:C言語入門 
#   
#  [2] 問題文):最大24個の整数が格納できる配列を用意する。 
#  この配列の先頭から10個分には1を代入し, 
#  つづく6個分には0を入れ,最後の8個分には-1を入れよ。 
#   
#  

'最大24個の整数が格納できる配列を用意する。この配列の先頭から10個分には1を代入し,つづく6個分には0を入れ,最後の8個分には-1を入れよ。'(L) :-
        最大24個の整数が格納できる配列を用意する(L),
        この配列の先頭から10個分には1を代入し(L,R1),
        つづく6個分には0を入れ(R1,R2),
        '最後の8個分には-1を入れよ'(R2).

最大24個の整数が格納できる配列を用意する(L) :- length(L,24).

この配列の先頭から10個分には1を代入し(L,R) :-
        length(L1,10),
        all(L1,1),
        append(L1,R,L).

つづく6個分には0を入れ(L,R) :-
        length(L1,6),
        all(L1,0),
        append(L1,R,L).

'最後の8個分には-1を入れよ'(L) :-
        length(L,8),
        all(L,-1).

?- ti. no. ?- keizo104 :: pwd(X). ?- w3db(keizo104,7083,true). yes. ?- !'ls -l *.html | grep "2010-10-31"'. -rw-r--r-- 1 root root 745 2010-10-31 17:15 c141_966.html -rw-r--r-- 1 root root 1057 2010-10-31 20:54 c141_971.html -rw-r--r-- 1 root root 592 2010-10-31 22:42 c141_983.html yes. ?- cat c141_966.html. c141-966#
このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1286978599/966
#  [1] 授業単元:情報処理 
#  [2] 問題文(含コード&リンク): 
#  http://ime.nu/img69.imageshack.us/img69/1731/65183447.jpg 
#  (b)、(d)の回答をよろしくお願いします。 
#  
# 1 dを入力し、(n+1)^2 - n^2 =< d なる最小のnを出力するプログラムを
#  while 文を使って作りたい。nは整数、 dは実数とせよ。以下の問に答えよ。
# 
#  (a) このプログラムに必要な変数を述べよ。
#  (b) (n + 1)^2 - n^2 =< d を判定するC言語の条件式を書け。
#  (c) 処理の手順を番号付き箇条書、または、フローチャートで示せ。
#  (d) プログラムを書け。

yes. ?- cat c141_971.html. c141-971#
このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1286978599/971
#  [1] 授業単元:プログラミング演習  
#  [2] 問題文(含コード&リンク) 
#    
#  *記号を使ってでsin曲線を描け。 
#  

'*記号を使ってsin曲線を描け。' :-
        '*記号を使ってでsin曲線を描け。'(1,LL),
        転置(LL,LL2),
        append(_,[L|R],LL2),
        concat_atom(L,A),
        write_formatted('%t\n',[A]),
        R = [].

'*記号を使ってsin曲線'(X,[]) :- X > 629,!.
'*記号を使ってsin曲線'(X,[L|R]) :-
        length(L0,101),
        Y is truncate((100 * sin((X-1) * pi / 100))+101),
        list_nth(Y,L0,'*'),
        reverse(L0,L1),
        全ての変数を空白に(L0),
        X2 is X + 1,
        '*記号を使ってsin曲線'(X2,R).

全ての変数を空白に([]) :- !.
全ての変数を空白に([V|R]) :-
        var(V),
        V = ' ',
        全ての変数を空白に(R),!.
全ての変数を空白に([_|R]) :-
        全ての変数を空白に(R),!.

?- nojiri('c141_971.html'). yes. ?- ti. ?- !'ls -l *.html | grep "2010-10-30"'. -rw-r--r-- 1 root root 3258 2010-10-30 03:06 c141_863.html -rw-r--r-- 1 root root 2471 2010-10-30 17:27 c141_863_1.html -rw-r--r-- 1 root root 3771 2010-10-30 09:07 c141_863_2.html -rw-r--r-- 1 root root 561 2010-10-30 23:28 c141_948.html yes. c141-948#
このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1286978599/948
#  [1] 授業単元:プログラムとアルゴリズム 
#  [2] 問題文(含コード&リンク):整数配列aとその長さnを渡して、配列のそれぞれの要素を10倍して戻す関数Funcを作成し、必要な追加を行って動作を確認しなさい。 
#  下敷きとするソースコードは以下のURL(jpgで見にくくてすみません)でお願いします。 
#  http://ime.nu/pc.gban.jp/?p=24057.jpg 
#  

'リストa、長さnを渡して、n要素だけ10倍して戻す'(_a,_n,X) :-
        length(L,_n),
        append(L,R,_a),
        '10倍して戻す'(L,L10),
        append(L10,R,X).

'10倍して戻す'(L,L10) :-
        findall(N2,(
                    append(_,[N|_],L),
                    N2 is N * 10),
                L10).

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

'リストa、長さnを渡して、n要素だけ10倍して戻す'(_a,_n) :-
        length(L,_n),
        '10倍して戻す'(L,_a,X),

'10倍して戻す'([],X,X) :- !.
'10倍して戻す'([_|R1],[N|R2],[N2|R3]) :-
        N2 is N * 10,
        '10倍して戻す'(R1,R2,R3).

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

'リストa、要素位置m、長さnを渡して、最初からm要素目からn要素だけ10倍して戻す'(_a,_m,X) :-
        length(L,_n),
        _m_1 is _m - 1,
        length(L1,_m_1),
        append(L1,R,_a),
        '10倍して戻す'(L,R,L2),
        append(L1,L2,X).

'10倍して戻す'([],X,X) :- !.
'10倍して戻す'([_|R1],[N|R2],[N2|R3]) :-
        N2 is N * 10,
        '10倍して戻す'(R1,R2,R3).