- 締切済み
プログラミング分かりませんJAVA
キーボードから数値をにゅうりょくし配列変数のじを指定することで、配列要素の値を標示するプログラムを作成する問題です 配列は次のように初期化 int data[]={1,2,3,4,16,32,64,128,256,512} 実行結果 字>0 0番目の値は1 字>9 9番目の値は512 字>5 5番目の値は32
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- maiko0318
- ベストアンサー率21% (1483/6969)
#include <stdio.h> main() { int i; int data[]={1,2,3,4,16,32,64,128,256,512}; printf("字>"); scanf("%d",&i); if(i < 10) printf("%d番目の値は%d",i,data[i]); } cで作っちゃった。 Javaのインプット、面倒いんだもの。。。
- teketon
- ベストアンサー率65% (141/215)
はい public class Sample { private volatile static int data[]={1,2,3,4,16,32,64,128,256,512}; public static void main(String[] argv) { Scanner scanner = new Scanner(System.in); while(scanner.hasNext()){ int num = scanner.nextInt(); System.out.println(toFullSize(num)+"番目の値は"+toFullSize(data[num])); } } public static String toFullSize(int target){ StringBuilder buff = new StringBuilder(Integer.toString(target)); for (int i = 0; i < buff.length(); i++) { char c = buff.charAt(i); if (c >= '0' && c <= '9') { buff.setCharAt(i, (char)(c + '0' - '0')); } } return buff.toString(); } }
- wormhole
- ベストアンサー率28% (1626/5665)
>初心者ですいません 初心者なのが問題ではなくて、自分で学習する気がない調べる気がないのが問題なんですが(学習する気はある調べる気もあるといわれても今までの質問見る限りでは誰1人そう思う人はいないです)。 どこから手を付けたらいいのかさえわからないということであるなら入門書を最初から読み直しましょう。 ヒントぽいのだけ。 int i = 0; System.out.println(data[i]); 入力は自分で考えてください。
- Tacosan
- ベストアンサー率23% (3656/15482)
「キーボードから番号と点数を入力順に作成することはできました」 (cf. http://okwave.jp/qa/q8286658.html ) という日本語っぽい謎の文章を「入力することができた」と解釈するなら, #1 に対する 「その書き方がわかんない」 の意味がまったく分からない. 「初心者」といえば自分で何も考えなくても許される, なんて甘えていないか?
- Ogre7077
- ベストアンサー率65% (170/258)
少々愚直すぎて申し訳ない import java.awt.*; import javax.swing.*; import javax.swing.event.*; import javax.swing.text.*; /** * キーボードから数値をにゅうりょくし配列変数のじを指定することで、配列要素の値を標示する. */ class Hoge extends JFrame implements DocumentListener { private JTextField no; private JLabel disp; private int[] numbersData; public Hoge() { super("Hoge"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); no = new JTextField(20); no.getDocument().addDocumentListener(this); disp = new JLabel("番号を打ってください", SwingConstants.CENTER); JPanel p = new JPanel(); p.add(new JLabel("値> ")); p.add(no); getContentPane().add(p, BorderLayout.NORTH); getContentPane().add(disp, BorderLayout.CENTER); pack(); numbersData = new int[]{ 1, 2, 3, 4, 16, 32, 64, 128, 256, 512 }; } protected void displayValue(Document doc) { try { int length = doc.getLength(); String s = doc.getText(0, length); int index = Integer.parseInt(s); String val = Integer.toString(this.numbersData[index]); String text = String.format("%d番目の値は%s", index, val); this.disp.setText(text); } catch (BadLocationException | NumberFormatException | IndexOutOfBoundsException e) { this.disp.setText("値がありません"); } } @Override public void removeUpdate(DocumentEvent ev) { displayValue(ev.getDocument()); } @Override public void insertUpdate(DocumentEvent ev) { displayValue(ev.getDocument()); } @Override public void changedUpdate(DocumentEvent ev) { displayValue(ev.getDocument()); } public static void main(String args[]) { new Hoge().setVisible(true); } }
- kmee
- ベストアンサー率55% (1857/3366)
これは流石に.... 単順に 「x 番目の値は data[x] 」と出力されるだけ。 そのxを入力するようにするだけ。
補足
だからその書き方がわかんないです。どうかコードを書いてください。初心者ですいません