質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

import

自身のプラットフォーム・プログラム・データセットに対して、外部ソースを取り込むプロセスをimportと呼びます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

Q&A

0回答

1117閲覧

課題で線形探索をしたいのですが、教授が何をさせたいのかわかりません。

Akira_College

総合スコア1

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

import

自身のプラットフォーム・プログラム・データセットに対して、外部ソースを取り込むプロセスをimportと呼びます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

データ構造

データ構造とは、データの集まりをコンピュータの中で効果的に扱うために、一定の形式に系統立てて格納する形式を指します。(配列/連想配列/木構造など)

0グッド

1クリップ

投稿2021/12/01 12:40

/*下のテキストファイルの中身は9999個の全て異なる4桁以下の正整数が1行に1つ書かれたものです。
ここを作るといわれても何をすればいいんでしょうか。
推測でもいいのでこれじゃない?というのがあれば教えてもらえませんか
*/

package ex11;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;

public class LinearSearch {
private final int n = 9999;
private int[] table = new int[n];

public LinearSearch(String filename) {
try {
// ここを作る

} catch (FileNotFoundException e) { System.out.println(filename + "が見つかりません。"); } catch (IOException e) { System.out.println(e); }

}
public void search(int key) {
// ここを作る
// 線形探索でkeyを探す

}
public void show() {
// ここを作る
// 表の要素を全て表示する

}
public static void main(String[] args) {
// 以下の3行のいずれかを使う
String filename = "rand.txt";
//String filename = "reverse.txt";
//String filename = "sorted.txt";

LinearSearch table = new LinearSearch(filename); table.show(); System.out.println("key=1000を探索"); table.search(1000); System.out.println("key=9412を探索"); table.search(9412); System.out.println("key=2を探索"); table.search(2); System.out.println("key=10000を探索"); table.search(10000);

}
}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

BeatStar

2021/12/01 12:55

単純に穴埋めするだけじゃないの?
1T2R3M4

2021/12/01 13:04

教授に聞いてください。
m.ts10806

2021/12/01 13:35 編集

出題者の意図は出題者にしか分かりません。 赤の他人に丸投げで推測させるのもちょっと横暴かと。
Akira_College

2021/12/01 13:50

みんな何もわかってない感じですよねー
BeatStar

2021/12/01 13:52

> みんな何もわかってない感じですよねー どういうこと? 問題文の意図ならわかるけど、この質問の意図は全くわかりません。「答えとっと寄こせク○共!!! 貴様らは俺様のために答え寄こせばいいんだよ!!!」となら読めるが。
Crimson_Tide

2021/12/01 14:16

生徒に同じ内容条件で課題が出されているのであれば、何をさせたいと考えているのか を考えるのも生徒の課題なのではないでしょうか。 わからない点があるならその場で聞くべきでしょう。 とは言え、聞かなくても ご自分でおっしゃってますよね「線形探索をしたい」のだと そして二か所の「// ここを作る」には処理内容さえ記載されている。 ・線型探索とはどのような処理か ・既に記述されている箇所のソースが各々どのような処理をしているか は、既に学習した範囲内でしょうからわかるでしょう。何の目的の処理かは、変数名や処理内容・流れから推察。 ・「// ここを作る」とだけ書かれている箇所は、呼び出し元を確認し、どのような呼ばれ方をされ、どのような処理を期待されているか推察。 これらのこと考えれば、できるのでないでしょうか。 わからないと言ってるうちは、何も考えようとしていなんだな と私は思ってしまいます。
m.ts10806

2021/12/01 14:30

煽ったところで印象悪くして相手されなくなるだけだというのに(何もわかってない感じですよねー) まぁ多少でも暇じゃないとこんな課題丸投げ質問にコメントなんかしませんよね。暇じゃなかったら低評価すらしない。
fana

2021/12/07 03:08

クロスワードとかと一緒じゃないですかね. 散りばめられているヒントをきちんと拾えば話が見えてくる的な意味で. > // 線形探索でkeyを探す 「探す」って言われても一体「どこから」探すんですかね? →つまり,この文言から,対象となる母集団が必要だということがわかりますね. > // 表の要素を全て表示する →「表」って何ですかね? →「表の要素」っていつどうやって与えられるんですかね? っていう疑問が当然出てきますね. 以上を組み合わせれば 【おそらくは「表」というのが探索対象たる「母集団」なのであって,その要素をどうにかして与える必要があるんじゃねーのこれ?】くらいの推測が立ちますね. プログラミング以前に国語的な(?)話の範疇かと見えます.
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問