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

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

#ふん、これできるの?#

1 :トシ@矢田亜希子&水野美紀:01/09/13 21:24
キーボードから順次入力された正の整数を、 0が入力されるまで、配列に順番に格納し、次に、ある1つの正の整数を与えると、それが何番目に入力された整数であるかを表示するプログラムを作成せよ。
例えば、次のような実行例となるようにせよ。


数字(1)を入力してください 43
数字(2)を入力してください 25
数字(3)を入力してください 7
数字(4)を入力してください 123
数字(5)を入力してください 0
見つけたい数字を入力してください 7
7は3番目に見つかりました
見つけたい数字を入力してください 55
55は見つかりませんでした
見つけたい数字を入力してください 0
それではプログラムを終了します

以上

2 :デフォルトの名無しさん:01/09/13 21:29
できるよ

3 :ハイジャッカー:01/09/13 21:32
このスレは乗っとりました
今からこのスレは
「自作シェルを公開しましょう」
になります
みなさん、自作のunixシェルのソースをウプしてください

4 :デフォルトの名無しさん:01/09/13 21:37
関連スレッド

#このくらいできなきゃ認めません#
http://mentai.2ch.net/test/read.cgi?bbs=prog&key=1000383959

5 :デフォルトの名無しさん:01/09/13 21:38
糞スレの1はコテハン。定説です。

>>1
ところで、どこの課題?
専?大学?

6 :デフォルトの名無しさん:01/09/13 21:40
課題に見せかけた荒らしだろ。

7 :デフォルトの名無しさん:01/09/13 21:40
>>5
小学校です。
いまどき、専門でもこんなこと教えません

8 :デフォルトの名無しさん:01/09/13 21:42
int main()
{
ItiNoReidai();
return 0;
}

9 :トシ@矢田亜希子&水野美紀:01/09/13 21:44
>5
旧帝理系
1回生
C言語

10 :トシ@矢田亜希子&水野美紀:01/09/13 21:45
ちなみに習いたてです。

11 :トシ@矢田亜希子&水野美紀:01/09/13 21:45
阪大

12 :トシ@矢田亜希子&水野美紀:01/09/13 21:47
>11
お前誰だ??

13 :デフォルトの名無しさん:01/09/13 21:49
配列に保持しつつ、そこへのポインタをBTreeのノードとしておいて
BSearchみたいなプログラムをこいつに書いてあげれば(笑

14 :デフォルトの名無しさん:01/09/13 21:54
くだらねぇスレ立てる前に勉強したほうが早いぞ。

15 :デフォルトの名無しさん:01/09/13 21:57
□■□■□■□■□■□■終了□■□■□■□■□■□■

16 :デフォルトの名無しさん:01/09/13 21:58
書いたから取りに来い。
明日、天王寺駅の空飛ぶ観音様の下で待ってる。

17 :トシ@矢田亜希子&水野美紀:01/09/13 22:04
そろそろ教えろって。
俺も暇じゃないんだよ。

18 :トシ@矢田亜希子&水野美紀:01/09/13 22:06
>17
俺も暇じゃないけど、お前は暇だな

19 :デフォルトの名無しさん:01/09/13 22:07
http://www-ise1.ise.eng.osaka-u.ac.jp/tode/Lecture/infor-proc-I-c-prog-kadai.html

20 :戸出:01/09/13 22:07
この程度自分で書けない奴は退学です。
http://www-ise1.ise.eng.osaka-u.ac.jp/tode/Lecture/infor-proc-I-c-prog-kadai.html

21 :戸出:01/09/13 22:08
>>19
かぶったじゃねーか。

22 :トシ@矢田亜希子&水野美紀 :01/09/13 22:08
>17
俺の暇じゃないけど、お前で暇だな

23 :19:01/09/13 22:10
>>20
同じ様な事を考える人がいるんですねぇ…(w

24 :トシ@矢田亜希子&水野美紀:01/09/13 22:12
var
 v : integer;
begin
 repeat readln(v);
  AddData(v);
  until v <> 0;
 repear readln(v);
  if CheckData(v) then
   writeln( LookupData(v) );
  until v <> 0;
end.


さぁ。誰か Lisp 板と Fortran 版を。

25 :デフォルトの名無しさん:01/09/13 22:24
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <limits.h>

main()
{
 int i;
 int kaisuu;

 srand(time(NULL));

 while(1)
 {
  kaisuu = rand() % INT_MAX +1;
  printf("入力回数を調べたい整数は?\n");
  getch();
  printf("入力回数は%d回です。\n",kaisuu);
 }
}

実行してみろ

26 ::01/09/13 22:28
#include<stdio.h>
int h[
100000],i,
j,x=1;main(){for(
i=0;x;i++){printf(
"数字(%d)を入力してください "
,i+1);scanf("%d"
,&x);h[
i]=x;}while(
1){printf("見つけたい数字を入力してください "
);scanf(
"%d",&x);if(x
==0)break;for(j=
0;j<=i;j
++)if(h[
j]==x)
break;if(
j<=i)printf(
"%dは%d番目に見つかりました\n"
,x,j+
1);else printf(
"%dは見つかりませんでした\n",x
);}printf(
"それではプログラムを終了します");}

27 :トシ@矢田亜希子&水野美紀:01/09/13 22:45
To 仏様
仏様ありがとうございます。
私は2ちゃんねるでこのような人がいるとは思いませんでした。
きっとあなたは、実世界のおいても人間的にも一流の方でしょう。
これを機に、トシ@矢田亜希子に改名します。
どうもありがとうございました。提出は明日まででしたので。
仏様のおかげでギリギリセーフとなりました。
              From トシ@矢田亜希子

28 :デフォルトの名無しさん:01/09/13 22:49
おお、結果を是非報告して欲しい

29 :デフォルトの名無しさん:01/09/13 22:50
次回の課題についてもコテハンで新スレ建てやがるだろうの法則。

30 :デフォルトの名無しさん:01/09/13 22:57
>>26>>19-20のリンク先から
担当の奴にメールでカンニングの事実をばらしてるに一票。

31 :yo:01/09/13 23:02
ワラタ

32 :ll:01/09/13 23:08
この人は将来PGになるのでしょうか

33 :トシ@矢田亜希子&水野美紀:01/09/13 23:10
>>28
どちらかというとプログラムそのものの実行結果も教えてほしいな。

34 :デフォルトの名無しさん:01/09/13 23:15
さりげなくtypoとかまぜておくと動かぬ証拠になってイイ!感じよ。

35 :遅かったのね:01/09/13 23:25
#include<stdio.h>
#include<stdarg.h>
#define z 50
#define zz 5
#define zzzzzzzzzzzzzzzzzzzzzzzz "数字(%d)を入力してください "
#define zzzzzzzzzzzzzzzzzzzzzzzzz "見つけたい数字を入力してください "
#define zzzzzzzzzzzzzzzzzzzzzzzzzz "%dは%d番目に見つかりました\n"
#define zzzzzzzzzzzzzzzzzzzzzzzzzzz "%dは見つかりませんでした\n"
#define zzzzzzzzzzzzzzzzzzzzzzzzzzzz 0
int zzz(int*, int, int);
int zzzz(char*,...);
int main(){
  int  zzzzz[z];
  int  *zzzzzz = zzzzz;
  int  zzzzzzz,zzzzzzzz,zzzzzzzzzzzz,zzzzzzzzzzzzzz;
  for(zzzzzzzzzzzz = 1; zzzzzzzzzzzz <= z; zzzzzzzzzzzz++){
    *zzzzzz++ = zzzz(zzzzzzzzzzzzzzzzzzzzzzzz,zzzzzzzzzzzz);
    if(*(zzzzzz-1) == zzzzzzzzzzzzzzzzzzzzzzzzzzzz)
      break;
  }
  zzzzzzz = zzzzzzzzzzzz > z?z:zzzzzzzzzzzz;
  zzzzzzzz = zzzz(zzzzzzzzzzzzzzzzzzzzzzzzz);
  while(zzzzzzzz > zzzzzzzzzzzzzzzzzzzzzzzzzzzz){
    zzzzzzzzzzzzzz = zzz(zzzzz,zzzzzzz,zzzzzzzz);
    if(zzzzzzzzzzzzzz > zzzzzzzzzzzzzzzzzzzzzzzzzzzz)
      printf(zzzzzzzzzzzzzzzzzzzzzzzzzz,zzzzzzzz,zzzzzzzzzzzzzz);
    else
      printf(zzzzzzzzzzzzzzzzzzzzzzzzzzz,zzzzzzzz);
    zzzzzzzz = zzzz(zzzzzzzzzzzzzzzzzzzzzzzzz);
  }
  printf("それではプログラムを終了します\n");
  }
int zzz(int *zzzzz, int zzzzzzzzzzzzzzz, int zzzzzzzz){
  int zzzzzzzzzzzz;
  for(zzzzzzzzzzzz = 1; zzzzzzzzzzzz <= zzzzzzzzzzzzzzz; zzzzzzzzzzzz++){
    if(*zzzzz++ == zzzzzzzz)
      return (zzzzzzzzzzzz);
  }
  return(zzzzzzzzzzzzzzzzzzzzzzzzzzzz);
  }
int zzzz(char *zzzzzzzzzzzzzzzz,...){
  char    zzzzzzzzzzzzzzzzz[zz];
  va_list   zzzzzzzzzzzzzzzzzz;
  int     zzzzzzz;
  va_start(zzzzzzzzzzzzzzzzzz,zzzzzzzzzzzzzzzz);
  vprintf(zzzzzzzzzzzzzzzz,zzzzzzzzzzzzzzzzzz);
  fgets(zzzzzzzzzzzzzzzzz,zz,stdin);
  zzzzzzz = atoi(zzzzzzzzzzzzzzzzz);
  while(zzzzzzz < zzzzzzzzzzzzzzzzzzzzzzzzzzzz){
    printf ("");
    vprintf(zzzzzzzzzzzzzzzz,zzzzzzzzzzzzzzzzzz);
    fgets(zzzzzzzzzzzzzzzzz,zz,stdin);
    zzzzzzz = atoi(zzzzzzzzzzzzzzzzz);
  }
  va_end(zzzzzzzzzzzzzzzzzz);
  return(zzzzzzz);
}

36 :_:01/09/13 23:40
>>35
ワラタ
typedef int zzzzzzzzzz;
typedef char zzzzzzzzzzzzzzzzzzzzzzz;
も付け加えたら?

37 :誰がネカマだ、ゴラッ:01/09/13 23:53
トシひゃん萌え。
わたしも一緒に遊びたかったのにぃー。
仏ひゃん、いけずぅー。

もう、しらない。プンプンっ。

38 :鍋田保:01/09/13 23:59
http://www69.tcup.com/6913/tamo2.html

ぼくも作ったんですけど。

39 :デフォルトの名無しさん:01/09/14 00:04
shige はどこいった?
こんなときのためのRubyぢゃないのか?藁

40 :デフォルトの名無しさん:01/09/14 00:05
>>38
アンタのソースセンスのかけらも無い

41 :デフォルトの名無しさん:01/09/14 00:14
キーボードから順次入力された正の整数を、 0が入力されるまで、配列に順番に格納し、次に、ある1つの正の整数を与えると、それが何番目に入力された整数であるかを表示するプログラムを作成せよ。
例えば、次のような実行例となるようにせよ。


数字(1)を入力してください 43
数字(2)を入力してください 25
数字(3)を入力してください 7
数字(4)を入力してください 123
数字(5)を入力してください 0
見つけたい数字を入力してください 7
7は3番目に見つかりました
見つけたい数字を入力してください sage
Segmentation fault

42 :鍋田保:01/09/14 00:15
仏のプログラムはあれじゃだめ。
エラー処理も何もないじゃん。
たとえば、数字以外の文字打ってみて。
xx とかね。
どうなると思う?

43 :デフォルトの名無しさん:01/09/14 00:18
>>42
長期的には日本の将来のために、短期的にはネタのためにマジレスするな。
しかも微妙に反論できる立場かよみたいなソースだし。

44 :デフォルトの名無しさん:01/09/14 00:25
>>40
動くプログラムが美しいんだよ。
口ではいろいろ言えるけど動かないプログラムはだめなんだ。
まあ、もっと良いプログラムを作ってからいうべきだね。
どんな場合にも正しく動く。これが重要。
まず、仏のプログラムは fflushやsetbuf(stdout,NULL);が無いから
環境によっては動作しない。
Cでは改行がくるまで表示するかどうかはわからない。
改行なしで表示する環境もあればしない環境もある。
scanfはいろいろと問題が多いからfgetsを使うのが無難。
getsではなくfgetsなのがよい。
配列は大きめにとればいいというものではない。
ちゃんと配列を越えないかどうかチェックをいれないといけない。
どんな場合でもちゃんと動くプログラムが一番よい。
それが前提。
悪いが仏のプログラムは問題だらけだ。
確かに短くてきれいだが、ああいう作り方では人命に関わるプログラムは
作れない。
機械制御かなんかだと作業者がケガするよ。
別に38のプログラムが最高だとは言わない。
もっと短くできると思う。
しかし、問題が少ないのは事実だ。

45 :デフォルトの名無しさん:01/09/14 00:42
先生
入力が記憶が機械の限界を超えた時はどうするのですか

46 :_:01/09/14 01:12
>>44
コピペ用に貰っとこ。

47 :デフォルトの名無しさん:01/09/14 01:11
>>36
禿同。printfやreturnもキボンヌ。ほんとにコンパイルしてみたら動いた(w

>>38
またまた禿同

>>44
問題多すぎ。あんたkitty?(w

48 :よく分からないな:01/09/14 01:16
#include <iostream.h>
#include <vector>
using namespace std;
void main(void){vector<int> v;int t,c=0;for(;cout<<"数字"<<c<<"番目の数を入力し
て欲しいな"<<endl&&cin>>t&&t;v.push_back(t),c++);for(;cout<<"探して欲しい数字い
れてほしいな"<<endl&&cin>>t&&t;(t=find(v.begin(),v.end(),t)-v.begin())?(cout<<t
+1<<"番目にあったな"<<endl):(cout<<"みつからないな"<<endl));}

49 :そして1はコテハン:01/09/14 01:41
1は終ってるよ。ホント
エネルギー工学部の実習問題?
なら、1のポテンシャルエネルギーは0だな!

50 :デフォルトの名無しさん:01/09/14 01:49
さむ。アムロの旦那もサム。

51 :デフォルトの名無しさん:01/09/14 01:54
さむ。しりあすなサム。

52 :40:01/09/14 02:03
>>44
...

53 :デフォルトの名無しさん:01/09/14 02:12
す・・・すきゃんえふっ!は改行コードをくっちゃうんだな!!!無限レープのなかでは使わないほうがいいっ!ってだれかいってたYO!!!!!!

54 :デフォルトの名無しさん:01/09/14 02:22
課題なら少しは自分で考えてから訊けよ。

55 :デフォルトの名無しさん:01/09/14 02:26
すげーつまらん展開だ。

56 :sage:01/09/14 02:32
この板ってほんとプログラムできるやついないよね。

57 :デフォルトの名無しさん:01/09/14 02:35
>>56
オマエモナー

58 :デフォルトの名無しさん:01/09/14 02:37
せめて正解はネタが出尽くしてからにしてくれよ。
マジレス(一応動くソース)の粗探しはつまらんよ。
もっとネタ解答見せてくれよ。

59 :デフォルトの名無しさん:01/09/14 02:40
ま、数値以外を入力すると暴走したり異常終了したり挙動を起こすプログラムは論外だ。

60 :デフォルトの名無しさん:01/09/14 02:49
つーかこんな低脳な問題、素直に解いても面白くないから
奇抜な方法で講師をギャフンと言わせろよ。
DirectInput使うとか。

61 :デフォルトの名無しさん:01/09/14 03:40
Application.Run();

62 :デフォルトの名無しさん:01/09/14 04:03

      / ⌒ ⌒\
      | ((从ハ从))  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      | | l l ||< クソスレダヨッ
      ハ 从'' ー''ノル  \__________
      (    ∧ )∧
      |  |/ / \ヽ
      |____) ∀  |)
   ◯/  ヽ ___ '
     |   | |
     |   | |
     |  | |
     |  |/
   / |  |
  l⌒ /|  |
  |  |  |  |
  ー  (__)

63 :デフォルトの名無しさん:01/09/14 04:08
宿題はコピーして終わりですか。ずいぶん合理的ですな。
アッハッハ。

64 ::01/09/14 09:06
正直、俺のソースは中途半端だったと思う。
スマヌ。

65 :デフォルトの名無しさん:01/09/14 09:33
>>64
気にすんなよ。

66 ::01/09/14 09:36
最初はネタっぽいソースを書こうとしていたのだが
書いてたら、普通な物が…

正直、すまなかった。

>>65
age るな。よけい気になる。

67 :65:01/09/14 09:54
>66
ごめんちゃい

68 :sageる:01/09/14 20:44
100 DIM a [100] : ' a means array.
110 c = 0 : ' c means counter
120 print "スウジ(" + c + ")ヲ ニュウリョクシテクダサイ"; : input b : ' b means buffer
130 if b <> 0 and c < 100 then c = c + 1 : a[c] = b : goto 120
140 input "ミツケタイスウジヲニュウリョクシテクダサイ", f : ' f means found.
150 if f = 0 then print "ソレデハプログラムヲシュウリョウシマス。" : end
160 i = 0 : ' i means iterator
170 if i = c then print f + "ハミツカリマセンデシタ。" : goto 140
180 i = i + 1
190 if a[i] = f then print f + "ハ" + i + "バンメニミツカリマシタ。" : goto 140
200 goto 170


n88-Basic って配列の添え字が0だとエラーだったりしたかなー?とか思ってこんな感じ。
ループの扱いもよく覚えてなかったんで goto で処理。

69 :デフォルトの名無しさん:01/09/14 20:48
26,38,48=偽善者

70 :35:01/09/15 03:03
>>69
え、俺忘れてない???(泣)



・・・なーんてね(w

71 :69:01/09/15 04:20
ごめんなさい!!(泣)

・・・ネタにしか見えないっしょ(w

72 :鍋田保:01/09/15 22:37
仏のプログラムを数値以外の入力問題部分を追加すると以下のようになる。
仏のプログラムの実行結果は、同じ値を複数入力していも、最初に入力したものしか
見つけてくれない仕様(バグ?)になっている。
問題は正数の入力とあるが負数を入力した場合の処理はない。
関係ないが一級編集技術者である私のホームページはここだ。
http://www69.tcup.com/6913/tamo2.html


#include<stdio.h>
int h[100000],i,j,x=1;
main()
{
char bb[1001];
int a;
for(i=0;x;i++){
printf("数字(%d)を入力してください ",i+1);
a = scanf("%d",&x);
if(a == NULL){
fgets(bb,1000,stdin);
--i;
continue;
}
h[i]=x;
}
while(1){
printf("見つけたい数字を入力してください ");
a = scanf("%d",&x);
if(a == NULL){
fgets(bb,1000,stdin);
continue;
}
if(x==0)
break;
for(j=0;j<=i;j++)
if(h[j]==x)
break;
if(j<=i)
printf("%dは%d番目に見つかりました\n",x,j+1);
else
printf("%dは見つかりませんでした\n",x);
}
printf("それではプログラムを終了します");
}

73 :デフォルトの名無しさん:01/09/15 22:44
>>72
だから、アンタのソースはセンスナインだってばさ。

74 :デフォルトの名無しさん:01/09/15 23:05
>1
#ふん、これできるの?#

アセンブラをマシン語直打ちで作る
そのアセンブラであえてVB ( not .net )を作る。
そのVBでVCを作る
そのVCでRubyコンパイラを作る。
そのRubyでperlコンパイラを作る
そのPerlでJavaネイティブコードコンパイラを作る。
そして、そのJavaで VC++.NET VB.NET ・・・ + CLR VM を作る

できたらすごいよなぁ・・・

75 :デフォルトの名無しさん:01/09/15 23:17
>>68
REMと'の前に:は不要
配列は0から
120行のprint文だけど、+でつなげられたっけ?あと;は不要っていうか
Syntax Error

76 :もう忘れた:01/09/16 00:28
>>68
配列は宣言でも使用時でも[]ではなく()だったと思われ。
あと、「文字 + 文字」は可能だが、「文字 + 数字」は不可。
「文字;数字」にすべし。

>>75
print ???の後に;をつけると改行コードを出力しなくなるはず。
だから、syntax errorにはならない。

と思われ。

77 :デフォルトの名無しさん:01/09/16 00:55
48でいいだろ、上限ないし、

78 :デフォルトの名無しさん:01/09/17 02:17
>>49
重力によるポテンシャルエネルギーは、0を最大にするのがふつーですが...

79 :デフォルトの名無しさん:01/10/17 03:08
ありがとう>>56
今までいろんなAA見てきたけど、今回初めてこのAA使うよ!!感激だ!
じゃあ言うよ?言っちゃうよ!?

  ∩_∩   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ´∀`)< オマエモナー
 (    )  \__________
 | | |
 (__)_)

いやったぁぁぁぁぁっっっ!!!!

80 :デフォルトの名無しさん:01/10/17 03:53
>>79
おめでとう。これでキミも立派な2ちゃんねらーだ!(WARA

81 :デフォルトの名無しさん:01/10/17 05:29
>>79-80のやりとり、少しワラタ。

82 :デフォルトの名無しさん:01/10/17 05:54
int h[100000],i,j,x=1;
main()
{
char bb[1001];
int a;

この数行見ただけで読む気がうせる

83 :突貫工事・・・:01/10/17 15:40
#include <stdio.h>

const unsigned int MAX_SIZE = 1000;
int search_number(int data[]);

int main(int argc, char **argv)
{
int index = 1, input;
unsigned int data[MAX_SIZE];

while (1)
{
printf("数字(%d)を入力してください ", index);
sscanf("%d", input);

if (input == 0)
search_number(data);

data[index++] = input;
}
return 0;
}

int search_number(int data[])
{
unsigned int found = 0, index, input;

printf("見つけたい数字を入力してください ");
sscanf("%d", input);

if (input == 0)
{
printf("それではプログラムを終了します\n");
exit(0);
}
for (index = 1; index < MAX_SIZE; index++)
{
if (data[i] == input)
{
printf("%dは%d番目に見つかりました\n", input, index);
found++;
}
if (found == 0)
printf("%dは見つかりませんでした\n", input);
}
return 0;
}

84 :いかん!字下げが・・・:01/10/17 15:43
#include <stdio.h>

const unsigned int MAX_SIZE = 1000;
int search_number(int data[]);

int main(int argc, char **argv)
{
    int index = 1, input;
    unsigned int data[MAX_SIZE];

    while (1)
    {
        printf("数字(%d)を入力してください ", index);
        sscanf("%d", input);

        if (input == 0)
            search_number(data);

        data[index++] = input;
    }
    return 0;
}

int search_number(int data[])
{
    unsigned int found = 0, index, input;

    printf("見つけたい数字を入力してください ");
    sscanf("%d", input);

    if (input == 0)
    {
        printf("それではプログラムを終了します\n");
        exit(0);
    }
    for (index = 1; index < MAX_SIZE; index++)
    {
        if (data[i] == input)
        {
            printf("%dは%d番目に見つかりました\n", input, index);
            found++;
        }
        if (found == 0)
        printf("%dは見つかりませんでした\n", input);
    }
    return 0;
}

85 :さっそくミスってるよ・・・(泣):01/10/17 15:46
#include <stdio.h>

const unsigned int MAX_SIZE = 1000;
int search_number(int data[]);

int main(int argc, char **argv)
{
    int index = 1, input;
    unsigned int data[MAX_SIZE];

    while (1)
    {
        printf("数字(%d)を入力してください ", index);
        sscanf("%d", input);

        if (input == 0)
        {
            search_number(data);
            continue;
        }
        data[index++] = input;
    }
    return 0;
}

int search_number(int data[])
{
    unsigned int found = 0, index, input;

    printf("見つけたい数字を入力してください ");
    sscanf("%d", input);

    if (input == 0)
    {
        printf("それではプログラムを終了します\n");
        exit(0);
    }
    for (index = 1; index < MAX_SIZE; index++)
    {
        if (data[i] == input)
        {
            printf("%dは%d番目に見つかりました\n", input, index);
            found++;
        }
        if (found == 0)
        printf("%dは見つかりませんでした\n", input);
    }
    return 0;
}

86 :デフォルトの名無しさん:01/10/17 15:52
$counter=0;
while(1){
 $counter++;
 print "文字列($counter番目)を入力すれ ";
 chop($s = <STDIN>);
 last if ($s == "0");
 $pos{$s}=$counter;
}
while(1){
 print "見つけたい文字列を入力すれ ";
 chop($s = <STDIN>);
 last if ($s == "0");
 if ($pos{$s}){
  print "「$s」は$pos{$s}番目に\n";
 }else{
  print "「$s」見つからない\n";
 }
}

87 :もうあかん・・・逝ってくる:01/10/17 15:52
#include <stdio.h>
#include <stdlib.h>

const unsigned int MAX_SIZE = 1000;
int search_number(int data[]);

int main(int argc, char **argv)
{
    int index = 1, input;
    unsigned int data[MAX_SIZE];

    while (1)
    {
        printf("数字(%d)を入力してください ", index);
        sscanf("%d", input);

        if (input == 0)
        {
            search_number(data);
            continue;
        }
        data[index++] = input;
    }
    return 0;
}

int search_number(int data[])
{
    unsigned int found = 0, index, input;

    printf("見つけたい数字を入力してください ");
    sscanf("%d", input);

    if (input == 0)
    {
        printf("それではプログラムを終了します\n");
        exit(0);
    }
    for (index = 1; index < MAX_SIZE; index++)
    {
        if (data[index] == input)
        {
            printf("%dは%d番目に見つかりました\n", input, index);
            found++;
        }
    }
    if (found == 0)
        printf("%dは見つかりませんでした\n", input);

    return 0;
}

88 :デフォルトの名無しさん:01/10/17 15:55
>>83
なにげにバグってるところが(・∀・)イイ!

89 :むふふのふ:01/10/17 16:09
「xは見つかりませんでした」と表示する仕様に、
「xはxx個見つかりました」という仕様を加えると、
search_number()の終わりのほうはこうなるにょ。

if (found == 0)
    printf("%dは見つかりませんでした\n", input);
else
    printf("%dは%d個見つかりました\n", input, found);

90 :デフォルトの名無しさん:01/10/17 16:16
using System;

namespace search_number
{
    class MainClass
    {
        const uint MAX_SIZE = 1000;
        static void Main(string[] args)
        {
            int index = 1, input;
            int[] data = new int[MAX_SIZE];

            while (true)
            {
                try
                {
                    Console.Write("数字{0}を入力してください ", index);
                    input = Convert.ToInt32(Console.ReadLine());

                    if (input == 0)
                    {
                        search_number(data);
                        return;
                    }

                    data[index++] = input;
                }
                catch (Exception e)
                {
                    Console.WriteLine("エラー : {0}", e.Message);
                }
            }
        }

91 :続き:01/10/17 16:17
        static void search_number(int[] data)
        {
            int input;
            bool found = false;

            while (true)
            {
                try
                {
                    Console.Write("見つけたい数字を入力してください ");
                    input = Convert.ToInt32(Console.ReadLine());

                    if (input == 0)
                    {
                        Console.WriteLine("それではプログラムを終了します");
                        return;
                    }

92 :続き:01/10/17 16:18
                    found = false;
                    for (uint index = 1; index < MAX_SIZE; index++)
                    {
                        if (data[index] == input)
                        {
                            Console.WriteLine("{0}は{1}番目に見つかりました", input, index);
                            found = true;
                        }
                    }

                    if (!found)
                        Console.WriteLine("{0}は見つかりませんでした", input);
                }
                catch (Exception e)
                {
                    Console.WriteLine("エラー : {0}", e.Message);
                }

            }
        }
    }
}

93 :デフォルトの名無しさん:01/10/19 14:03
ここの話題自体にはまったく興味ありませんが、
ただタイトルの「ふん、」だけが妙に気になって仕方ありません。

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

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

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