[
板情報
|
カテゴリランキング
]
したらばTOP
■掲示板に戻る■
全部
1-100
最新50
|
メール
| |
雑談スレ。
47
:
獅子
◆Zbmx8wQyk6
:2012/07/21(土) 23:27:44 ID:iLn8rFd60
ちょおっとまて
48
:
獅子
◆Zbmx8wQyk6
:2012/07/21(土) 23:37:51 ID:iLn8rFd60
ごめんトイレ行ってた、まさかの下痢(;´∀`)
今から見直す!
49
:
鎌の子deadly
:2012/07/21(土) 23:39:06 ID:YGo/gsAY0
53行目の「while(low<=high)」のせいで最後のelseに行ってないのかも…?
50
:
鎌の子deadly
:2012/07/21(土) 23:39:54 ID:YGo/gsAY0
下痢は…うん、僕も最近冷房でね…(お腹弱い
51
:
鎌の子deadly
:2012/07/21(土) 23:47:24 ID:YGo/gsAY0
きた!
52
:
獅子
◆Zbmx8wQyk6
:2012/07/21(土) 23:48:52 ID:iLn8rFd60
そっか。せっかくだし自分なりに書きなおして勉強しよっと(*´∀`*)
53
:
鎌の子deadly
:2012/07/21(土) 23:50:38 ID:YGo/gsAY0
while (scanf("%d",&x)==1){
position=-1;
low=0;
high=20;
while (low<=high){
mid=(low+high)/2;
if(a[mid]>x){
high=mid-1;
}
else if(a[mid]<x){
low=mid+1;
}
else{
position=mid;
break;
}
}
printf("x=%d ---> %d番目\n",x,position+1);
}
54
:
鎌の子deadly
:2012/07/21(土) 23:51:44 ID:YGo/gsAY0
獅子子ちゃんありがとね!
半端なく心強かった!
55
:
獅子
◆Zbmx8wQyk6
:2012/07/21(土) 23:52:02 ID:iLn8rFd60
いえ、実際何もしてないwww
56
:
鎌の子deadly
:2012/07/21(土) 23:54:57 ID:YGo/gsAY0
さて、これで晩御飯食べれるぞー!わぁーい!(
57
:
獅子
◆Zbmx8wQyk6
:2012/07/22(日) 01:48:04 ID:iLn8rFd60
#include <stdio.h>
#include <stdlib.h>
#ifdef _DEBUG
# define _DEBUG_PRINTF( str, ... ) printf( str, __VA_ARGS__ );
#else
# define _DEBUG_PRINTF( str, ... )
#endif
int getNumberPosition( int _target, int _array[], int _size )
{
int low = 0;
int high = _size;
if( _target < _array[0] || _target > _array[_size-1] ) return 0;
while(1)
{
int number = (low+high)/2;
int select = _array[ number ];
_DEBUG_PRINTF( "number->%3d: low->%3d: high->%3d: %3d\n",number, low, high, select );
if( select == _target ){
return ++number;
}
else if( select > _target ){
high = number;
if( high-1 == low && _array[number-1] != _target ) return 0;
}
else if( select < _target ){
low = number;
if( high == low+1 && _array[number-1] != _target ) return 0;
}
}
};
void outputArray( int _array[], int _size ){
for(int i = 0; i < _size; ++i )
{
printf("%d ",_array[i]);
}
printf("\n");
};
int main(void)
{
const int numMaxData = 100;
int numData = 0;
int targetNum;
int arrayData[numMaxData];
char filename[32];
FILE* fp;
printf("Please input file name.\nFile name is ");
scanf("%s",filename);
fp = fopen( filename, "r" );
{
if( !fp )
{
printf("** error:: Don't open file!\n");
return 1;
}
while( fscanf( fp, "%d", &arrayData[numData] ) != EOF ) ++ numData;
}
fclose(fp);
for(int i = 0; i < numData-1; ++i )
{
int l=i;
for (int k=i+1;k<numData;k++)
{
if (arrayData[l]>arrayData[k]) l=k;
}
int tmp = arrayData[l];
arrayData[l] = arrayData[i];
arrayData[i] = tmp;
}
outputArray( arrayData, numData );
while( scanf( "%d", &targetNum ) )
{
int result = getNumberPosition( targetNum, arrayData, numData );
result ?
printf("%d -> №%d\n", targetNum, result ):
printf("%d is not found.\n", targetNum );
}
printf("see you again...\n");
return 0;
}
58
:
獅子
◆Zbmx8wQyk6
:2012/07/22(日) 01:48:36 ID:iLn8rFd60
後々気づいたが純粋なCだとエラー出るかも。まぁbetterCだな。
59
:
アオ
:2012/09/23(日) 11:30:32 ID:kjkF29wA0
来ましたー
#include<stdio.h>
void main(void)
{
int hairetu[3][3];
int cur_x,cur_y;
int next_x,next_y;
int no;
int i,j;
/**hairetuの初期化**/
for(j=0;j<3;j++)
{
for(i=0;i<3;i++)
hairetu[j][i]=0;
}
/**1をhairetuに配置する**/
cur_x=1;
cur_y=0;
hairetu[cur_x][cur_y]=1;
/**2〜9をhairetuに配置する**/
for(no=2;no=10;no++)
{
next_x=cur_x+1;
next_y=cur_y-1;
if(next_x>2)/*右にはみ出した*/
next_x=0;
if(next_y<0)/*上にはみ出した*/
next_y=2;
if(hairetu[next_x][next_y]!=0)/*セルが埋まってる*/
{
next_x=cur_x;
next_y=cur_x+1;
}
if(next_y>2)/*下へはみ出した*/
next_y=0;
hairetu[next_x][next_y]=no;/*値をhairetuに配置する*/
/*繰り返し用の変数更新*/
cur_x=next_x;
cur_y=next_y;
}
/**hairetuの要素を表示する**/
for(i=0;i=8;i++)
{
for(j=0;j=8;j++)
printf("%3d",hairetu[i][j]);
printf("\n");
}
}
60
:
獅子
◆Zbmx8wQyk6
:2012/09/23(日) 11:47:38 ID:iLn8rFd60
Twitterでもかきましたがまとめます。
・「=演算子は代入演算子であり比較演算子でない」
これにより無限ループが起きています。等価比較演算子は「==」です。
・「ブロック構文の統一」
「{」「}」はつけるか付けないか統一してください。そもそもブロック構文があるのと無いのでは意味が違うことも合わせて調べてみるといいでしょう。
新着レスの表示
名前:
E-mail
(省略可)
:
※書き込む際の注意事項は
こちら
※画像アップローダーは
こちら
(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板