宿題みてあげるっ
■ このスレッドは過去ログ倉庫に格納されています
0001怜
NGNGかわいい弟クンのために、宿題みてあげるね。
でも、丸投げとかしたらおこっちゃうよ。まずは自分で考えてね。
前スレ
http://pc.2ch.net/test/read.cgi/tech/1003838158/
0002怜
NGNG自分でインターネットで検索した方が早いかな。
http://www.google.co.jp/
で検索してから質問してね。
0003デフォルトの名無しさん
NGNGint a=1;
a=a+-+a;
aの値は、環境依存?
0004デフォルトの名無しさん
NGNG別に環境依存でもないんじゃ?
0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNGReading specs from /usr/local/gnu/lib/gcc-lib/sparc-sun-solaris2.8/2.95.2/specs
gcc version 2.95.2 19991024 (release)
0
0007デフォルトの名無しさん
NGNG0008デフォルトの名無しさん
NGNG0009怜
NGNGうーんとね、
単項の+,-は二項形高い優先順位を持つのね。で、右から左に結合するの。
だから、a=a+-+aっていうのは
→a=a+-(+a)→a=a+(-(+a)) っていうふうに解釈される。
だから、>>4さんが言ってくれてるように、環境依存ではないと思うよ。
0010怜
NGNG>二項形高い優先順位
「二項形式より高い優先順位」ね。二項形式っていうのはa+bみたいなやつ。
単項は-aとかいう感じのね。
0011デフォルトの名無しさん
NGNG0012怜
NGNGその仕様って獲物クラスについてだけだよね?
ゲームを管理するクラスとか、ハンタークラスについて
スケルトンはもらってない?
メソッドについてはいくらでも追加していいと思うよ。
でも一応privateで宣言しようね。
0013933(生徒)
NGNGデバッグは一応終わりました…
ダミークラスつくるのはちょっと方針上あきらめました。
コンパイルが通ったやつです。
↓
import java.util.*;
public class Game{
private int N; /* nxn の正方格子の定義 */
private int x,y; /* 正方格子のX座標 Y座標 */
private int see; /* 見える範囲のマス数 */
/* 5方向の箱を作ります */
int[] mode_dir=new int[5];
/* ハンターを監視するための箱を作ります */
int[][][] Hunt=new int[N+2][N+2][3];
Hunter[] h=new Hunter[3];
0014933(生徒)
NGNG@param i 獲物のx座標
@param j 獲物のy座標
*/
public Game(int i,int j,int n){
x = i;
y = j;
N = n;
for(int e = 0;e <= 4;e++){
mode_dir[e] = e;
}
for(int a = 0;a <= N+1;a++){
for(int b = 0;b <= N+1;b++){
for(int c = 0;c <= 2;c++){
Hunt[a][b][c] = 0;
}
}
}
}
/** nxn の正方格子数を設定します
@param n nxn の正方格子数
*/
public void setN(int n){
N = n;
}
/** 正方格子を設定します。
@param x 正方格子のX方向
@param y 正方格子のY方向
*/
public void setXY(int i,int j){
x = i;
y = j;
}
/** 見える範囲のマス数を設定します
@param see 見える範囲のマス数
*/
public void setSee(int s){
see = s;
}
/** X座標を取得します
@return X座標
*/
public int getX(){
return x;
}
/** Y座標を取得します
@return Y座標
*/
public int getY(){
return y;
}
0015933(生徒)
NGNG@param h1,h2,h3 ハンターの位置情報
*/
/* ハンターの位置情報を箱に確保します */
/* 視界の中にハンターがいればフラグを立てます */
public void escapeGame(Hunter h1,Hunter h2,Hunter h3){
h[0] = h1;
h[1] = h2;
h[2] = h3;
int flag;
flag = 0; /* フラグの有無 */
for(int a = 0;a <= N+1;a++){
for(int b = 0;b <= N+1;b++){
for(int c = 0;c <= 2;c++){
if((0 < (x - h[c].getX())) && ((x - h[c].getX()) <= ((see-1)/2)) && (y == h[c].getY())){
Hunt[a][b][c] = h[c].getX() - x;
flag += 1;
}else if((0 < (y - h[c].getY())) && ((y - h[c].getY()) <= ((see-1)/2)) && (x == h[c].getX())){
Hunt[a][b][c] = h[c].getY() - y;
flag += 1;
}else if((0 < (h[c].getX() - x)) && ((h[c].getX() - x) <= ((see-1)/2)) && (y == h[c].getY())){
Hunt[a][b][c] = h[c].getX() - x;
flag += 1;
}else if((0 < (h[c].getY() - y)) && ((h[c].getY() - y) <= ((see-1)/2)) && (x == h[c].getX())){
Hunt[a][b][c] = h[c].getY() - y;
flag += 1;
}
}
}
}
0016933(生徒)
NGNG/* 壁があります */
/* 壁がない方向の箱を拾って壁がある方向の箱は控除します */
if(x == 1){
mode_dir[0] = 5;
/* これ以上上に行けません(上への進路無効化)*/
}else if(y == 1){
mode_dir[1] = 5;
/* これ以上左に行けません(左への進路無効化)*/
}else if(x == N){
mode_dir[2] = 5;
/* これ以上下に行けません(下への進路無効化)*/
}else if(y == N){
mode_dir[3] = 5;
/* これ以上右に行けません(右への進路無効化)*/
}else{}
/* ハンターの位置が視界内・視界外の判定をします */
if(flag == 0){
for(int g = 0;g <= 100;g++){
int modeA;
int modeB;
int modeC;
modeA = (int)(Math.random() * 5 );
modeB = (int)(Math.random() * 5 );
modeC = mode_dir[modeA];
mode_dir[modeA] = mode_dir[modeB];
mode_dir[modeB] = modeC;
/* mode_dirの内容をシャッフルすることで入れ替えます */
}
}
0017933(生徒)
NGNGfor (int c = 0;c <= 2;c++){
if(Hunt[h[c].getX()][y][c] <= 1){
mode_dir[0]= 5;
}else if(Hunt[x][h[c].getY()][c] <= 1){
mode_dir[1]= 5;
}else if(Hunt[h[c].getX()][y][c] >= 1){
mode_dir[2]= 5;
}else if(Hunt[x][h[c].getY()][c] >= 1){
mode_dir[3]= 5;
}else{}
}
/* 〜ハンターがいない方向をランダムに選びそちらへ進みます*/
/* 視界にハンターがいますが近いハンターから遠ざかる方に動きます */
/* 移動可能な方向に限定してランダムに動きます */
}else if(flag >= 2 ){
for (int c = 0;c <= 2;c++){
if(Hunt[h[c].getX()][y][c] <= 2){
mode_dir[0] = 0;
}else if(Hunt[x][h[c].getY()][c] <= 2){
mode_dir[1] = 1;
}else if(Hunt[h[c].getX()][y][c] >= 2){
mode_dir[2] = 2;
}else if(Hunt[x][h[c].getY()][c] >= 2){
mode_dir[3] = 3;
}else {
mode_dir[4] = 4;
}
}
}
/* 塞がれて動けなければその場にとどまります */
if(mode_dir[0] == 5
&& mode_dir[1] == 5
&& mode_dir[2] == 5
&& mode_dir[3] == 5){
mode_dir[4] = 4;
}
0018933(生徒)
NGNGprivate int p = 0;
private int r = 0;
private boolean breakflag = true;
do{
r = (int)(Math.random()*100);
p = (r)%5;
switch(mode_dir[p]){
case 0:/* 上に動く */
y -= 1;
breakflag = false;
break;
case 1:/* 左に動く */
x -= 1;
breakflag = false;
break;
case 2:/* 下に動く */
y += 1;
breakflag = false;
break;
case 3:/* 右に動く */
x += 1;
breakflag = false;
break;
case 4:/* その場にとどまる */
breakflag = false;
break;
case 5:/* 抽選しなおす */
p++;
break;
}
}while(breakflag);
}
}
0019933(生徒)
NGNGこっからやっといろいろいじくれます…
まだコンパイルが通っただけですが…。
0020怜
NGNGここからが本当のデバッグの開始だからがんばっていこうね。
まず、mode_dirとHuntをコンストラクタの中で初期化してるけど、
これは、escapeGameを呼び出すたびに初期化する必要があるのよね。
まず、そこは直さないとね。
Hunt[a][b][c] = h[c].getX() - x;
ってやってるから、Hunt[a][b][c]にはマイナスが入ることもあるわよね?
だから、flag == 1のときに、
if(Hunt[h[c].getX()][y][c] <= 1){
}else if(Hunt[h[c].getX()][y][c] >= 1){
みたいな、判定をするのは、何か違う気がするの。0より大きい、もしくは小さい
でいいんじゃないの?
それにマイナスになる事考えると、
flag >= 2のときの、
if(Hunt[h[c].getX()][y][c] <= 2){
とかいうのも明らかにおかしいのよね。
Math.abs(x)とやれば、xの絶対値が得られるからこれも上手く利用するといいか
も。
まあ、とりあえず目についたのはこれくらいかな。
これくらいといっても、基本的な部分で問題があるから、修正すると他にも色々
間違えそうだけど。
プログラムなんて、デバッグをどれだけ頑張れるかで力がついていくものだから、
頑張ってね。
0021933(生徒)
NGNGescapeGame の中で初期化させろということですか?
移動すればいいんですよね?了解です。
マイナスをつけているのは左←→右にいる、上←→下にいる、っていうのを
1回でわかるようにするためにつけています。
だから距離だけじゃなくて方向も導入した方がいいと思いまして。
ただ、それだと確かに全体で筋が通らないのも事実で…
これをどうしようかと今考えてます。
それと、自分がageるべきなんでしょうか?やっぱ。
0022933(生徒)
NGNGなんでじゃ〜!!
0023怜
NGNG>マイナスをつけているのは左←→右にいる、上←→下にいる、っていうのを
>1回でわかるようにするためにつけています。
その意図はわかるんだけど、だったらまず、flag == 1のとき、
if(Hunt[h[c].getX()][y][c] <= 1)
とかじゃなく、
if(Hunt[h[c].getX()][y][c] < 0)
とかすべきよね、ってこと。
あと、flag == 2のときも、
if(Hunt[h[c].getX()][y][c] <= 2){
じゃなくて、
if(Hunt[h[c].getX()][y][c] <= -2){
とか。
あと、publicとかprivateとかつけるのはクラスのメンバ変数(クラスのメソッド
の外で定義されて、クラス全体で使う変数のことね)だけで、メソッドの中で定義
される変数にはつけないものなの。
publicとかprivateとかの意味はわかる?
0024933(生徒)
NGNG>>18 の
private int p = 0;
private int r = 0;
private boolean breakflag = true;
はうそです…
自分がここにコピペする時つけてもいいだろうと思ってたのでつけましたが
コンパイル通すと叱られました…
これらと flag は escapeGame より上のクラスで
private 指定しないといけないものなのですか?
というより、こういうことするのはおせっかいですかね?
0025933(生徒)
NGNGpublic や private の意味とかはわかります。
語句の意味は。
だけど、そのプログラム的な扱い方なんかがホントわかってないんです。
言われて「あ、そっか…」と思ってます。
クラスのメンバ変数、っていう考え方があって
その上で「これからクラス内でこの変数を使いますよ〜」っていう宣言は
クラスより上で指定されなければいけないってことですか?
0026933(生徒)
NGNGprivate int p = 0;
private int r = 0;
private boolean breakflag = true;
っていうのは private 外すとひょっとしたら class Game 外の他の値を
参照してしまう危険があるわけですよね?
だけど escapeGame 内で指定するのは間違ってるってことですよね。
0027怜
NGNGprivateをつけると、クラスの外部から参照される事がなくなるとか、
publicをつけると、クラスの外部からも参照、書き換えができるように
なるとかそういうものなの。
クラス全体で使うものはメソッド(関数)の中ではなくて、
public class ●●{
の直下で、宣言しないといけないのね。
0028933(生徒)
NGNGおかしいってことでしょうか?
一応 int p , int r , boolean breakflag , int flag
全て最初のクラスの下に private をつけて宣言しなおして
コンパイル正しました。
p = 0 ; , r = 0 ; , breakflag = true ; , flag = 0 ; は
全てそのままにしてあります。
こういう処理の方がいい、ということですよね?
0029933(生徒)
NGNGNの大きさ、seeの範囲、3人のハンター及び獲物の位置情報などを
入力して実際に動作確認をしてみたいのですが、
どの場所に main を置くのが正しいのか
または完全に独立させてメイン文書いたほうがいいのか
よくわかってません。
オブジェクト思考がなんたるかに沿いながら解説していただけると
非常に助かります。
(ホントなんでおれ講義出なかったんだよ…)
0030933(生徒)
NGNGint[] mode_dir=new int[5];
int[][][] Hunt=new int[N+2][N+2][3];
Hunter[] h=new Hunter[3];
の前にも private をつけました。
現在の仕様:
↓
private int N; /* nxn の正方格子の定義 */
private int x,y; /* 正方格子のX座標 Y座標 */
private int see; /* 見える範囲のマス数 */
private int flag;
private int p;
private int r;
private boolean breakflag;
private int[] mode_dir=new int[5];
private int[][][] Hunt=new int[N+2][N+2][3];
private Hunter[] h=new Hunter[3];
public Game(int i,int j,int n){
x = i;
y = j;
N = n;
}
public void setN(int n){
N = n;
}
public void setXY(int i,int j){
x = i;
y = j;
}
public void setSee(int s){
see = s;
}
public int getX(){
return x;
}
public int getY(){
return y;
}
0031デフォルトの名無しさん
NGNGこの933ってのは何人もいるのか?
0032デフォルトの名無しさん
NGNG↑これ書いたの誰だよ。
0033933(生徒)
NGNG自分だけです。
>>31
0034デフォルトの名無しさん
NGNG2001 12/10 12:28
えむえす
誰かつぎの問題のプログラムを制作してください。お願いします
問題1
n個の中から、r個を選ぶ組み合わせの数nCrををもとめる再帰呼び出しを使った
プログラムを作成せよ。ここでnCrには、次の関係式が成り立つ。
nCr=n-1Cr+n-1Cr-1
また、常に、nC0=1,nCn=1が成り立つ。
0035味噌醤油醸造株式会社
NGNGint C(int n, int r)
{
return C(n-1,r)+C(n,r+1);
}
int main()
{
printf("%d\n", C(-100, -10));
return 0;
}
0036デフォルトの名無しさん
NGNG0037怜
NGNGテストするならダミークラスをつくらなくちゃ。
少なくとも、Hunterと、ゲーム進行を管理するクラスが必要。
ゲーム管理だからGameManagerとか名前付けたいんだけど、
獲物にGameなんてつけてるからそれじゃ解りにくくなっちゃうわね。
私なら獲物じゃなくて逃亡者(Runaway)とか命名するんだけどなぁ。
とにかくテスト用にこんな風にクラスを作ったらどうかな。
// 933君のGameクラス
class Game{
private int x;
private int y;
public void escapeGame(Hunter h1, Hunter h2, Hunter h3){
x = h1.getX() + h2.getX() + h3.getX();
y = h1.getY() + h2.getY() + h3.getY();
}
// デバッグ用データ出力メソッド
public void debugPrint(){
System.out.println("[Game] x = " + x);
System.out.println("[Game] y = " + y);
}
}
//テスト用Hunter
class Hunter{
private int x;
private int y;
public void setPos(int posx, int posy){
x = posx;
y = posy;
}
public int getX(){return x;}
public int getY(){return y;}
}
//テスト用Main
public class Main{
public static void main(String[] args){
Hunter hunter1 = new Hunter();
Hunter hunter2 = new Hunter();
Hunter hunter3 = new Hunter();
Game game = new Game();
hunter1.setPos(10,10); //hunterの位置をセット
hunter2.setPos(20,20); //hunterの位置をセット
hunter3.setPos(30,30); //hunterの位置をセット
game.escapeGame(hunter1,hunter2,hunter3);
game.debugPrint(); // escapeGameの結果出力
}
}
これをベースに、必要な処理を付け加えてね。
コンパイル、実行のやりかたはわかるわよね?
0038怜
NGNG933君はフィールドとローカル変数の違い、ちゃんと理解してる?
0039デフォルトの名無しさん
NGNG0040デフォルトの名無しさん
NGNGたしかに(W
0041怜
NGNGうそ教えちゃかわいそうよ。
int C(int n, int r)
{
if(r == 0 || r == n) return 1;
return C(n-1, r) + C(n, r-1);
}
int main()
{
printf("%d\n", C(-100, 10));
}
0042怜
NGNG>非常に助かります。
とりあえず、本当にわかっていないっぽいので、簡単にオブジェクト指向について
説明するわね。ちょっと語弊ある言い方するかもしれないけど、感じをつかむという
意味でね。
オブジェクト指向っていうのは、簡単に言えばプログラムを部品化したいのね。
内部で何をしているかを気にせずに、ある機能を持つプログラムを使いたいと。
この場合獲物のクラスっていうのがあるわよね? この場合、獲物がどのような
事を考えて行動を決めるかっていうのは、ゲームを管理するクラスからは興味ない
の。単にこういう場合にどういう行動したか、その結果が欲しいだけなの。
だから、内部で色々分析するのに使った変数なんて、外部からは見たくないし、
また見せたくないのよね。だから、そういうのは全部privateで宣言するの。
それで、このGameクラスっていうのは、獲物そのものを表現してるのね。だから、
これ単独で使うことはないから、mainはここにはいれないものなの。
実際にどうするかっていうと、多分先生が用意するゲームを管理するクラスで
933クンが作ったGameクラスのインスタンスを作るの。インスタンスっていうのは、
なんていえばいいのかな。まあクラスに実体を持たせたものというか・・うーん。
その辺から説明しないといけないか。
今、獲物を表すクラスを作ったよね。でも、これは獲物の一般的な定義なわけね。
これに対し「獲物A」みたいなの作りたいの。だから、このGameクラスのインスタンス
っていうのを(まあ変数みたいな気分ね)作ることによって、「獲物A」ができるの。
何個もインスタンスを作ることで「獲物B」「獲物C」、とかも作れるわけね。
このときに、大切なのは、このクラスのメンバ変数っていうのは(ここでいうと
例えばNとかxとかy等のクラスの中で定義され、メソッドの外で定義されてるもの)、
「獲物A」「獲物B」「獲物C」それぞれ違う値をもっているの。だから、獲物Aに
逃げろっていえば、獲物Aのxとかyとかの値に従って、escapeGame()を実行すること
になるのよね。で、このメンバ変数っていうのは、「獲物A」とかが無くなるまで
保持されるの。でも、メソッドの中で定義された変数はそのメソッドが実行しおわって
しまうと消えてしまうわけ。
まあ、そのインスタンスを作って、それに「こういう状況だけど逃げろ」って感じ
でゲームを進めていくわけね。
・・・って、説明難しい。とりあえずオブジェクト指向については、少ししっかり書いて
あるページでもみてみてね。
0043933(生徒)
NGNG共同制作の友達と大学で夜を明かして完成に至りました。
奇跡のように動くので感動してます。
(プログラムソースは…希望者があれば貼ります)
ここの住人の方々にはスレ消費などの迷惑をかけてしまい申し訳ないです。
以後もまたここでつたない質問などして茶を濁すかもしれません。
オネエさんの説明も今になってようやくわかります。
他にも砕身してくださった方、ありがとうございました。
0044あ
NGNG0045デフォルトの名無しさん
NGNG0046
NGNG0047デフォルトの名無しさん
NGNG0048
NGNGWhile使うのはどうやって。。
素人なんでごめんなさい。
0049デフォルトの名無しさん
NGNG比べた後にフラグレジスターを見て条件付きジャンプ命令で飛ぶ。
0050デフォルトの名無しさん
NGNG万能機でも作るのか?
0051デフォルトの名無しさん
NGNG僕のかわりに書け
0052デフォルトの名無しさん
NGNG4年生はAちゃんという女の子一人しかいない小学校で,彼女は一生懸命ごんぎつねの感想文を書いた.
しかし,悲しいかなそれに答えてくれる同学年の子供は彼女の学校にはいないのである.
Aちゃんの感想文は先生の力によってホームページに載った.
それから暫くして日本中の学校から「感想文の感想」が送られてたのである.
いまでは「絵」あり「まんが」ありのとても充実した学習ページになっている.
彼女は一人ではなかったのである.
もちろんAちゃんの先生がコンピュータができるだけの人でなく,コンピュータの本来の使い方を知っていたということが最大のポイントであることは言うまでもない.
これもコンピュータがあればこそのことである.
0053
NGNG加算のチューリングマシンは
M+=(K2)^2LlTlB こんな感じになってました
0054デフォルトの名無しさん
NGNG0055デフォルトの名無しさん
NGNG0056デフォルトの名無しさん
NGNGその記号何語?
0057デフォルトの名無しさん
NGNG「人数を入力してその人数分の成績を入力すると
合計点、平均点、最高点、最低点が表示される
ようにせよ」という問題です。
0058デフォルトの名無しさん
NGNG0059
NGNGB ヘッドが見ている駒にBを書く
らしいですが・・・
0060デフォルトの名無しさん
NGNG0061デフォルトの名無しさん
NGNGforでもwhileでもそれだけじゃ無理だ。
○×は禁止。ならともかく。
0062Kusakabe Youichi
NGNG> C言語ですが(for文だけで)
> 「人数を入力してその人数分の成績を入力すると
> 合計点、平均点、最高点、最低点が表示される
> ようにせよ」という問題です。
変な課題出すひとですね。
でもまあ、そんな授業でも、聞いてなくて
こんなところで質問するのはかなりマヌケですが。
0064デフォルトの名無しさん
NGNG入力は分かるね。合計点は全部足せば良いし
平均点はそれを人数で割ればよい。
最高点は一番大きい数を更新すればよいし
最低点はその逆だ。何がわからん?
0065デフォルトの名無しさん
NGNG小一時間問いつめたい。
むしろ俺なら「whileを禁止する無意味さ」を論文にして回答として提出するね。
0066デフォルトの名無しさん
NGNG#include<limits.h>
main()
{
int nin,i;
int ten,max=INT_MIN,min=INT_MAX,sum=0;
float avel;
printf("人数いれろ >> ");
scanf("%d",&nin);
printf("---------------\n");
for(i=0;i<nin;i++){
printf("点数いれろ >> ");
scanf("%d",&ten);
if(ten>max) max = ten;
if(ten<min) min = ten;
sum += ten;
}
avel = (float)sum;
avel /= nin;
printf("---------------\n");
printf("合計点%d\n",sum);
printf("平均点%f\n",avel);
printf("最高点%d\n",max);
printf("最低点%d\n",min);
}
0067Kusakabe Youichi
NGNG> #include<stdio.h>
> #include<limits.h>
こうやって書くやつは例の入門書読んだのだろうか? :)
0068デフォルトの名無しさん
NGNG作ってわかるCプログラミング?
0070デフォルトの名無しさん
NGNGあっちこっちに書くな、鬱陶しいなあ
0071怜
NGNG丸投げはダメって言ったでしょ?
どこがわからないか言ってごらん。
1.e.πをどうしう式で表していいかわからない。
2.それをどうプログラムで表現していいかわからない。
2の場合、特にどのあたりで困っているか。
100桁っていう、doubleとかで扱えない桁数の処理かな?
0072デフォルトの名無しさん
NGNGバブルで昇順にするのなんですけど
整数のはできたけど小数が入っている場合が
よく分からないので
どこをかえればいいか教えてください。
0073Kusakabe Youichi
NGNG> ファイルから数値を読み取り
> バブルで昇順にするのなんですけど
> 整数のはできたけど小数が入っている場合が
> よく分からないので
> どこをかえればいいか教えてください。
小数が入っているとどうわからないのか、
整数のときはどう書いたのか、が書いてあれば答えてもらえるでしょうね。
0074デフォルトの名無しさん
NGNG変換の方のプログラムはできるんですが、
キーボードから5桁の2進数を入力してそれを配列に格納する方法がわかりません。
色々検索して似たようなものを見つけたはみつけたのですが、
ttp://robotics.me.es.osaka-u.ac.jp/~masutani/Jouki/Kyouzai/binary.html
atoiとかを使ってやるのかなと考えたのですが判りません。
ダレか教えてください。
0075デフォルトの名無しさん
NGNGfgets()
0076デフォルトの名無しさん
NGNG判らないなら、
if(strcmp(str,"00000") == 0) return "0";
if(strcmp(str,"00001") == 0) return "1";
if(strcmp(str,"00010") == 0) return "2";
とか並べればぁ?
0077デフォルトの名無しさん
NGNG変換方法はわかってるって言ってるじゃん。
0078デフォルトの名無しさん
NGNGmy $message2;
my $msg;
$message = param('input');
$message2 = param('input2');
$substract = 2001-$message2;
if($substract>1981)
{
$msg="20以下は駄目";
}
ここまでなんとかやったんですけど
40以下は、駄目って表示したい場合、どうやればいいんですか?
andみたいな奴ってあります?
0079デフォルトの名無しさん
NGNGmy $message;
my $message2;
my $msg;
$message = param('input');
$message2 = param('input2');
$substract = 2001-$message2;
if($substract>1981)
{
$msg="40以下は駄目";
}
0080電気科の人
NGNG#include <stdio.h>
main()
{
int a,b;
printf("やす君:消費税を計算できるもてもてやす君16歳だべ。\n");
printf("やす君:商品は何円っスか。\n");
scanf("%d",&a);
b=a*1.05+1;
printf("入力者:%d円です。\n",a);
printf("やす君:その商品は%d円になるぞ。\n",b);
}
0081電気科の人
NGNGすみません。
0082電気科の人
NGNG#include <stdio.h>
main()
{
int a,b;
printf("やす君:消費税を計算できるもてもてやす君16歳だべ。\n");
printf("やす君:商品は何円っスか。\n");
scanf("%d",&a);
b=a*1.05+1;
printf("入力者:%d円です。\n",a);
printf("やす君:その商品は%d円になるぞ。\n",b);
}
このプログラムだと
なんか900円くらいまでは大丈夫みたいなんですけど、
1000円以上になると値がおかしくなるんです。
なんでですか??
1をプラスしないと答えが合わないのはなぜですか??
(1000円以上だとこっちのほうは答えがあう)
誰か教えてください。
0083デフォルトの名無しさん
NGNG1を足す意味がわからない。
0084デフォルトの名無しさん
NGNGCの初心者HP逝って「型」を調べてみてね。
0085デフォルトの名無しさん
NGNGint型にしているのは小数点以下を切り捨てるためだと思うが。
0086デフォルトの名無しさん
NGNG・・・・・無駄だな。
0087デフォルトの名無しさん
NGNG0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNGgoto 85
0090とても親切な人
NGNG>1をプラスしないと答えが合わないのはなぜですか??
なぜ1をプラスすると答えが合うって言うんだい?
よし、仮に入力が1だったとしよう。
int(1 * 1.05 + 1) を計算すると答えは2だね。
で、キミの住む町というか妄想世界では1円の商品を購入
すると消費税1円が加算されて2円請求されるという事かい?
もしそうなら悪いことは言わない、早くその町というか
妄想世界から引越しなさい。
そうすれば、そのプログラムは b=a* 1.05; とするだけで
普通に答えが合うようになるぞ。
それとも「消費税を計算できるもてもてやす君16歳」
というのを忠実にシミュレートするプログラムだと
そうするしかないのかな?
0091デフォルトの名無しさん
NGNG0092デフォルトの名無しさん
NGNGなんか、あってるんだけど。どこがおかしいの?
0093デフォルトの名無しさん
NGNG取り合えず+1はやめれ 意味不明
全部floatでやって最後にintにキャストすりゃいいだろ
009492
NGNG1500→1575(+1無しで)
0095デフォルトの名無しさん
NGNG0を入力して見ろよ。
それでも合ってるって言うのかお前ってヤツは!!
009792
NGNG何がおかしいのか分からん。
小数点以下もちゃんとでないし。ちなみにVC++6。
0098デフォルトの名無しさん
NGNGまいりました。
0099デフォルトの名無しさん
NGNG質問の意図をはずしていると思われる。
まず元のソースを変更せずにコンパイルし、
900以下の数値を入力して得られる結果を「正しい」と思い、
1000以上の数値を入力して得られる結果が「おかしい」と思う
ところからスタートしなさい。
0101デフォルトの名無しさん
NGNG■ このスレッドは過去ログ倉庫に格納されています