C#,C#の宿題片付けます。

■ このスレッドは過去ログ倉庫に格納されています
2007/12/14(金) 17:20:54
需要はないかもしれんが立ててみた。
306デフォルトの名無しさん
垢版 |
2009/02/02(月) 14:54:25
>>305
ちょっと太いけど僕です。
ttp://www.nicovideo.jp/watch/sm5121235
2009/02/02(月) 15:36:11
すばらしい腕前じゃないか
はいうp
http://www.dotup.org/uploda/www.dotup.org13580.zip.html
2009/02/02(月) 16:57:41
別人だろ
機材も違うし
2009/02/02(月) 17:14:17
>>306
盛大に噴いた
2009/02/02(月) 17:17:47
>>305,308
勘違いしているようだが、そのアドレスはJava宿題スレのうpロダだぞ
トップページに載ってる機材はうpロダ作った人の機材だろ

ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm
311デフォルトの名無しさん
垢版 |
2009/02/05(木) 10:50:14
ジョスカンデプレ
2009/02/05(木) 22:39:33
C#で質問があります。

C#で指定した2つの日時から間にある日数を求めるにはどうすれば良いでしょうか?
例えば、次の様に入力された場合には、

開始日
  2009-01-01 

終了日
  2009-01-05
と指定された場合に次の日時(文字列)を取得してArrayList型の配列に可能したいと思っています。

01/01 | 01/02 | 01/03 | 01/04 | 01/05

⇒5日(開始日・終了日も含む為)

2009/02/05(木) 23:09:43
>>312
どこまでが質問なのかよく分からないけど、とりあえず日数
DateTime d1 = new DateTime(2009, 1, 1);
DateTime d2 = new DateTime(2009, 1, 5);
TimeSpan span = d2.Subtract(d1);
Console.WriteLine(span.Days + 1);
2009/02/06(金) 00:46:17
> ArrayList型の配列
ほんとうに・・・?

// LINQつかってまう
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1 {
    class Program {
        static void Main(string[] args) {
            var listDay = eachDay(new DateTime(2009, 1, 1), new DateTime(2009, 1, 5)).ToList();
            listDay.ForEach(x => Console.WriteLine(x.ToShortDateString()));
            Console.WriteLine(listDay.Count);
            Console.Read();
        }
        private static IEnumerable<DateTime> eachDay(DateTime begin, DateTime end) {
            for (DateTime tmp = begin; tmp <= end; tmp = tmp.AddDays(1)) {
                yield return tmp;
            }
            yield break;
        }
    }
}
2009/02/06(金) 00:53:27
すみません、.Net1.1でお願いします。
2009/02/06(金) 01:26:00
1.1とか環境ねーです@@
2009/02/06(金) 01:46:09
>>313
ありがとうございます。
何とか出来そうです^^;

>>314
VS2005でLINQはNGです。
でも参考になりました。

2009/02/10(火) 23:32:04
>>317
VS2005で.net3.0使うエクステンションなら公開されてるよ
http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=5D61409E-1FA3-48CF-8023-E8F38E709BA6
2009/02/10(火) 23:59:58
>>318
C# 3.0 が入ってるのは .NET 3.5。
2009/02/13(金) 00:18:59
> C# 3.0 が入ってるのは .NET 3.5。
これは恥ずかしすぎるwww
2009/03/01(日) 19:13:50
VS2008
3行はいるテキストボックス(マルチライン)を作って
3行以上は入力させないようにしたいんですがいいいい方法ありませんか?

なにもしなければ3行目でENTER押すと4行目が表示され
1行目が見えなくなってという状況です・・・
2009/03/01(日) 19:22:38
Enter押された時に行数が3なら拒否すれば良い
2009/03/01(日) 19:26:30
コピペされたらどうする?
2009/03/01(日) 19:28:01
行数の判断をどうするかで悩んでいます。
改行がないと行数が増えたことにはなってないので

できればはなから3行固定する方法がないのかなと・・・
2009/03/01(日) 20:27:20
具体的には何を入力させたいの?
それ次第では他の方法があるんじゃない?
2009/03/01(日) 20:32:24
メモ的な内容を入力するテキストなんですが
内容に一元性はないです。
2009/03/01(日) 20:45:53
一元性ってなんだ?
2009/03/01(日) 20:50:07
TextChangedが発生したら文字列の改行記号を数えて4つ目以降の部分は切り捨てれば
2009/03/01(日) 21:13:33
「一元性」一貫した法則はないといいたかったんですが

マルチラインで折り返しがきいているので
確実に3回改行して4行目に行くとはかぎらないんです・・・
2009/03/01(日) 21:19:26
条件の後出しはたくさん
整理してからまたおいで
2009/03/01(日) 21:24:09
いいや、二度と来るな。
スレ違いだ。
2009/03/15(日) 15:53:35
は?
2009/03/16(月) 00:57:58
ねーよw
2009/03/21(土) 12:42:58
ダメ
2009/03/24(火) 17:38:03
BackgroundWorkerで行数をカウントしとけばいいじゃん・・・
336デフォルトの名無しさん
垢版 |
2009/03/25(水) 01:47:31
・課題:ヒープソート
・期限:2009年3月27日(金)
・条件:必ず再帰を使うこと

・問題
int配列を受け取って昇順にソートするメソッドを作成しなさい。
作成したメソッドを利用してソートを行うコンソールアプリケーションを作成しなさい。
以上になります。
どなたかよろしくお願いします<(_ _)>
2009/03/25(水) 02:12:30
自分でどこまでできた?
2009/03/25(水) 02:27:38
>>336
それは自力が良いと思います。
きっと重要な個所
2009/03/25(水) 10:11:33
わからないところにヒント出すから、自分でやってみたとこまで書いてみて
2009/03/25(水) 10:38:09
今の「Java の宿題・・・」に解答がある。
2009/03/26(木) 12:45:25
再帰なら「ヒープソート 再帰」で検索すると、PDFに書かれたのが見つかった。
ただし、C言語。
2009/03/26(木) 16:48:48
>>336 添え字が0から始まる方法と、ソートを昇順に変える方法はお任せします。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/623.txt
2009/03/27(金) 00:06:01
変数名が最悪なつけかた
2009/03/27(金) 00:50:08
確かに
2009/03/28(土) 21:20:06
多肢蟹
2009/04/30(木) 14:35:45
halloworldから二ヶ月目
using System;

class FizzBuzz
{
static void Main()
{

int i;
for (i = 1; i <= 100; i++)
{
if (i % 3 == 0)
{
if (i % 5 == 0)
Console.WriteLine(i + "番目のプレーヤーはFizz Buzz");
else
Console.WriteLine(i + "番目のプレーヤーはFizz");
}
if (i % 5 == 0)
Console.WriteLine(i + "番目のプレーヤーはBuzz");
}
}
}
2009/04/30(木) 16:46:16
>>346
ちゃんと hello world から始めないから・・・
2009/04/30(木) 16:54:20
おぉう・・・・>>346
ワンダフル
2009/04/30(木) 17:34:43
2ヶ月でこれはすごい
2009/04/30(木) 17:37:52
どこが?
2009/04/30(木) 17:38:55
才能のなさ
2009/05/01(金) 10:59:52
>>346
全部{}を入れておきたい気がする…。
そもそも該当が無いときには何も出力されないんだがいいのか!?
2009/05/02(土) 23:02:52
{}は省けるところは省いたほうが見易いけど
2009/05/03(日) 10:27:11
あったほうが見やすい。
狭い画面でやってるなら無い方が便利なときもあるが。
2009/05/03(日) 20:49:33
課題:三つの整数を入力し、三辺がそれらの長さであるような三角形が
作れる時に「OK」、作れないときに「NG」を出力する。
期限日:5月13日

お願いします。
2009/05/03(日) 22:42:56
で、どこまで作ったのかとか、考えたのかくらい出しなよ
どうせ全部教えてもらっても意味分かんないだろう
2009/05/03(日) 22:45:17
それでいいです
2009/05/03(日) 22:52:50
ここまでやりました。
#include <iostream>
using std::cin;
using std::cout;
int main(void) {
int a, b, c;
cout <<"Input a b c length:";
cin >> a >> b >> c;
if(a+b <= c || a+c <= b || b+c <= a)
cout << "三角形にはなりません\n";
else
cout << "三角形です\n";
}
2009/05/03(日) 22:57:53
>>358
釣りでないとすればどこまで突っ込んでいいのかね?
2009/05/03(日) 23:03:54
口でも尻でもいいです。
2009/05/03(日) 23:11:01
c/c++には間違えて投げたのかな?
2009/05/03(日) 23:25:07
一つの言語じゃないと質問してはいけないという決まりでもあるんですか?。
2009/05/03(日) 23:58:26
>>362
クソして寝ろ
2009/05/04(月) 00:19:03
>>362
別にあなたが理解しなくてもいいけど
クソして寝ろ
2009/05/04(月) 00:35:19
ちゃんとした答えを出してからにしてもらいたいものですね。
下品な人には無理でしょうけど。
2009/05/04(月) 01:55:39
>>365
そもそもお前が勘違いしているのは
質問者の言い分などだれも聞いていないということだ
2009/05/04(月) 12:27:24
とりあえず突っ込んどくが、ここはC#スレでC++スレではない。
釣られるってわかっててもいい気分じゃないなw
2009/05/04(月) 13:48:53
>>355 まずココでお勉強
http://d.hatena.ne.jp/tek_koc/20081030/1225355121
2009/05/05(火) 14:21:50
/*一行で3個の整数を入力したい。*/
using System; //#include的な物。Systemって名前空間を参照してという意味
//クラスの宣言
class main_class
{ /* ↓はMainメソッド。起動するとここから実行
   * 頭文字が大文字であることに注意
   * メソッドなので、あくまでクラスの中に属する
   */
  public static void Main()
  {
    int a, b, c; // 変数の宣言
    string str; // 文字列はstring
    String start = "Input a b c length:";

    Console.WriteLine(start);
    Console.Write("a=");
    str = Console.ReadLine(); // キーボードからの一行分の入力を取得。文字列であることに注意
    a = int.Parse(str); // 整数に変換。double.Parse()なども使用可能
    Console.Write("b=");
    str = Console.ReadLine();
    b = int.Parse(str);
    Console.Write("c=");
    str = Console.ReadLine();
    c = int.Parse(str);

    if ( a+b <= c || a+c <= b || b+c <= a )
      Console.WriteLine("{0},{1},{2} NG", a, b, c);
    else
      Console.WriteLine("{0},{1},{2} OK", a, b, c);
  }
}
2009/05/05(火) 14:37:48
最初のコメントが質問なのか?
エラーチェックもなにもしてないけど、例えばこういうふうにするとか

Console.Write("a,b,c=");
str = Console.ReadLine();
string[] s = str.Split(',');
a = int.Parse(s[0]);
b = int.Parse(s[1]);
c = int.Parse(s[2]);
2009/05/05(火) 17:04:34
>> レス有難うございます。プロンプトは>でいいっか。
using System; //#include的な物。Systemって名前空間を参照してという意味
//クラスの宣言
class main_class
{ /* ↓はMainメソッド。起動するとここから実行
   * 頭文字が大文字であることに注意
   * メソッドなので、あくまでクラスの中に属する
   */
  public static void Main()
  {
    int a, b, c; // 変数の宣言
    String str; // 文字列はstring
    String[] s;
    String start = "Input a, b and c length > ";

    Console.Write(start);
    str = Console.ReadLine();
    s = str.Split(',');

    a = int.Parse(s[0]);
    b = int.Parse(s[1]);
    c = int.Parse(s[2]);

    if ( a+b <= c || a+c <= b || b+c <= a )
      Console.WriteLine("{0},{1},{2} NG", a, b, c);
    else
      Console.WriteLine("{0},{1},{2} OK", a, b, c);
  }
}
2009/05/22(金) 16:15:12
2分で宿題を考えた。
using System;

class Sosu
{
static void Main()
{
int i, j, k;
for (i = 1; i <= 100; i++)
{
k = 0;

for (j = 2; j < i; ++j)
{
if (i % j == 0)
{
k = 1;
}
}

if(k == 0)
{
Console.WriteLine(i + "\n");
}
}
}
}
2009/05/23(土) 03:58:13
なんだこの縦長のコードは。
画面がもったいねえや
2009/05/23(土) 04:49:37
画面が勿体無いってすごいひょうげんだな
2009/05/23(土) 23:11:48
mainのコメントから見て

お・ま・た・お・ま・え・か!
376デフォルトの名無しさん
垢版 |
2009/05/26(火) 02:48:28
明日までの課題なのですが、下の細部22がまったくわかりません

http://www.dotup.org/uploda/www.dotup.org64514.pdf.html
パス CCC

C#でしなきゃいけないみたいです。すみませんがお願いします
377376
垢版 |
2009/05/26(火) 03:11:52
一応打った内容をtxtで置いておきます
http://www.dotup.org/uploda/www.dotup.org64566.txt.html

明日というより今日まででした。よろしくお願いします
378376
垢版 |
2009/05/26(火) 03:13:08
書き忘れたました。パスはCCCで376と同じです
2009/05/26(火) 10:22:00
内容の割に急すぎない?
だれかやってる人いるか?
2009/05/26(火) 10:39:56
>>379
やってない

よく読んでいないけど,>>376は2画像のみが与えられた環境で,
画像が"基準画像"か"そうではない画像"か,という単純な分別をするのではだめなのかな?
それ以上するには結構時間かかるからまじうんこ
2009/05/26(火) 11:51:15
>>379>>380さん、自分も持ってくるのが遅かったと思います。すいません

次またできなかった場合早く持ってきます

>>380それだけではダメみたいです、すいません
2009/05/26(火) 12:51:08
パターンマッチングすればいいのかな?
2009/05/26(火) 15:50:07
3Dでカメラを被写体の周囲をY軸を中心に回転させたいんだけど
どうやればいいですか?
2009/05/26(火) 15:52:34
注目点で検索
385デフォルトの名無しさん
垢版 |
2009/05/26(火) 17:54:06
問題文:
1、10個の文字を1つずつ入力し、それらを入力した順に
  並べて表示
2、10個の文字を1つずつ入力し、それらを入力した順と逆順に
  並べて表示
3、5文字以上の長さの文字列を入力し、4番目の文字と5番目の文字を入れ替えて表示
4、10個の1桁の整数を入力し、それらを大きい順に並べて表示
5、10個の1桁の整数を入力し、その中から最も大きい3個を入力した順に表示
6、1桁の整数の入力を、同じ数が3回入力されるまで繰り返す
7、1桁の整数の入力を、0から9までの全ての数が入力されるまで繰り返す
期限:
5月28日13:00まで

その他:
昨日1日中考えて今日も起きてからずっとやっていますが
まったくわかりません。
よろしくお願いします。
386今年入学!!
垢版 |
2009/05/26(火) 18:01:21
プログラミングの授業で

{a÷(b×c)+d×(b+3)}÷(e×2) の計算の答えを出力するプログラミングをつくる課題が出たんだが、

演算子の優先順を考慮すると、どう変換しなければならないんだい??

全く分からない助けてくれ!!!!!
2009/05/26(火) 18:08:45
>>386
問題の条件がわからない。
a, b, c, d, e はどのように与えられるんだ?
388今年入学!!
垢版 |
2009/05/26(火) 18:14:34
a,b,c,d,eは cin でキーボードから読み込むことになってます
389今年入学!!
垢版 |
2009/05/26(火) 18:16:45
時間があるようでしたら、あと5,6問あるのでこのままお願いします。

2009/05/26(火) 18:23:24
>>388
スレ違い
2009/05/26(火) 18:30:26
問題4、5なんか変だな。
2009/05/26(火) 18:31:04
cinはC++だなあ。
って誘導しようとしたらもう行ってるのかな
http://pc12.2ch.net/test/read.cgi/tech/1242655611/273
393391
垢版 |
2009/05/26(火) 18:32:32
あー、10回ってことか?
2009/05/26(火) 18:34:11
なんだ誤爆か
2009/05/26(火) 18:41:20
>>385>>386は別の人でしょ
2009/05/26(火) 18:49:42
1.配列に押し込んでそのまま出力
2.↑をArray.Reverse
3.s.Substring(0, 3) + s[4] + s[3]に6文字以上ならs.Substring(6)を結合
4.Array.Sort→Array.Reverseが簡単。↓みたいなの定義してArray.Sortだけで済ませる方が良いけど
class ReverseComparer: IComparer<int>
{ public int Compare(int x, int y) { return y.CompareTo(x); } }
5.↑から3つだけ出力
6.整数変換:int.TryParse。前回入力された数値を保存しといて、同じのが入力されたらcount++。
7.bool[10]用意して数値をインデックスにして入力されたらtrue入れるのが簡単かな?
2009/05/26(火) 18:57:31
>>396
5は入力順に出力だぞ。
6は前回入力された値を保存する意味がなくね?
398385
垢版 |
2009/05/26(火) 19:37:46
>>396
ありがとうございます。
ですがまだ配列自体を分かっていないので
よくわかりません
できればもう少しわかりやすくお願いします。
すみません。
2009/05/26(火) 20:18:44
>>397
問題文ちゃんと読んでなかったw

6.int[10]用意して数値をインデックスに入力回数をカウント。3になったら終了
5.入力順保持が地味に面倒だな。問題は配列の練習っぽいんでこんな感じはどうかねぇ
int[] index = new int[10];//入力順
int[] number = new int[10];//入力値
for (int i = 0; i < 10; i++)
{
  index[i] = i;
  number[i] = int.Parse(Console.ReadKey().KeyChar.ToString());
}
Array.Sort(number, index, new ReverseComparer());//number配列を基準に2つの配列を一緒にソート
Array.Sort(index, 0, 3);//index配列の最初の3個(出力分だけ)をソート

Console.WriteLine();
for (int i = 0; i < 3; i++)
{
  Console.Write(number[index[i]]);
}

>>398
どこまでなら分かるの?
400385
垢版 |
2009/05/26(火) 20:31:21
>>399
多分1番の答えがわかれば他も解けると思います。
なので1番のソースを書いてもらえるとうれしいです。
2009/05/26(火) 20:59:53
1番が分からないのは致命的というか、色々無理だね。
2009/05/26(火) 21:03:54
>>400
// 文字の配列を初期化
char[] input = new char[10];
for (int i = 0; i < input.Length; i++)
{
  // コンソールから1文字ずつ読み込み
  input[i] = Console.ReadKey().KeyChar;
}
Console.WriteLine();
// Console.WriteLine(char[])で出力
Console.WriteLine(input);

問2ではinputに対してArray.Reverse
問3ではConsole.ReadLine()で一行分をstringで一気に読み込む
問4では>>399のようにint.Parse(Console.ReadKey().KeyChar.ToString());とやればいい。
ただし数値じゃない文字を入力すると例外飛ぶので、TryParse使う方が良い。
2009/05/27(水) 09:59:15
1がわかれば他もわかる、というより
1がわからないとそれ以外には手も出ない、だろうなあ
2009/05/27(水) 21:17:43
なんでこういう問題はコンソールなんだろうなぁ
そっちのがわかりにくいだろうに・・・

2009/06/04(木) 20:11:13
宿題で今年度のカレンダーを1年分作るのですが教えてください。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況