08/05/20 17:00:13
// >864の指摘も尤もなので、修正した。
// ついでに、s1[some]がs2中に存在したらコピー元をずらして、毎回一文字だけコピーする戦略に。
// これって、中のwhileの行を取り除いてp = s1をp = s2にしたらstrcpy()だ。
//
static void removeChars(char * s1, const char * s2)
{
char * p = s1;
do {
while (* p != '\0' && strchr(s2, * p)) ++p;
* s1++ = * p;
} while (* p++ != '\0');
}
867:マイク ◆yrBrqfF1Ew
08/05/20 17:57:22
アルエェー
ぼるじょあってまだいたのかYO!
健康なのかYO!
868:デフォルトの名無しさん
08/05/20 18:04:52
>>865
#include <stdio.h>
int main(void)
{
char str[256], *p;
scanf("%s", str);
for(p=str; *p; p++);
while(p-->str) putchar(*p);
return 0;
}
869:デフォルトの名無しさん
08/05/20 18:10:32
せめてscanf("%255s", str)にしようよ。
870: ◆g/ZMVdytmo
08/05/20 22:18:53
[1] 授業単元: C言語 for文
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: CygnusVer.2.02.1
[3.3] 言語: C
[4] 期限: ([2008年5月22日17:00まで]
[5] その他の制限: 2問別々に組む。for文使用。
2問内包ですが、よろしくお願いします。
871:865
08/05/20 22:49:45
>>868様
ありがとうございます!
872:ぼるじょあ ◆yBEncckFOU
08/05/20 23:57:49
>>870
(・3・) エェー でけたYO!
#include<stdio.h>
int main(void){
int i, j, n;
printf("段数を入力してください:");
scanf("%d", &n);
for(i=0;i<n;i++){
for(j=0;j<n-i;j++) printf("*");
printf("\n");
}
return 0;
}
#include<stdio.h>
int main(void){
int i, j, n;
printf("段数を入力してください:");
scanf("%d", &n);
for(i=0;i<n;i++){
for(j=0;j<n-1-i;j++) printf(" ");
for(j=0;j<=i;j++) printf("*");
printf("\n");
}
return 0;
}
873: ◆g/ZMVdytmo
08/05/21 00:12:59
ぼるじょあ氏超絶感謝!!
意外とシンプルワラタww
874:デフォルトの名無しさん
08/05/21 11:00:12
>>862
どうもありがとうございます。
どうやら条件があるみたいで「配列版」と「ポインタ版」 をつくり,それらの動作をテストするためのプログラムを作成する.
どの関数も,与えられた文字列に何らかの加工を施すものである「配列版」とは,関数内の文字列に対する処理を配列的表現を使って記述したものである.文字列sの中のある文字にアクセスする場合に,s[i]という表現を用いる.
「ポインタ版」とは,関数内の文字列に対する処理をポインタ使って記述したものである. 関数内には,全く配列的表現が現れないように書く.単に,配列版の s[i] を *(s+i) に置き換えるだけではダメで,ポインタ変数の値を変化させて文字列を走査するように記述する.
なんか面倒くさくて申し訳ないですが、よろしくお願いします。
875:デフォルトの名無しさん
08/05/21 11:26:33
[1] 授業単元: C言語 for
[2] 問題文(含コード&リンク): 整数の個数を読み込み、その個数分の整数を
読み込み、読み込んだ整数の最大値を求めるプログラムを作れ。
整数の個数: 3
No.1: 6
No.2: 3
No.3: 4
最大値は 6 です
[3] 環境
[3.1] OS: WINDOWS XP
[3.2] コンパイラ名とバージョン: Cl
[3.3] 言語: C
[4] 期限: 2008年5月21日19:00
[5] その他の制限: for文を使う事。
お願いしますm(__)m
876:ぼるじょあ ◆yBEncckFOU
08/05/21 11:29:57
>>874
(・3・) エェー そういうことは先に言えYO!
#include <stdio.h>
#include <string.h>
unsigned char *hoge(unsigned char *s1, const unsigned char *s2){
char *src, *dest;
for(src=dest=s1;*src;src++){
if(!strchr(s2, *src)) *dest++=*src;
}
*dest='\0';
return s1;
}
int main(void){
char s1[1024]="", s2[1024]="sp.";
fgets(s1, sizeof(s1), stdin);
puts(s1);
hoge(s1, s2);
puts(s1);
return 0;
}
877:ぼるじょあ ◆yBEncckFOU
08/05/21 11:34:22
>>875
(・3・) エェー でけたYO!
#include <stdio.h>
int main(void){
int i, value_num, value, maximum_value=12345;
printf("整数の個数: ");
scanf("%d", &value_num);
for(i=0;i<value_num;i++){
printf("No.%d: ", i+1);
scanf("%d", &value);
if(i==0 || value>maximum_value) maximum_value=value;
}
printf("最大値は %d です\n", maximum_value);
return 0;
}
878:デフォルトの名無しさん
08/05/21 11:41:23
>>877 乙です。助かりました!
879:デフォルトの名無しさん
08/05/22 14:49:36
【質問テンプレ】
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク)
身長 150 cm から 170 cm までの標準体重(BMI法で計算)によるの対応を
表示するプログラムを for 文を使って作成せよ。
標準体重は小数点以下を1桁だけ表示すること。
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:特になし
[5] その他の制限:特になし
880:デフォルトの名無しさん
08/05/22 16:55:15
>>879
スレリンク(tech板:455番),460
881:ぼろじょあ
08/05/24 06:03:58
(´3`) エェー でけねーYO!
882: ◆ob60wHXQlc
08/05/26 23:12:53
[1] C言語
[2] 後から用意される2つのファイルがマージできるプログラムをつくる。
ファイルのサイズは最大で1000バイト。
unsigned shortを使う。
昇順。
[3] 環境
[3.1] Windows
[3.2] visual studio
[3.3] C
[4] 5月27日のお昼まで。
[5] C言語始めて3週間です。
お願いします。
883:ぼるじょあ ◆yBEncckFOU
08/05/27 10:35:13
>>882
(・3・) エェー 問題の意味が分からないYO!
884:デフォルトの名無しさん
08/05/27 13:15:08
[1] 授業単元: C言語
[2] 問題
文字列sの文字の順を逆に置き換える.
関数の戻り値は文字列s(の先頭を指すポインタ値).
s: "This is a pen."
↓
s: ".nep a si sihT"
[3] 環境
[3.1] OS:LINUX
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語:C
>876いつもありがとうございます。
助かります。
追加で問題だされました。
配列版のほうは自力でできましたがポインタ版のほうは無理でした。
よろしくお願いします。
885:ぼるじょあ ◆yBEncckFOU
08/05/27 18:03:04
>>884
(・3・) エェー 配列版とかポインタ版とか省略すんなYO!
過去ログ読み直さないと意味分からんYO!
#include<stdio.h>
char *reverse(char *s){
char *p, *q, t;
for(p=q=s;*q;q++);
for(q--;p<q;p++,q--) t=*p,*p=*q,*q=t;
return s;
}
int main(void){
char s[]="This is a pen.";
puts(s);
puts(reverse(s));
return 0;
}
886: ◆Anhlv1kDvE
08/05/27 21:17:24
【質問テンプレ】
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):
コマンドプロンプトで実行して
”ファイル名は?”
と聞いてきてテキストファイルのフルパス(場所)を入力してエンターキーで次は
”作成先は?”
と聞いてきてフルパス(場所)を入力してエンターキーで終わり、
英文のかかれたテキストファイルから全英単語を重複なく順番に新しいテキストファイル(以下、”NEWテキスト”と呼ぶ)に書き込み保存するプログラミングです。
実際の内容の結果は次のようになる。
-------------------英文.txt-------------------------------
I was wondering if my plant needs friends, do I need to get more of the same plant so it can get polinated and produce peppers?
続く
887: ◆Anhlv1kDvE
08/05/27 21:20:15
886 続き1
------------------new英文.txt(プログラムによって新規作成)------------------------------
I
was
wondering
if
my
plant
needs
friends,
do
need
to
get
more
of
888:"gra454
08/05/27 21:21:14
887 続き
the
same
so
it
can
polinated
and
produce
peppers?
-------------------------------------------------
ポイント
(1)
NEWテキストの重複チェックは同じ単語でも大文字と小文字ひとつでも違えば書き込みはOKとする(プログラムが楽なよう)
例)Apple と apple
889:gra454
08/05/27 21:22:15
888 続き
では違うものとしNEWテキストに書き込みされる。また同じ単語でも記号が含まれていても違う単語と判断し、記号付きのままNEWテキストに書き込む。
例)get! と get
つまり小文字、大文字を区別して一致し、さらに文字数も一致しないと重複とみなされない。
(できるならnew英文.txtは記号を削除して英数字の大文字と小文字のみにしたい。その場合上の例は重複となる)
(2)
Windowsで動作すること。NEWテキストのファイル名は毎回入力しないでいいように、英文のテキストファイルのファイル名の先頭に"new" をつけたものでいい。
例)英文.txt → new英文.txt
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン: Visual C++ 2005
[3.3] 言語: どちらでも可
[4] 期限: ([2008年6月2日まで]
[5] その他の制限: 初心者です
890:ぼるじょあ ◆yBEncckFOU
08/05/27 21:36:09
>>886
(・3・) エェー ほらYO!
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct tag_list_t{
int num;
char **wordlist;
}list_t;
int list_add(list_t *list, char *word){
int i;
for(i=0;i<list->num;i++) if(strcmp(list->wordlist[i], word)==0) return 0;
list->wordlist=realloc(list->wordlist, sizeof(char*)*(list->num+1));
list->wordlist[list->num]=strdup(word);
list->num+=1;
return 1;
}
int main(void){
list_t list={0, NULL};
char fname_in[FILENAME_MAX], fname_out[FILENAME_MAX], word[255+1];
FILE *fp_in, *fp_out;
printf("”ファイル名は?”");
scanf("%s", fname_in);
printf("”作成先は?”");
scanf("%s", fname_out);
if((fp_in=fopen(fname_in, "r"))==NULL) return 1;
if((fp_out=fopen(fname_out, "w"))==NULL) return 2;
while(fscanf(fp_in, "%255s", word)==1) if(list_add(&list, word)) fprintf(fp_out, "%s\n", word);
fclose(fp_in);
fclose(fp_out);
return 0;
}
891:デフォルトの名無しさん
08/05/27 22:05:17
質問長いしうpロダ使えよ
892:ぼるじょあ ◆yBEncckFOU
08/05/27 22:19:22
>>889
(・3・) エェー 記号削除版だYO!
while(fscanf(fp_in, "%255s", word)==1) if(list_add(&list, word)) fprintf(fp_out, "%s\n", word);
↓
while(fscanf(fp_in, "%255[A-Za-z]%*[^A-Za-z]", word)==1) if(list_add(&list, word)) fprintf(fp_out, "%s\n", word);
893:デフォルトの名無しさん
08/05/28 00:15:53
[1] 授業単元: C言語 配列
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp) 環境
[3.1] OS: WINDOWS XP
[3.2] コンパイラ名とバージョン: Cl
[3.3] 言語: C
[4] 期限: 2008年5月29日19:00
[5] その他の制限: 配列を使う事。
お願いします(><)
894:デフォルトの名無しさん
08/05/28 00:17:25
>>893
URLリンク(kansai2channeler.hp.infoseek.co.jp)
間違えたんで一応…
895: ◆hwfaJ.m7oQ
08/05/28 00:28:46
>>886
ありがとうございます。
実行すると(記号未削除版)
ファイル名は? 1.txt
作成先は? C:\
続行するには何かキーを押してください . . .
と出てエンターキーをおしても何も作られませんが?
896:デフォルトの名無しさん
08/05/28 00:40:57
ヴィジュアルベーシック2005
携帯プログラミング
テキストボックス1に文字が出る
ボタン12個
ボタン1(1)
ボタン2(2、A,B,C)
ボタン3(3、D,E,F)
・・・
ボタン9(9、W,X,Y,Z)
ボタン10(*)入力画面を初期化
ボタン11(0)
ボタン12(#)同じ文字・数字をつづけて入力できる
多いですがプログラミングコードを教えてください。
本当によろしくお願いします。
897:homoじょあ ◆5OLf4yFnuM
08/05/28 06:49:27
>>893
#include <stdio.h>
int main(void){
int score[20], range[5] = {0}, input, i = 0, k;
while(i < 20){
printf("[No.%2d]の成績を入力して下さい: ", i+1);
scanf("%d", &input);
if(input >= 1 && input <= 5){
score[i] = input;
range[input -1]++;
i++;
}
}
puts("*** 成績分布 ***");
for(i=0; i<5; i++){
printf("評価[%d] (%2d人) ", i+1, range[i]);
for(k=0; k<range[i]; k++){
if(k != 0 && k%5 == 0) putchar(' ');
putchar('*');
}
puts("");
}
return 0;
}
898:デフォルトの名無しさん
08/05/28 09:33:44
>>897
乙です。
899:デフォルトの名無しさん
08/05/28 09:43:03
[1] 授業単元: C
[2] 問題文: URLリンク(kansai2channeler.hp.infoseek.co.jp) 環境
[3.1] OS: WINDOWS XP
[3.2] コンパイラ名とバージョン: Cl
[3.3] 言語: C
[4] 期限: 2008年5月29日19:00
[5] その他の制限: 配列を使用
よろしくお願いします
900: ◆ob60wHXQlc
08/05/28 09:57:39
>>883
100個の数字が入ったファイルが2つ用意されるので、
それを合わせて昇順にソートして、
新しいファイルに書き込むというものです。
ファイルはいっきに読み込まず、1レコードずつです。
よろしくお願いします。
901:デフォルトの名無しさん
08/05/28 10:09:06
>>899
URLリンク(kansai2channeler.hp.infoseek.co.jp)
902:デフォルトの名無しさん
08/05/28 10:12:33
[1] 授業単元: C
[2] 問題文: URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: Cygnus
[3.3] 言語: C
[4] 期限: 今週
[5] その他の制限: 配列を使用
お願いします。。。
903:デフォルトの名無しさん
08/05/28 10:14:02
>>901
ありがとうございますっ
904:ぼるじょあ ◆yBEncckFOU
08/05/28 10:31:25
>>882
(・3・) エェー こんなもん?
#include<stdio.h>
#include<stdlib.h>
#define DATA_NUM_MAX (100*2)
int compare(const unsigned short *a, const unsigned short *b){
if(*a>*b) return 1;
if(*a<*b) return -1;
return 0;
}
int main(int argc, char *argv[]){
FILE *fp_in, *fp_out;
unsigned short data[DATA_NUM_MAX];
int i, data_num=0;
if(argc!=4){
printf("Usage: ./a.out filename[in] filename[in] filename[out]\n");
return 0;
}
for(i=0;i<2;i++){
if((fp_in=fopen(argv[i+1], "r"))==NULL) return 1;
for(;data_num<DATA_NUM_MAX;data_num++)
if(fscanf(fp_in, "%hu", &data[data_num])!=1) break;
fclose(fp_in);
}
qsort(data, data_num, sizeof(data[0]), (int (*)(const void *,const void *))compare);
if((fp_out=fopen(argv[3], "w"))==NULL) return 2;
for(i=0;i<data_num;i++) fprintf(fp_out, "%hu\n", data[i]);
return 0;
}
905:デフォルトの名無しさん
08/05/28 10:46:29
>>902
URLリンク(kansai2channeler.hp.infoseek.co.jp)
906: ◆ob60wHXQlc
08/05/28 11:01:50
>>883
ありがとうございます!!!!!!!
ちなみに、入ってる数字の数は不明だったとして、
ファイル1とファイル2の名前は相手に入力させ、
freadとfwriteを使ってファイル3に書き込み、
それをソートして1レコードずつ出力する。
っていうのはできたりするんでしょうか‥。
長くてすいません‥。
907:デフォルトの名無しさん
08/05/28 11:08:15
>>905
ありがとうございます。
しかし、コンパイルしたら(haii1.cで保存)
haii1.c: In function `main':
haii1.c:14: warning: unknown escape sequence: `\' followed by char code 0x8e
となってしまいました…。
該当部分のprintf("\nデータ一覧を表示します\n");を削ったら成功したんですがどうすればいいんでしょう?
908:デフォルトの名無しさん
08/05/28 11:11:04
んなあほな、そこはエラーというエラーは起こらないはずだが・・・
909:ぼるじょあ ◆yBEncckFOU
08/05/28 11:15:12
「表示」 S-JIS 文字コードの場合、十六進数表記で 95 5C 8E A6
5C == '\\'
ってことでコンパイルオプションに以下を追加すればいいYO!
--input-charset=cp932 --exec-charset=cp932
910:デフォルトの名無しさん
08/05/28 11:17:13
俺も問題無し
911:デフォルトの名無しさん
08/05/28 11:27:09
すみませんが初心者なので>>909がよくわかりません。。。
具体的にはどうすればいいのでしょうか?
「表示」だけ削ればたしかに成功しますが…。
912:デフォルトの名無しさん
08/05/28 11:29:04
とりあえず、エラーじゃなくて警告だからスルーしておk
913:デフォルトの名無しさん
08/05/28 11:30:43
"表\示します" にすればいけるだろ
914:デフォルトの名無しさん
08/05/28 11:31:33
データ一覧を侮ヲします
とでました。orz
915:デフォルトの名無しさん
08/05/28 11:33:54
>>913
よっしゃあああああああああああああああああああああああ
できました!!皆様ありがとうございました!!!!
916:デフォルトの名無しさん
08/05/28 11:36:07
>>911
コンパイラする時にcmdで渡す引数に
--input-charset=cp932 --exec-charset=cp932
を追加するって意味
C:\Work>command --input-charset=cp932 --exec-charset=cp932
917:デフォルトの名無しさん
08/05/28 11:43:48
>>916
(´_ゝ`)フーン了解です。
918:デフォルトの名無しさん
08/05/28 11:43:58
まあ ソ系ダメ文字 でググれば原因はわかるはず
919:デフォルトの名無しさん
08/05/28 11:48:04
あぁ、あったなぁ・・・ソね。そーっすね。そうだね、そうなのか・・・そっかぁ・・
920:デフォルトの名無しさん
08/05/28 14:46:56
最小値の出し方はわかるんですけど、2番目に小さい値ってどうすれば出ますかね
921:デフォルトの名無しさん
08/05/28 14:47:52
最小の次、あるいはもう ソ ートして2番目ってことで
922:920
08/05/28 15:25:47
>>921
お早い解答有難うございます!
「ソーティング」で調べてやってみたらできました有難う御座いました。
923:デフォルトの名無しさん
08/05/28 15:37:00
さらに3番目、4番目、……、一番大きい値と知りたいとかならともかく
2番目を知りたいだけならわざわざソートするのは無駄が多い気がしなくもない
924:デフォルトの名無しさん
08/05/28 15:41:57
ソうやなぁ。まず一番最小の要素をチェキして、その要素以外で
次に最小のものをチェキ。並び替える必要はないが、基本選択法の
一部を用いれば・・・
925:デフォルトの名無しさん
08/05/28 15:50:14
比較と代入ってどっちが遅いんだっけ
とりあえずi386系
926:デフォルトの名無しさん
08/05/28 16:44:37
俺の超高速挿入はむっちゃ早いで?クイック挿入なんて目じゃねーぜ
927:デフォルトの名無しさん
08/05/28 18:21:22
口で語る前にソース書け
928:デフォルトの名無しさん
08/05/28 19:50:35
>>927
オマエガナー
929: ◆RbkvJVnu4Y
08/05/28 22:05:50
[1] 授業単元:
[2] 問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: xp
[3.2] コンパイラ名とバージョン:VC 6.0
[3.3] 言語: C
[4] 期限:緊急(最終期限:木曜深夜)
[5] その他の制限:習ってるのはポインタ、配列、関数の初歩程度です。
なのでレベルを合わせたプログラムを書いていただけると助かります
URLリンク(kansai2channeler.hp.infoseek.co.jp)
以上の解答をいただいたのですがやはりビットマスクはだめのようです
ビットマスクのとこを配列でやる。
takaraにいっぱい詰め込む必要はないそうです
自分で一日ねばってもできませんでした
どうかお願いしますm(_ _)m
930:デフォルトの名無しさん
08/05/28 23:16:09
要するに全部配列使ってやればいいんでしょ
int takara[SIZE][SIZE];/*宝が入ってれば1 無ければ0*/
int hide[SIZE][SIZE];/*既にオープンされている=1 されていない=0*/
int around[SIZE][SIZE];/*周囲の宝の数*/
もう出来たも同然
931:デフォルトの名無しさん
08/05/28 23:45:34
>>930
defineのビットマスクのとこにその配列を入れるってことですよね?
なんか実行できないのですが…
お手数かけますがプログラムを書いていただけませんか?
932:デフォルトの名無しさん
08/05/28 23:57:30
[1] 授業単元: C
[2] 問題文: URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: Cygnus
[3.3] 言語: C
[4] 期限: 今週まで
[5] その他の制限:配列使用ですが、あまり複雑にならないほうが嬉しいです。
お願いします
933:デフォルトの名無しさん
08/05/29 00:33:13
>>931
適当に変えただけだjけど
これでいいんじゃねーの
URLリンク(kansai2channeler.hp.infoseek.co.jp)
934:デフォルトの名無しさん
08/05/29 00:57:39
>>933
解答していただき本当にありがとうございます
staticっていうのはまだ習ってないのですが簡単に書き直せませんか?
935:デフォルトの名無しさん
08/05/29 01:53:38
>>934
static外せばいいよ
どうせmain()は一回しか呼ばれて無いだろうし
936:デフォルトの名無しさん
08/05/29 02:14:40
#include <stdio.h>
#include <stdlib.h>
main(){
int I, YOU;
srand(time(NULL));
I=rand()%3+1;
YOU=rand()%3+1;
printf("my choice=");
scanf("%d",&I);
printf("your choice=");
scanf("%d",&YOU);
if(I==0){
if(YOU==0){
printf("引き分け\n");}
if(YOU==1){ printf("勝ち\n");}
if(YOU==2){ printf("負け\n");} }
else if(I==1){
if(YOU==0){ printf("負け\n");}
if(YOU==1){ printf("引き分け\n");}
if(YOU==2){ printf("勝ち\n");} }
else{
if(YOU==0){ printf("勝ち\n");}
if(YOU==1){ printf("負け\n");}
if(YOU==2){ printf("引き分け\n");} }}
937:デフォルトの名無しさん
08/05/29 02:16:08
乱数使ってジャンケンしろって問題なんですが相手(YOU)の入力を
乱数にするにはどうすれば良いのでしょうか?
>>936に書いてみましたが
IとYOUの両方とも入力しなければならないこととなっています。
938:デフォルトの名無しさん
08/05/29 02:40:10
あ、出来ました。
IとYOUってのがちょっと分かりにくいですがw
main(){
int I, YOU;
srand(time(NULL));
YOU=rand()%3+1;
printf("my choice=");
scanf("%d",&I);
printf("your choice=%d\n",YOU);
printf("%d,%d\n",I,YOU);
939:デフォルトの名無しさん
08/05/29 15:39:48
Cで経路探索のA*のプログラムはできますでしょうか?
他言語ならあるのですがcのみないのです・・・
一応c++の擬似コードのりんくを貼っておきます・・・・
URLリンク(d.hatena.ne.jp)
940:デフォルトの名無しさん
08/05/29 16:39:16
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク):
西暦年を引数に取り、閏年かどうか判定する
関数 is_leap_year() を用いて、
開始年と終了年を入れると、開始年、終了年およびその間の年に
閏年が何個あるか数えるプログラムを作成せよ。
[3] 環境
[3.1] OS: (Windows)
[3.2] 言語: (C++)
[4] 期限: 5/29
941:デフォルトの名無しさん
08/05/29 23:10:09
#include <stdio.h>
int is_leap_year(int year){return((((year) % 4) == 0) && (((year) % 100) != 0) || (((year) % 400) == 0));}
int main(void){
int count=0;
int i,a,b;
scanf("%d %d",&a,&b);
for(i=a;i<=b;i++){
if(is_leap_year(i))
count++;
}
printf("%d",count);
return 0;
}
942:デフォルトの名無しさん
08/05/30 01:41:35
転載。期限切れだけど誰かやってあげて。
[1] 授業単元:Windous Programming
[2] 問題文(含コード&リンク):
限界まで新規ウィンドウを開き続けるプログラムを完成させなさい。ただし、
1.開くウィンドウの閉じるボタン(通常右上に配置される[x]ボタン)は無効にすること。
2.限界まで開いたら、開いたウィンドウを全て閉じてきちんと後始末すること。
3.開いたウィンドウ数をカウントしておき、最後に「あなたのマシンの窓力はxxxです。」
(xxxには数値が入る)とダイアログで表示して終了すること。
[3] 環境:WindowsXP, VC++, C++
[4] 期限: 昼までに
[5] その他の制限: 特になし
943:デフォルトの名無しさん
08/05/30 01:51:00
意味ワカンネ
944:デフォルトの名無しさん
08/05/30 13:24:29
>[1] 授業単元:Windous Programming
そんな単元あるなら見てみたいもんだ。
945:デフォルトの名無しさん
08/05/30 16:49:35
[1]C言語
[2]組・名前・国語の点数・算数の点数が入った構造体がある。
もし組が同じなら、国語の点数を足していって、
1組ごとの合計をファイルに出力して、また次の組も。(算数も同様に。)
[3] 環境
[3.1]Windows
[3.2]visual studio
[3.3]C
[4]5月31日12:00
[5]キーブレイクというのをやらせたいみたいです。
946:デフォルトの名無しさん
08/05/30 17:29:05
>>945
問題文省略して無い?
それじゃいくらなんでも適当すぎる
947:デフォルトの名無しさん
08/05/30 17:29:45
そもそも、キーブレイクとはなんなのだ。
948:945
08/05/30 17:42:38
これしか聞いてなかったので今質問してきます!!
949:デフォルトの名無しさん
08/05/30 18:20:13
>>945
スレリンク(tech板:174番)
950:デフォルトの名無しさん
08/05/30 18:21:19
[1]C
[2]放物線プログラム
定数として重力加速度、初速度
経過時間からX,Yをもとめる。
経過時間0の場合は(X,Y)は(0,0)
951:デフォルトの名無しさん
08/05/30 18:26:16
>>950
スレリンク(tech板:180番)
嫌がらせ?
952:デフォルトの名無しさん
08/05/30 20:05:38
ま、ぼるじょあが何であるか理解できてないような板だから、期待してはいないけどね。
953:945
08/05/30 21:09:46
大事なとこが抜けてました。。
成績データレコード
struct PERSONAL_REC
{
unsigned char number; (クラス番号)
unsigned char reserve[3]; (予備)
unsigned char name[80];
short kokugo;
short sansuu;
};
成績集計レコード
struct CLASS_REC
{
unsigned char number; (クラス番号)
unsigned char reserve[3]; (予備)
short kokugo;
short sansuu;
};
を使うということです!
お願いします。
954: ◆AfLWwW3FJ2
08/05/31 00:12:40
[2] 問題文(含コード&リンク): テキストに
[3] Visual C++ 2005
[3.1] OS: Windows XP
[3.2] Visual C++ 2005
[3.3] 言語: どちらでも可
[4] 期限: 2008年6月2日
[5] その他の制限: 初心者
このプログラムに付け加えたいです
URLリンク(kansai2channeler.hp.infoseek.co.jp)
955:デフォルトの名無しさん
08/05/31 00:49:15
前も質問してなかった?別スレで
956: ◆AfLWwW3FJ2
08/05/31 01:27:10
>>955
どこかに投稿した覚えありますが
見失ったのですいません
お願いします。
957:デフォルトの名無しさん
08/05/31 01:27:17
ひとついえることがある。
今の計算機ではshortは速度においても消費メモリにおいても
doubleとまったく変わらないケースがほとんど。
958:デフォルトの名無しさん
08/05/31 03:53:17
>>956
質問しておきながら見失ったんですか。。。
善良な誰かが大切な時間を費やして回答してくれたかもしれないのに、
それをいともたやすく踏みにじるんですね。
反吐が出ます。
959: ◆AfLWwW3FJ2
08/05/31 04:00:21
>>958
いえどこかにテキストをアップロードしただけで
質問はしてません。
一応すいません。ここはプログラムを教えあうところで
言い合いしたくないので。
質問がどんどん埋もれるので
954
の質問お願いします。
960:デフォルトの名無しさん
08/05/31 04:07:25
>>959
tolower使えばいいじゃん。
なんなの?
961:デフォルトの名無しさん
08/05/31 04:08:56
作ってもらって理解してないからそんな醜態晒すことになるんだよ
頼むから留年してよ
962:ぼるじょあ ◆yBEncckFOU
08/05/31 07:52:03
>>954
(・3・) エェー ただ一つの愛があれば救われるYO!
963:デフォルトの名無しさん
08/05/31 10:18:24
(・3・) ~♪
964:デフォルトの名無しさん
08/05/31 14:17:45
>>962
誰がうまいことを言えとw
965:デフォルトの名無しさん
08/05/31 14:37:24
> ここはプログラムを教えあうところで言い合いしたくないので。
質問がどんどん埋もれるので954の質問お願いします。
これは笑ったwwwwww
966:デフォルトの名無しさん
08/05/31 15:12:26
>>965
一応すいません。ここはプログラムを教えあうところで
言い合いしたくないので。
質問がどんどん埋もれるので
954
の質問お願いします。
wwwwww
967:デフォルトの名無しさん
08/05/31 15:43:51
[1] 授業単元:
[2] 問題文(含コード&リンク):
分子と分母をint型で入力すると、その小数値を表示するプログラムを作成せよ。
なお、循環する場合は"[ ]"で括る事。
例:
分子:1
分母:3
値:0.[3]
[3] 環境
[3.1] OS: (Windows/Linux/等々)
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
[3.3] 言語: (C/C++/どちらでも可 のいずれか)
C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
2008/6/1 23:00
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
桁数があまりにも多くなる場合、任意で打ち切ってよい。
ただしその場合は閉じ括弧は表示しないこと。
968:デフォルトの名無しさん
08/05/31 16:39:52
>>959
> ここはプログラムを教えあうところで
いいえ。ぼるじょあがC/C++の宿題を片付けるところです。
969:デフォルトの名無しさん
08/05/31 16:54:58
>>968
質問がどんどん埋もれるので
954
の質問お願いします。
wwwwww
970:ぼるじょあ ◆yBEncckFOU
08/05/31 18:37:39
>>967
(・3・) エェー 結構面倒だったYO!
#include<stdio.h>
#define BUF_SIZE 2048
int main(void){
int bunsi, bunbo, c, i, is_inf=0;
int mod[BUF_SIZE];
char result[BUF_SIZE];
scanf("%d %d", &bunsi, &bunbo);
printf("%d.", bunsi/bunbo);
bunsi%=bunbo;
for(c=0;(mod[c]=bunsi%bunbo) && c<BUF_SIZE && !is_inf;c++){
result[c]=bunsi*10/bunbo+'0';
for(i=0;i<c;i++){
if(mod[c]==mod[i]){
is_inf=1;
break;
}
}
bunsi=(bunsi*10)%bunbo;
}
if(is_inf) printf("%.*s[%.*s]\n", i, result, c-1-i, result+i);
else printf("%.*s\n", c, result);
return 0;
}
971:側近中の側近 ◆0351148456
08/06/01 22:59:04
>>945
(っ´ 3 `)っ
URLリンク(kansai2channeler.hp.infoseek.co.jp)
972:デフォルトの名無しさん
08/06/01 23:48:15
>>971
本当に助かりました。m(__)m
973:デフォルトの名無しさん
08/06/02 15:35:43
質問がどんどん埋もれるので
954
の質問お願いします。
974:デフォルトの名無しさん
08/06/02 16:45:07
>>971の気持ち悪い人にやってもらいな
975:デフォルトの名無しさん
08/06/05 00:04:25
[1] 授業単元:プログラミング演習1
[2] 問題文(含コード&リンク):
m ×m 行列を入力し和と積を求め、結果を行列の形で表示させる
プログラムの作成。但し、入力した行列も表示。
<表示例>
1 2
3 4
[3] 環境
[3.1] OS:WinXP/linux
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等):VC++/gcc
[3.3] 言語:C言語
[4] 期限:2008/06/06
[5] その他の制限: stdio.h、入力はscanf関数、出力はprintf関数、配列で
プログラムの冒頭ですが、これで配列可変になるんでしょうか…?
int m,i,j;/*要素、カウント用変数宣言*/
printf("行列数を入力");
scanf("%d",&m);
int a[m]=0;
int b[m]=0;
976:デフォルトの名無しさん
08/06/05 00:14:36
>>975
> プログラムの冒頭ですが、これで配列可変になるんでしょうか…?
C89はできません
977:デフォルトの名無しさん
08/06/05 00:15:58
[1] 授業単元:
[2] 問題文: ポインタを使った循環リストを実装せよ.リストの表示、ノード
の挿入,削除を行う関数を作ること.なお,リストのノードNode は以下のよ
うに定義されている.
typedef struct { // data type
int no;
char name[10];
} Data;
typedef struct __node { // node definition
Data data;
struct __node *next;
} Node;
実行例:
(0) Insert a Node (1) Delete a Node (2)View the List (3) exit : 0
Please input the data.
No.: 1
Name: Lu
(0) Insert a Node (1) Delete a Node (2)View the List (3) exit :
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:BorlandC++
[3.3] 言語:C
[4] 期限:6月5日16:00
[5] その他の制限:一応構造体まで習っているので、初歩的な知識程度だと思われます
よろしくお願いします
978:デフォルトの名無しさん
08/06/05 01:13:25
2008/06/01
こんにちは 管理人です
2003年から運営しているこのサイトですが
もはや掲示板やブログの類は機能せず、
唯のアップローダーサイトになってしまっているという現実と
本スレの酷い衰退具合と、運営費の問題と
そして私の受験という様々な要因から
今までも事実上の閉鎖状態ではありましたが
今日をもちまして正式な閉鎖とさせて頂きます。
何故かアップローダーとしては多少名が知れているらしく、
毎日何方かが利用して下さってたのですが 申し訳ありません。
ここについては基本的に弄ることなく残しておこうとは思いますが、
XREAの有料アカウントが解除されると同時に容量制限により
過去ログは殆ど飛んでしまうと思われます。(11月に切れます)
過去ログが飛んでしまえばもはや何も無い空のサイトですが、
せめてAAデータベースや1001変更の纏めは残しておきます。
borujoa.orgとpcqa.orgのドメインに関しての処理は未定です
今後どこかで流用するかもしれません。
右に表示されているメッセのアカウントは現在でも使用しており、
これからも使用する予定なので
過去ログがどうしても必要だ、等何か連絡がありましたらお気軽にどうぞ。
中1から始まったゆとりの暇つぶしに今までお付き合い頂き、
本当にありがとうございました。
ぼるじょあ文化が絶えないことを祈っております。
ではまたいつか
URLリンク(www.borujoa.org)
979:デフォルトの名無しさん
08/06/05 01:17:02
VS2008のVC++を使っているのですが
インテリセンスの表示をデフォルトのCtrl+Spaceではなくて VBのように何も押さなくても
リアルタイムに表示するようにしたい場合はどうすればいいでしょうか?
980:デフォルトの名無しさん
08/06/05 02:58:54
>>977
スレリンク(tech板:371番)
これと同じ
>>975
スレリンク(tech板:625番)
これは、、ただのマルチか?
981:デフォルトの名無しさん
08/06/05 13:07:25
C言語のリスト構造によるスタック・キューそれぞれについて、
要素数を管理する変数を用意して追加・削除の際に更新する方法で、
格納されている要素数を取得することの利点・欠点がわかりません。
又は、スタック・キューの全要素を追査して現要素数を調べて要素数を
取得する方法の利点・欠点でも構いません。
どなたか宜しくお願いします。
982:デフォルトの名無しさん
08/06/05 13:14:56
>>981
要素数を得るときの計算量がO(1)かO(n)かの違いでいいんでね?
983:デフォルトの名無しさん
08/06/05 13:18:46
>>981
別途変数を用意すると要素数を知るのが速くなるが、その分メモリを多く消費する