宿題手伝います
■ このスレッドは過去ログ倉庫に格納されています
0001Rina
NGNG前スレ:http://pc3.2ch.net/test/read.cgi/tech/1026138039/
前スレより抜粋.
1 :かおる :02/07/08 23:20
こんにちは。えれなの妹のかおるです。
前スレは恭祐さんの「ほう、宿題とはな。」です。
http://pc.2ch.net/test/read.cgi/tech/1024592344/
それ以前の人たちは、>>2-10あたりにかかれるでしょう。
宿題とか手伝いますけど、以下の事項は守ってほしいです。
・マルチポストは厳禁です。
・キーワードが分かっているなら、http://www.google.co.jp を活用すること
・質問内容がちゃんと日本語になっていること
・言語名を入れること。
・自分の力で頑張ってみたことを伝えられる人。
・どこまでわかったのかを書くこと。
以上です。このスレだけのおつきあいですが、よろしくおながいします。
2 :デフォルトの名無しさん :02/07/08 23:21
手助けはするな、助言はしてやれ。
3 :かおる :02/07/08 23:22
登場人物&過去スレ 1/2
●お姉さん
あなたの宿題、お姉さんが答えます
http://piza.2ch.net/tech/kako/972/972032579.html
で登場。
●麻衣
お兄ちゃんの宿題、私が答えるよ
http://pc.2ch.net/tech/kako/982/982853418.html
で初登場。可愛い妹キャラ
●お兄ちゃん(名称不明)
宿題見てやるよ
http://pc.2ch.net/tech/kako/1003/10038/1003838158.html
で初登場。しかし、女性がいいという影の圧力により
1以外には登場せず。
●怜
宿題みてあげるっ
http://pc.2ch.net/test/read.cgi/tech/1007902384/l50
で初登場。お兄ちゃんの恋人。
結構親切に答えてくれる年上キャラ。
0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNG乙
対応が早いね。
0004Rina ◆tI333vNE
NGNG前スレ常駐してたわけではないので,
常連さんで気がついたリンクあったら書き足しておいてください.
0005デフォルトの名無しさん
NGNG前スレの内積、
if (n == 0) {
return 0.0;
}
↑これいらなくない?
0006Rina ◆tI333vNE
NGNGC/C++の宿題は専用スレがあるのでこちらへどうぞ.
http://pc3.2ch.net/test/read.cgi/tech/1021862587/l50
0007Rina ◆tI333vNE
NGNG0008デフォルトの名無しさん
NGNG0009おねがいします!
NGNG(問題)数を12個読み込む。それぞれが車の月間売り上げ数だとする。
売り上げが一番多かった月、売り上げが一番伸びた月を見つけて印刷する
プログラム(Hanbai)を書きなさい。というものです。おそらく配列を使う
らしいのですが。言語はjavaです。
言語はjavaです。
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNG多分日本人に理解しやすいように和訳してくれてるんだと思われ。
0012デフォルトの名無しさん
NGNG0013おねがいします!
NGNG自分でもよくわかりません。はあーー。
0014デフォルトの名無しさん
NGNG0015デフォルトの名無しさん
NGNGワラタ
0016デフォルトの名無しさん
NGNGどこがわからないんだ。(複数可)
1) 数の読み込み
2) 12個の読み込み
3) 売り上げの一番多かった月の見つけ方
4) 売り上げの一番伸びた月の見つけ方
5) 3) 4) の結果の印刷(標準出力への表示でいいのか?)の仕方
6) Javaのコンパイル、実行
7) Javaのソースの書き方
配列は1)2)で読み込んだ月間売り上げ数を保持するのに使用し、
それを3)4)で使う。
0017名無しさん@カラアゲうまうま
NGNG0018デフォルトの名無しさん
NGNG無論、1月は除外でしょ?って解釈は駄目なん?
0019名無しさん@カラアゲうまうま
NGNGつーことを明確にしてない問題が欠陥仕様。
0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNG0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNG0024Rina ◆tI333vNE
NGNGいっそ改行とっぱらって書き込もうか…。
0025デフォルトの名無しさん
NGNGいくつかのレスに分けたらよいのでは?
0026Rina ◆tI333vNE
NGNG//エラー処理は一切してない.
public class Hanbai {
/**
* 12ヶ月分のデータを読む.
*
* データフォーマットの指定がなかったので, 1行につき1月分の
* 売り上げが書き込まれたテキストファイルだと仮定.
*/
public static int[] readData(String dataFileName) {
BufferedReader in = null;
// 開ける
try {
FileReader fileReader =
new FileReader(dataFileName);
in = new BufferedReader(fileReader);
} catch (Exception e) {
e.printStackTrace();
System.out.println("も、もうだめぽ…");
System.exit(1);
}
// 読む
int[] result = new int[12];
for (int i = 0 ; i < result.length ; i++) {
try {
String tmp = in.readLine();
result[i] = Integer.parseInt(tmp);
} catch (Exception e) {
e.printStackTrace();
System.out.println("データファイルがなってねーよ, ハゲ");
System.exit(1);
}
}
// 閉じる
try {
in.close();
} catch (Exception e) {
// do nothing.
}
return result;
}
0027Rina ◆tI333vNE
NGNGpublic static void main(String[] args) {
int[] tmp = readData("datafile");
printMax(tmp);
printMaxDiff(tmp);
}
/**
* 最大売り上げの月を表示
*/
public static void printMax(int[] data) {
System.out.println("売り上げが最大なのは");
System.out.print(" ");
int max = data[0];
for (int i = 1 ; i < data.length ; i++) {
if (data[i] > max) {
max = data[i];
}
}
for (int i = 0 ; i < data.length ; i++) {
if (data[i] == max) {
System.out.print((i + 1) + "月 ");
}
}
System.out.println();
}
/**
* 差分が最大な月を求める.
*/
public static void printMaxDiff(int[] data) {
System.out.println("売り上げの伸びが最大なのは");
int maxDiff = data[1] - data[0];
for (int i = 1 ; i < data.length - 1 ; i++) {
int diff = data[i + 1] - data[i];
if ( diff > maxDiff) {
maxDiff = diff;
}
}
for (int i = 0 ; i < data.length - 1 ; i++) {
if ((data[i + 1] - data[i]) == maxDiff) {
System.out.println(" " + (i + 1) + "月 -> " + (i + 2) + "月");
}
}
}
}
0028デフォルトの名無しさん
NGNG0030デフォルトの名無しさん
NGNG0031おねがいします!
NGNGかなり助かりました。ちょっと感動。。。
0032Rina ◆tI333vNE
NGNG使った方がコードの見通しがいいと思ったんだけど.
0033デフォルトの名無しさん
NGNG最大値の候補だけ保持しとくとか?
0034デフォルトの名無しさん
NGNG売上の最大の月が複数あったらどうすんだ ? 結局配列が必要だよ。
0035Rina ◆tI333vNE
NGNGだよね…あせったよw
0036デフォルトの名無しさん
NGNG脱げ
0037Rina ◆tI333vNE
NGNG当方、ぶちゃいくなので止めといたほうがいいと思われ.
0038デフォルトの名無しさん
NGNGブス専もいるんだよ。この世には。
0039Rina ◆tI333vNE
NGNG0040デフォルトの名無しさん
NGNGCollections Framework を使えということではないか?
0041Rina@Nethack ◆tI333vNE
NGNG0042Rina ◆tI333vNE
NGNG0043おねがいします!
NGNGという問題です。何度もごめんなさい。
実行例はこんなかんじらしい。
日付けを2つ記入してください。
何年? 2002
何月? 7
何日? 27
何年? 2003
何月? 7
何日? 27
日数は365日です。
その年はうるう年かどうかを考えなきゃいけないし。。。
何月は何日あるのかということは、
int month[]=new int[12];
month[0]=31; month[1]=28; month[2]=31; month[3]=30;
month[4]=31; month[5]=30; month[6]=31; month[7]=31;
month[8]=30; month[9]=31; month[10]=30; month[11]=31;
でたぶん配列を使うのかなー。
こうしておくとX月Y日が1月1日から数えて何日目かは、
days=0;
for(i=0; i< x-1; i++)days= days+month[i];
days=days+y-1;
2002年の4月1日と2002年の7月27日の間に何日あるかは、2002年の
4月1日が1月1日からP日あって、2002年の7月27日がQ日あるとすると
Q-Pで求まると書いてあります。
0044デフォルトの名無しさん
NGNG素直にtimeに頼りなさい。
0045Rina ◆tI333vNE
NGNGhttp://java.sun.com/j2se/1.3/ja/docs/ja/api/java/util/Calendar.html
これで我慢してください。
0046▽・w・▽
NGNG0047デフォルトの名無しさん
NGNGそれだけ分かってれば書けるだろ?
何が分からないんだ?
0048おね
NGNG0049Rina ◆tI333vNE
NGNG// うるう年
}
0050デフォルトの名無しさん
NGNG0052デフォルトの名無しさん
NGNGこの程度のコードにコンパイル確認なんかいらんだろ。
0053Rina ◆tI333vNE
NGNGごめんなさい、emacsマンセーなんです。
0054デフォルトの名無しさん
NGNG0055デフォルトの名無しさん
NGNG俺なんかココでお試しコード書くときは、このテキストエリアに
直書きするぞ(藁
0056デフォルトの名無しさん
NGNG0057Rina ◆tI333vNE
NGNGこれいいね。五目並べまでついてるのは笑ったw
んじゃー早速コードを。
import java.util.*;
public class Nissuu {
public static void main(String[] args) {
hoge();
}
public abstract void hoge();
}
これを継承すれば問題ない。
・・・すんません、ネタです。ご飯食べたら書きますので
何卒ご容赦を。
0058デフォルトの名無しさん
NGNGint i;
if(&i) ;
この条件式が必ず真となることを証明せよ。
全然分かりません・・・
0059デフォルトの名無しさん
NGNG・auto変数はスタックに確保される
・そのアドレスは当然ながら、NULL(0)ではない
0060デフォルトの名無しさん
NGNG0はpointerとしてはヌルポインタを表すため、&iがヌルポインタで
ないことを判定しているわけです。ヌルポインタはいかなるオブジェクトも
指し示さないポインタであることが保証されているためiというオブジェクト
を指す&iとは絶対に一致しません。よってif(&i)は真となります。
0061デフォルトの名無しさん
NGNGつーか、こんなのを課題に出す意図がちょっと不明。
「C言語」そのものを学ぶことにどういう必要性があるんだろう?
0062デフォルトの名無しさん
NGNGどういう授業の課題かにもよるんじゃない?
0063Rina ◆tI333vNE
NGNGJava>gcc>.NET 71回
Java=gcc>.Net 6回
gcc>Java>.Net 23回
とりあえず100回やってみました。
じゃークライアントから電話掛かってきたのでお仕事いってきます。
…行きたくない。
0064Rina ◆tI333vNE
NGNG0065デフォルトの名無しさん
NGNGスレチガイ
0066デフォルトの名無しさん
NGNGこのスレ立てた香具師は回線で首吊って氏ね
0067デフォルトの名無しさん
NGNGさっきまでいたけどお仕事に出かけていったよ
0068デフォルトの名無しさん
NGNG>>1
ケコーンしてください。
0069デフォルトの名無しさん
NGNG0070デフォルトの名無しさん
NGNG0071デフォルトの名無しさん
NGNGじつは稲川亮二→R・inaとか?
0072デフォルトの名無しさん
NGNGいやーん
0073デフォルトの名無しさん
NGNG誰か助けてください。
「x円(x>=0)を1円玉、5円玉、10円玉、50円玉、100円玉、500円玉
で両替する方が何通りあるかを調べるプログラムを作成せよ。」
0円を両替する方法は1通り、マイナスの金額を両替する方法は0通りにしろ
とのヒントがついています。どなたかよろしくお願いします。
0074デフォルトの名無しさん
NGNG0075デフォルトの名無しさん
NGNG0076デフォルトの名無しさん
NGNGいいんじゃない...?
007773
NGNGずうずうしいこと言って本当にすいません。
0078デフォルトの名無しさん
NGNGそしたら、実装するよ。
0079こんなんどう?
NGNGint ryogae(int x, int coin, int d)
{
if( coin <= 1 ) return 1;
int c = 0;
int max_i = x / coin;
int i;
for(i = 0; i <= max_i; ++i)
{
c += ryogae(x - coin * i, coin / d, 7 - d);
}
return c;
}
int ryogaesousuu(int x)
{
if( x <= 0 ) return 1;
return ryogae(x, 500, 5);
}
int main()
{
int x = 0;
scanf("%d", &x);
printf("%d\n", ryogaesousuu(x));
return 0;
}
008079
NGNG008179
NGNG0082分かりやすさ優先
NGNG#include <stdio.h>
int exchange(int x){
int c=0,y1,y5,y10,y50,y100,y500;
if(c<0) return 0 ;
for(y500=0;y500<=x;y500+=500)
for(y100=0;y500+y100<=x;y100+=100)
for(y50=0;y500+y100+y50<=x;y50+=50)
for(y10=0;y500+y100+y50+y10<=x;y10+=10)
for(y5=0;y500+y100+y50+y10+y5<=x;y5+=5)
for(y1=0;y500+y100+y50+y10+y5+y1<=x;y1+=1)
if(y500+y100+y50+y10+y5+y1==x) c++;
return c ;
}
int main(){
int x;
printf("いくら?");scanf("%d",&x);
printf("%d通り\n",exchange(x)) ;
return 0 ;
}
0083デフォルトの名無しさん
NGNG#include <stdlib.h>
static int coins[] = { 1, 5, 10, 50, 100, 500 };
static int n_coins = sizeof(coins)/sizeof(coins[0]);
int countup( int x, int n ) {
if ( x == 0 ) return 1;
if ( x < 0 || n < 0 ) return 0;
return countup( x - coins[n], n ) + countup( x, n - 1 );
}
int main( int argc, char **argv ) {
int x, ans;
if ( argc != 2 )
return 1;
x = atoi( argv[1] );
if ( x < 0 )
ans = 0;
else
ans = countup( x, n_coins - 1 );
printf( "%d\n", ans );
return 0;
}
008479
NGNG#include <stdio.h>
int ryogae(int x, int coin, int d)
{
if( coin <= 1 ) return 1;
int c = 0;
int max_i = x / coin;
int i;
for(i = 0; i <= max_i; ++i) c += ryogae(x - coin * i, coin / d, 7 - d);
return c;
}
int ryogaesousuu(int x) { if( x < 0 ) return 0; return ryogae(x, 500, 5); }
int main()
{
int x = 0;
scanf("%d", &x);
printf("%d\n", ryogaesousuu(x));
return 0;
}
0085デフォルトの名無しさん
NGNGここに直で書いてたら、もう出てたという罠。
008683
NGNGans = 0;
else
これいらないやゴメン
008779
NGNGテストがてら、各xに対する組み合わせ数でもはりませんか?
008883
NGNGx = 10 => 4
x = 50 => 37
x = 100 => 159
x = 150 => 451
x = 500 => 19162
009082
NGNGx=50 => 37
x=100 => 159
x=150 => 451
x=500 => 19162
009282
NGNG> 7 - d
009483
NGNGx = 1000 => 248908
5000とか入れると止まっちゃうねえ。もっと速いアルゴリズムないのかな
009582
NGNG0097デフォルトの名無しさん
NGNGどっちが評価高いんでしょ。
cの宿題的には、>>79もありかもネ。
010179
NGNG■ このスレッドは過去ログ倉庫に格納されています